**** BEGIN LOGGING AT Tue Sep 20 02:59:58 2016 Sep 20 06:19:13 hi Sep 20 06:20:20 I have some questions about smart package manager, Does any one want to talk about this topic ? Sep 20 06:32:59 http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100582.html Sep 20 06:33:18 says "OE uses RPM5 as the default version of rpm. This is because we need support for some of the RPM5 features. RPM5 (and OE) use a 'recommend' as well as requires mechanism." Sep 20 06:33:57 Does anyone know what the meaning of 'recommend' ? Sep 20 06:34:39 fan: "makes sense to also install, but is not strictly necessary" :) Sep 20 06:36:10 fan: https://fedoraproject.org/wiki/Packaging:WeakDependencies Sep 20 06:36:42 So it is means that if user type some package name, smart has the function to provide some recommand packages ? Sep 20 06:37:26 fan: i have no idea about smart, as i do not use runtime package management. i just tried to help you fdind out what the recommend setting really mean. Sep 20 06:38:08 fan: you could have a look at RRECOMMENDS Sep 20 06:38:24 OK, thanks Sep 20 06:38:47 afaiu, it's not much more than a "this isn't essential, but nice to have" type of dependency between packages Sep 20 06:39:31 which allows the recommended packages to be trimmed if really needed to save space Sep 20 06:40:06 https://bugzilla.yoctoproject.org/show_bug.cgi?id=10295 this proposed documentation mentions a case where RRECOMMENDS are added automatically btw Sep 20 06:40:07 Bug 10295: normal, Undecided, ---, srifenbark, NEW , Suggested documentation for the 'depchains' automatic dependency mechanism Sep 20 07:28:29 Hello eveyone, I will like create a luks rootfs, so to do that I have implemented a IMG_CMD_luks, so far so good. But the IMG_CMD_luks fails because cryptsetup can not mount the device mapper to format it. Does anyone knows a solution for this problem? Sep 20 07:33:46 I undestand the recommend meaning, Thanks for your relpy. Sep 20 07:35:27 another thing confuses me is the rpm5 is compatible with rpm4? Sep 20 07:35:54 because I found the different answer in different website. Sep 20 08:45:54 I'm having a similar problem to this one; https://lists.yoctoproject.org/pipermail/yocto/2016-January/028237.html Sep 20 08:46:37 if I run «bitbake meta-toolchain-qt5» I get a toolchain without the ncurses headers installed, which means I can't use it for «make menuconfig» when working on my kernel, which is mildly annoying Sep 20 08:47:05 and the normal toolchain I can generate with «bitbake core-image-minimal -c populate_sdk» doesn't contain qmake et al, which means I can't work on the application Sep 20 08:49:30 and I haven't been able to figure out where to add explicit extra packages to the generated toolchain Sep 20 08:49:43 maybe short of creating a layer and a bbappend for the meta-toolchain-qt5 Sep 20 08:51:14 sandsmark: I'm guessing it would be enough to do something like TOOLCHAIN_HOST_TASK_append = " nativesdk-ncurses" Sep 20 08:51:44 thanks, I'll try that Sep 20 08:52:17 I guess I've messed up something else somewhere, but it would be nice with a short-term stopgap fix until I have more time to work on our yocto stuff Sep 20 09:22:15 is their a nice command / grep to list all the files/patches that are associated with a recipe? Sep 20 09:22:59 CTtpollard: bitbake -v should show you quite a bit of info. Sep 20 09:23:12 MACHINE=qemu bitbake -v Sep 20 13:15:23 Any idea who I can give access to the command ifconfig to a normal user in Yocto? Sep 20 13:15:28 *how Sep 20 13:23:03 might just be that it lives in /sbin and normal users don't have that in their PATH. Sep 20 13:23:36 that said, they can run it to inspect settings, but they won't be able to change state of interfaces as non-root. Sep 20 13:23:36 On some systems we use sudo for this. On others devices we use systemd network config files. Sep 20 13:23:39 paulg: not sufficient Sep 20 13:23:56 I need to have the application start and stop the interface Sep 20 13:25:28 It's also possible to create a suid tool for that. Sep 20 13:25:29 I call ifup which... call ifconfig Sep 20 13:25:35 on a bog standard linux box, run "man capabilities" and search for CAP_NET_ADMIN Sep 20 13:25:36 use something like connman then its just a dbus call away Sep 20 13:26:53 I was thinking getting ifconfig and ifup in the suid package from busybox. Sep 20 13:28:15 rburton: May be connman is easier then. Sep 20 13:29:19 though a good question is why should the app control ifup / ifdown. surely you want ifup when a network connection is present, ifdown when it is removed. Sep 20 13:29:38 save battery Sep 20 13:29:39 (unless you're doing wifi and stuff but the seriously just use connman or similar) Sep 20 13:29:45 wifi yes Sep 20 13:31:05 Thanks! :) Sep 20 13:35:44 Hi All. I am new to yocto. I wanted to do package management and install docker on qemux86 image .Found out that can be done using "smart" and made change in local.conf file by adding IMAGE_FEATURES += "package-management". Later ran "runqemu qemux86" and after the system is up,ran smart command and got error saying command not found. I did the above steps for both Krogoth and Fido and faced same error.Am I missing something ? Sep 20 13:36:47 newguy_: runtime package management is only a good choice in very rare circumstances. if there is a docker recipe, why not just add it to your IMAGE_INSTALL? Sep 20 13:39:08 LetoThe2nd_: Thanks I will try that. But any idea why smart is not available after making the above change in local.conf file. Sep 20 13:39:36 newguy_: probably the package-management feature just doesn't reference smart. Sep 20 13:40:04 newguy_: runtime package management is complicated. do it only if absolutely unavoidable. Sep 20 13:40:26 newguy_: smart is present if you have package-manager in image features and you have package_rpm in PACKAGE_CLASSES Sep 20 13:41:12 LetoThe2nd_:got it. Sep 20 13:41:32 and unless you are adding meta-virtualization into your build, and building docker .. smart isn't going to find anything. Sep 20 13:43:31 rburton_:Ok. I was using package_deb in PACKAGE_CLASSES . I will change it to package_rpm and try. Sep 20 13:46:45 zeddii_: By meta-virtualization do you mean adding a channel through smart? Sep 20 13:47:46 unless you are consuming someone else's package feed. You need to build the packages so you can install them later. so unless you are adding meta-virtualization to your bblayers, and minimially doing a bitbake docker. you won't have anything to install, even if you get smart on the target and the channels available. Sep 20 13:50:35 zeddii_:Thanks zeddii. Got it. Sep 20 14:16:56 Hello. I have an imported layer that includes a libmicrohttpd_0.9.34.bb, and my own layer has a libmicrohttpd_0.9.35.bb. I've removed all dependencies from the .35 version, but it's still building dependencies for the .34 version. Sep 20 14:17:19 Is there any way I can force it to build my version, or figure out why it's trying to build dependencies for the other? Sep 20 14:19:21 bump the layer priority of your layer Sep 20 14:20:30 My layer is before the other in the BBLAYERS list in bblayers.conf. I suppose that's not it? Sep 20 14:20:38 no Sep 20 14:22:31 What was the cut-off point for package version updates? Sep 20 14:23:13 tanuk: about three weeks ago Sep 20 14:23:15 or just set preferred version in local.conf Sep 20 14:23:20 (hi tanuk) Sep 20 14:25:38 rburton: Hi! Sep 20 14:25:39 PREFERRED_VERSION_pkgname did it. I had previously put that into a recipe that depended on this, but it didn't work. Sep 20 14:27:10 rburton: I guess it's the M3 deadline that can be seen in the "Yocto Project Status" mails? Sep 20 14:27:25 tanuk: yes. m3 is feature freeze, and upgrades are features. Sep 20 14:40:40 Can anybody tell me what the syntax is for calling a *shell* function in an assignment using Bitbake? I'm looking for something like `PV = ${@get_version()}`, except where `get_version()` is an inline shell (not Python) function. Sep 20 14:44:44 Seems like this ought to be easy, but I can't work it out. My most recent attempt yielded: ailure expanding variable PVBASE, expression was ${@bb.build.exec_func('get_version', d)} which triggered exception RuntimeError: maximum recursion depth exceeded in __instancecheck__ Sep 20 14:45:23 I feel vaguely taunted by this: https://www.yoctoproject.org/docs/1.6/bitbake-user-manual/bitbake-user-manual.html#shell-functions Sep 20 14:45:41 Gah! How do I *use* such functions? `:-] Sep 20 14:47:17 Oh. Oh, no. I think I get it now. `PV` is 'magic' somehow. Sep 20 14:48:16 I can't set *other* variables that way, it seems. But not `PV`. Not directly, anyway. Sep 20 14:52:37 s/can't/can Sep 20 14:52:52 you can set PV Sep 20 14:53:56 I (sort of) grok that, but... here's what I'm attempting: Sep 20 14:54:09 PVBASE := "${@bb.build.exec_func('get_version', d)}" Sep 20 14:54:10 PV = "${PVBASE}+git${SRCPV}" Sep 20 14:54:41 `bitbake` actually seems to hang when I do that. `:-o Sep 20 14:56:23 well i'd remove PVBASE unless you want it somewhere else and just do it all in one assignment Sep 20 14:57:00 Oh... so that syntax is more-or-less correct, then? That's the 'right' way to call a shell function (via Python)? Sep 20 14:57:18 I thought there might be some other syntax for it. Sep 20 14:57:42 yeah that's how to drop into shell Sep 20 14:57:56 (might be easier to rewrite get_version as python?) Sep 20 15:01:24 The thought crossed my mind. Figured I might wind up, there, anyway. As a sanity-check of whether this was A Dumb Idea™, I was just using `get_version() { echo "1.0" }`, so Python felt like overkill somehow. Sep 20 15:05:00 Actually... it does seem like there's something a bit 'weird' going on here. I consistently get `RuntimeError: maximum recursion depth exceeded` if I don't use immediate assignment, i.e., this: `PV = "${@bb.build.exec_func('get_version', d)}"` Sep 20 15:06:02 as you're invoking a function like that i'd definitely use immediate expansion Sep 20 15:06:38 When I try `PV := "${@bb.build.exec_func('get_version', d)}" instead, it seems to hang. Sep 20 15:07:21 Been looking at `No currently running tasks (1844 of 2447)` for a few minutes now. Sep 20 15:09:51 I *did* make this change to `PV` with a 'warm' cache. Maybe a `cleansstate` is in order? Sep 20 15:09:59 shouldn't be needed Sep 20 15:22:29 evadeflow: exec_func can't return a value, anyway Sep 20 15:22:36 it's not going to 'get' much Sep 20 15:32:06 oooh, of course :) Sep 20 15:32:16 really make it a python function Sep 20 17:47:01 I download a usb-ethernet driver source code, which I compiled and verified works with my build, that I want to add to the Yocto build so its built and included in the Linux image automatically Sep 20 17:47:39 I'm reading through this now: http://www.yoctoproject.org/docs/1.6.1/kernel-dev/kernel-dev.html#kernel-dev-common Sep 20 17:48:52 but I am afraid that it is kind of high level & theortical. It makes sense, but I am not sure how to transfer this knoweldge into a practical solution Sep 20 18:09:19 Anybody ever see an error like this when cross-compiling Python 2.7.9? Sep 20 18:09:58 Doh. Formatting fail. Sep 20 18:12:44 Whoa. Sorry if this is spamming the channel. My company's firewall is hella restrictive so I have to use a web client, and it's acting up somehow. Sep 20 18:13:43 Oh, LOL. The line I was pasting started with `/bin/sh` and the IRC server was trying to execute it! :-D Sep 20 18:14:09 ... /bin/sh: line 6: 11022 Illegal instruction (core dumped) CC='x86_64-poky-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/home/smt2hi/GR_Yocto/build/tmp/sysroots/gr-mrb-64-a' LDSHARED='x86_64-poky-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/home/smt2hi/GR_Yocto/build/tmp/sysroots/gr-mrb-64-a -shared -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed' OPT='-DNDEBUG -g Sep 20 18:14:22 Makefile:490: recipe for target 'sharedmods' failed Sep 20 18:14:34 Sounds like your compiler was built for the wrong CPU type. Sep 20 18:14:40 Hey folks, I've got a deploy (not installed to the image) recipe (a u-boot variant, actually), and I'm seeing my image fail to build due to not finding the licenses/my-u-boot/recipeinfo file. Am I supposed to need to manually add dependencies in my image on that task? (manually running the task for my-u-boot proir to building the image works) Sep 20 18:14:59 Thanks, @stephano, that seems plausible. Sep 20 18:22:14 * kergoth mulls over whether to do something with his prototyped minimize-packageconfigs bits Sep 20 18:45:47 Is there a clean way to build 2 kernels (say, 1 recovery & 1 normal) for a single image/distro/machine? Kernels only differ in a few config options and build arguments. I ask this only because I've inherited some code that has a very interesting way of doing it, which makes me a bit nervous. Sep 20 18:47:40 i think you'd have to hack the second recipe to make sure it doesn't conflict with the first in the sysroot, doesn't provide virtual/kernel, doesn't emit module packages (or changes their names), etc Sep 20 18:47:50 [in this case, the option is enabling/disabling CONFIG_FRAMEBUFFER_CONSOLE, so I might just be able to handle that with some slightly different boot arguments] Sep 20 18:49:53 doing it in your bootloader might be a cleaner approach Sep 20 18:53:35 hi all, had a question about bitbake parsing and recipetool. We have scripts which are creating bbappends using recipetool. The script call recipetool probably around 10-15 times, what we have see so far is that every time recipetool is invoked, it takes time due to parsing. Is there a way to speed up this process? Sep 20 18:54:20 it doesn't re-parse everything every time Sep 20 18:54:26 bitbake loads from the cache on subsequent calls Sep 20 18:54:42 so it's likely already as fast as it's going to get, short of adding support for reicpetool to use a memory resident bitbake server Sep 20 18:54:45 afaik anyway Sep 20 18:55:49 ok thanks Sep 20 18:56:38 paul eggleton started some work on making bitbake's 'tinfoil' module support interaction with a running bitbake server. tinfoil is used by all the external scripts, recipetool, devtool, bitbake-layers, etc Sep 20 18:56:43 but i don't think it ever got completed Sep 20 18:56:58 there's an open yocto bug about it if you search bugzilla for bitbake-layers server Sep 20 19:18:29 RP: does https://github.com/openembedded/openembedded-core/compare/master...kergoth:task-exports seem reasonably sane, conceptually? obviously requires lots of recipe fix-ups, but i think it's worth doing for the long term Sep 20 19:19:24 * kergoth trying to figure out where all his old incomplete topic branches are, status wise Sep 20 19:40:18 created a recipetool command which emits a .conf that disables all packageconfigs which add deps/rdeps except those added through inline python (distro features conditionals). really uncovers cases where we need REQUIRED_DISTRO_FEATURES :) Sep 20 19:40:52 probably better as a bb command than recipetool, though, on general principle Sep 20 19:56:25 is there a way to set mutilple varname and varvalue using recipetool? Sep 20 19:57:12 if you llook at recipetool setvar —help, it doesn't seem to support that, no Sep 20 19:59:49 hmm, rsync doesn't obey the distro features for xattr or acl support Sep 20 19:59:57 upside to manually reviewing half our packageconfigs.. Sep 20 20:00:57 yeah...i dont think it is supported..any thoughts if this is good to be implemented? Sep 20 20:01:45 seems reasonable to me. there are a number of cases where commands in our scripts dont accept mulltiple args where they could do so Sep 20 20:01:56 i.e. bitbake-layers add-layer only lets you specify a single layer Sep 20 20:02:06 keep meaning to do something about that one Sep 20 20:03:02 ok thanks...I will try it out, and post patches once it is ready. Wanted to float the idea before we start some work on it Sep 20 20:04:03 the real question is whether it gets added to the existing command, which would be a bit odd since the command isnt' plural, or add another command, or rename it and add an alias, or what :) Sep 20 20:04:07 minor thing, buta ffects usabiliyt Sep 20 20:07:09 yes agreed...maybe multiple setvar commands...recipetool recipefile setvar varname varval setvar varname2 varval2 Sep 20 20:07:28 so it is backward compatible as well Sep 20 20:08:22 i wonder if anyone has written anything up on usability of command-line scripts with an eye to argument handling Sep 20 20:52:37 If I might ask Sep 20 20:52:55 I've got a my_recipe.bb Sep 20 20:53:13 inside it is defined do_install () { install stuff } Sep 20 20:53:29 Then I created my_recipe.bbappend Sep 20 20:53:55 and I'm wondering if it is possible to create do_install_append () { install stuff + new, extra stuff } Sep 20 20:53:57 ? Sep 20 20:54:01 why wouldn' tit be? Sep 20 20:54:09 you can append any variable, this is in the documentation Sep 20 20:54:18 also, why didn't you just test it yourself and look? Sep 20 20:54:25 bitbake -e will show you the value of do_install Sep 20 20:54:38 because when i run bitbake -v -c clean do_install my_recipe Sep 20 20:54:53 I only see the original one Sep 20 20:55:00 but, ok -e will check Sep 20 20:56:36 lukma1: do_install_append() should only have the new extra stuff, not a repeat of the original Sep 20 20:57:12 lukma1: if you really need to completely override the original you can instead use do_install() in your bbappend though Sep 20 20:57:26 also, '-c clean do_install' isn't a valid bitbake command Sep 20 20:57:37 or rather, it's not valid unless you have a recipe named do_install, which seems unlikely :) Sep 20 20:58:06 so I should specify "install" and "do_" is added implicitly? Sep 20 20:58:34 with -c yes Sep 20 20:59:16 but what kergoth is mostly getting at is "clean" is the argument already being specified for -c, you can't specify more than one (not with that syntax anyway) Sep 20 21:00:04 bluelightning: thoughts on https://github.com/openembedded/bitbake/compare/master...kergoth:cooker-tinfoil-bblayers-only ? I can't decide if I like this implementation, but it lets bitbake-layers avoid parsing bitbake.conf, which lets us avoid getting into a situation we can't get out of without manually editing bblayers.conf Sep 20 21:00:36 I'm looking for a way to clean & compile (install) Sep 20 21:01:06 lukma1: you need two bitgbake commands for that. as bluelightning says, -c takes one task, not multiple Sep 20 21:01:39 I'm fine with 2 commands Sep 20 21:17:44 I think that I've got a bit more complicated example ..... Sep 20 21:18:07 in my case the do_install () (the one which I would like to extend (append) Sep 20 21:18:16 is defined at my_lib.inc Sep 20 21:18:45 the my_recipe.bb require my_lib.inc Sep 20 21:20:00 Does the my_recipe.bbappend inherit my_recipe with do_install from my_lib.inc? Sep 20 21:20:20 Or do I need to add "require my_lib.inc" in the my_recipe.bbappend file? Sep 20 21:27:19 lukma1: no.. the way to think of it is the bbappend file contents are simply appended onto the end of the recipe in memory during parsing Sep 20 21:27:33 so there's no need to do the require in the bbappend, it's already done Sep 20 21:33:23 bluelightning Sep 20 21:33:27 thanks Sep 20 21:33:40 I think that I've found the problem ..... with directory structure Sep 20 21:34:42 so original package is at my-recipe/myprog/myprog.inc and myprog.bb Sep 20 21:35:18 with other meta-xxx I've created the file at my-other-recipe/myprog.bbappend Sep 20 21:35:27 the "myprog" was missing Sep 20 21:36:20 Is the "myprog" part of some patch searching ? In other way - is the directory PATH used for recipe identification? Sep 20 21:38:23 lukma1: read layer.conf in your layer Sep 20 21:38:30 specifically the value of BBFILES Sep 20 21:46:54 kergoth: Indeed recipe-*/*/*.bbappend Sep 20 21:46:55 thanks Sep 20 21:47:01 np Sep 20 22:35:10 kergoth: strange thing Sep 20 22:35:41 The _append recipe was visible to yocto only when I executed bitbake -c listtasks Sep 20 23:19:45 kergoth: I guess that's an OK solution... somehow I did enjoy the days when it was a little simpler and it didn't need to parse layers in order to do add-layer/remove-layer, but there's no practical way around that that I can think of other than doing something like this Sep 20 23:33:25 Rather than adding a flag to the cooker constructor, I'd rather change the semantics of Cooker. currently, it's expected that a cooker parses the metadata in the constructor.. i don't think that's a great way to go, better to let it be created, and then let the caller run the parsing. but i'm not sure as to the impact of that yet Sep 20 23:33:49 i agree it would be nice to avoid parsing, but i don't see how we can avoid it other than with sed mangling :) Sep 20 23:34:31 'Just say no!' (to sed mangling) Sep 20 23:36:06 kergoth: I agree, I much prefer if constructing an object doesn't perform any actions Sep 20 23:36:27 kergoth: unfortunately some of the earlier Toaster changes to the bitbake core went in the wrong direction on that front :/ Sep 20 23:38:26 btw, if anyone sees the issue that others are reporting with the progress bar leaving old printed progress bars behind and figures out how to reproduce it (or even better, how to fix it) I'd very much appreciate it as I'm a bit stuck as to what to do with that Sep 20 23:38:54 I haven't seen that one at all yet, so I'm in your camp on that one :\ Sep 20 23:39:27 that's one data point I suppose, at least it's working for more than just me... Sep 20 23:53:42 well, what do you know... it just happened Sep 20 23:54:00 I wonder if there's an errant newline being printed somewhere **** ENDING LOGGING AT Wed Sep 21 02:59:58 2016