IRC logs for #buildstream for Friday, 2017-06-16

*** franred has joined #buildstream07:16
*** tlater has joined #buildstream08:04
*** jude has joined #buildstream08:07
*** jonathanmaw has joined #buildstream08:16
*** ssam2 has joined #buildstream08:16
ssam2ah, once again out of memory running genattrtab09:18
* ssam2 sets up a build VM09:19
*** franred has quit IRC10:14
*** franred has joined #buildstream10:29
*** franred has quit IRC10:35
*** franred has joined #buildstream10:40
tlaterJust to clarify the behavior of --except; It removes an element and ALL its dependencies not required by another element, unless it's the top-level element, in which case it only removes the top-level element, and keeps its dependencies.10:41
ssam2the top-level element doesn't have any dependencies, surely?10:42
ssam2other than that, sounds correct10:42
tlaterDoes it not? I thought it did, but that should make things easier then.10:42
ssam2I'm picturing "top-level element" to mean the 'base dependency', which is usually the pre-built host tools10:43
tlaterI might be thinking of the element tree in reverse, I think of it as the target specified on the CLI10:43
tlaterThe element generated for busybox bst if you call `bst bundle busybox.bst`, for example10:44
ssam2ah right10:44
ssam2also a valid interpretation10:45
ssam2it wouldn't really make sense to run `bst bundle busybox.bst --except busybox.bst`10:45
ssam2i'd say that's a user error10:45
ssam2well, maybe there's a use case for it, i wasn't fully following your discussion with tristan yesterday10:45
tlaterI might be misunderstanding things...10:46
*** franred has quit IRC10:46
tlaterWhat should happen when I try to bundle busybox.bst, for example?10:47
ssam2might depend what busybox.bst is, but i'd expect it to produce a bundle that would build BusyBox and all its dependencies10:48
ssam2however, that wouldn't work because it'd pull in prebuilt host tools, which can't really be bundled10:48
ssam2and it'd pull in an unnecessary compiler bootstrap10:48
ssam2so in the world of Baserock definitions, you'd do something like `bst bundle busybox.bst --except gnu-toolchain/stage2.bst`10:49
ssam2which chops off the stage2 of the bootstrap, which in turn removes stage1 of the bootstrap, and the host tools10:49
tlaterAnd if busybox itself is a target that cannot be built, but has dependencies which the user wants to build?10:49
ssam2why wouldn't you be able to build BusyBox ?10:50
tlaterSome of these aren't build elements...10:50
ssam2i don't understand what you mean by that10:51
tlaterWe have stack elements which seem to just be a way to collect elements10:51
ssam2ah right, yeah10:52
tlaterIf I specify one of those as the target it cannot be built10:52
ssam2yeah, good point10:52
ssam2in that case it should just build all the dependencies10:52
tlaterI suppose checking for stack elements makes sense10:52
ssam2personally I'd consider that action to be the same as building the stack element10:52
persiaI would also consider the assembly of component bits "building" the stack element.10:53
persiaThe same would apply to "building" static document elements.10:53
*** franred has joined #buildstream11:02
*** tlater has quit IRC11:38
*** tlater has joined #buildstream11:39
ssam2hooray, I think I finally have a stage1-gcc build12:10
tlater\o/12:11
*** RXP has joined #buildstream12:19
tlaterHm. For the --except stuff, is there a way to do this without performing a graph closure after the dependency tree has been built?12:19
ssam2not sure. i haven't looked at the dependency code in Bst at all12:20
tlaterOkay. Having more trouble with it than I thought I would :/12:20
*** RXP has quit IRC12:21
ssam2bah, just noticed BuildStream is currently fetching gnu-toolchain/stage2-linux-api-headers.bst and gnu-toolchain/linux-api-headers.bst12:30
ssam2which are the same repo12:30
ssam2but it's fetching it twice in parallel :/12:31
ssam2ah, it's https://gitlab.com/BuildStream/buildstream/issues/512:31
jonathanmawhrm, trying to install bsdgames from the debian source is challenging12:40
jonathanmaw`debian/rules build` was hanging because it had an interactive prompt12:41
jonathanmawalso it's complaining about multiple definitions of getline. This is probably related to the patches that change getline to get_line12:41
jonathanmawso now I need to figure out how to apply the patches.12:41
tlaterI finally managed to get --except to work by retroactively removing dependencies \o/ Not sure if this is the way to go though...12:43
ssam2sounds OK in principle12:43
ssam2i'm quite liking the `bst track` workflow14:09
ssam2there are still some minor issues in ruamel.yaml to clean up, but its so nice not having to copy and paste sha1 hashes everywhere14:09
ssam2apart from when it updates refs in things I didn't want it to :/14:10
ssam2need to remember to use --deps=none14:10
ssam2or maybe it's saving me from building a different ref than I expected, which is good I guesd14:10
ssam2*guess14:11
persiajonathanmaw: For that package, the patches are stored in debian/patches in quilt(1).  While not every package is compliant, packages are supposed to annotate the format in debian/source/format, with most as "3.0 (quilt)", as it is in this case.15:49
persiaGenerally, the result of running `dpkg-source -x ${something}.dsc` should result in the patches being applied, although not every package is either policy compliant or designed to be operated on by folk not the maintainer (who may have opinions that result in slightly altered workflows).15:50
jonathanmawpersia: yep15:52
jonathanmawthough having a look at some pages, the solution for that in particular seems to be to set QUILT_PATCHES=debian/patches, and call `quilt push` until it fails15:53
jonathanmawbsdgames seems to have a specific problem that it gives "invalid argument" when it tries to chown the games to root:games. googling around throws up a load of stuff about nfs, so I'm guessing the overlayfs might be responsible somehow.15:57
jonathanmawI'm working around it by sedding debian/rules to change them to root:root15:57
jonathanmawand now I'm back to needing to mark dirs so that dpkg-deb can create them at an appropriate place15:59
jonathanmaweither that, configure them to put them somewhere else (maybe?), or replace dpkg-deb with a symlink to /bin/true16:00
persia`quilt push -a` saves having the loop in the calling program.16:00
jonathanmawaha!16:01
jonathanmawI didn't think of that16:01
jonathanmawta persia16:01
persiabsdgames uses setgid stuff, so be careful about granting the programs setgid root.16:02
jonathanmawpersia: yep, I wouldn't actually intend to use these on a running system.16:08
*** tlater has quit IRC16:34
*** jonathanmaw has quit IRC16:41
ssam2yay, i have a gnu toolchain stack17:04
ssam2i also like that I can `bst checkout gnu-toolchain ./tmp` and there it is17:05
*** ssam2 has quit IRC17:15
*** persia has quit IRC18:47
*** waltervargas[m] has quit IRC18:54
*** jjardon[m] has quit IRC18:54
*** albfan[m] has quit IRC18:54
*** mattiasb has quit IRC18:54
*** jjardon[m] has joined #buildstream18:57
*** mattiasb has joined #buildstream20:15
*** tristan has quit IRC20:39
*** waltervargas[m] has joined #buildstream21:07
*** albfan[m] has joined #buildstream21:08

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!