/srv/irclogs.ubuntu.com/2021/01/04/#snappy.txt

=== ivo is now known as ivo_cavalcante
=== ivo is now known as ivo_cavalcante
=== jamesh_ is now known as jamesh
mborzeckimorning06:46
jameshhi mborzecki07:01
mborzeckijamesh: hey, happy 2021!07:01
jameshmborzecki: could you have a look at https://github.com/snapcore/snapd/pull/9806 ? This fixes the CI after a change to one of the static check tools it runs.07:34
mupPR #9806: run-checks: update to match new argument syntax of ineffassign <Simple πŸ˜ƒ> <Skip spread> <Created by jhenstridge> <https://github.com/snapcore/snapd/pull/9806>07:34
jameshI guess this is another thing modules would give us: the ability to pin versions of these tools07:36
mupPR snapd#9806 opened: run-checks: update to match new argument syntax of ineffassign <Simple πŸ˜ƒ> <Skip spread> <Created by jhenstridge> <https://github.com/snapcore/snapd/pull/9806>07:36
mborzeckiheh, not too happy about the change in command line argument behavio07:37
mborzeckitoo bad everyone will have to go get a new version now07:39
jameshif backward compatibility wasn't an issue, then the new syntax has the benefit of matching the "go" tool07:39
mvogood morning mborzecki and jamesh ! hope you had a nice break07:40
mborzeckimvo: hey, welcome back07:40
mvohrm, entropy ftw, 2 weeks and things fall apart:07:41
mvoChecking for ineffective assignments07:41
mvo# golang.org/x/tools/go/analysis07:41
mvo../../../golang.org/x/tools/go/analysis/validate.go:119:8: undefined: strings.Builder07:41
jameshSo the ineffassign changes added a dep on golang.org/x/tools/go/analysis, which is uses features not found in the Go 1.9 standard library07:47
mborzeckipfff07:53
mborzeckifun07:53
mborzeckiat least it reaffirms that go 1.9 is kinda obsolete at the point07:55
jameshI'm thinking to just disable the check on old Go07:56
jameshwe still get the benefit from the run on latest07:56
mvowe could move in 2.49, will need a bit of work on our side to backport focal to the previous lts07:56
mupPR snapd#9800 closed: tests: use apiBaseSuite for snapshots tests, fix import endpoint path <Created by stolowski> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/9800>07:56
jameshmvo: do you still need to care about xenial?08:05
mvojamesh: unfortunately for a while for ESM08:05
jameshI guess it's a good thing we're not targeting vivid-overlay :-)08:07
jameshI think one of my favourite features of pkg.go.dev is the ability to view the documentation for old versions of a package.  It's really useful in determining when a particular stdlib feature was introduced08:09
mborzeckii actually had to enable that auto redirect from godoc.org to pkg.go.dev, just can't force myself to type in that address properly08:12
mvonice! wasn't aware of this even08:15
mborzeckijamesh: some naming suggestion in https://github.com/snapcore/snapd/pull/9805 best to consult it with pedronis when he's around08:15
mupPR #9805: interfaces: add an optional mount-font-cache plug attribute to the desktop interface <Created by jhenstridge> <https://github.com/snapcore/snapd/pull/9805>08:15
jameshmborzecki: thanks08:16
mborzeckimvo: can we land https://github.com/snapcore/snapd/pull/9804 ?08:16
mupPR #9804: interfaces/opengl: allow RPi MMAL video decoding <Needs security review> <Created by ogra1> <https://github.com/snapcore/snapd/pull/9804>08:16
mvomborzecki: I think so, that's how I read what seth wrote, would be nice to have a slightly more explicit "vote" but should be fine, worst case we just revert08:17
mborzeckimvo: maybe we need an official 'security team seal of approval' ;)08:17
mupPR snapd#9806 closed: run-checks: update to match new argument syntax of ineffassign <Simple πŸ˜ƒ> <Skip spread> <Created by jhenstridge> <Merged by jhenstridge> <https://github.com/snapcore/snapd/pull/9806>08:32
mborzeckibrb, need to reboot, `[drm:dm_restore_drm_connector_state [amdgpu]] *ERROR* Restoring old state failed with -12` in dmesg and the display does not wake up :/08:43
mborzeckithat's on 5.10.4 kernel, which is clearly plagued by differnt issues from the day it was released :/08:44
zygagood morning08:59
zygamborzecki, happy new year09:00
zygaafter work today I'll resume export manager tweaks09:01
mborzeckizyga: hey, happy 2021, may it be the year that they successfully patch cyperpunk 2077 xD09:02
zygamborzecki, haha, at some point they will09:02
mborzeckihopefully before 2077 :P09:02
zygaI didn't play cyberpunk all that much, I was coding and reading about fiber optic network09:02
zygamborzecki, I got a new router09:03
zygagood morning pedronis09:21
pedronishello09:21
zygaFYI it seems my fosdem talk has been accepted09:21
zygaI sent a proposal to the testing and automation devroom09:22
zygathe talk is about interactive debugging in CI systems, specifically spread09:22
mborzeckipedronis: hey09:29
dot-tobiashi all09:30
dot-tobiasand happy new year 😊09:31
dot-tobiasWhere can I check for more details for a failing core18 snap refresh? It rolls back every time after a reboot, snap tasks <id> shows an error at β€œAutomatically connect eligible plugs and slots of snap "core18"”09:34
zygadot-tobias, on what machine?09:34
zygadot-tobias, x86 or arm?09:34
dot-tobiaszyga: arm, Raspberry Pi Model 3B09:35
zygadot-tobias, perhaps that's the uboot bug09:36
zygadot-tobias, do you have serial console logs from early boot?09:36
dot-tobiaszyga: I can attach a serial cable and reboot the device, hang on09:36
zygadot-tobias, there was a bug, now fixed but not updated in the field, which on some systems prevents uboot from writing to the SD card09:40
zygamaking all core/kernel updates fail09:40
dot-tobiaszyga: I see. Anything I should look out for in the boot log? There's β€œFailed to load 'uEnv.txt', rest seems fine.09:47
dot-tobiaszyga: FYI, here's the full log via serial https://paste.ubuntu.com/p/TmM3NHyzvb/09:53
zygalooking09:57
zygadot-tobias, that's a normal boot09:58
zygadot-tobias, try refreshing core now09:58
zygaand collect the log again09:58
dot-tobiaszyga: Done, https://paste.ubuntu.com/p/ZS9spYFYcf/ β†’ noticed the help output for env/save10:09
zygahuh10:09
zygathat looks like a new bug10:09
zygamborzecki, ^^10:09
zygait looks like bad uboot script10:09
dot-tobiasLooks like `env` and `save` are called separately?10:09
ograyeah10:09
ograas if someone has accidentially injected a space into "saveenv"10:10
zyga /o\10:10
zygaogra, dot-tobias: can you guys please work on reporting that, it's a terrible typo that should not have been made but it needs to be fixed10:11
zygamvo, ^ FYI10:11
dot-tobiasFor clarity, this is on a custom gadget snap forked from the pi-gadget. Let me check my git history if I brought in any inadvertent changes first10:11
mborzeckidupadupa10:12
zygadot-tobias, ah10:12
zygamborzecki, is that your password ;D ?10:12
mborzeckipfff10:13
mborzeckiyeah, very hardcode vm password10:13
zygapff :D10:13
mborzeckidamn, hit that amdgu issue again, looks like it's time to boot the old kernel10:14
dot-tobiaszyga, ogra, mborzecki: I pulled in this commit from pi-gadget recently, replaces saveenv with a custom function … https://github.com/snapcore/pi-gadget/commit/d837f0cfcdc84b92b3de8a380bafd14e55e65f6a10:14
zygamvo, https://fosdem.org/2021/schedule/track/testing_and_automation/10:14
zygamy talk is scheduled now :)10:15
mvozyga: thanks! looks like something that waveform should be aware of, i.e. if uboot fails like in https://paste.ubuntu.com/p/ZS9spYFYcf/10:15
mvoogra, dot-tobias thanks for raising this, a LP bug would be great, once we have that we can ping foundations :)10:15
dot-tobiasmvo, waveform: see https://github.com/snapcore/pi-gadget/commit/d837f0cfcdc84b92b3de8a380bafd14e55e65f6a β†’ guess this is the cause? Still checking my modifications though10:16
dot-tobiasogra: Will do once I have definitely ruled out mishaps in my customizations πŸ˜…10:16
ogradot-tobias, are you using kernel_addr_r at all (i think we used to use kernel_addr without _r in the past or something like that)10:19
ograi also wonder where it is supposed to get filesize from .. that var usually automatically contains the size of the last loaded file (whcih is typically the initrd)10:21
dot-tobiasogra: You mean in the gadget? It's currently based on the 18-armhf branch of pi-gadget, there are `kernel_addr_r` references in uboot.env.in. The commit referenced above indirectly uses it as well, but it seems to have been used before that change as well.10:28
dot-tobiasogra: https://github.com/snapcore/pi-gadget/blob/18-armhf/uboot.env.in#L20 β†’ I'm not familiar with uboot, is it safe to define export_env before kernel_addr_r?10:30
mborzeckiback on 5.10.310:31
mborzeckigoogle:ubuntu-18.04-64:tests/main/cohorts is failing consistently everywhere10:37
mborzeckiseems like the yq tool the test uses has changed something10:38
mborzeckimvo: ^^10:38
waveformmvo, dot-tobias - interesting -- will take a look at that a bit later today; looks like the env export command fails (which is why the save then fails as $filesize won't be set)10:40
dot-tobiaswaveform: appreciated 😊10:44
mvothanks waveform !10:46
zygawaveform, do you have a muxpi setup at home? I've been working with that recently and I found it very useful for automation and testing10:46
zygaand, I know of a place that sells pre-made units10:47
mvomborzecki: yq> amazing how much attention things take. thanks for taking care of this :)10:47
mborzeckimaybe we can just get rid of the tool10:49
ogradot-tobias, and to answer your question, the order wont matter ... vars are loaded to the runtime environment all together and export_env is also called only at the end when "snappy_boot" runs10:50
dot-tobiaswaveform, ogra: for completeness, this is the source for my gadget snap based on pi-gadget 18-armhf: https://gitlab.com/glancr/gadget-snap-pi-kiosk (though I haven't modified uboot.env.in, see https://gitlab.com/glancr/gadget-snap-pi-kiosk/-/commits/18-armhf-mirros-customizations/uboot.env.in) In case the issues stems from a renamed volume or whatnot.10:50
ogradot-tobias, hmm, seems thats new, but gitlab doesnt let me see your stuff without having an account10:53
dot-tobiaszyga, waveform: Should I file the LP bug for snap-core18 like https://bugs.launchpad.net/snap-core18/+bug/1900879, or is there a separate tracker for the gadget?10:53
mupBug #1900879: MAC addresses hard-coded in bootloader <fr-851> <snap-core18:Confirmed> <https://launchpad.net/bugs/1900879>10:53
dot-tobiasogra: sec10:53
* zyga doesn't recall10:53
dot-tobiasogra: should be public now10:55
ograbetter πŸ™‚10:55
ogradot-tobias, your original issue was that the core snap did fail the configure hook though ... i'm not actually sure thats related to what waveform does in the uboot script ...11:01
ogra(but lets see and have this fixed first)11:02
waveformzyga, no - I've been looking at juergh's rather neat setup for automated testing, but piwheels kept me busy over the hols so I haven't had the chance to do much with it yet11:04
zygawaveform, I'm not familiar with that, can you share any pointers please?11:04
dot-tobiasogra: Yeah, though the problem with save/env arose after a core18 refresh attempt (see diff of the two boot logs I pasted earlier), so I guess this section is only triggered on core refreshes? Just making semi-educated guesses at this point πŸ˜„11:04
waveformzyga, https://github.com/juergh/bottle-pi https://github.com/juergh/rpi-install and https://github.com/juergh/usb-power-switch (for PSU control on a 400)11:05
waveformdot-tobias, you are correct that that section is only triggered on core refreshes11:06
zygawaveform, thanks, I'll go through that11:06
waveform(well, kernel or core updates)11:06
zygawaveform, does that rely on netboot in any way?11:06
ogradot-tobias, yeah, might be ... thats why i said we should wait for the fix and then see if it still occurs ... i do wonder why gitlab shows "refresh-timer" in red in your gadget.yaml though ... and if thats an issue with the yaml highlighting in GL or if there is a tab instead of spaces11:06
waveformzyga, no - it's essentially using a GPIO to select a different boot sequence that boots into a minimal initrd to reflash the local card11:07
zygaah11:07
zygathat makes sense11:07
zygayou can key off the gpio state in boot config11:08
waveformyup11:08
zygawaveform, I'll be working on extending spread to drive muxpi directly11:08
ograbut if you reflash the whole card, isnt your initrd then gone ?11:08
zygaand add support for serial line connections11:08
zyga(mainly for zephyr though)11:08
waveformogra, not from ram, so the initrd can "re-inject itself" into the image post-flash, although I don't think the current version does that (it's one of the things I wanted to investigate over xmas but didn't get the time)11:09
ograah11:09
ograwell, that wouldnt work in UC20 testing i guess11:10
zygaogra, hence muxpi :)11:10
waveformprovided there's ~30M free on the first FAT partition it ought to11:11
waveformwhat it can't do (which I assume muxpi can) is to implicitly "remove" the SD card; i.e. it always boots off the SD card (various caveats there with 4's EEPROM, blah blah)11:12
* ogra used to have setup simply using a transcend WIFI-SD card ... with replaced linux for the WIFI side ... that only had busybox wget and dd on it and could simply stream an img to the SD and reboot the Pi ... 11:12
zygawaveform, yeah, muxpi setup can do that11:13
zygawaveform, order yours today ;) they arrive pretty quickly, modulo brexit border issues11:13
zygawaveform, and I'm happy to support muxpi on pi as that's one of my targets as well11:13
zygawaveform, and the tooling is really nice as well11:14
waveformzyga, if you've got a link for pre-made units I'll certainly take a look, but I do like the simplicity of juerg's setup - something to be said for making it easy/cheap for anyone to build11:17
zygawaveform, you can order them from https://shop.3mdeb.com/11:17
zygawaveform, grab https://shop.3mdeb.com/product/muxsd-adapter/ and https://shop.3mdeb.com/product/muxpi/11:17
zygawaveform, just expense it if your manager approves11:18
zygawaveform, I'd love to get it spreadified11:18
zygaso that spread can run from pi-related repos11:18
zygayou can deploy a gitub worker on muxpi so that it processes tests11:18
waveformzyga, will do11:18
zygawaveform, I've started looking at the software that drives muxpi, I'll be working on a PPA that has all of the things ready so that it's easier to prepare a new instance without reliance on magic images from anywhere11:20
zygaso far I've reproduced the microcontroller image11:20
zygaand all the system services that talk to it11:20
zygaI didn't prepare packaging yet but I also didn't miss any dependency11:21
zygaso it should be doable11:21
zygain reasonable time that is11:21
zygaI'll prepare a bunch of muxpi-* packages and ask mvo to help me sponsor it to debian11:21
zygathis should allow vanilla Ubuntu/Debian installation with apt-get to run the stack correctly11:21
mupPR snapd#9807 opened: tests/main/cohorts: replace yq with a Python snippet <Simple πŸ˜ƒ> <⚠ Critical> <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/9807>11:22
zygamborzecki, +111:24
* zyga is very grateful that his team membership was not revoked11:24
zygahappy new year cachio11:37
cachiozyga, hey11:40
cachiothanks11:40
cachiohappy new year for you as well11:40
mborzeckicachio: hey, happy 202111:42
cachiomborzecki, hey11:42
mvocachio: hey, happy 2021!11:42
cachiohappy new year11:43
cachiomvo, hey11:43
cachiohappy new year11:43
cachiohappy to be working again :)11:43
dot-tobiasogra: re refresh-timer in gadget.yaml (overlooked your message): you mean https://gitlab.com/glancr/gadget-snap-pi-kiosk/-/blob/18-armhf-mirros-customizations/gadget.yaml#L6 ? For me, it shows a green-ish string, so maybe really a GitLab issue? My local editor says spaces, anyway.12:23
ograokay ... was just curious12:23
dot-tobiasogra: Always grateful for hints on little details, especially for this part of my stack – there12:26
dot-tobias…'s a lot of d'oh potential with a side of really undesirable consequences with gadget snap snafus πŸ˜„12:27
dot-tobiasogra, waveform, zyga: https://bugs.launchpad.net/snap-core18/+bug/191009412:27
mupBug #1910094: uboot fails to save env after core18 refresh <snap-core18:New> <https://launchpad.net/bugs/1910094>12:27
waveformdot-tobias, ta - I've stuck it on my list12:28
* dot-tobias still misses emoji reactions like. +1 on IRC to avoid log bloat πŸ˜‰ 12:29
ogradot-tobias, well, it is a bit strange that it fails in the configure hook, modifying u-boot vars lives directly in snapd (unless that changed) ... so the hook should not be involved here at all ... but it might just be fallout from the actual upgrad failing or so12:29
pedronismvo: hi, are the debian --help test also failing with a panic?12:36
pedroniswe are getting panics also on F32/3312:36
mvopedronis: hey, happy 2021 :) the debian tests just format differently, no panic there12:40
ograsigh ... this is really curious ... https://github.com/ogra1/zoom-snap/issues/6412:49
ograi cant reproduce it on a 20.04 install here ... did we secretly update 20.04 to a new fontconfig or so ?12:50
mborzeckihmmm https://paste.ubuntu.com/p/jSTTCmBJ96/12:55
mborzeckipanic in snap validate --help on fedora 3312:55
mborzeckiand f3212:57
pedronismborzecki: yes12:59
zygamborzecki, outdated go-flags13:00
zygamborzecki, are you a committer in fedora? I can try to rev it13:00
mborzeckiweird, that version has been there since july 202013:05
zygamborzecki, is the test new?13:05
mborzeckiso what changed that it started panicking just now?13:05
zygaI don't think it's a new problem13:05
zygaI recall this panic long ago as well13:05
zygait just slipped through the cracks then13:05
zygamborzecki, anyway, let me know if you need updates13:08
zygamborzecki, I wanted to upload zmk to Fedora and I can get my packaging memory refreshed13:08
mborzeckii have a vague recollection we hit that once before13:14
mborzeckihmm there have been some commits in go-flags since the revision we list in vendor.json13:19
mborzeckiha, even my fix got in :P13:19
mborzeckihm bisect tells me this is the first bad commit https://github.com/jessevdk/go-flags/commit/71064e1638ea2c34ad561fd1ec92a23944673ff413:27
mborzeckiand is the next commit after the revision we listed in vendor.json13:27
zygaheh13:34
zygaso we are on old but good version?13:34
zygaFYI: some notes from my work on static analysis from last year: https://listed.zygoon.pl/21463/integrating-pvs-studio-and-coverity-with-make13:34
mborzeckiheheh, so https://github.com/snapcore/snapd/commit/85900470da735d61e7c520b27dfc82172a6af911 triggered an apparent bug in go-flags13:43
zygamborzecki, nice :)13:50
=== msalvatore_ is now known as msalvatore
mupPR snapd#9807 closed: tests/main/cohorts: replace yq with a Python snippet <Simple πŸ˜ƒ> <⚠ Critical> <Created by bboozzoo> <Merged by sergiocazzolato> <https://github.com/snapcore/snapd/pull/9807>14:18
mupPR snapd#9808 opened: tests/main/snap-validate-basic: disable test on Fedora due to go-flags panics <Simple πŸ˜ƒ> <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/9808>15:08
mvodot-tobias: did you report a bug about this saveenv issue? just curious so that I can keep track of uc20 issues15:16
mupPR snapd#9809 opened: snap: skip help output tests for go-flags v1.4.0 <Created by mvo5> <https://github.com/snapcore/snapd/pull/9809>15:18
* cachio lunch15:29
mupPR snapd#9810 opened: tests: allow to set a specific PROJECT_PATH <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/9810>16:49
=== ijohnson is now known as ijohnson|lunch
mupPR snapd#9810 closed: tests: allow to set a specific PROJECT_PATH <Created by sergiocazzolato> <Closed by sergiocazzolato> <https://github.com/snapcore/snapd/pull/9810>18:19
hardwireanybody on core team able to talk a bit on recovering to previously know good version sets of snaps?  I am looking to get some owa updates standardized for a project and I am not sure what already exists20:16
ijohnson|lunchhardwire: do you mean you want to revert your installed snap to a previous version20:23
hardwirecore20 itself if needed along with any other snaps that were part of a potentially failed update (asseen by health check after reboot)20:24
hardwireif for instance a reboot doesn’t even complete then next boot will revert20:24
hardwirethat sort of setup20:24
hardwireI am working on my own code now for an owa agent early on in boot and initramfs20:25
hardwirebut it seems like there may be room for uboot to handle some of this if for instance the kernel snap fails or initramfs is munged somehow20:26
hardwirejust trying to find what exists out there20:26
=== ijohnson|lunch is now known as ijohnson
ijohnsonhardwire: are you specifically wondering about how ubuntu core handles trying a new revision of a kernel snap ?20:41
ijohnsonhardwire: what ubuntu core implements for trying (aka a-b boot) is to extract / mount the kernel snap and then set a boot environment variable to "try", which the bootloader must set to "trying" after rebooting to try the update, then if the boot is successful userspace sees "trying" and assumes the try was successful20:42
ijohnsonif the boot fails and we get rebooted, the bootloader will see the value of "trying" and reset that to "", which userspace then sees and interprets "" as meaning that the update failed20:43
hardwiretrying is in cmdline right?  That's similar to what I was attempting.20:43
ijohnsonyou can see more info on this at https://snapcraft.io/docs/ubuntu-core-boot-modes20:43
ijohnsonit's slightly different for uc20, but the same basic idea20:43
ijohnsonhardwire: no think like uboot env file or grubenv20:43
hardwireah gotcha. I will be using uboot.20:44
ijohnsonwell you also put some of the info on the cmdline, but the main variable about "try"/"trying"/"" has to be in uboot env in your case then20:44
hardwirehow did I miss this when reviewing the docs....20:44
hardwireok so this is ideally just for core and kernel20:45
hardwireI'll want to dovetail on those a bit for what I'm doing for customer managed snaps20:45
ijohnsonyes just the base snap (i.e. core, core18, core20) and the kernel snap20:45
hardwireI'll review the code on those and do some testing before I go forward.  thank you for the info20:46
ijohnsonhow app snaps are updated is a bit different, but actually much easier since app snaps don't require a reboot20:46
hardwirein most cases for sure.20:46
hardwireI was happy to see that ufw was made into a snap20:46
hardwireA lingering question with my own work is why snaps don't typically pull from the closest LTS release to the core for their stage packages.20:47
hardwireI was able to make a snap using stage-packages.  But it seems like that is not at all preferred and I'm not sure if that has to deal with rpath related issues.20:48
hardwires/deal/do/20:48
ijohnsonwell it depends on the snap, some snaps are indeed just using the stage-packages from the LTS release of their base snap exactly, but note that you can have snaps with different base snaps than the actual host system release20:50
ijohnsonfor example on an ubuntu core 20 system, I can have app snaps which use base snaps from the "core" snap which is based on xenial 16.0420:50
ijohnsonin the converse, on a xenial 16.04 ubuntu server system, I can use snaps that have a base snap from the "core20" snap which is based on ubuntu 20.0420:51
hardwireindeed and I believe that is to be expected20:52
hardwirejust not really something I've witnessed.  I was reviewing the NetworkManager snap and was a bit surprised to see it being built.20:53
hardwiresame with some others.20:53
hardwireI'm working on a GATT server right now that will eventually be a snap.  It will be responsible for setting os level settings (via snap settings) for wifi info.20:53
hardwireI joined the uboot mailing list to see if there was a special way to run memtest and store the results for a specific ephemeral boot20:59
hardwireman that mailing list is busy20:59
cachioijohnson, hey, could you please take a quick look to this #9811 ?22:03
mupPR #9811: tests: fix library path used for tests.pkgs <Simple πŸ˜ƒ> <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/9811>22:03
ijohnsonsure22:03
mupPR snapd#9811 opened: tests: fix library path used for tests.pkgs <Simple πŸ˜ƒ> <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/9811>22:05
ijohnsoncachio: approved22:55

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