[04:56] <mborzecki> morning
[06:12] <mup> PR snapd#8962 closed: tests: allow to add a new label to run nested tests as part of PR validation <Run nested> <Skip spread> <Created by sergiocazzolato> <Merged by bboozzoo> <https://github.com/snapcore/snapd/pull/8962>
[07:01] <pstolowski> morning
[07:03] <mborzecki> pstolowski: hey
[07:03] <mborzecki> pstolowski: is it as cold at your place?
[07:03] <mvo> good morning pstolowski and mborzecki
[07:03] <mborzecki> mvo: hey
[07:04] <mborzecki> mvo: i need to push one more tweak to https://github.com/snapcore/snapd/pull/8883
[07:04] <mup> PR #8883: packaging: stop snapd early on purge <Test Robustness> <Created by mvo5> <https://github.com/snapcore/snapd/pull/8883>
[07:16] <mvo> mborzecki: can you +1 8883 if you are happy with it?
[07:16] <mvo> (please :)
[07:17] <mup> PR core20#75 opened: 030-fix-timedatectl.chroot: fix quoting issues <Created by mvo5> <https://github.com/snapcore/core20/pull/75>
[07:19] <mborzecki> mvo: i'll push the last tweak, let me know what you think about it
[07:23] <mvo> mborzecki: ok
[07:23] <mborzecki> mvo: funny, that since we moved DEBHELPER in postrm earlier, there's no systemd daemon-reload happening after we remove the service/mount units
[07:24] <mborzecki> btw. zyga wrote me he's had a hard night and it's fully up yet
[07:27] <mborzecki> mvo: pushed https://github.com/snapcore/snapd/pull/8883/commits/f1897983d9d79b96d0b9306cf4fdf9711d729f46
[07:27] <mup> PR #8883: packaging: stop snapd early on purge <Test Robustness> <Created by mvo5> <https://github.com/snapcore/snapd/pull/8883>
[07:29] <mborzecki> taking the kids for a dentist checkup, back in 1h or so
[07:39] <pstolowski> mborzecki: yeah, 14C
[07:40] <zyga> hello
[07:40] <zyga> sorry for starting late, I'm very tired lately
[07:40] <zyga> it's hard to sleep
[07:40] <mvo> mborzecki: thank you
[07:41] <zyga> hey mvo, good morning :)
[07:41] <mvo> mborzecki: nice one!
[07:41] <mvo> zyga: good morning
[07:54] <zyga> mborzecki: https://github.com/snapcore/snapd/pull/8977 needs reviews
[07:54] <mup> PR #8977: cmd/snap: track started apps and hooks <Created by zyga> <https://github.com/snapcore/snapd/pull/8977>
[07:54] <zyga> mborzecki: it's somewhat more complex than initially assumed but I think what is there now is acceptable
[07:56] <zyga> PSA: it seems that actions are buggy wrt refreshing the tree sometimes
[07:56] <zyga> pushing new patches clearly seems to test older versions
[07:56] <zyga> I will update the workers to use the latest stable agent later today
[07:58] <zyga> mborzecki: I will dig into systemd to find and report the bug
[08:16] <mborzecki> re
[08:17] <mborzecki> mvo: looks like it's green on ubuntu & debian
[08:18] <mborzecki> zyga: pstolowski: can you take a look at https://github.com/snapcore/snapd/pull/8883  ?
[08:18] <mup> PR #8883: packaging: stop snapd early on purge <Test Robustness> <Created by mvo5> <https://github.com/snapcore/snapd/pull/8883>
[08:18] <zyga> mborzecki: sure
[08:18] <mvo> mborzecki: thank you, yeah, it needs review(s)
[08:20] <zyga> mborzecki: I think this is wrong
[08:20] <zyga> mborzecki: we placed debhelper there for a reason
[08:20] <zyga> mborzecki: remember that stopping systemd units of snaps may require snapd to be up
[08:20] <pstolowski> yep
[08:21] <zyga> mborzecki: I think it needs to be more elaborate :/
[08:21] <zyga> mborzecki: also remember that snap reexec will come into play
[08:21] <zyga> so we must not unmount core/snapd before stopping any service units
[08:21] <zyga> as those will wait on system key mismatch
[08:22] <zyga> perhaps it's time to bail out of the debhelper helper entirely
[08:22] <zyga> or move it to the very bottom after we've done everything ourselves
[08:23] <zyga> mborzecki: does this make sense?
[08:31] <pstolowski> i'm afraid i cannot comprehend possible effects of this PR
[08:33] <zyga> mborzecki: added a comment
[08:35] <pstolowski> me too
[08:39] <mborzecki> zyga: hm snapd.socket/service are masked, so the stop comand, even if it tries to poke snapd, should fail right away
[08:39] <mborzecki> zyga: iow, there's no socket to talk to
[08:40] <mborzecki> zyga: and since the units are masked, they won't be started by accident
[08:45] <zyga> mborzecki: masking is fine, but I think the remove sequence should first reduce the system to equivalent of "snap remove --all-the-snaps"
[08:45] <zyga> and then remove just snapd as it does now
[08:50] <mborzecki> zyga: hm but isn't that what it does currently?
[08:51] <zyga> not quite, we never remove the snaps, we just unmount and delete them (e.g. hooks don't run)
[08:51] <zyga> but on a bigger note, I strongly think we should not stop snapd while we do the purge, only at the very end
[08:52] <zyga> could purge really be "snap remove --purge --all-snaps" followed by ##DEBHELPER## ?
[08:54] <mborzecki> zyga: not really, there's no snap command at this point
[08:54] <zyga> because .postrm?
[08:54] <mborzecki> yup
[08:54] <zyga> I see
[08:54] <zyga> I mean we could adjust prerm/postrm
[08:54] <mborzecki> zyga: you could do it in prerm, but snapd is on it's way out, so why bother?
[08:55] <zyga> mborzecki: because there's one implementation then
[08:55] <zyga> not two
[08:55] <zyga> mount namespaces are discareded, hooks run
[08:55] <zyga> data is removed
[08:55] <zyga> right now all the shell scripts need to reimplement that
[08:55] <zyga> in addition, snapd should stop / abort all background refresh tasks
[08:55] <mborzecki> zyga: what you're describing needs to run in prerm
[08:55] <zyga> I agree
[08:56] <zyga> I guess I'm saying we are here because what we got is complex and buggy
[08:56] <zyga> and I'm looking for a way to make it simple and not buggy
[08:56] <zyga> by piggy-backing on the existing machinery
[08:56] <zyga> in addition, this needs to be implemented in all the distro scripts
[08:57] <zyga> one other thing prerm could do is to ask you if you want to retain snapshots or not
[08:57] <mborzecki> zyga: so first we probably need ot know why postrm cleans up the stuff and not prerm
[08:57] <zyga> (debconf)
[08:57] <zyga> good point
[08:57] <mborzecki> zyga: secodnly, can we expect snapd to be running at all in prerm
[08:57] <zyga> it may be running or not
[08:57] <zyga> if it doesn't run we could just not remove things
[08:58] <zyga> it's not the best outcome but I think that's unavoidable
[08:58] <mborzecki> zyga: but we can't leave things behind, can we? that's the whole point of purge aiui
[08:58] <zyga> well, it depends
[08:58] <zyga> I think we should take a step back
[08:59] <zyga> and look at what those scripts should do
[08:59] <zyga> and separately fix the immediate problem
[08:59] <zyga> where purge is racy
[08:59] <zyga> perhaps we come to a conclusion that problem #2 is really problem #1
[08:59] <zyga> perhaps there's a shorter intermediate path we can take
[09:07] <mborzecki> zyga: hm, tbh i thin i can move the debhelper in postrm back, it's not really changing anything
[09:07] <zyga> mvo: ^ perhaps we need your opinion and wisdom
[09:11] <mvo> zyga: slightly busy right now .( sorry, I can have a look in a bit, could you summarzize the input in the PR?
[09:11] <zyga> mvo: I did already, we're wondering what to do about the pre/post rm scripts
[09:16] <zyga> mborzecki: are centos8 failures expected now?
[09:17] <mborzecki> zyga: something new?
[09:17] <zyga> not specific, just mostly red tests across PRs
[09:28] <zyga> mborzecki: https://github.com/snapcore/snapd/pull/8981#pullrequestreview-444566073
[09:28] <mup> PR #8981: boot, bootloader: query kernel command line of run mod and recovery mode systems <UC20> <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/8981>
[09:38] <pedronis> mborzecki: I did a pass on #8947, some questions/comments there
[09:38] <mup> PR #8947: many: update managed boot config when refreshing snapd <UC20> <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/8947>
[09:38] <mborzecki> pedronis: thanks
[09:38] <mborzecki> zyga: thanks for the review too
[09:55] <pedronis> mborzecki: pstolowski: I made the follow to my PRs: #8987
[09:55] <mup> PR #8987: asserts: small improvements and corrections for sequence-forming assertions' support <Created by pedronis> <https://github.com/snapcore/snapd/pull/8987>
[09:56] <pstolowski> ack
[09:58] <mup> PR snapd#8987 opened: asserts: small improvements and corrections for sequence-forming assertions' support <validation-sets :white_check_mark:> <Created by pedronis> <https://github.com/snapcore/snapd/pull/8987>
[10:02] <zyga> pstolowski: https://github.com/snapcore/snapd/pull/8979#pullrequestreview-444594855
[10:02] <mup> PR #8979: tests: more checks in core20 early config spread test <Test Robustness> <Created by stolowski> <https://github.com/snapcore/snapd/pull/8979>
[10:05] <pstolowski> ty
[10:18] <zyga> I need reviews for 8977
[10:18]  * zyga dives into https://github.com/snapcore/snapd/pull/8843
[10:18] <mup> PR #8843: [RFC] many: export tools from core/snapd to mount namespaces <Needs Samuele review> <Created by zyga> <https://github.com/snapcore/snapd/pull/8843>
[10:38] <zyga> eh, conflicts
[10:40] <zyga> snapstate_test.go conflicts are fun
[10:43] <mup> PR snapd#8985 closed: snap/validate.go: disallow snap layouts with new top-level directories <Bug> <Created by anonymouse64> <Merged by anonymouse64> <https://github.com/snapcore/snapd/pull/8985>
[10:44] <zyga> brb, break
[10:49] <mborzecki> zyga: tumbleweed seems to be failing, xdg-desktop-portal package is no longer present?
[10:49] <zyga> dunno
[10:49] <zyga> maybe a new image?
[10:55] <zyga> ok, coffee and back in a moment
[10:55] <zyga> gotta rebase that thing
[11:16] <zyga> re
[11:16] <pstolowski> doh, we're hitting 'unknown nfs option' error on debian sid on 2.45, that was fixed in master some time ago
[11:20] <mborzeck1> pfff power outage
[11:21] <mborzeck1> ofc, synchronized home dirs like an hour ago, so missing the latest code changes
[11:23] <zyga> synchronized?
[11:23] <zyga> as in sync?
[11:24] <mborzeck1> yeah
[11:25] <zyga> as in write from ram to disk?
[11:25] <mborzeck1> zyga: no, as in synchronize the content of $HOME between my laptop and the desktop
[11:25] <zyga> ahh
[11:32] <mup> PR core20#75 closed: 030-fix-timedatectl.chroot: fix quoting issues <Created by mvo5> <Merged by xnox> <https://github.com/snapcore/core20/pull/75>
[11:35] <mborzeck2> pfff
[11:35] <zyga> hmm?
[11:36] <mborzeck2> power comes back, and it's off a minute later
[11:36] <mborzeck2> and there's no even a thunderstorm or strong wind
[11:37] <zyga> haha
[11:37] <zyga> it's very common when guys are fixing power lines
[11:59] <mup> PR snapd#8988 opened: many: use more specific check for unit test mocking <Bug> <Test Robustness> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8988>
[12:14]  * zyga has a cool idea  :)
[12:25] <realtime-neil> How does one build snapcraft from source?
[12:29] <mup> PR snapd#8981 closed: boot, bootloader: query kernel command line of run mod and recovery mode systems <UC20> <Created by bboozzoo> <Merged by cmatsuoka> <https://github.com/snapcore/snapd/pull/8981>
[12:39] <zyga> drat,
[12:39]  * zyga ran out of space
[12:39] <zyga> realtime-neil: hey
[12:39] <zyga> I presume with snapcraft but for best advice please ask on the #snapcraft channel
[12:39] <realtime-neil> zyga: whoops, sorry
[12:41] <diddledan> realtime-neil, do you mean the snapcraft utility to build snaps or the snapd daemon that mediates a system and the snaps installed upon it?
[12:42] <diddledan> for snapcraft the utility to build snaps, it's python so there isn't much building required - the best way to build that is to use snapcraft itself to build it into a snap (chicken and egg, meet catch 22)
[12:43] <realtime-neil> diddledan: probably all of the above, modulo the topological sort along dependencies.
[12:44] <realtime-neil> diddledan: what would the workflow look like for someone trying to bootstrap from, say build-essential ?
[12:45] <zyga> realtime-neil: what are you trying to achieve?
[12:45] <diddledan> it depends what you want to work on
[12:45] <zyga> note that snapcraft is now a snap, not a classic package
[12:46] <zyga> so it's not using the traditional methods of building
[12:46] <realtime-neil> zyga: yeah, I'm noticing that from the more recent (early 2019) tutorials I find.
[12:46] <realtime-neil> zyga: I'm trying to achieve better understanding I like knowing where these things come from
[12:47] <zyga> realtime-neil: well, that's pretty easy, both are in github.com/snapcore/{snapcraft,snapd}
[12:47] <zyga> one is python the other is go, mostly
[12:47] <zyga> each with their own deps
[12:47] <zyga> I assume you understand the difference between those but ask if you want to know more
[12:48] <zyga> snapd is built into several distinct ways depending on the purpose
[12:48] <zyga> I don't know much about snapcraft though
[12:48] <realtime-neil> you assume correctly, and I was having trouble finding those repos from the snapcraft.io site, so thanks
[13:01] <zyga> cachio: standup
[13:01] <diddledan> no, sit down!
[13:29] <mup> PR snapd#8987 closed: asserts: small improvements and corrections for sequence-forming assertions' support <validation-sets :white_check_mark:> <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/8987>
[13:34] <mup> PR snapd#8989 opened: osutil/systemd: add new pkg and systemd.EscapePath <Simple 😃> <UC20> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8989>
[14:05] <mborzecki> do we ahve grub-editenv packaged as a snap maybe?
[14:05] <mborzecki> s/ahve/have/
[14:24] <mup> PR snapd#8989 closed: osutil/systemd: add new pkg and systemd.EscapePath <Simple 😃> <UC20> <Created by anonymouse64> <Closed by anonymouse64> <https://github.com/snapcore/snapd/pull/8989>
[14:36] <pedronis> pstolowski: mborzecki: thanks for the reviews of the validation-set PRs
[14:36] <mborzecki> pedronis: yw
[14:37] <zyga> mborzecki: can you re-review https://github.com/snapcore/snapd/pull/8977
[14:37] <mup> PR #8977: cmd/snap: track started apps and hooks <Created by zyga> <https://github.com/snapcore/snapd/pull/8977>
[14:37] <zyga> I'd love to make progress on that front and I think this step is ready
[14:39] <mup> PR snapd#8990 opened: systemd/escape: fix issues with "" and "\t" handling <Bug> <Simple 😃> <Test Robustness> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8990>
[14:56]  * cachio lunch
[15:08] <pstolowski> pedronis: yw
[15:59] <pstolowski> hmm i could swear we had a helper for human-friendly unit (kB, mB...) output but cannot find it
[16:00] <pstolowski> maybe i confused it with helpers for time
[16:02] <pstolowski> ah, got it, SizeToStr in strutil
[16:04] <mup> Bug #1886840 opened: classic confined snap can't access audio devices <Snappy:New> <https://launchpad.net/bugs/1886840>
[16:07] <mup> Bug #1886840 changed: classic confined snap can't access audio devices <Snappy:New> <https://launchpad.net/bugs/1886840>
[16:13] <mup> Bug #1886840 opened: classic confined snap can't access audio devices <Snappy:New> <https://launchpad.net/bugs/1886840>
[17:09] <jdstrand> oSoMoN: hey, fyi, 20200706-1602UTC is now in prod (thanks roadmr!) so you should be able to use system-packages-doc now
[18:05] <oSoMoN> jdstrand, excellent, thanks!
[18:45]  * cachio -> kenesiologist
[18:45] <mup> PR snapd#8991 opened: tests: preinstall shellcheck and run tests on focal <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/8991>
[18:49] <mup> Bug #1886840 changed: classic confined snap can't access audio devices <snapd:New> <https://launchpad.net/bugs/1886840>
[19:49] <mup> PR snapcraft#3207 opened: packaging: use PEP-440 compliant versioning for python & snap <Created by cjp256> <https://github.com/snapcore/snapcraft/pull/3207>
[21:09] <mup> PR snapcraft#3207 closed: packaging: use PEP-440 compliant versioning for python & snap <Created by cjp256> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/3207>
[21:19] <mup> PR snapcraft#3208 opened: snap: set PATH for snapcraft command <bug> <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/3208>