[04:32] PR snapcraft#2733 closed: cmake plugin: support disable-parallel option === vicamo_ is now known as vicamo [06:30] morning === pedronis_ is now known as pedronis [07:03] hey [07:03] I'm sick but I will try to get some work done today [07:04] no promises, it's a day off === pstolowski|afk is now known as pstolowski [07:05] mornings [07:06] zyga: pstolowski: hey [07:07] hey :) [07:07] zyga: why don't you type in /quit in your irc client ;) [07:07] I hate being sick [07:07] mborzecki, that's a good question [07:07] :P [07:07] heh :P [07:08] well, that was interesting [07:25] pstolowski: 2.41+ has the unset option support ? or was it 2.40+ ? [07:27] degville: pstolowski: I'm adding some mention of how unsetting work to https://forum.snapcraft.io/t/system-options/87 as well [07:32] pedronis: 2.41 [07:32] pstolowski: thx, it's what I used, were there bugs with it and system that we fixed only in 2.42 ? [07:35] pedronis: and thanks for updating the forum; nb i announced it before here https://forum.snapcraft.io/t/configuration-of-snaps-new-commands-for-unsetting/13118 and updated the docs (links in the annoncement) [07:35] pstolowski: yes, I saw the new docs, but somebody at some asked in the system options how to unset them [07:35] and we had some example at the top of how to set/get, so just added unset and ! there too [07:36] anyway degville is free to tweak/remove if he deems it annoying [07:38] pedronis: yes, there was a bugfix for system i made on 11th Sep (so not in 2.41), but it was minor - you could unset unknown (unsupported) options and it wouldn't complain, whereas snap set errors out in such cases [07:38] ok, thx [07:39] pedronis, moaning ... :) ... i assume there are no plans to turn Ubuntu Core into multi-user systems ? .... https://forum.snapcraft.io/t/passwd-command-error-in-app-snap/13408/7 [07:41] pedronis: thanks for letting me know about the updates! I'll take a look. [07:51] degville: unrelated, did you see this: https://forum.snapcraft.io/t/is-snapd-forward-compatible-with-new-app-interfaces/10498/4 [07:57] pedronis: ah, thanks. I'll update the snap.yaml reference. [08:04] moin moin [08:22] degville: do you know who maintains https://ubuntu.com/download/iot/kvm ? [08:24] zyga, at the very bottom there is a "report a bug on this site" (most right option) [08:25] thanks! [08:30] Chipaca: hi, could you pin this from jdstrand for some reasonable time: https://forum.snapcraft.io/t/upcoming-pulseaudio-interface-deprecation/13418 [08:30] pedronis: how much is reasonable time? [08:30] a month? [08:30] six? [08:31] 3 years, like the first crusade? [08:31] Bug #1626986 changed: snapd should allow snaps to define systemd unit alias names [08:31] Bug #1627218 changed: snap refresh does not pull the latest betas [08:31] * ogra hugs Chipaca .... i was really a bit lost with that passwd thread [08:31] Chipaca: 3 weeks [08:32] pedronis: pinning until oct 21, ie the first monday after 3 weeks [08:32] thx [08:34] Bug #1627643 changed: oops on pi3 (seemingly wlan related) [08:35] pedronis: there's also "banner" topics which are even more prominent, fwiw [08:36] there can only be one banner topic, there can be multiple pinned ones [08:36] currently there are two globally-pinned topics; the other is the "welcome!" one [08:36] Chipaca: ok, pinning seems fine though [08:43] pedronis: the policy PR always uses current for boot.InUse, which is wrong :-| need to change the api, probably [08:43] explicit revision needed or sth [08:45] zyga: probably the web design team (sorry for the delay, I'm actually on a swap day and I've biked over to the cinema). [08:53] pedronis: ok, advice needed: currently (in the PR) CanRemove takes a boolean 'all'. What's actually needed is *either* that boolean, *or* the index into Sequence (or the revision meant to be removed, but the index makes it unnecessary to return a lookup error). I could: 1. add a parameter, 2. change the boolean to an index, -1 meaning all; 3. change the boolean to a *Revision, nil meaning all; 4. ad-hoc opts struct that would need validating and thus [08:53] add an error return. Leaning to (2) myself. [08:53] 5. somehting else i didn't think of :) [08:54] Chipaca: variation on 2? pass a revision with unset meaning all? [08:55] well really 2+3 [08:55] pedronis: and add an error return / change it from returning bool to error, nil==ok (gives us error message) (feels like big api change, maybe squash the error and do the error return later) [08:55] yes this is stream-of-conciousness irc [08:56] Chipaca: remember it's used in exactly one place [08:56] unset meaning all sgtm fwiw [08:56] so I would add the error now [08:57] pedronis: we have a TODO to report *why* you can't remove, so I'd change it to return an error with the why while I'm at it [08:57] instead of the bool i mean [08:57] ok [08:57] ok! on it [08:57] pedronis: is CanRemove still the right name for something that returns error? [09:03] hmm yum command line argument parsing seems broken [09:03] Chipaca: we tend to use Check for those situations but I'm not sure we are super consistent, maybe grep ? [09:03] I mean Check* [09:03] yah, will do [09:04] centos guys have pushed a systemd build that potentially fixes the issue we've been seeing, but passing --enablerepo=fasttrack in our pkgdb.sh seems to behave rather funny [09:08] sigh, need to tweak the api of boot.InUse :-) [09:08] more coffee first === vicamo_ is now known as vicamo [09:28] Bug #1632508 changed: Get a way to differentiate uninstall/shutdown from snap update in stop script [09:28] Bug #1633111 changed: Missing API documentation for /v2/snaps/[name] POST [09:29] Chipaca: is the REST api documented on the forum? [09:29] zyga: no, the wiki [09:31] Chipaca: the github wiki? [09:31] ah, I see it at https://github.com/snapcore/snapd/wiki/REST-API [09:32] zyga: and, it's always out of date :-| [09:32] but, it's a good place to start [09:32] zyga: why? [09:33] Chipaca: when spread churns I'm looking at bugs https://bugs.launchpad.net/snapd/+bug/1633111 [09:33] Bug #1633111: Missing API documentation for /v2/snaps/[name] POST [09:44] Bug #1635011 changed: /v2/changes/ is not documented in rest.md [09:44] PR snapd#7523 opened: sandbox/selinux: move SELinux related bits from 'release' to 'sandbox/selinux' [09:45] zyga: ^^^ [09:45] mborzecki: ack [09:47] Bug #1647139 changed: CalledProcessError: Command '['/usr/bin/sudo', '/usr/sbin/chroot', '/home/buildd/build-SNAPBUILD-12520/chroot-autobuild', 'linux64', '/bin/sh', '-c', 'cd /build/qucs-spice && env LANG=C.UTF-8 https_proxy=http://snap-proxy.launchpad.net:3128 [09:47] http_proxy=http://snap-proxy.launchpad.net:3128 SNAPCRAFT_LOCAL_SOURCES=1 snapcraft pull']' returned non-zero exit status 1 [09:47] mborzecki: +1 [09:47] zyga: seccomp is the last bit that's still under release [09:47] not for long though :) [09:50] Bug #1697770 changed: can't run juju from snap: "Too many levels of symbolic links" [09:53] Bug #1740130 changed: Use XDG set profile folders [10:02] Chipaca: can help with those questions you sent in the PR? notice that gadget doesn't apper in any boot env stuff, so not sure how in use would help [10:02] pedronis: d'oh. ok, for gadget. What about kernel? [10:02] pedronis: we're checking both [10:03] PR snapd#7524 opened: tests: add unit test for gadget defaults with a multiline string [10:03] Chipaca: both, what both? [10:03] or which both? [10:03] pedronis: boot.InUse and model.Kernel [10:04] that sounds ok [10:04] pedronis: isn't it redundant? [10:04] doesn't InUse need a revision? [10:04] pedronis: yes [10:05] so what if it's all [10:05] pedronis: (although i've modded it locally to take unset to mean 'any' [10:05] hmmm [10:05] maybe i've overcomplicated things then :-) [10:05] yes [10:05] likely [10:05] :-) [10:06] if all, check model, if revision check in use [10:06] something like that? [10:06] yeah, i'll make that explicit [10:06] just so i don't forget again [10:07] core, boot base and kernel should have similar rules [10:07] (except core has rules for classic too) === arnatious_ is now known as arnatious [10:26] pstolowski: I updated #7468 and answered sthe comments [10:26] PR #7468: seed/seedwriter: support local snaps [10:26] ty [10:27] ah [10:27] I learned something about mount namespaces just now [10:27] man that stuff is tricky [10:27] it's just super tricky [10:28] on the upside this is invaluable to fixing bugs [10:28] details shortly, let me write them down [10:34] PR snapd#7522 closed: httputil: set user agent for CONNECT [10:36] anyone with power to cherry-pick and push to 2.42? [10:38] 2.42 the branc? [10:38] anyone [10:38] the release? it's an SRU [10:38] I must misunderstand your question [10:38] zyga: hm afaik direct git push to the repo only works for mvo [10:39] oh, that's new then [10:39] I guess you can propose a PR instead [10:39] just target 2.42 [10:39] mhm, opening right now [10:39] yeah, why not PR? [10:39] pstolowski: bc we don't need to run spread then [10:40] mborzecki: bad bad ;) [10:40] naughty :) [10:40] PR snapd#7525 opened: tests: disable {contacts,calendar}-service tests on Arch Linux (2.42) [11:10] pedronis: so... https://github.com/snapcore/snapd/blob/master/overlord/snapstate/snapstate_test.go#L11132 [11:10] pedronis: i just broke that test :-| [11:14] granted it passed by accident before, but it feels like an actual case we want to work [11:14] that is: current boot kernel is not (no longer) the model kernel, you shouldn't be able to 'snap remove' it yet [11:14] actually could be no longer or not yet, either way [11:22] Chipaca: sorry, how did it work before and how doesn't anymore? [11:22] pedronis: as per above, i no longer call boot.InUse if the revision is unset [11:23] pedronis: it worked up to this point because i'd use snapst.Current as the revision for InUse [11:24] pedronis: sounds like i do need to tweak boot.InUse to check any when unset (could be in a separate pr) [11:24] Chipaca: I'm not sure that test make sense [11:25] that would make life easier :-) [11:26] Bug #1845636 opened: connect-plug-i2c hook failing [11:26] if there is a kernel-to-be in a remodel conflicts should prevent to remove it, toward the end of the remodel it becomes in use (at which point checking for any on the other side doesn't) and at the very end we atomically switch the model [11:27] the current kernel is still the one from the model except inside the remodel itself [11:27] until the remodel is done [11:27] at some earlier point as I said it stops to be in use [11:28] PR snapd#7526 opened: cmd/snap-confine: allow digits in hook names [11:28] Chipaca: we let you remove by revision only non-current revisions no? [11:29] Bug #1845636 changed: connect-plug-i2c hook failing [11:29] pedronis: correct [11:30] Chipaca: it might be that we need to turn that description I just made into a set of CanRemove tests [11:30] or really Remove tests [11:30] that show you can remove what you expect at various points of the switching [11:30] with a remodel going on you mean? [11:30] well doesn't mean to be a real one [11:30] but to simulate something close enough [11:31] afaict the test you pointed at doesn't correspond to a possible state [11:31] (unless bugs) [11:35] Bug #1638988 changed: Cannot run spread hello world on all-snaps image [11:37] zyga: don't we have an interface for lxc? [11:38] Chipaca: not one that would allow you to run lxc-the-command-line-tool [11:38] Chipaca: that's a general property btw [11:38] zyga: even if you shipped it? [11:38] zyga: just lxc, not lxd [11:38] Bug #1638796 changed: mir clients that use cpu renderable surfaces don't work under confinement [11:39] Chipaca: if you shipped it it might work but that's not what the bug is about [11:39] zyga: i've got my spread-snap-contributor hat on [11:39] Chipaca: casual combination of tools shipped as snaps is not supported [11:39] Chipaca: when that combination is packaged as a snap [11:40] Chipaca: if we expand spread to talk to lxc/d directly it's something to consider but I think that's not high priority [11:40] PR snapd#7527 opened: interfaces/input: support confined snaps accessing keyboard and mouse directly [11:40] zyga: i don't understand what you mean there [11:40] zyga: spread has an lxd backend [11:40] we already expect it to talk to it [11:41] Chipaca: yes but that backend just invokes lxc as a new process [11:41] Chipaca: if we agree on that, that's exactly what is not supported in snapd [11:41] zyga: right, so if we ship lxc in the spread snap, that should work if we get the interface [11:41] Chipaca: yes, that's correct [11:41] zyga: sounds like an easy win, i'll see if i find time to do it [11:42] Chipaca: if you want to, sure. I was just triaging old bugs as I wait for spread runs [11:42] Chipaca: IMO we should explore how not changing the spread snap to ship lxc could be supported [11:42] Chipaca: it's a more complex problem though [11:42] Chipaca: involving lots of variables like API stability of the cli, passing resources, observing children termination, etc [11:43] Chipaca: it would, however, allow us to handle this generally [11:43] * zyga looks at the next PR [11:54] Chipaca: IMO osutil.StreamsEqual is buggy [11:54] zyga: oh? do tell [11:54] Chipaca: it uses ReadAtLeast with a buffer size of 16K [11:55] ah, sorry [11:55] just scrolled down to see the error handling :E [11:56] zyga: you mean the one that comes right after the six-line comment explaining the situation? [11:56] yeah, I was scrolling down and reached the pair of ReadAtLeast [11:56] and got curious about the buffer size [11:56] anyway, go have lunch, sorry for the noise [11:57] 👋 [12:16] PR snapd#7528 opened: overlord/snapstate: have more context in the errors about prerequisites [12:20] not quite simple but not too big ^ [12:20] something sergiusens pointed out [12:46] PR snapd#7521 closed: [RFC] many: use --root as first arg to systemctl everywhere [12:56] pedronis: I will skip the standup, conflict [12:57] zyga: I will also be in the conflict [12:57] ok :) [12:57] Chipaca will drive the standup today [13:06] Chipaca: wrt spread lxd, if you ship the lxc binary and your lxd backend is a non local remote, you don't need any interface [13:07] Chipaca: heh, using local would only require being able to talk to the socket === ricab is now known as ricab|lunch [13:18] PR snapcraft#2732 closed: project: use os.sched_getaffinity instead of multiprocessing.cpu_count [13:37] jdstrand: can you please enqueue https://github.com/snapcore/snapd/pull/7421 [13:37] PR #7421: cmd/snap-confine: unmount /writable from snap view [13:37] jdstrand: you reviewed that before, v2 is simpler and should be good-to-go [13:38] zyga: I think he is swapping today [13:38] pedronis: yeah, I was just checking since he's away on IRC [13:38] that's fine [13:39] I'll ask next week [13:58] kenvandine: ok so the fix did indeed seem to work, let us know if you run into any more issues (or whenever you want us to add new snaps :D) [14:09] PR snapd#7526 closed: cmd/snap-confine: allow digits in hook names === ricab|lunch is now known as ricab [14:48] Chipaca: hey [14:48] Chipaca: I have a question about osutil/cmp_test.go [14:48] Chipaca: can you please look at TestCmp there [14:49] Chipaca: the buffer size is fixed but the payload (file size) varies [14:49] Chipaca: am I reading that right? [15:08] pedronis: i think failures on #7528 are real, tests/main/base-invalid-type needs updating [15:08] PR #7528: overlord/snapstate: have more context in the errors about prerequisites [15:08] pstolowski: quite possible [15:09] but somebody just restarted it [15:09] (not me) [15:09] so I cannot look [15:10] or I'm very confused [15:10] zyga: yes [15:10] Chipaca: thanks [15:10] I'm almost done with that PR [15:10] I removed my implemenetation [15:10] added one extra check into yours [15:10] and kept the set of tests [15:10] pedronis: hmm not me [15:13] zyga: I moved the 'snap run --explain' notes to the forum: https://forum.snapcraft.io/t/snap-run-explain/13427 [15:13] pedronis: nice, thank you [15:14] pedronis: the status is still visible: https://api.travis-ci.org/v3/job/590391360/log.txt [15:14] pedronis, pstolowski: not me either [15:14] I was just confused by travis [15:14] I see the problem now [15:15] Chipaca: can CanRemove PR be reviewed again? or still WIP? (would not happen today) [15:16] pedronis: can I give it a stab at implementing a super-simple version of that over weekend? I'm going to stay at home sick anyway [15:16] pedronis: or would you rather give it to someone else [15:16] PR snapd#7520 closed: tests: moving opensuse to unstable due to catastrofic issue on the repo [15:17] zyga: how far are we from wrapping up robustness? [15:18] pedronis: I need some jamie time for the reviews, probably a day or so [15:18] pedronis: it is that and app awareness next week [15:18] pedronis: I think I can do new stuff now [15:19] zyga: you could start to sketch --explain but might likely have to give it to somebody else to finish depending [15:19] ok [15:19] it's lower priority than the other things on your plate [15:19] basically [15:19] pedronis: ack [15:21] zyga: what's the plan re https://github.com/snapcore/snapd/pull/6174 ? [15:21] PR #6174: many: add snap debug refresh-catalogs [15:22] pstolowski: I'll fix it up next week [15:22] or perhaps today if I finish the pass over other PRs [15:22] pstolowski: needs some deconflicting/rebasing [15:23] ok, thanks [15:27] pedronis: btw my #7355 is redy for reviews again [15:27] pedronis: I recentl pushed to the canRemove pr, i think it's good to go but i thought so yesterday and then spread failed :-) [15:27] PR #7355: interfaces/apparmor: load multiple profiles in a single batch [15:29] * zyga -> lunch [15:29] Chipaca: ok [15:30] pstolowski: thanks, probably will look at it on Monday at this point [15:30] * ijohnson will miss TGIF, still in middle of reviewing 7355 [15:30] ijohnson: take a break ;) [15:30] ijohnson: btw appreciate it! [15:31] pedronis: i just spotted a bug i think [15:31] pedronis: :-( i'll comment on it in case you get to review it before i fix it [15:32] at the very list it points to a missing test [15:32] least* [15:32] oh dear me [15:35] * Chipaca takes a break [15:39] ahem. For real now. [16:18] pstolowski: I did this: https://github.com/snapcore/snapd/pull/7469/commits/700ce5a5d816c37901e686fd689f586b40dbc2e5 in the next PR [16:18] PR #7469: seed/seedwriter,snap/naming: support classic models [16:22] ondra: offtopic [16:22] ondra: I have a thing I wanted to show you [16:23] ondra: I wrote it earlier this week, perhaps it could be something useful to your team [16:23] ondra: check this out please https://gist.github.com/zyga/2210f334115645a0014e1ecce22a944c [16:23] ondra: it's a tool for extracting SD card image off a running system [16:23] ondra: and streaming it to a nearby computer [16:24] ondra: there's some "pre-preparation" step that's missing in the script itself (dd if=/dev/zero of=zero bs=4M; rm zero;) but we can consider polishing the script some more [16:25] pedronis: ty! [16:25] ondra: it works on core18, can easily work on core16 (I didn't try) and most importantly, on windows / linux / mac on the receiving end [16:25] ondra: so anyone can easily capture an image and send it for analysis [16:25] ondra: on windows just double-click on the script and continue (install python first) [16:26] ondra: on other systems it's more generic === pstolowski is now known as pstolowski|afk [16:32] zyga that looks interesting! [16:33] nice one [16:34] ondra: I have some more ideas to make it robust but I wanted to share a quick prototype with an user that needed it [16:35] Chipaca: I changed some code you wrote in https://github.com/snapcore/snapd/pull/7484 -- perhaps you could do a review over cmp.go there [16:35] PR #7484: osutil: generalize SyncDir with FileState interface [16:36] ondra: if you end up using it and give it a life please tell me :) [16:38] zyga we might use that as we go closer to production and need to debug special cases [17:15] zyga: I might take a peek over the weekend [17:15] right now, it's beer o'clock [17:16] meaning it's go-get-the-supermarket-stuff o'clock, first [17:16] put-the-pizza-in-the-oven o'clock [17:16] that kinda stuff [17:16] have a great weekend y'awl [17:16] ijohnson: you too, when your time comes [17:16] :) [17:16] 👋 [17:18] PR snapd#7528 closed: overlord/snapstate: have more context in the errors about prerequisites [17:41] PR snapd#7529 opened: seed/seedwriter: cleanups and small left over todos [17:47] pedronis: I was about to look at 7529 but I think I am too tired today [18:02] Bug #1639984 changed: Granting incorrect access in the shutdown interface in snapd [18:02] Bug #1640281 changed: Conflict - Telemetry project, Snap, uses snapd and snapctl [18:05] Bug #1641752 changed: request for snap interface that expose userspace device APIs [18:07] * zyga stops triaging bugs and EODs [18:07] it's 8PM anyway ... [18:07] ttyl, enjoy your weekends everyone [18:08] Bug #1640114 changed: configure hook output not accessible [18:08] bye zyga, hope you feel better [18:08] ijohnson: thank you :) [19:48] zyga: that one is simple in itself but is at the end of a long chain [20:57] afternoon all, i'm still having trouble debugging my configure hook - is there anyway I can see the output of the hook (snapd seems to swallow -x and echos etc) [20:57] and it's not shown in the snapd journal [20:58] joedborg: unfortunately no, not unless your configure hook exits with exit code 1 [20:58] but if it always does that, then you can't install the snap [20:59] ijohnson: can i run it within a snap shell? `sudo snap run --shell` [21:00] ijohnson: ah yes, looks like i can :) [21:01] yes you should be able to [21:05] ijohnson: is there any plan to be able to float errors / feedback from hooks? if not, I might raise an LP [21:10] no not really, hooks aren't really meant for that kind of thing, but feel free to file an LP bug [21:15] joedborg: actually what you're looking for are snap warnings, see https://forum.snapcraft.io/t/warnings/7599 [21:17] ijohnson: that looks promising, but i need more immediate feedback for validating of `snap set` [21:21] ijohnson: i guess the set-health is the best way [21:34] joedborg: well if you are validating snap set, couldn't you just exit1 if it's wrong? [21:34] then the user sees the output [21:36] ijohnson: yeah, i've got with `set-health` as it's more about getting 2 required configs set (as well as validating). i have noticed that there's no record of `blocked` message in `snap warnings`