/srv/irclogs.ubuntu.com/2021/07/16/#ubuntu-devel.txt

TJ-is there a way to identify all reverse build-depends in the same way as 'apt-cache rdepends' works for binary packages? Specifically wanting to identify all packages that build-depend: bison | flex07:57
alkisgTJ-: if package a build-depends on b, the binary b is fetched, so there in that second step, you'd need "normal reverse depends", not "reverse build-depends"08:01
alkisgSo I think you could just grep for Build-Depends:.bison. in /var/lib/apt/lists/*source...08:02
alkisg*not "source reverse build-depends"08:02
alkisgEeeh OK I phrased it terribly but I think you get my meaning08:03
TJ-yeah, but that requires quite a lot of awk pre-post processing!08:04
TJ-actually, not so much! awk '/^Package:/{P=$2} /^Build-Depends:.*bison/{print P}' /var/lib/apt/lists/*source*08:05
mitya57TJ-: "reverse-depends -b packagename" with ubuntu-dev-tools installed08:05
TJ-thanks ... I'm sure there's a tool that does this too. build-rdeps in devscripts08:06
TJ-I hate it when I know I've used a tool in the distant past and cannot recall what it is, only how I used it!08:07
TJ-mitya57: that one too, thanks08:09
TJ-now for the interesting one ... the intersection of packages that reverse build-depend on both bison and flex !08:10
TJ-reverse-depends fails in 2 ways. output text is all over the place terminal, and stops with RecursionError: maximum recursion depth exceeded while calling a Python object"08:11
TJ-also seems like reverse-depends is sending to stderr not stdout08:12
alkisgIntersection with shell? `comm -3` can help...08:13
alkisgEeh, `comm -1 -2`08:14
TJ-looks like 'reverse-depends -b flex' will fail due to circular dependencies, but 'bison' is fine08:15
TJ-reverse-depends --list ... solves the recursion issue08:16
TJ-ok, so finally: " comm -3  <(reverse-depends -lb bison 2>&1 | sort) <(reverse-depends -lb flex 2>&1 | sort) "08:19
TJ-oops, wrong, alkisg  :)08:20
TJ-" comm -1 -2  <(reverse-depends -lb bison 2>&1 | sort) <(reverse-depends -lb flex 2>&1 | sort) "08:20
* alkisg needs to learn a few bashisms, they make scripts shorter :D08:21
TJ-most annoying is reverse-depends writing to stderr!08:21
alkisgTJ-: not sure if this workflow will also match packages that build-depend on "bison | flex" though (OR instead of AND)08:23
alkisg...but I guess that doesn't make sense... maybe some other variant08:23
TJ-Only want the conjunction - trying to accelerate learning how to use them together to create a 'mid-range' parser (not overly complex but not toy either)08:25
TJ-Now I have 444 packages to consider :s08:25
cjwatsonTJ-: You might find grep-dctrl useful08:29
cjwatsonIf you have the necessary Sources file inputs handy then it makes a lot of these sorts of queries fairly easy08:29
TJ-cjwatson: bingo! thanks, with the AND operator08:30
TJ-" grep-dctrl -s Package -F Build-Depends,Build-Depends-Indep bison --and flex /var/lib/apt/lists/*Sources " seems to do it08:32
TJ-although... with my former 'comm' the result is 444 lines whereas with grep-dctrl 54008:33
TJ-still it'll do for what I want it for :)08:33
cjwatsonBTW I normally add -w to avoid accidental substring matches08:36
cjwatsonAnd I think you probably want --and -F Build-Depends,Build-Depends-Indep flex, not just --and flex08:36
cjwatsonThat probably explains the excess matches08:37
TJ-ahhh, thanks, didn't realise it was filter-specific08:37
cjwatsonThere might also be some duplicates due to release vs. updates etc., so run through sort -u afterwards08:38
TJ-haha, reduced by 1! :)08:38
TJ-and ... 451 - thanks cjwatson  :)08:38
alkisgIf it's the first touch with flex/bison, I think online tutorials or notes from universities courses would be more helpful than existing code, as their syntax and semantics aren't really intuitive08:38
TJ-amazing how even after 16 7 years hacking on code you can learn something new like this :)08:39
TJ-alkisg: they're not; I need actual real usage examples. The tutorials are too basic for me08:39
alkisg👍️08:39
TJ-alkisg: I'm trying to determine if I'm making the correct choice since this may not be the optimal parsing method for my requirements - trying to avoid wasting time going down an avenue to later abandon it08:40
alkisgYeah, been there twice; once for implementing a pascal-like language for greece (where I found out that bison/flex didn't have unicode support at least back then), and later on while implementing an openmp compiler...08:41
alkisgBtw, may I ask about https://bugs.launchpad.net/snap-core20/+bug/1926355 one more time? (especially my comments #15 and #17). libc got updated in focal, then withdrawn, and the people that have that temporary release now have problems installing other packages like dkms or clang...08:48
ubottuLaunchpad bug 1926355 in glibc (Ubuntu Focal) "Snap applications segfault with new core20 (rev: 1015+)" [Undecided, In Progress]08:48
laneyhttps://bugs.launchpad.net/ubuntu/+source/heimdal/+bug/193493610:18
ubottuLaunchpad bug 1934936 in heimdal (Ubuntu) "package libwind0-heimdal 7.7.0+dfsg-2build1 failed to install/upgrade: trying to overwrite shared '/usr/share/doc/libwind0-heimdal/changelog.Debian.gz', which is different from other instances of package libwind0-heimdal:i386" [Undecided, Incomplete]10:18
laneythis seems legitimate10:18
laneylaney@raleigh> md5sum changelog.Debian.gz*10:18
laney9d8317066f8048a9efae252f5bb41f39  changelog.Debian.gz-amd6410:18
laneyebd19e846a9942d0a1c4366c03d45934  changelog.Debian.gz-i38610:18
laneywonder what's going on there10:19
laneyah the changelog truncation/symlinking stuff has broken it, good good10:23
xnoxjuliank:  i have a weird feeling about all of these fixes https://code.launchpad.net/~xnox/grub/+git/grub/+merge/405806 as if there must be typo somewhere. Doing test builds in a ppa.11:06
juliankxnox: all looks good to me11:06
juliankxnox: what do you think of this? https://paste.ubuntu.com/p/mJqSSb2HPP/ - I want to make shim-signed download from versioned url instead of current; such that we don't get stuck behind the arm64 cache for hours with an old version11:10
juliank./download-signed shim current shim signed11:10
juliankDownloading http://archive.ubuntu.com/ubuntu/dists/impish/main/signed/shim-amd64/15.4-0ubuntu7/SHA256SUMS ... found11:10
juliankIt works for me :)11:10
juliankI sure hope it doesn't cache the 404s11:12
cjwatsonI don't think the squid config is that bad11:13
juliankWondering if I need to URL quote + characters or stuff11:15
juliankarguably they don't appear in shim versions, so meh11:16
xnoxjuliank:  i like that.11:17
xnoxjuliank:  i used to have that, but it was pain to constantly bump numbers, hence switched to current.11:17
juliank xnox ack, will upload :)11:18
xnoxcjwatson:  is there a header we can set "X-Squid-Please-Fetch-Latest: yes" ?11:18
juliankFiled https://bugs.launchpad.net/ubuntu/+source/shim-signed/+bug/1936640 for SRU tracking purposes :)11:18
ubottuLaunchpad bug 1936640 in shim-signed (Ubuntu) "Download signed version from versioned URL" [Undecided, New]11:18
juliankxnox: We can actually set cache-control headers, yes, but this works more nicely I think11:18
xnoxor i think we should adjust expiry on signed.gpg tarballs.11:18
xnoxor i think we should adjust expiry on signed tarballs.11:18
cjwatsonxnox: "Pragma: no-cache" does that, but I think versioning the URL is better if possible11:19
xnoxack11:19
cjwatson(or should do that - I haven't actually tested in this particular case but it would be usual)11:20
juliankIf that squid cached 404s for multiple hours, that would be a bug anyway IMO11:20
cjwatsonI think that is unlikely11:20
cjwatsonI would prefer not to get into having to manually tweak the config on these squids - they're pretty obscure and hard to debug11:21
juliankWe'll see if it works when the SRUs build :)11:21
xnoxdoko:  to test that my lto stuff works correctly, i should first upload the lto list package that drops grub2 into my ppa, right?11:22
cjwatsonjuliank: URL quoting: you should do Python urllib.parse.quote or equivalent11:22
juliankI'll leave that to a future cycle I suppose11:24
juliankWe never get any special characters in those shim versions because they always upload to devel and get binary copied anyway11:24
juliankI wish I could also binary-copy the signing tarballs11:24
cjwatsonYeah, but it's good software engineering to do quoting properly11:24
xnoxat the moment we generate new signing in -proposed, -updates, -release pockets.11:30
xnoxand different series could have different EFI keys.11:31
juliankcool11:31
xnoxand different GPG archive publishing signing keys11:31
xnoxit is a bit of a side channel. generating multiple signatures for the same data, but with just a different timestamp for the sig.11:31
juliankI don't want to quote now, as I don't want to dig into what uses the potentially quoted values in the script, and there's no use atm11:31
juliankeither way, it was wrong before when we explictly passed version instead of current anyway11:32
xnoxjust don't introduce and epoch11:42
xnoxjust don't introduce an epoch11:42
cjwatsonThe correct point to quote is when assembling the URL11:42
juliankI don't know, I think the correct point is to quote each path component11:49
julianke.g. "%s/%s" % (quote a, quote b) vs "http://server" + quote("%s/%s" % (a,b))11:49
juliankxnox: Do you remember what grub2-signed I need for SBAT; i.e. is >= 1.167~ enough?11:56
juliankI guess so11:57
juliank1.167 was ubuntu44, and ubuntu42 added SBAT11:59
cjwatsonjuliank: each path component> yes, that's what I meant, just at the stage of assembling the URL12:11
cjwatsonobviously not quoting the full URL, that just wouldn't work12:11
juliankcjwatson: yeah, we build the path first and not sure if we use it outside the URL, so meh12:11
juliankxnox: this was crazy https://git.launchpad.net/~ubuntu-core-dev/shim/+git/shim-signed/diff/?id=1.37_18.04.9&id2=1.37_18.04.812:11
juliankI think I got everything right, though12:12
juliankBasically replaced everything with 1.50 and then backported it :D12:13
juliankmaybe should have called it 1.50~18.04.012:13
juliankanyhow, it works :)12:13
xnoxlooks good.12:23
xnoxjuliank:  and my grub2 build failed in PPA. glad I uploaded it into the ppa.12:23
juliankvery good12:23
=== cjwatson_ is now known as cjwatson
laneyxnox: opinions on skipping changelog symlinking for MA: same packages?14:54
rafaeldtinocostgraber: is there a place images for old fedoras (already EOL) are moved to (instead of being fully removed from images repo) ?15:26
rafaeldtinocofedora 30/31/32...15:27
rafaeldtinocobtw lxd rocks: https://usercontent.irccloud-cdn.com/file/MSgXxmlB/image.png15:27
rafaeldtinocothe virtiofs integration is super smooth15:29
stgraberrafaeldtinoco: sadly, no. We have limited amount of space on the various servers so 10 days after we stop building a distro image, it's gone. You could still grab the YAML from the lxc-ci repository and build yourself a new image with distrobuilder though16:23
xnoxlaney:  urgh. i bet it is unpredictable because we build different number of packages on i386 vs amd64.16:26
xnoxlaney:  i kind of feel those packages should just have -dev package have a symlinked the whole /doc/ dir to the lib one.16:27
xnoxlaney:  using the debian policy compatible --doc-main-package=main-package16:28
xnox(aka compat 11)16:28
xnoxor like --link-doc=package16:28
xnoxsorry, the --link-doc=package option (the doc-main-package is something else)16:28
rafaeldtinocostgraber: tku!16:32
laneyxnox:  you mean you want to find all packages that might be affected, and fix them to use link-doc?16:33
=== lucas_ is now known as lucascastro
=== rZZZr is now known as RzR
=== genii is now known as genii-core
xnoxlaney:  i guess it is all of main, m-a:same which is a lot.22:01
xnoxlaney:  next question, why is amd64 got processed in a different order from i386? cause normally there are all started in parallel, but maintain a lock file to do certain things in the order that packages appear in debian/control.22:02

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