/srv/irclogs.ubuntu.com/2019/04/24/#snappy.txt

=== chihchun_afk is now known as chihchun
=== chihchun is now known as chihchun_afk
=== chihchun_afk is now known as chihchun
=== chihchun is now known as chihchun_afk
mborzeckimorning05:02
zygaHey Everton06:11
zygaEveryone even06:11
* zyga coffee06:11
mborzeckizyga: hey06:15
mborzeckizyga: jdstrand: verified that multi arg filtering issue is indeed fixed with the proposed libseccomp-golang package update in fedora 2906:27
=== chihchun_afk is now known as chihchun
mborzeckimvo: welcome back06:31
mvohey mborzecki06:34
mvomborzecki: good morning! what did I miss?06:34
mborzeckimvo: jdstrand has some interesting findings about libseccomp and go bindings06:35
mvomborzecki: oh? in the forum? in a PR?06:35
mborzeckimvo: https://bugs.launchpad.net/snapd/+bug/1825052 and forum as well06:35
mborzeckimvo: there's also https://github.com/snapcore/snapd/pull/6681#issuecomment-48593054306:36
mvomborzecki: woah!06:37
mborzeckimvo: and a relevant forum topic https://forum.snapcraft.io/t/disabling-seccomp-sandbox-where-a-buggy-golang-seccomp-is-used/1105406:37
* mvo nods06:38
mvomborzecki: anything pending for 2.39 that needs a cherry-pick/backport?06:38
mborzeckimvo: this probably https://github.com/snapcore/snapd/pull/676206:40
mvomborzecki: yes, that looks like it06:41
mvomborzecki: doing that now, thank you06:41
mborzeckimvo: maybe this one too https://github.com/snapcore/snapd/pull/6748 (spread jobs debugging help)06:42
zygaHey mvo06:54
zygamvo: yes06:54
zygamvo: interfaces have a serious bug06:55
zygamvo: also CE waits for firmware fix badly for 2.3906:55
mvozyga: do we need 2.38.2 for the seccomp issue?06:55
zygamvo: also snapd panics on 19.0406:55
zygamvo: you need to process all the bugs and decide06:56
mvozyga: what is the bugnumber for 19.04?06:56
mvozyga: it sounds very much like we need one :/06:56
zygaOne moment06:56
zygamvo: https://forum.snapcraft.io/t/snap-apps-not-working/11000/406:59
zygahttps://bugs.launchpad.net/ubuntu/+source/snapd/+bug/182543706:59
zygamvo: people are also affected by https://bugs.launchpad.net/snapd/+bug/181931807:00
zygamvo: and yesterday we debugged https://bugs.launchpad.net/snapd/+bug/182588307:00
zygabut fixing it is not something easy07:00
mvozyga: thanks, looking07:02
mvo6720 needs a second review, it touches quite some bits so I would love to merge it soon to avoid conflicts07:04
* dot-tobias says hi07:06
zygamvo: done07:08
zygahey dot-tobias07:08
mvozyga: ta07:09
=== pstolowski|afk is now known as pstolowski
pstolowskimorning07:12
mvohey pstolowski !07:12
mborzeckipstolowski: hey07:12
=== chihchun is now known as chihchun_afk
Chipaca'sup07:55
Chipaca(morning!)07:55
=== chihchun_afk is now known as chihchun
zygapstolowski: hey, I wrote some thougts about the interface problem: https://bugs.launchpad.net/snapd/+bug/1825883/comments/607:56
zygaI would appreciate if you could have a look07:56
zygahey Chipaca, how are you doing?07:56
Chipacazyga: chipaca integrity is at 73%07:57
zygareverse booze polarity07:58
pstolowskizyga: thanks, looking08:01
Chipacazyga: nah, lower back still not happy, but i'm a'ight08:05
zygamvo: updated https://github.com/snapcore/snapd/pull/675608:21
zygahttps://github.com/snapcore/snapd/pull/6758 is super boring, just some code moving from place to place + new tests08:21
pstolowskizyga: btw, i was wrong in one aspect re my earlier reconnect PR - disconnect was not run there (I misread the diff), reconnect was only re-executing prepare- and connect- hooks, so it was doing what you're suggesting (expect for prepare- step which was also run). i generally agree with the idea of (re)running interface hook(s) on refresh, but i think Samuele's comment to my original PR still stands. perhaps separate08:22
pstolowski'connection-updated' hook is the aswer to that question (although it still complicates the implementation of hooks for snap devs). also i think not updating dynamic attributes during refresh may be problematic, they may be derived from static attributes of either side of the connection so if static attrs change, dynamic ones can change as well08:22
zygapstolowski: re-connect vs initial-connect?08:23
zygasimple, there's no parepare no disconnect08:23
zygapstolowski: hmmm, interesting observation about the dynamic attributes08:23
zygapstolowski: is there anything that could be used as an example?08:23
pstolowskizyga: example is only theoretical at this point: snap A exposes some content, prepare- hook of snap B reads the exposed path attribute and sets own path attribute (i'm not sure content interface as is would support that, but that's the general idea)08:30
dot-tobiasQuestion about device intialization, specifically how to shorten its duration: https://forum.snapcraft.io/t/shorten-device-initialization-or-at-least-give-user-feedback/11081 ping ogra / mvo08:31
mvodot-tobias: thats an interessting one - we want to improve this (hopefully in the next cycle) by doing as much as we can in the image creation time. right now its slow (and a pain point for many)08:33
mvodot-tobias: would it help if we could make some led blink to show the users things are still going?08:33
mvodot-tobias: does the rpi has anything like this we could use (pardon my ignorance on this)?08:34
zygamvo: perhaps seeding the gadget to run boot splash is the way to go08:37
dot-tobiasmvo: Glad to hear, both that it's on the radar and that it's possible at all to move init to image creation 😊 The RPi has a “status” LED which (I think) already blinks sporadically during init, but I fear a small LED would suffer the same fate as our hint “don't worry if it takes > 8 minutes” on our download page – easily ignored since most of our users are not that tech-savvy08:37
zygamvo: I agree with dot-tobias, let is not the good UX here08:37
zygaideally 1st boot would allow device makers to setup proper UX on the attached screen (if any)08:37
zygaor perhaps 1st boot should really be in the factory08:38
zygaand we should have post factory boot 2nd boot08:38
zygathat does some custom stuff but is otherwise fast08:38
mvozyga: right, I agree :) was mostly wondering what we can do today to help08:38
mvodot-tobias: do your users have a screen attached?08:39
mvozyga: I like the screen idea08:39
mvoChipaca: what came out of this 2.38 snapd rest api issue that was reported on the forum last week?08:41
Chipacamvo: hmm... remind me?08:41
mvoChipaca: let me find the forum topic08:43
dot-tobiasmvo: Yes, the image is meant for display devices, so users have a screen.08:43
mvoChipaca: https://forum.snapcraft.io/t/snapd-2-28-rest-api-endpoints-with-large-response-issue/10968/308:43
dot-tobiaszyga: Yeah, a splash screen would work – BTW, did I misunderstand or do Core18-images show a splash *without* psplash?08:44
mvodot-tobias: I wonder if (again - short term) something like a hook or an app that would monitor the snapd socket with progress would help08:44
Chipacamvo: ah! “ some behavior in Nginx and does not necessarily need to be an issue in the Snapd REST API socket”08:44
Chipacamvo: (from the last reply on that)08:44
mvoChipaca: aha, thanks. so just user confusion?08:45
zygadot-tobias: I don't know about core18 and pi and splash screens I'm afraid08:45
Chipacamvo: not sure if confusion is the right word, but the issue is in how they're proxying snapd, not in snapd08:45
Chipacamvo: AIUI; I half expect them to come back and ask "so when are you going to fix it"08:45
mborzeckizyga: maybe some plymouth integration?08:45
Chipacabecause at no point did they say "oops my bad"08:46
zygamborzecki: dunno really, I would not marry the two concepts08:46
mvoChipaca: ok, somehting changed on our side with go-1.10 I guess and that confusd nginx?08:46
Chipacamvo: but some people are unable to say that ¯\_(ツ)_/¯08:46
mvoChipaca: did go1.10 switch to http2 by default?08:46
dot-tobiaszyga: Oh sorry – only first part of that message was a reply to you, second one was thinking while writing 😄08:46
mvoChipaca: heh, yeah I guess that might happen (that they ask us to fix something)08:46
zygamborzecki: boot splash might as well be shown on a dot-matrix display attached to a gizmo08:46
mvoChipaca: to be fair - we did change something :/08:46
Chipacamvo: http2 is supported, but that's not new between 1.6 and 1.1008:47
mvoChipaca: ok, I have this feeling this will come back but its fine to shelve it for now I think08:47
Chipacamvo: we agree then08:47
mvoChipaca: especially with the things we need/want to finish before lyon08:47
Chipacamvo: lyon is next week?08:48
dot-tobiasmvo: re: hook/app to monitor snapd socket: Might be a short-term solution, but that wouldn't be able to output something until at least core, gadget and mir-kiosk are properly installed, if I'm not mistaken?08:48
Chipacamvo: (http2 is only supported if we're doing TLS, and we're not, so actually no http2)08:48
mvoChipaca: 13.0508:49
Chipacaah, phew08:49
mvodot-tobias: yeah, it would be late :/08:49
zygaI think it must be some gadget specific thing08:52
zygabefore mire and all the stuff is up08:52
zygaperhaps even a special hook that gets run08:53
mborzeckimvo: dot-tobias: this really feels like some custom initramfs, with early boot splash via plymouth or somesuch, effectively device/appliance specific08:53
zygaseeding-started seeding-done or something of the sort08:53
zygamborzecki: yes but it would be nicer if we could have this done via gadgets08:53
mborzeckizyga: initrd is part of core though and we don't expect people to build a custom core*08:57
zygamborzecki: indeed, they can do custom bases but it would be pretty unfortunate if we would force people to add a lot of boot bases to have a splash screen08:58
mborzeckiyup08:58
Chipacaogra had boot splashes working08:59
Chipacahow'd he do it?09:00
Chipacaogra: yes you :-)09:00
dot-tobiasmborzecki / zyga / Chipaca: My image uses psplash for a custom splash screen right now, see https://gitlab.com/glancr/gadget-snap-pi-kiosk (adapted from ogra 's examples of course 😊 )09:00
dot-tobiasProblems with this: a) The splash is not visible as soon as mir-kiosk is installed and started → black screen b) Changing the image after the initial boot has completed requires a separate psplash binary in /boot-assets/psplash.img (if I understand things correctly), so an initial “don't touch, doing stuff for a while” screen would confuse users on subsequent boots09:02
dot-tobiasBut my knowledge of these things is quite little, so I might just be overlooking simple solutions 😄09:04
Chipacadot-tobias: instead of an image, just play https://www.youtube.com/watch?v=V4uV3icrmw009:04
Chipacasimples!09:04
* Chipaca runs off09:04
dot-tobiasChipaca: That's plan B 😄09:05
Chipacais it the default for Elementary to use the LimeNET store?09:25
mborzeckidot-tobias: hah nice, looked at the gadget initrd part is loaded into the memory right after the actual initrd, nice trick09:34
dot-tobiasmborzecki: Full credit to ogra for this, his universal pi kiosk gadget snap was a huge inspiration (read: fork and customize) for me 😊09:36
dot-tobiasmborzecki / zyga / mvo: Re: first boot – FWIW, I didn't mention that I use cloud-init in my image atm, e.g. to work around https://bugs.launchpad.net/snapd/+bug/1820060 . Came across it in https://forum.snapcraft.io/t/how-to-preconfigure-custom-image/4154/15 ; maybe this enables an interim solution for others. Couldn't find an approach for my specific issue though 😄09:43
mvopstolowski: not sure you saw it, looks like 6755 needs a tweak in the spread test10:01
pstolowskimvo yes, thanks, im fighting with it this morning10:03
mvopstolowski: uh, ok. good luck then .) !10:03
pstolowskithe trick with modyfing snapd.service file is a no-no on read only fs on core ;)10:04
mvopstolowski: yeah, its fine (for now) to exclude core10:06
mvopstolowski: alternatively we could bind mount a modified copy to the place on core10:06
pstolowskimvo i’m playing with override.conf10:07
pstolowskineed to run a quick errand, afk for a while10:09
mvopstolowski: no worries10:09
mvopstolowski: yeah /run/systemd/system/... should also work10:10
mvopstolowski: and much simpler :)10:10
* mvo really likes this feature of systemd10:10
mvosil2100: I was looking at 1825437 just now - the seed.yaml on the image shortly before the release was wrong and that crashed snapd. do you happen to know what writes the seed.yaml and where I can file a bug? mostly for awareness so that we can add some sort of test to ensure the seed.yaml is correct10:11
mvozyga: re seed.yaml installer issue> the bugreport is a bit unclear, it sounds like this was a bug on an image before the release and the release image is fine. but that sounds suspicious and someone mentioned a race. do we know more? do we have more reports like this?10:24
mvozyga: or pointers to the code that writes the seed.yaml?10:25
zygamvo: some more on the forum10:25
zygamvo: I don't have that, kenvandine looked before and pointed us at foundations/desktop10:25
mvozyga: thanks! all over the place or in a specific thread?10:25
zygamvo: there are two more threads AFAIR10:25
zygamvo: but no more details10:25
zygamvo: people just carry on after removing that extra -10:25
Chipacaare people particularly obtuse today, or am I especially grumpy?10:28
zygaChipaca: what's up?10:29
* zyga has a revalation about another bug10:29
zygaI'm sorry, I'm a bit lost today10:29
Chipacazyga: "I tell it to put something in usr/bin, but then the thing is not in bin/"  "did you check usr/bin?"  "it's not in bin/"10:29
zygapstolowski: Repository.RemoveSnap doesn't remove connections!10:30
zygaah, sorry, it's all good :10:30
* zyga is stumbiling10:30
sil2100mvo: hm, curious, wonder what happened there - all the seeding logic is implemented in livecd-rootfs itself10:42
sil2100mvo: the seed.yaml is created there when seeding happens, so possibly take a look at live-build/functions and look for the snap_preseed family of functions10:43
mvosil2100: thanks, so nothing dynamic in the installer? thats cool10:45
sil2100Curious10:45
mvosil2100: I have a look10:45
mvosil2100: we got reported from media-info 2019041310:46
mvoso a bit before the final releease10:46
mvosil2100: ha! thanks, I have interessting pointers now10:47
sil2100mvo: not that I'm aware of at least, we get the snap list from the seeds and then work through the list during build time, and I can't remember hearing about that changing10:47
mvosil2100: looking deeper, thank you :)10:47
mvosil2100: no worries, you helped a lot!10:47
sil2100mvo: yw! Thanks for looking at this, indeed the wild '-' seems like something really really strange ;p10:47
* mvo looks at code/diffs now10:48
mvosil2100: there are changes in livecd-rootfs at exactly the relevant times so I bet its that10:48
mborzeckianother large'ish gadget update PR coming up, though most of it is tests10:48
Chipacadegville: docs for the REST API are still the ones in the github wiki, yes?10:52
degvilleChipaca: yes.10:54
Chipacak10:54
degvilleChipaca: I need to bring them over, but also I need to get agreement on where they'll be located - partly as issue with the snap docs outline, and also where Core docs go and fit with the REST API docs.10:55
Chipacadegville: as soon as you start doing that somebody'll point out that we shouldn't call them "REST API" anything10:55
Chipacadegville: :-)10:55
Chipacanot that they're _wrong_, just that names are hard10:56
degvilledegville: of course :)10:56
Chipacadegville: talking to yourself already? :-p10:57
degvilleChipaca: degville: uh oh - too long working from home will do that.10:58
* degville nods10:58
Chipacadegville: run away! run away! to the coffee shop or sth :-)10:59
* Chipaca is immune to that though11:00
Chipacaam not!11:00
* Chipaca is too!11:00
* degville checks the ring is safely hiddenses.11:03
mborzeckihttps://github.com/snapcore/snapd/pull/6769 if anyone is interested in volume layout11:03
mborzeckimvo: could you cherry-pick https://github.com/snapcore/snapd/pull/6715 to 2.39 too?11:08
mvomborzecki: done11:11
mvomborzecki: thank you!11:11
mborzeckimvo: thanks!11:11
zyga pstolowski I am close to fixing that attribute issue11:13
zygaAt least enough to buy more time11:13
pstolowskizyga: what did you do? setup-profiles fix?11:13
zygaYes11:16
zygaIt is not correct but also not more incorrect11:16
zygaEquivalent to not catching static attractive11:16
zygaWith smoother change11:16
zygapstolowski: it's possible to craft actions that will give you different static attrs for the _same_ plug or slot among two connections11:39
zygayah12:10
zygaI found more bugs12:10
zygaok12:10
zygalet's stash those aside and fix one12:10
zygakenvandine: as an advice, please don't rely on snapd to create directories in $SNAP12:11
zygakenvandine: I found a serious bug in that area now12:11
jdstrandmvo: hey, I will be in the standup in ~30 minutes. you don't need 2.38.2 for either issue imo12:25
jdstranderf, I merged from master and now seeing in fedora-29:12:48
jdstrandRPM build errors:12:48
jdstrand    Bad exit status from /var/tmp/rpm-tmp.VZ4h1y (%build)12:48
* jdstrand discards and tries again12:49
zygapstolowski: https://github.com/snapcore/snapd/pull/677012:50
zygapstolowski: sorry for taking so long, I found a deeper bug in this and spent time exploring it12:50
zygamborzecki: the mount backend is hosed,12:50
zygamborzecki: I bet the solution is proper topological sort of mount entries12:50
zygamborzecki: it sucks to have this mid-refactor too12:50
mborzeckizyga: heh, at least we know that now :)12:51
zygamborzecki: I have a way to reproduce this12:51
zygamborzecki: I'm 100% sure this is the ghost bug people were mentioning all the time12:51
zygamborzecki: but were unable to reproduce (which makes sense too btw)12:51
zygamborzecki: if I get hit by a bus today: writable mimic on $SNAP misbehaves12:51
zygamborzecki: refreshing a snap over itself (same snap reinstalled) shows abnormal outcome12:52
zygamborzecki: I will explore some more, I don't have all the answers yet12:52
zygamborzecki: but I'm happy to at least take a stab at that elusive bug12:52
pstolowskizyga: ty!12:52
zygapstolowski: no unit tests, help appreciated12:52
jdstrandzyga: s/if I get hit by a bus/if I win the lottery/ :)12:57
jdstrandzyga: if you are going away, I'd much rather it be cause you have tons of $$12:57
jdstrands/\$\$/money/12:58
jdstrandno need for you to be paid in USD12:58
Chipacajdstrand: ¤¤12:58
pstolowskizyga: thank you for that workaround, looks good, i'll help with unit tests after standuo13:00
kenvandinezyga: i guess the gnome extension to snapcraft could create those directories13:18
Chipaca~$ snap install snap-with-complex-requirements13:18
Chipacaerror: https://i.imgur.com/z96dZ0x.jpg13:18
kenvandinezyga: i'd rather not expect app developers to know to create all those dirs13:18
zygakenvandine: agreed13:24
zygakenvandine: I'll let you know more once I have the data13:24
zygaChipaca: are those files that we create from snapd? https://bugs.launchpad.net/command-not-found/+bug/1824000/comments/213:33
Chipacazyga: yes13:34
zygalooks like our bug then13:34
Chipacazyga: did 19.04 change ulimit?13:34
Chipacaor sth?13:34
zygadunno13:34
zygamaybe :)13:34
zygaumask I presume13:34
Chipacayeah13:35
Chipacathat one13:35
Chipacazyga: but the .metadata might imply that an update crashed? maybe13:35
Chipacanot sure13:35
zygadunno13:36
Chipacahmmmm13:36
Chipacazyga: actually wait it might not be ours13:36
Chipacazyga: ours are under snapd13:37
Chipacazyga: /var/cache/snapd/commands.db  is ours13:37
Chipacazyga: soryr13:37
kenvandinezyga: we've had some issues with content interfaces that have been really hard to reproduce13:42
kenvandinemaybe fixing these things you're finding will fix those :)13:42
zygakenvandine: I think what I found will fix that13:42
zygakenvandine: not 2.29 material, something that will take some time to do13:42
kenvandinelike how sometimes the mount is empty13:42
zygakenvandine: but I will get it done13:42
kenvandineafter a refresh13:42
zygayes, I reproduced that too13:42
kenvandinewe've never figured that out13:42
kenvandinegreat13:43
=== om26er is now known as om26er1
=== chihchun is now known as chihchun_afk
cachiozyga, hey, I see this error sometimes running the failover test14:07
cachiozyga, https://paste.ubuntu.com/p/2CqKNTfz47/14:07
cachiothis is on a pi314:07
cachiothen the device doesn't boot anymore14:07
cachioit is stuck14:07
zygacachio: I don't know anything about that, perhaps the kernel has crashed, if you see that again try pinging the kernel, it's a simple way to check if the system has failed entirely14:10
cachiozyga, ok14:10
cachiothanks14:10
om26erroadmr Hi! Do you think https://forum.snapcraft.io/t/please-allow-auto-connect-of-display-control-interface-for-deskconn/10831/ is good to go live now ?14:26
roadmrom26er: I think so but usually jdstrand is the one who wrangles auto-connects14:28
om26erroadmr ah, ok.14:32
jdstrandI'm a bit behind but hope to run through everything today14:34
Chipacacachio: do you remember which pr it was that fixed the core18 remove thing?15:14
Chipacaah, #675315:16
pstolowskizyga: i've unit tests for your fix, how would you like it proposed?15:26
fryfrogHi, I'm a support person for a project and someone has made a snap package I'm trying to understand. Specifically, they're recommending files be owned by root because it runs as root inside.15:29
fryfroghttps://github.com/albertodonato/sonarr-snap15:29
cachioChipaca, correct15:29
Chipacafryfrog: daemons that come in snaps run as uid 0 for now, yes15:30
fryfrog:o15:31
pstolowskizyga: pushed here https://github.com/stolowski/snapd/tree/lp-1825883-unittests ; please take a look and feel free to incorporate into your PR15:31
fryfrogChipaca: how does one deal w/ that *outside* the snap?15:32
Chipacafryfrog: I'm not sure what you need to deal with15:32
Chipaca(i don't know your snap at all)15:32
Chipacas/snap/project/15:32
fryfrogAny files it needs to read/write, would either need to be owned by root, root would need to be in the group or ... i guess at least permissions don't matter :)15:33
Chipacafryfrog: it'll create them as root, but it'll be able to read them anyway yes15:34
fryfrogThere is no way to specify the UID a daemon runs as?15:34
Chipacafryfrog: no (seccomp arg filtering is only just becoming usable _now_ -- we're working on it!)15:35
fryfrogI'm glad to hear it is in the pipeline :)15:36
fryfrogThanks for helping me understand :)15:36
Chipacafryfrog: there's also the issue of no user other than root being 'universal' across distros, but we're tackling that as well15:37
Chipaca(initial use of the arg filtering thing will be via enabling a 'daemon' user, which most distros have and those that don't will get a warning on install)15:37
fryfrogDocker "fixes" this by not actually caring about the user *name*, they just allow passing in a UID/GID15:37
Chipacayeah15:37
Chipacabut then your innocent pvr ends up running as the same uid as postgres or sth15:38
Chipacaanyway, yes, there's a bunch of silly gotchas we need to care about15:38
Chipacait's all planned out afaik (there's a forum topic layout out the steps and stages of it)15:38
Chipacalaying out*15:39
fryfrogCool :)15:39
zygapstolowski: thank you!15:39
pstolowskiwoot, #6755 is green16:03
cachioChipaca, when you have time could you please take a look to this one? #669416:25
=== pstolowski is now known as pstolowski|afk
Chipacacachio: LGTM17:21
Chipacacachio: as I said there, some day sergiusens and I will be able to spec out (and implement/use) 'snap download --plz-put-the-snap-here=<blah>', but until then, what you've done is best17:21
cachioChipaca, nice, thanks for the review17:34
cachiozyga, please could do take a look to #669418:10
cachioit is almost ready and I need that to validate 2.3918:10

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