/srv/irclogs.ubuntu.com/2019/01/14/#snappy.txt

koala_manI've installed a snap that just has 'home' permissions. Can I choose to give it unfettered access to my filesystem?03:37
zygaHello05:23
mborzeckimorning06:12
mborzeckimvo: hey06:25
mvomborzecki: good morning06:27
mborzeckimvo: have you heard from zyga or pedronis?06:28
mvomborzecki: not yet06:28
jameshzyga: hi.  If you're looking at refactoring the user mounts code, I've got a PR with some new spread tests for the behaviour I care about: https://github.com/snapcore/snapd/pull/631306:30
mupPR #6313: tests: add a tests for xdg-desktop-portal integration <Created by jhenstridge> <https://github.com/snapcore/snapd/pull/6313>06:30
jameshthis is testing integration with the real xdg-desktop-portal/xdg-document-portal services for a few features06:31
jameshshould give coverage for bind mounting a fuse file system owned by a non-root user too06:32
=== robertliu_ is now known as robertliu
mupPR snapd#6371 opened: tests: exclude some more slow tests from runs in autopkgtest <Created by mvo5> <https://github.com/snapcore/snapd/pull/6371>06:46
mvosil2100: hey, good morning! do you happen to know what the autopkgtest test timeout on the autpkgtest servers for tests is. the source in lib/adt_testbed.py defines it as 10000s but I some logs where this seems to be exceeded on amd64 but then I also see logs where we hit a this timeout on i386. do you happen to know more about this?07:43
mvosil2100: aha, correction, arm64 takes longer07:43
mupPR snapd#6371 closed: tests: exclude some more slow tests from runs in autopkgtest <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6371>07:51
mupPR snapd#6372 opened: [RFC] tests: define new "tests/smoke" suite and use that for autopkgtests <⛔ Blocked> <Created by mvo5> <https://github.com/snapcore/snapd/pull/6372>08:00
=== pstolowski|afk is now known as pstolowski
pstolowskimornings08:01
mvohey pstolowski - good morning08:06
mborzeckipstolowski: hey08:18
mborzeckihttps://www.reddit.com/r/linux/comments/af9gjf/snap_flatpak_appimage_from_a_software_deployment/08:31
* Chipaca currently hunting for a tricky, racy failure in snapshots09:32
ChipacaI know how to fix it, and I know what the bug is … but I can't trigger it09:32
Chipacaa user did instead09:32
mborzeckiChipaca: genuine race condition bug :)09:33
Chipacayeah09:33
mupPR snapd#6373 opened: overlord/ifacestate: helper API to obtain the state of connections <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/6373>09:34
mborzeckipstolowski: something for you ^^09:34
pstolowskik09:35
mborzeckipstolowski: think i owe you a review too09:35
pstolowskimborzecki: oh yes, that would be great09:35
mupPR core18#112 opened: hook-tests: add test for the 002,008, 012, 014 hooks <Created by mvo5> <https://github.com/snapcore/core18/pull/112>09:36
Chipacagot it!09:45
* Chipaca takes a break09:46
mborzeckipstolowski: left a comment under #6113 not entirely convinced if it's worth the extra test though, so it's up to you10:24
mupPR #6113: overlord/ifacestate: handler for hotplug-connect task <Hotplug 🔌> <Created by stolowski> <https://github.com/snapcore/snapd/pull/6113>10:24
pstolowskimborzecki: thank you, checking10:25
pstolowskimborzecki: i'll add a test for this as a followup ok?10:26
mborzeckipstolowski: works for me10:27
pstolowskimvo: would you like to take a look at #6113 as well (it got reviews from Samuele and Maciej), or can I land it?10:29
Chipacamvo: is 2.37 branched already? if so I could add something to it?10:29
mupPR #6113: overlord/ifacestate: handler for hotplug-connect task <Hotplug 🔌> <Created by stolowski> <https://github.com/snapcore/snapd/pull/6113>10:29
mupPR snapd#6374 opened: snapshotstate: don't task.Log without the lock <Created by chipaca> <https://github.com/snapcore/snapd/pull/6374>10:29
Chipaca^^^ a crasher10:29
mvoChipaca: it is branched10:30
mvoChipaca: adding is easy, just tag for 2.3710:30
Chipacamvo: tagged10:30
Chipacamvo: do i need a separate pr for 2.37?10:30
mvoChipaca: I can cherry pick if its just 1-2 commits10:43
Chipacamvo: I'll keep it to 110:43
mvoChipaca: \o/10:43
* Chipaca equips a *glowing* rod of +3 force-push10:44
popeyWhen do we plan to add the feature to only update snaps if they're not running?10:47
mvopopey: this cycle, zyga is working on this10:48
mvopopey: conceptually working on it already, I don't think we have real code yet10:48
popeyOk, So the workaround for now is to defer updates, if you don't want something refreshed while you're using it?10:49
mvopopey: yeah, its unfortunate10:55
popeyok, thanks10:57
cmatsuokais there an interface to allow a snap package to add entries to cron.d, systemd timers or something like that?11:06
zygapopey: yes, definitely this cycle11:08
zygapopey: we are going to discuss details later today11:08
zygacmatsuoka: no but snaps can use timer units11:08
zygacmatsuoka: you can just define a timer for a given app to run on a schedule11:08
popeyzyga: ok, thanks. I have passed on the necessary details for deferring snap refresh as a workaround11:08
zygapopey: passed where?11:08
cmatsuokazyga: ok thanks, I'll check that11:09
ogracmatsuoka, https://forum.snapcraft.io/t/timer-string-format/6562 should help11:10
zygacmatsuoka: https://docs.snapcraft.io/the-snap-format/698?_ga=2.240122053.717610322.1547464203-2031546527.1547290160 defines the general format11:10
zygathe link that ogra gave (thanks! :) is the specific format for timers11:10
cmatsuokagot it, thanks11:20
mupPR snapd#6374 closed: snapshotstate: don't task.Log without the lock <Created by chipaca> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6374>11:20
mvoChipaca: ^- also cherry-picked now11:20
zygamborzecki: some comment about connection state APIs: https://github.com/snapcore/snapd/pull/6373/files#r24745602411:21
mupPR #6373: overlord/ifacestate: helper API to obtain the state of connections <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/6373>11:21
mborzeckizyga: thanks11:21
mupPR snapd#6366 closed: cmd/snap-discard-ns: fix name of user fstab files <Per-user mount ns  🐎> <Simple 😃> <Created by zyga> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6366>11:22
mupPR core18#110 closed: [RFC] hooks: add support for `.test` files and add some initial tests <Created by mvo5> <Merged by sil2100> <https://github.com/snapcore/core18/pull/110>11:27
zygamborzecki: updated https://github.com/snapcore/snapd/pull/636511:32
mupPR #6365: cmd/snap-update-ns: manually implement isspace <Per-user mount ns  🐎> <Simple 😃> <Created by zyga> <https://github.com/snapcore/snapd/pull/6365>11:32
zygamborzecki: https://github.com/snapcore/snapd/pull/6365 updated with islower/isdigit now11:36
mupPR #6365: cmd/snap-update-ns: manually implement isspace <Per-user mount ns  🐎> <Simple 😃> <Created by zyga> <https://github.com/snapcore/snapd/pull/6365>11:36
zygamvo: replied on https://github.com/snapcore/snapd/pull/636411:45
mupPR #6364: cmd/snap-update-ns: let the go parser know we are parsing -u <Per-user mount ns  🐎> <Simple 😃> <Created by zyga> <https://github.com/snapcore/snapd/pull/6364>11:45
mvozyga: ta11:48
zygamvo: I think travis is broken on https://github.com/snapcore/snapd/pull/636212:03
mupPR #6362: cmd/snap-update-ns: explicitly check for return value from parse_arg_u <Simple 😃> <Created by zyga> <https://github.com/snapcore/snapd/pull/6362>12:03
zygaas in, there's no travis run even registered12:03
zyganot sure what to do on that branch12:03
mvozyga: ok, I check it after lunch12:07
popeyzyga: a prominent developer of applications in our store. Their end users were upset that the app fails when it's refreshed.12:08
zygapopey: what's the workaround? I was specifically asking about what the idea is, not who it is for12:09
popeydefer updates to later when you're not working12:09
popeysorry, I thought I made that clear above.12:09
zygathanks, all is good :)12:10
popey:)12:10
pstolowskimvo: would you like to take a look at #6113 (it got +2 from Samuele and Maciej), or can I land it?12:13
mupPR #6113: overlord/ifacestate: handler for hotplug-connect task <Hotplug 🔌> <Created by stolowski> <https://github.com/snapcore/snapd/pull/6113>12:13
cachiomvo, hey12:31
cachiomvo, I finished the tests execution12:32
cachiobut I found some errors related to gpio12:32
cachiolike thi https://paste.ubuntu.com/p/dWkbxBjrGM/12:32
cachiomvo, these are the logs http://paste.ubuntu.com/p/8hQpc94jWW/12:33
cachiothe interface is not available12:33
cachioit is easy to reproduce12:33
mborzeckimvo: intersting question, https://forum.snapcraft.io/t/stracing-a-configure-hook/945212:45
mborzeckioff to get the kids13:05
=== ricab is now known as ricab|lunch
mvopstolowski: looking at it in a wee bit, can be merged today, promised :)13:28
mvocachio: oh, interessting13:28
mvomborzecki: interessting forum post indeed, thats food for thought13:29
=== cpaelzer__ is now known as cpaelzer
mvocachio: the gpio issue sounds like a regression :/13:30
cachiomvo, yes13:30
cachioI though perhaps some change was missing to be merged on the 2.37 branch13:31
mvocachio: needs digging, the test itself changed back in Nov, maybe its just a test issue13:32
pstolowskimvo: ok :)13:34
cachiomvo, but it pass in the regular google run13:34
cachiomvo, I'll give another look and I'll debug it13:34
mvocachio: I think I have an idea13:34
mvocachio: I think it was not run on the external backend before because it had a check for TRUST_TEST_KEYS in the past13:35
mvocachio: however when this got refactored this check was removed13:35
mvocachio: there is no reason for this check, however it indirectly helped it seems13:36
mvocachio: I should have a fix soon(ish)13:36
cachiomvo, ahhh, that could be13:36
zygare14:03
popeyzyga / mvo: (q from developer) "is there a ticket / forum thread / anything else where we can watch for snapd progress" (on not updating/refreshing while open) ?14:07
zygapopey: yes, there is14:07
zygapopey: let me find it14:07
popey(also) " Is there a way for an application to be "pinged" about a new version? Or should it just poll the directory?"14:08
popey(it's a classic snap)14:08
zygapopey: https://forum.snapcraft.io/t/bug-saves-are-blocked-to-snap-user-data-if-snap-updates-when-it-is-already-running/3226/3314:10
zygabut I'm inclined to create a new thread with the things we just discussed14:10
zygapopey: eventually yes, not initially14:10
zygapopey: it cannot poll anything by itself14:11
popeyif you do, please link to that thread14:11
zygacertainly14:11
popeyis there no environment variable which indicates you're on an 'old' version or something?14:11
popeySNAP_REVISION might help?14:12
zygapopey: no14:12
zygapopey: I mean, you can look at $SNAP_REVISION14:12
zygapopey: but that doesn't change in existing processes14:12
zygapopey: the snap will not be refreshed until the app is running14:13
popeyand it's not robust to be looking in $SNAP/../ ?14:13
zygapopey: I will write down the current discussion soon, let's postpone the details until you read that14:13
popeyok14:13
Chipacadegville: https://pastebin.ubuntu.com/p/WMHpQCFXHm/ <- wdyt?14:23
Chipacamborzecki: ^ also14:24
Chipacathings to note: it prints the warning only on install, and before the "done" message, and only once per install action14:24
mborzeckis/Warning/WARNING/ ?14:25
=== ricab|lunch is now known as ricab
mborzeckiChipaca: maybe we should point to the docs instead?14:26
Chipacamborzecki: I didn't want to get shouty (it'll be bold though)14:26
ChipacaI'll add a space between the warning and the "done" message14:28
mborzeckiChipaca: this topic mentions adding /snap/bin to $PATH14:28
mborzeckihttps://docs.snapcraft.io/commands-and-aliases/395014:28
Chipacaseems to help: https://i.imgur.com/YnB3EXV.png14:28
mborzeckiChipaca: mhm, nicer14:29
Chipacamborzecki: I was thinking more of a "in this distro, this desktop, this shell, do this to get it on the path: <...>14:30
Chipaca"14:30
mborzeckiChipaca: sounds like something that could be put in the forum/docs page, once it's in the snap binary it'll be harder to update14:32
degvillemborzecki, Chipaca: I think we should set up a specific forum topic, that way the comments can help too, especially if this is a common problem. I think that's what Chipaca is thinking anyway.14:33
degvilleBut I'm a little worried that we're ignoring the original problem, which is that the snapd installation somehow didn't add it to the path (by just writing instructions on how to add it to the path).14:34
Chipacadegville: I'm hoping having the warning pointing to the forum will also tell us about distros that aren't getting the integration done14:35
Chipacaso we fix it there14:35
degvilleChipaca: good point, yep.14:35
Chipacaor, say, if $random_shell needs some file in /etc, we could ship it14:35
Chipacaetc etc14:35
mborzeckiChipaca: something like 'include you $SHELL and distro when reporting a problem'?14:41
Chipacamborzecki: in the forum topic, sure14:41
ograjust ask for "snap version" and add "$SHELL" to the snap version output ? ;)14:46
Chipacasnap debug environ14:49
mupPR snapd#6375 opened: tests: fix enable-disable-unit-gpio test on external boards <Created by mvo5> <https://github.com/snapcore/snapd/pull/6375>15:04
mupPR snapd#6364 closed: cmd/snap-update-ns: let the go parser know we are parsing -u <Per-user mount ns  🐎> <Simple 😃> <Created by zyga> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6364>15:11
mupPR core18#112 closed: hook-tests: add test for the 002,008, 012, 014 hooks <Created by mvo5> <Merged by sil2100> <https://github.com/snapcore/core18/pull/112>15:13
mupPR snapd#6365 closed: cmd/snap-update-ns: manually implement isspace <Per-user mount ns  🐎> <Simple 😃> <Created by zyga> <Merged by bboozzoo> <https://github.com/snapcore/snapd/pull/6365>15:19
mupPR snapd#6350 closed: cmd/snap-confine: don't preemptively create .mnt files <Per-user mount ns  🐎> <Created by zyga> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6350>15:23
mupPR snapd#6344 closed: cmd/snap-confine: join freezer only after setting up user mount <Per-user mount ns  🐎> <Created by zyga> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6344>15:25
mupPR snapd#6113 closed: overlord/ifacestate: handler for hotplug-connect task <Hotplug 🔌> <Created by stolowski> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6113>15:48
ahasenackhi, I asked this user to post to the forum, but here is the original report in case someone is interested: https://askubuntu.com/questions/1108780/permission-denied-when-running-snap-applications-on-ubuntu-16-04-as-a-ldap-use15:49
mvopstolowski: I merged your PR, thanks again for this work! one question/idea inline though, not sure if its useful, I remember we talked about something similar in the past and there extracting common bits was considered unhelpful15:49
Chipacaahasenack: I think the short answer to the user's question is "no"16:12
Chipacaahasenack: the long answer is "no, sorry"16:12
ahasenackthe home interface is really about /home/<user>, and not the actual home in the case it's different?16:13
ahasenacki.e., it's /home/<user>, and not $HOME?16:13
zygamvo: based on our discussion before I'd like to merge https://github.com/snapcore/snapd/pull/629416:17
mupPR #6294: packaging/ubuntu: build with golang 1.10 <Core18> <Created by zyga> <https://github.com/snapcore/snapd/pull/6294>16:17
Chipacaahasenack: the interface itself uses apparmor's idea of what home is16:17
Chipacaahasenack: why?16:17
Chipacathere are other parts of the thing that don't understand homes outside of /home/ though16:18
Chipacaand nss in a snap won't be happy16:18
Chipacabut, I think jamesh mentioned that if you install nscd (or unscd) things should work16:19
Chipacabut I haven't tested it16:19
ograalso, $HOME is typically pointed to $SNAP_USER_DATA before the snap app is run ... (or did that change) ... so $HOME might not be what you expect16:19
zygaogra: that has not changed16:21
zygaogra: unless it's a snap using classic confinement16:21
pstolowskimvo: awesome, thank you! yes, there is probably some potential for extracting common bits. i'll take a look at this kind of refactoring when everything hotplug-related lands; there is almost definately some room for refactoring in unit tests. i'm refraining from it atm as it would only complicate things for my split PRs. might be easier to look at it (and review) as a whole when it's in master16:21
* cachio lunch16:23
mvopstolowski: sounds good16:24
mupPR core18#113 opened: hook-tests: add more hook tests <Created by mvo5> <https://github.com/snapcore/core18/pull/113>16:25
ChipacaWimpress: can you follow what this person is saying? https://forum.snapcraft.io/t/wp-office-no-internet-menu-shortcut-link-solved/945917:39
cachiosnap list17:56
`dwis there some magic incantation to run a snap program under perf? e.g. 'perf stat snap run' output shows counters are not being inherited by the target application, i assume due to the setuid helper18:01
=== pstolowski is now known as pstolowski|afk
zyga`dw: not that I know of, perhaps we want to support snap run --perf ...18:15
`dwwell, the point of the exercise to measure cpu and delays of snap itself, not sure how much of that work exists pre-helper18:19
`dwi can accomplish the same with isolcpus=, its just a pain :)18:20
`dwhmm, perf's cgroup filter can probably do it, unless snap is fiddling with cgroups too18:27
zyga`dw: snapd uses cgroups but most snaps cannot use cgroups themselves19:13
TrevinhoHow a snapped application can know its confinement type at runtime?19:22
Trevinhochecking freezer value to have /snap.* confinement is enough?19:23
`dwzyga: joyfully there is a perf_event cgroup that can be used with 'perf stat -G'19:29
`dwso after a little digging, it seems the answer to the question of why libreoffice takes twice as long and burns 3x as much cpu starting up than a regular install is due to squashfs. further digging reveals in order to save on memory, all requests to squashfs are serialized in the kernel at least on ubuntu, meaning my 8 thread nvme-equipped computer is entirely wasted for any snap app20:42
`dwdigging futher on why squashfs at all, i'm hitting a bit of a blank. the snap format page claims it speeds installation and makes it impossible to modify the snap contents, but the speedup is only true during the one-time installation process, after which an extreme penalty is paid for every access (the common case), and it contributes nothing to the user's ability to mutate the snap file (he can just rebuil20:44
`dwthe squashfs)20:44
`dwis there some better snapd design document or similar, or perhaps a better question, has anyone seriously proposed extricating squashfs entirely? its use here seems extremely costly for little gain20:44
`dwi noticed various relationships/interactions with lxd, but google doesn't seem to explain those well either20:45
=== daker_ is now known as daker
=== popey_ is now known as popey
=== cmagina_ is now known as cmagina
=== AndyWojo_ is now known as AndyWojo
=== souther_ is now known as souther
popey`dw: that's interesting data, would you be able to put a forum post together for wider spread of the info and discussion? (I suspect many have ended for the day)21:14
`dwpopey: yeah sure, will try to tidy up and post21:15
popeythanks so much!21:15
popeyI know some of the team are looking at performance issues, and I'm sure they'd appreciate the additional data21:15
`dwfor now i'm just avoiding the libreoffice snap, the difference is very noticeable21:16
leinardiHi, I'm trying to build a Snap for a Gtk/Python3 app but I am having hard time to find some snapcraft.yaml from similar apps. The app builds with meson and  requires GTK 3.24 (Gnome 3.30) and several Python dependencies all available on PyPI. Does someone know a similar project with a working snapcraft.yaml?21:22
leinardiis there a better place where I can look for help? I already tried on the forum but also there I got no answers...21:44
mupPR snapd#6376 opened: tests: split the test interfaces-many in 2 and remove snaps on restore <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/6376>23:42

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