/srv/irclogs.ubuntu.com/2017/06/08/#snappy.txt

mupPR snapcraft#1340 closed: state: save all the build packages as global <Created by elopio> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1340>01:25
mupPR snapcraft#1343 closed: go plugin: Cross compile with CGo <Created by kalikiana> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1343>01:28
mupPR snapcraft#1358 opened: release changelog for 2.31 <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/1358>02:10
AmorrisIs it possible to install snap on Arch Linux without pacman?02:12
AmorrisSuch as through a .tar.gz file?02:12
=== chihchun_afk is now known as chihchun
morphis_mvo: would be awesome if you can look at https://github.com/snapcore/snapd/pull/3365 again this morning and if you're ok, merge it now that niemeyer approved it06:04
mupPR snapd#3365: tests,packaging: add package build support for Fedora for our spread setup <Created by morphis> <https://github.com/snapcore/snapd/pull/3365>06:04
morphis_CI is already green06:04
zygagood morning07:07
mupPR snapd#3443 opened: Unity7 interface grows gtk2/3 settings and user's specific ini <Created by didrocks> <https://github.com/snapcore/snapd/pull/3443>07:19
mvofgimenez: 2.26.4 is in -proposed now everywhere, could you please kick of the SRU verification?07:27
fgimenezmvo: sure! on it, the automated tests were actually triggered a few days ago but there was a problem in the logic that determines the release branch to execute the tests from https://travis-ci.org/snapcore/spread-cron/builds/238479940#L300 i'll fix that and retrigger07:29
mvofgimenez: thank you07:31
fgimenezmvo: np i'll begin too with the changelog review, will keep you posted07:32
mvomorphis_: do you happen to know if the "proxy" helper is installed on fedora/suse by default?07:36
fgimenezmvo: btw i see that the deb was detected in -proposed about 6 days ago, is that correct? has it been updated since then? (just to make sure that we are detecting changes in proposed correctly)07:38
mvofgimenez: updates arrived yesterday07:41
mvofgimenez: 6 days looks not quite right07:41
fgimenezmvo: ok thx i'll take a look07:42
mvofgimenez: https://launchpad.net/ubuntu/+source/snapd has the exact times, ~21h ago07:42
iceyflexiondotorg: cholcombe and I have already done some poking around on https://github.com/rust-lang-nursery/rustup.rs/issues/114407:43
fgimenezmvo: ok thanks, in spread-cron we are currently watching http://people.canonical.com/~ubuntu-archive/proposed-migration/update_excuses.html (interestingly there's no snapd in that page now, and it seems that it was there 6 days ago..), i'll update it to look into https://launchpad.net/ubuntu/+source/snapd07:47
morphis_mvo: proxy helper?07:55
mvomorphis_: its a binary from libproxy called "proxy"07:55
morphis_ah, let me check07:55
mvomorphis_: is that there by any chance?07:55
morphis_not installed by default07:56
morphis_but libproxy-bin provides it07:56
morphis_let me try07:56
mvomorphis_: if its not there by default, thats all I need to know. that is on fedora or suse?07:56
morphis_mvo: fedora 2507:56
morphis_mvo: let me try suse07:56
mvomorphis_: thank you07:57
morphis_mvo: if you're adding a dependency can you add it for suse and fedora in packging too?07:57
mvomorphis_: I will explore it a bit, maybe dlopen(libproxy) is fine07:58
morphis_mvo: is that for adding proxy support system wide?07:59
morphis_mvo: libproxy-tools it is on suse and not installed by default07:59
Chipacainterestingly proxy itself doesn't look at the usual env vars08:01
mvomorphis_: yeah08:01
mvoChipaca: oh? that sounds very wrong08:01
Chipaca¯\_(ツ)_/¯ a matter of looking at the env and falling back to libproxy i guess?08:01
mvomorphis_: I talked to Son_Goku yesterday and he mentioned that fedora is not setting the systemwide proxy via environment but instead uses network-manager and the best option to talk to it seems to be libproxy08:02
mvoChipaca: indeed08:02
morphis_mvo: yeah libproxy looks really good for this08:02
mvoChipaca: it will also mean we need to (potentially) create a new http.Client{} for each request as the proxy is per-url in this model08:02
Chipacahttp.Transport08:03
Chipacabut yes08:03
mvomorphis_: the cheapest option is the exec.Command("proxy", url).Output() but adding a dependencies feels slightly ugly08:03
mvoChipaca: yeah, sorry, a transport into the client of course08:03
zygait's terrible that after decades of broad deployments proxy support in linux is not in libc08:03
zygaand everyone has to muck around with their special little snowflake08:04
morphis_mvo: implementing our own libproxy isn't much better, isn't it?08:04
zyga(contrasting other platforms that do this right)08:04
morphis_zyga: yeah, bionic has this AFAIK08:04
mvomorphis_: of course not :) sorry, what I mean is adding a hard dependency, I was curious to see if we could just dlopen(libproxy) and just ignore if its not there08:05
morphis_mvo: however, how would applications get the proxy configuration?08:05
morphis_mvo: ah08:05
morphis_why not08:05
mvomorphis_: looking again it is probably ok nowdays, it used to be heavy on further dependencies but it seems like all of those are now pulled in via plugns. to support "pac" proxy configuration a JS interpreter is needed iirc08:07
Chipacamvo: the biggest problem i see with all this is the "here's a list of proxies, try them in order" idea08:07
mvoChipaca: hm, we could simply not support that (initially at least)?08:08
Chipacamvo: also note proxy can return something that looks like socks://....08:08
Chipacalel08:08
mvoChipaca, morphis_: thinking about it some more I guess we need to call an external helper or we pull in cgo again into the deamon08:08
mvoChipaca: yeah08:08
* mvo scratches head08:09
Chipacathis sounds like *fun*!08:12
morphis_mvo, zyga: I would like to get https://github.com/snapcore/snapd/pull/3365 merged now08:17
mupPR snapd#3365: tests,packaging: add package build support for Fedora for our spread setup <Created by morphis> <https://github.com/snapcore/snapd/pull/3365>08:17
* zyga looks08:19
Chipacamvo: one more fun thing about using libproxy08:22
Chipacait brings lin libstdc++08:23
ograhmm08:23
ograogra@sabrelite:~$ snap info core |grep refreshed08:23
ograrefreshed:   2017-06-08 04:24:21 +0000 UTC08:23
ograogra@bbb:~$ snap info core|grep refreshed08:23
ograrefreshed:   2017-06-07 04:23:44 +0000 UTC08:23
ograwhy is that different ? isnt the refreshed value coming from the server ?08:24
pedronisno, that's refreshed as in the device refreshed08:24
pedronisI think08:24
ograthat doesnt match uptime08:24
ogra4:20 UTC is actually the time the cron job runs for armhf08:25
ograso that should be generation time08:25
ograoh ... but the bbb didnt refresh ... it is the generation time of the currently installed snap08:26
zygamorphis_: merged08:28
mvoChipaca: yeah, ugly but we also have that I think08:28
morphis_zyga: you're my hero!08:28
mupPR snapd#3365 closed: tests,packaging: add package build support for Fedora for our spread setup <Created by morphis> <Merged by zyga> <https://github.com/snapcore/snapd/pull/3365>08:29
Chipacamvo: have that where?08:29
morphis_zyga: lets wait until the suse one finishes then we can merge that one too08:29
mvoChipaca: in the core snap08:31
mvoChipaca: libstdc++ I mean08:31
Chipacamvo: ah! i meant into the snapd binary itself08:31
zygamvo: ok to land the --base branch?08:31
mvoChipaca: yeah, I think we don't want this directly, probably via helper08:32
mvozyga: which one? 3439? or the older 3317 ?08:33
zyga343908:33
mvozyga: it needs reviews first, no? I will do the first review next08:34
flexiondotorgicey Excellent!08:34
zygamvo: yes, I meant that I wanted you to review it :)08:34
mvozyga: aha, yes, will do08:34
ilivwhy does build.snapcraft.io needs access to organizations?08:34
ograiliv, to put webhooks into the tree08:34
zygailiv: for hooks08:34
ogra(well, endpoints(08:35
ilivwell..08:35
ilivmy account has access to a number of organizations that have nothing to do with my repos that I'd like to use with build.snapcraft.io08:35
zygailiv: I see, I think it would make sense to allow partial access to just the things that are needed08:36
ilivI kinda trust you people but most of those organizations will not be happy seeing build.snapcraft.io having access to their accounts08:37
ograit is only needed to put the hook in place once though ...08:38
ogratheyx could turn it off afterwards (i know that doesnt help much in most cases)08:38
ilivso, what exactly will be done to those organization accounts?08:40
ilivyou say a webook will be created.. but in which repo (if there are more than one)?08:40
* ogra doesnt know the tech details, perhaps cjwatson can help 08:41
cjwatsoniliv: the github access page lets you control this on a per-org basis; you don't have to grant access to all your orgs.  build.snapcraft.io will only install a webhook in repositories that you specifically enable there.08:49
fgimenezmvo: zyga Chipaca can we land snapd#3348? it has two +1 and is almost green (just an autopkgtest failure due to the reexec flakiness), it will fix two nightly suites and unblock the spread-cron branches for executing the core-revert test automatically08:49
mupPR snapd#3348: tests: add core revert test <Created by fgimenez> <https://github.com/snapcore/snapd/pull/3348>08:49
mupPR snapd#3348 closed: tests: add core revert test <Created by fgimenez> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/3348>08:51
cjwatsonand in fact the org access is only needed so that BSI can list org-owned repos through the github API; there's a separate permission for installing webhooks08:51
fgimenezmvo: thanks! :)08:51
ilivcjwatson, I can't control it, though. All I see is a green check mark against organization name and it is not interactive.08:51
cjwatson(we ask for admin:repo_hook read:org, in the github scopes language)08:51
cjwatsoniliv: you can control it on https://github.com/settings IIRC (I would check more specifically but my internet connection is being unusually terrible today)08:52
zygafgimenez: looking08:53
zygafgimenez: that PR had my upublished review08:54
zygadarn github08:54
cjwatsoniliv: oh, I think if it's just a green tick then that's because the org owner has allowed it08:54
cjwatsoniliv: we don't get to control any of this stuff, it's all up to github08:54
zygafgimenez: can you please look at the PR again?08:55
cjwatsonhttps://help.github.com/articles/about-oauth-app-access-restrictions/ has some more details08:55
fgimenezzyga: sure, thanks! i'll prepare a follow addressing your comments08:57
zygafgimenez: thank you, I'm sorry I didn't realize I never submitted this review08:57
zygathe snap-confine-from-core and the other re-exec tests keep failing randomly08:58
zygaI don't remember any branch that didn't fail on this in the past week08:58
zygaI'll try to figure out WTF is going on there :/08:59
mupPR snapd#3370 closed: many: derive implicit slots from interface meta-data <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/3370>08:59
fgimenezthank you zyga, i think sergio is also lookign into it08:59
cjwatsonanyway, as far as I can tell we ask for the absolute bare minimum that we need to install webhooks and see any org-owned repos at all09:00
zygadoes anyone know of a vim extension that would add a tab to an exsiting vim whenever vim is invoked from command line but another process exists somewhere?09:02
ilivcjwatson, yes, it seems to work like you said. kinda weird...09:03
morphis_mvo, zyga: approval and a merge of https://github.com/snapcore/snapd/pull/3406 would be  nice :-)09:06
mupPR snapd#3406: tests,packaging: add package build support for openSUSE <Created by morphis> <https://github.com/snapcore/snapd/pull/3406>09:06
zygamorphis_: looking09:10
mupPR snapd#3444 opened: interfaces: compose the base declaration from interfaces <Created by zyga> <https://github.com/snapcore/snapd/pull/3444>09:10
zygamorphis_, mvo: can you please look at 344409:10
morphis_zyga: sure09:11
zygamorphis_: can you merge master into 3406?09:11
morphis_zyga: I did this 45min ago09:11
zygamorphis_: merging it now would shorten the diff09:12
morphis_sure09:12
zygamorphis_: correct me if I'm wrong but I still see the fedora changes there09:12
morphis_I merged before the merge of the fedora branch09:12
morphis_isn't travis doing an automatic merge with master when it runs?09:13
morphis_zyga: but merge now09:13
zygamorphis_: it's optional09:13
zygamorphis_: and we don't do it09:14
morphis_zyga: shouldn't travis fail when a merge with master breaks any tests?09:16
mvozyga: base snap branch looks good09:18
pedronismorphis_: well if the run is old you don't know because master has moved09:18
morphis_pedronis: right but at the point where travis starts, shouldn't it start testing from a combination of master + branch? otherwise test results will always be a lie if master has evolved09:19
pedronisit does afaik09:20
morphis_ok09:20
pedronisbut we might still break master because the check is not done on the merging09:20
zygamvo: thanks!09:23
zygaChipaca: can you do a 2nd review so that mvo can iterate on base snaps?09:23
zygamorphis_: github has a setting where you can enable a check that disables merging if master has moved09:24
zygamorphis_: bue we're not using it09:24
zygamorphis_: as it requires a rebase-based workflow09:24
* zyga hugs rebase09:24
morphis_zyga: reviewed #344409:24
morphis_zyga: I see09:24
Chipacazyga: on which pr?09:26
zygaChipaca: on 343909:26
mupPR snapd#3439 closed: cmd/snap-confine: add support for --base snap <Created by zyga> <Merged by chipaca> <https://github.com/snapcore/snapd/pull/3439>09:29
zygamorphis_: reviewed09:29
mupPR snapd#3445 opened: tests: add linode-sru backend <Created by fgimenez> <https://github.com/snapcore/snapd/pull/3445>09:33
zygamorphis_: updated09:34
morphis_zyga: ok09:34
zygamorphis_: sorry for being so picky about those comments but I think it is essential09:45
zygamorphis_: in a few weeks nobody will remember why fedora or suse is not included in a given test09:45
morphis_zyga: commented on all and fixed most09:47
morphis_zyga: np, but basically we have all test cases disabled right now09:47
morphis_that is why we switched from a blacklist to a whitelist approach09:47
zygamorphis_: thanks, ping me and I'll re-read it09:47
morphis_a followup PR will clean this up and enable most tests09:48
morphis_zyga: ping :-)09:48
zygaaha :D09:48
zygareading then09:48
morphis_thanks09:49
morphis_zyga: approved #3444, thanks for doing the cahnges!09:53
zygamorphis_: thank you!09:53
zygamorphis_: re-reviewed10:03
zygamorphis_: fix one typo and +110:03
zygamorphis_: some heavy conflicts on 341110:07
ograzyga, hmm10:10
ogra"On core systems we don't pivot_root and that10:11
ograhas to change before base snaps are fully operational"10:11
ograzyga, can we make sure to get proper ram usage statistics before implementing such a thing (or do i mis-read that ... you want to exec every snap on a core install in pivot_root ?)10:11
mupPR snapd#3446 opened: errtracker: Include /etc/apparmor.d/usr.lib.snap-confine md5sum in err reports <Created by mvo5> <https://github.com/snapcore/snapd/pull/3446>10:13
zygaogra: yes, this is required for base snaps10:16
zygaogra: core and classic will behave (finally) exactly the same10:16
ograzyga, well, why do we need base snaps on core installs ... i though they are a lib layer on top of core10:16
zygaogra: no, they are not10:17
zygaogra: base snaps are needed so that we can run snaps that use base snaps (which will soon be most snaps, I think)10:18
ograzyga, in any case we are supporting embedded boards and i suspect pivot_root means there will be more copies of libs and env in ram that we should really measure before10:18
zygaogra: base snaps, roughly, will just use snaps other than core as the root filesystem10:18
ograright, so whats the use case on a core install for that ?10:18
zygaogra: note that we will have less things in the core snap this way10:18
zygaogra: *every* snap will use a base snap10:18
zygaogra: have you been following the base snap discussions on the forum/10:19
ogranot closely the last days10:19
zygaogra: core will become a snap with just snapd in it10:19
ograbut that sounds really awkward for low end10:19
zygaogra: and what is currently in core will become ubuntu-16 base snap10:19
ograok10:19
zygaogra: it is required for 16-18 migration10:19
ograthat is what i grokked before10:19
zygaogra: and to allow running snaps with different bases on one system10:20
ograbut that you plan to pivot_root each and every snap is new to me10:20
zygaogra: how would those work otherwise?10:20
ograor that you want to support different base snaps on some 256M 200MHz IoT board installs10:20
zygaogra: yes, we don't want to have 2nd class devices that don't support an essential feature10:20
ograby simply merging the rootfs on boot10:20
zygawhat do you mean by merging?10:21
ograand keeping the snaps as they are without duplicating the world in ram10:21
zygawhy do you think we'd be duplicating something in ram?10:21
mupPR snapd#3447 opened: debian: unify built_using between the 14.04 and 16.04 packaging branch <Created by mvo5> <https://github.com/snapcore/snapd/pull/3447>10:21
ogramerge core and base on booot ... execute natively10:21
ogralike we do today ... just with an additional split of the snapd bits into another snap10:21
mvofwiw, libraries are mapped into ram based on inode number, if that stays the same nothing will be duplicated (someone needs to double check that)10:22
ograif you want to go that route that really should see some measurements10:22
zygaogra: I'm open to suggestions but IMO there is no other route10:22
mvo(double check that the inode number stays the same, the mmap mechanism is well understood)10:22
* zyga checks10:22
ogramvo, thats what i'm saying ... not saying it is wrong or anything but on that low end we shouldnt operate without ameasurments and data10:22
ogra*measurements10:23
ograi'm sure pivot_root will have overheard, the question is if that is bytes or megabytes10:23
ogra*overhead10:23
zygainode number is the same10:23
zygaogra: why would pivot_root have overhead?10:24
ograbecause it wraps around something, it is an additional layer10:24
zygaI don't think that's true10:24
zygait's a chroot on steroids10:24
ograyes10:24
zyga(kind of)10:25
zygaogra: the only overhead is that as core and bases diverge we will see extra copy of libc used by the few services in the core snap, for everything else they will operate exactly the same as today10:25
ograzyga, well, still, it would be good to measure the differences between with and without pivot_root regarding system resources ... we're in embedded territory here ...10:27
zygaogra: that I agree with10:27
zygaogra: it'd be good to come up with a benchmark we can repeat10:27
ograwell, just measure rem and cpu usage for the same app snap in both cases10:28
ogra*ram10:28
zygaogra: specific snap (revision), specific board, specific script10:28
ograsure10:28
zygaso that we can just run this via spread and stay aware10:28
ograwell, not needed to do it regulary ..… thats simply stuff you should research before coming up with such an implementation ... once you know if there is a difference and how big it is thats enough10:29
ograit wont change over time so doesnt need to be a regular test10:29
ograppisati_, do you have a sabrelite ?10:33
ograppisati_, i'm seeing weird console distrotion when i boot with hdmi and console=tty0 with the current linux-generic from xenial10:36
zygaogra: note that we came up with pivot_root last year, this is nothing new10:36
zygaogra: given what we need to do there's no other way to implement base snaps10:37
zygaogra: I suspect we actually use less memory now as before persistent mount namespaces *each process* would independently pivot_root10:37
ograzyga, well, we get along without base snaps today ... and merging core and base on boot with keeping the native execution would work too ... core specific indeed10:38
morphis_zyga: fixe10:38
zygaogra: no it would not work because the whole idea of base snaps is to have more than one10:38
ograzyga, note that i'm not saying anything is wrong though ... but we should have numbers before jumping ahead with implementation10:39
zygaogra: so you cannot use your current rootfs as the rootfs for snaps10:39
pedroniszyga: either we way we likely need a root filesystem,  there still the question what really goes into core vs base10:39
zygapedronis: I agree, I think this will clear up as we come closer to the sprint10:39
ograzyga, we do that today ... and why would you want to support multiple base snaps on super-low-end devices ?10:40
ograi always understood that this is not wanted for ubuntu core10:40
zygaogra: we cannot do that once we have more than one  base snap10:40
zygaogra: and we want to have more than one base snap so that we can transition to 18 series10:40
ograsure we can ... we can restrict what can be installed on a core installation10:40
zygaogra: and to allow other distributions to equally participate in the snap distribution10:40
zygaogra: if we restrict we will have to have a flag day for 18 transition and we don't want that10:41
ppisati_ogra: nope, i don't have one10:42
ppisati_ogra: what is that?10:42
ograimagine you have something like a beaglebone, your ram is limited, your cpu is limited ... do you really want to allow people that install three snaps to have three oses running on that setup because the three snaps use three different bases ?10:42
pedroniszyga: notice also that because of the configure hook  the core snap will need a base snap too10:42
zygaogra: yes, if that's what those people want to run I don't want to stand in their way10:42
ograppisati_, they renamed it to nitrogen6 ... its an IMX board10:42
pedronis(at least the configure hook is a likely reason to need one)10:42
zygapedronis: configure hook for which snap?10:42
pedronisfor teh core snap10:42
pedronisthe core snap has a hook10:42
pedronisnowadays10:43
zygapedronis: right, I was just checking10:43
ograzyga, well, then we can simply give up on IoT boards will just come to hang and crawl with that10:43
zygapedronis: yes, it is likely that the core snap will be special cased to be its own base snap10:43
zygaogra: I doubt that10:43
pedroniszyga: well that start to be weird10:43
pedronisI fear duplication then10:44
zygaduplication of?10:44
pedronisstuff that needs to be in the core snap and the base snap10:44
pedronislike python or something10:44
zygapedronis: the good thing that base snaps will allow us to do is to almost freely shape the core snap10:45
pedronisnot really10:45
zygapedronis: as it will no longer affect how anything runs10:45
pedronisif the core snap isn't really minimal10:45
ograzyga, well, if i install the mysql snap from that fedora guy, along with the webserver snap from this arch guy on top of my ubuntu core board, i end up with three OSes on disk and in ram10:45
zygapedronis: the initial ubuntu-16 will fork from the current core (snaps snapd)10:45
ograzyga, thats definitely not feasible10:45
zygaogra: yes but this is what you _wanted_10:45
zygaogra: if you don't want to do that, don't do that10:45
ograzyga, how did i know ?10:45
zygaogra: or get the stack from one vendor10:45
zygaogra: snap info will tell you that10:46
ograzyga, you are saying that a user of our SW should know the source in and out ?10:46
zygaogra: anyway, I think this discussion is moot now10:46
ograand why would i look at snap info10:46
zygaogra: same could be said for base-16 and base-1810:46
ograall i wanted was the webserver to act as frontend to a mysql db ...10:46
ograon my $mini-board10:47
ograso i just picked the packages ... done10:47
ograand then notice that the whole thing eats my disk and ram10:47
pedroniszyga: anyway there's a problem that likely some core snap config should be part of a base snap configure, but that concept doesn't make sense10:47
zygapedronis: can you give me an example?10:48
ograwe could surely make that an optional switch to allow additional base snaps ..… but thats definitely nothing we should have OOTB10:48
zygapedronis: I suspect that base snaps won't have much configuration at first10:48
pedroniswhere would sshd live?10:48
zygapedronis: in the base snap10:48
pedronissee10:48
zygaer10:48
zygacore snap10:48
zygaunless we start to allow apps and services on base10:48
pedronissee10:49
zygawhich is something we never discussed10:49
zygabase snaps won't have any configuration intially because they won't run any services10:49
ograwhere else would system services live ?10:49
pedronisin the core snap it seems10:49
ograerr10:49
zygaif we choose to move them to a blessed base snap10:49
pedronisbut I think we also had a different vision10:49
zygawe could do that10:49
pedroniswhere the core snap was mostly just snapd10:49
pedronisand its deps10:49
_28Kbservices must be snaps i guess10:50
ogra<zyga> ogra: core will become a snap with just snapd in it10:50
zygapedronis: yes, but that is the road ahead, for now we can start with just a copy of the current core as core and base and then trim them as we go10:50
ograso the system services must be in the base snap10:50
zygaogra: _will become_ :)10:50
ogra(in that setup at least)10:50
pedroniswell or we have a services snap10:50
abeatoogra, mvo could we move forward https://github.com/snapcore/core-build/pull/13 ?10:50
mupPR core-build#13: Androidboot support <Created by alfonsosanchezbeato> <https://github.com/snapcore/core-build/pull/13>10:50
zygaI think it is all doable but we need to discuss one more thing at the sprint: if we are going to get rid of bootable bits from the core snap10:51
ograwell10:51
ograwe cant get rid of them ... we can probably move them around though10:51
zygait those go to a new helper snap (ubuntu-core maybe) then this will resolve other questions10:51
zygathat's what I meant10:51
zygathen on classic systems you'd need base snaps only10:51
zyganot even core or ubuntu-core10:52
zygaon systems that re-exec you'd pull in core and base snaps10:52
zygaand on core systems we'd pull in everything10:52
* ogra isnt so worried about the resulting rootfs and how we assemble it, thats all easily solvable 10:52
ograbut the "multiple base snaps allowed" is really bothering on core10:52
zygaogra: do you have a plan for 18 transition?10:53
ograthats fine if you have endless ressources like on a PC10:53
ograzyga, allow exactly one base snap10:53
zygaogra: that doesn't involve running both 16 and 18 snaps at the same time?10:53
ograor allow two ... still better than "any"10:53
zygaogra: that's one way to make sure nobody can transition until *everything* has a 18 snap as well10:53
zygaogra: if we allow two we might as well allow any10:53
zygaogra: until we measure and show this is terrible (doubtful) I think this is not a thing worth discussing now10:54
ograwhat i really dont like is that you end up with the fedora, arch, suse base snaps being pulled in silently when installing some app snap10:54
ogra(on core that is)10:54
zygaogra: we could lazily mount snaps to save memory (keep old revisions unmounted)10:54
zygaogra: it's just like docker really, but more integrated and better10:55
ograzyga, you will still have multiple libs and envs in ram10:55
zygaogra: we can put confirmations in place but it doens't change that users are in control10:55
ogracore should simply be restricted by default to only use ubuntu base snaps (16 and 18 if you feel thats needed)10:56
ograbut using foreign bases should be a switch rthat is disabled by default10:56
ograwe have very limited resources on core10:56
ograand that implementationm is very wasteful10:56
ogra(and did you wonder why people dont run their whole OS in docker n raspberry pi's ? :) )10:57
mvoa second review for https://github.com/snapcore/core/pull/48 would be great10:58
mupPR core#48: add support for `snap set core proxy.{http,https,ftp,all}` <Created by mvo5> <https://github.com/snapcore/core/pull/48>10:58
zygamvo: some comments there11:16
mvozyga: ta11:16
zygamvo: don't mind the -1, just a voice of concern for the hook11:18
zygamvo: do you think we could write it in go instead?11:18
zygamvo: you know (remember) better the discussion around that AFAIR11:19
mvozyga: well, I wrote it in python but that got shoot down, I can give it another go in go. it just a bit of work11:21
mvozyga: and yeah, no disagreement that sh sucks for this kind of things11:22
zygamvo: what was the reason for the python _1?11:22
zygaoho11:22
mvozyga: there is a forum discussion11:22
mvozyga: that has the discussion11:22
zygalook at this11:23
zygahttps://travis-ci.org/snapcore/snapd/builds/240716712?utm_source=github_status&utm_medium=notification11:23
zygahttps://paste.gnome.org/pvdpi4vbu11:25
zygasome crazy linode stuff is going on there11:26
zygafgimenez: ^^ did you ever see a failure like that?11:27
morphis_zyga: happy to merge https://github.com/snapcore/snapd/pull/3406?11:29
mupPR snapd#3406: tests,packaging: add package build support for openSUSE <Created by morphis> <https://github.com/snapcore/snapd/pull/3406>11:29
fgimenezzyga: nope, seems that the linode api stopped working for a while and started returning html instead of json, anyway "Our development team has been alerted to this error.  If you continue to have problems please contact support <a href="mailto:support@linode.com">support@linode.com</a>"11:29
zygamorphis_: we need a 2nd review but yes11:34
morphis_mvo: you have time for second review on #3406? or fgimenez?11:35
mupPR snapd#3438 closed: daemon: make snapd a "Type=notify" daemon and notify when startup is done <Created by mvo5> <Merged by zyga> <https://github.com/snapcore/snapd/pull/3438>11:40
morphis_Pharaoh_Atem: can you have a look at https://github.com/snapcore/snapd/pull/3398 ?11:47
mupPR snapd#3398: env: set XDG_DATA_DIRS for wayland et.al <Created by sergiusens> <https://github.com/snapcore/snapd/pull/3398>11:47
morphis_Pharaoh_Atem: is there some better place in Fedora to do this kind of thing?11:47
zyga_morphis_: there's a new systemd thing11:48
morphis_zyga_: you have a link?11:48
zyga_yes, one sec11:48
morphis_new as in too old for 14.04?11:48
morphis_16.04 I mean11:49
zyga_morphis_: starting with systemd 233 you can use /run/environment.d/ http://in.waw.pl/~zbyszek/blog/environmentd.html11:51
morphis_interesting11:51
zyga_cachio_: some comments on 340912:00
zyga_mvo: I +1 3317, if you can get a 2nd review (perferrably from niemeyer as it affects snap.yaml syntax) I'd love to have it12:23
zyga_mvo: I also wonder about the tech review board12:23
zyga_mvo: we should get an approval from them from snap format changes, right?12:23
zyga_mvo: but I wouldn't like to block R&D on that12:23
zyga_mvo: perhaps we can create a branch (say base-snaps) where we land things in anticipation of the sprint12:24
zyga_mvo: where we can prepare and brew enough of this to run a base snap for real12:24
zyga_mvo: and get the experience and measurements we need12:24
mvozyga_: good point, we need approval from niemeyer at least12:24
zyga_ok, since nothing can land because of reexec mystery I'll look at that instead of anything else now12:28
* ogra glares ...12:28
ograogra@anubis:~/datengrab/hikey-lemaker$ ls /mnt/12:28
ogradtbs  hikey-kernel_0.snap  install.yaml  snappy-system.txt  uboot.env12:28
ograwow12:28
ograso thats an all-snap image ... but using an install.yaml for ubuntu-device-flash12:29
ograkind of a hybrid between actual all-snap and old a/b partition setup12:29
ogra(and uboot.env is full of snappy_* variables ... this will explode really badly on first upgarde i guess)12:32
ogra(if it would even upgrade at all ... it installs ubuntu-core 111 )12:32
zyga_pstolowski: hey, I added some comments to 334012:37
fgimenezzyga_: i'm getting this error on 14.04 with the 2.26.4 deb installed http://paste.ubuntu.com/24807633/ (executing the tests from the release/2.26 branch) could you please take a look?12:38
zyga_sure12:38
zyga_looking12:38
zyga_fgimenez: which kernel are you on?12:38
fgimenezzyga_: aah let me check, probably an old one, the new kernel debs should be in place but the reboot didn't happen12:39
cachio_zyga_, nice12:39
pstolowskizyga, thanks, looking12:39
cachio_zyga_, the 3433 is ready if you have a minute12:40
zyga_cachio_: sure, I'm doing PRs anyway (while chasing the re-exec bug)12:40
fgimenezzyga_: indeed, it had installed 4.4.0-79 but was still using 3.13.0-119 http://paste.ubuntu.com/24807695/ trying now with a reboot after the upgrade, thanks!12:51
zyga_fgimenez: my pleasure, I may add a feature to snap-confine to bail out with a nicer message12:52
=== chihchun is now known as chihchun_afk
zyga_cachio_: +112:54
cachio_zyga_, awesome12:54
zyga_cachio_: did you trace that as a possible cause of the re-exec issue?12:54
mupPR snapd#3433 closed: tests: restoring the /etc/environment and service units config for each test <Created by sergiocazzolato> <Merged by zyga> <https://github.com/snapcore/snapd/pull/3433>12:54
fgimenezzyga_: sounds good, btw snapd#3391 takes care of the reboot during the sru validation for 14.04, a review would be great12:55
mupPR snapd#3391: tests: reboot after upgrading to snapd on the -proposed pocket <Created by fgimenez> <https://github.com/snapcore/snapd/pull/3391>12:55
zyga_fgimenez: sure12:55
cachio_zyga_, I could not reproduce it, and I added some debugs to get information but I didn't get much more12:55
zyga_cachio_: it hapepns many times a day12:56
zyga_cachio_: but yes, reproducing it is hard sometimes12:56
zyga_fgimenez: done12:56
cachio_zyga_, could you reproduce it?12:56
zyga_cachio_: I'm still trying, I have some tools to help me find the possible cause12:57
cachio_zyga_, I would like to see if after this change in the environemnt variables the bug is being reproduced12:58
zyga_allocation failed on all instances on https://travis-ci.org/snapcore/snapd/builds/240716184?utm_source=github_status&utm_medium=notification12:59
zyga_cachio_: indeed, I want to see new test runs12:59
fgimenezzyga_: thx!12:59
cachio_niemeyer, I'll be 3 minutes late13:00
niemeyercachio_: Thanks for the note13:00
niemeyerChipaca, pstolowski: Stand up?13:03
Chipacaoops13:03
Chipacaomw13:03
mvojdstrand: did you had a chance to look (high level) on https://github.com/snapcore/snapd/pull/3431 yet?13:42
mupPR snapd#3431: interfaces: simplify snap-confine by just loading pre-generated bpf code <Created by mvo5> <https://github.com/snapcore/snapd/pull/3431>13:42
Chipacapedronis: before I forget again, could you revisit snapd#3420 ?13:50
mupPR snapd#3420: many: slight improvement of some snap error messaging <Created by chipaca> <https://github.com/snapcore/snapd/pull/3420>13:50
cachio_zyga_, https://travis-ci.org/snapcore/snapd/builds/240775990#L419313:50
* Chipaca ~> reboot because busted snap-confine13:50
* zyga_ runs for lunch13:52
pedronisChipaca: are you sure tr.Get returns ErrNoState ?13:53
fgimenezniemeyer: could you please give another shot at snapd#3391 ? sru tests were failing on 14.04 because of the issue this PR fixes13:53
mupPR snapd#3391: tests: reboot after upgrading to snapd on the -proposed pocket <Created by fgimenez> <https://github.com/snapcore/snapd/pull/3391>13:53
zyga_Chipaca: what happened?13:55
Chipacazyga_: same as the other day?13:55
Chipacabut this time it won't go away13:55
fgimenezniemeyer: your input on snapd#3445 would be great too13:55
mupPR snapd#3445: tests: add linode-sru backend <Created by fgimenez> <https://github.com/snapcore/snapd/pull/3445>13:55
zyga_Chipaca: what was it?13:55
jdstrandmvo: I haven't yet, but I finished the thing that was in front of it so plan to get to it today13:55
niemeyerfgimenez: Ack, will look, thanks13:55
jdstrandwell, finished is strong. I'm blocked, but that is neither here nor there for you request13:55
jdstrandyour*13:55
fgimenezniemeyer: thx!13:55
Chipacazyga_: http://pastebin.ubuntu.com/24808074/13:55
zyga_Chipaca: unmount /run/snapd/ns/core.mnt13:56
zyga_Chipaca: I think that should cure it13:56
* zyga_ runs to eat for real13:56
Chipacazyga_: when you get back from eating for real, why is it getting confused by that?13:58
ChipacaI mean, it created that mountpoint in the first place13:58
Chipacazyga_: and no that has not fixed it13:59
jdstrandmvo: there was talk of a meeting with me to discuss race-free profile loads. I see https://github.com/snapcore/snapd/pull/3442 but it falls back to old profiles (thus not addressing my concern). did a meeting happen without me? is something else being done?13:59
mupPR snapd#3442: snap: ensure security polices are re-created <Created by mvo5> <https://github.com/snapcore/snapd/pull/3442>13:59
Chipacaalthough the error is slightly different13:59
pedronisChipaca: I don't see tr.Get producing ErrNoState, can you check if we have a test for doing conf get on a missing snap13:59
Chipacapedronis: ack14:00
Chipacazyga_: http://pastebin.ubuntu.com/24808102/14:00
pedronisChipaca: and sorry, anyway what I spotted was the other one14:00
morphis_mvo: do you have an idea about what could be wrong in https://paste.ubuntu.com/24808137/ ?14:08
morphis_mvo: snapd seems to be terminated at the end14:08
morphis_wondering if this is related to re-execution14:08
morphis_zyga: ^^14:08
mvomorphis_: definitely strange, systemctl shows its up in the log, re-exec appears to be disabled (as it should)14:09
morphis_mvo: yes, wondering what happens here and what causes snapd to terminate14:10
mvojdstrand: no worries, the seccomp PR is just one step, there is one more https://github.com/snapcore/snapd/pull/344214:10
mupPR snapd#3442: snap: ensure security polices are re-created <Created by mvo5> <https://github.com/snapcore/snapd/pull/3442>14:10
morphis_mvo: just running the test again, to do a few more checks14:10
mvomorphis_: are you in the system? or is that just output from e.g. linode?14:11
mvomorphis_: if you can run with -debug that might be helpful14:11
morphis_it's from linode, yes14:11
mvojdstrand: but gustavo was keen to do some more changes there I think, I was mostly asking about seccomp to see if there are concerns from a security POV14:11
morphis_mvo: have a shell again in a few min14:13
jdstrandmvo: I realize seccomp 3431 was the first step. I saw 3441 and wasn't sure if it was the 2nd or final step. if final, again, it doesn't address my concerns. note I commented in 344114:13
jdstrandmvo: thanks for the update. I'm not terribly sure we are in alignment as the meeting never happened... I guess I'll just try to keep an eye on things14:14
mvojdstrand: aha, thank you. so its just about the timeout (your concern). thta should be straightforward to fix14:14
jdstrandmvo: for that PR, there is a concern about the timeout, yes14:16
jdstrandmvo: but I don't know what a reasonable value is there14:16
jdstrandmvo: to me, if you do that pr and instead of falling back to old profiles, trigger the regeneration for that snap, then that would address all of my concerns (I realize there is a lock contention there, but that is surmountable)14:17
ilivare amd64 and armhf the only architecutre currently supported by build.snapcraft.io?14:17
mvojdstrand: I see, thank you. so intead of the current PRs wait-for-all-profiles approach it would be snap run would trigger *just the current* profile? which would be a no-op if its current. and if snapd is not up snap run would still continue (to avoid it being in the criticial path)?14:19
mvojdstrand: did I understand this correctly?14:19
mvojdstrand: maybe its better to continue in the forum, let me write up something there14:20
ograiliv, afaik yes ... you can mirror your branch to launchpad (with a regular scheduled auto-sync) to have the more exotic arches14:20
ilivalso, there appears to be a problem with snap package installation example. once a package was built the page showed me this: "To test this snap on your PC or cloud instance: sudo snap install --edge iliv-test-0". Running this command results in "error: cannot install "iliv-test-0": snap not found".14:21
jdstrandmvo: yes. if snap run can call out to something that is able to regenerate the profiles without snapd, then yes-- snapd is out of the critical path, the normal case is snapd loaded everything and the lose the race case is handled14:22
ilivhowever, when I clicked on the green text link "Built and published", it took me to a page where the same command example was a little different: "sudo snap install --edge iliv-test-0 --revision=1". this works.14:22
jdstrandmvo: I am *not* saying that is required for 3441. I am saying that if 3441 did that, all concerns would be addressed. if it is in a future PR, I'd like that PR to be sooner than later so the concerns are addressed14:23
mvojdstrand: this out-of-snapd profile handling is slightly tricky currently, we store a bunch of important information about this in the state.json and we do not support concurrent access to this currently14:23
jdstrandright-- I knew there was locking contention so certainly not blocking on that14:23
mvojdstrand: thanks in update the forum now and then scratch my head a bit more over this14:24
zyga_mvo: I was thinking about it14:24
zyga_mvo: and perhaps we are OK14:24
mvojdstrand: one more - the systemctl check could also be done inside snap-confine, the upside would be that it works reliable on 14.04 then, the downside that systemctl would be something we allow in the snap-confine apparmor profile. how do you feel about that?14:24
zyga_mvo: the state is rewritten atomically14:24
zyga_mvo: so a open fd + flock (shared) is sufficient to know that snapd is done updating and you see an atomic snapshot14:25
zyga_mvo: in fact, even just fd14:25
mvointeressting14:25
zyga_mvo: right? no flock needed14:26
jdstrandmvo: I don't feel great about that since snap-confine is setuid root. that means that if there is a problem with snap-confine, the user could potentially be able to access systemctl as root14:26
zyga_mvo: snapd is the only writer14:26
zyga_mvo: snapd does the rename14:26
zyga_mvo: any reader can open state.json to see the snapshot14:26
mvojdstrand: yeah, I have the same feeling, so lets go with the snap run approach14:26
* zyga_ really goes to eat lunch14:27
zyga_but I'll be back :)14:27
ograhehg, you had lunch at least two times already :P14:27
zyga_except I didn't go :/14:27
zyga_I was working14:27
ograyeah14:27
ogrago!14:27
cachio_mvo, I see the postrm test is deleting /var/lib/snapd and it is making fail the restore14:27
jdstrandmvo: and to be crystal clear-- I really don't care about the implementation details of the profile loading so long as it is race free (not talking about systemctl here, but the forum topic where Gustavo and I never seemed to sync)14:28
cachio_so the test postrm-purge is failing14:28
jdstrandmvo: so when I'm suggesting something on that topic, it is more ideas of what could be done rather than proposals of what should be done14:29
niemeyerjdstrand: I think you're downplaying it a bit, in the sense that "race free" is obviously a strict requirement of anything we do14:29
mvojdstrand: ok14:29
cachio_mvo, /var/lib/snapd14:29
cachio_https://travis-ci.org/snapcore/snapd/builds/240775990#L419314:29
jdstrandniemeyer: it depends on what we are talking about as racing14:29
jdstrandniemeyer: profile loading at all vs profile loads that match the running snapd/snap-confine14:30
niemeyerjdstrand: What I said above is true for any accepted meaning of "race" in software development14:30
cachio_mvo, did it change last days? I did not see this error before14:31
jdstrandniemeyer: ok, well then if we all agree that 'profile loads that match the running snapd/snap-confine' is what we want to get to, fantastic! it wasn't clear to me based on submitted PRs that was the case14:31
cachio_mvo, and it is cause because of the cleanup that I did14:31
mvocachio_: I don't think so, I'm curious what it is deleting that causes the problem14:31
niemeyerjdstrand: That's the key.. this is not just a race :)14:32
niemeyerjdstrand: But yes, that's the goal, and it's not solely about snap-confine or snapd either14:32
niemeyerjdstrand: The kernel also plays a role14:32
jdstrandsure14:32
niemeyerjdstrand: and the kernel is outside the control of anything internal to the system14:33
niemeyerjdstrand: The user can pick a different kernel to load behind the back of snapd14:33
jdstrandyep14:33
niemeyerjdstrand: Which makes the whole problem more delicate14:33
jdstrandsure14:33
niemeyerjdstrand: So, we'll need to introduce profile generation at boot because of that, at least in specific circumstances14:34
cachio_mvo, well it is doing "rm -rf /var/lib/snapd"14:34
jdstrandniemeyer: and that is what I was saying about alignment-- I understand all that. I was saying we are aligned on the *goals* for where we want to be14:34
jdstrandeven if we don't yet know the implementation14:34
niemeyerjdstrand: No, at least in that topic you did not understand14:34
niemeyerjdstrand: You specifically said we could generate the profile ahead of time in all cases14:34
jdstrandI was not considering the kernel the whole time, no, but when you mentioned it, I figured that is something that could be part of the whole thing14:35
niemeyerjdstrand: That's why the topic never ended in agreeement14:35
jdstrandfair enough14:35
mvocachio_: I know its doing that :) snapd should be able to re-generate all files/dirs in there if any is missing, this is why I wonder why it is chocking14:35
cachio_mvo, ah, ok14:36
jdstrandniemeyer, mvo: not sure why it took so long to sync on the goals this time around (sorry for my part in that), but I'm happy that we agree on the end goal. for my part in reviews, I'll keep that in mind14:38
niemeyerjdstrand: No problem, we should just have hopped into a hangout..14:39
jdstrandniemeyer: yeah, it was funny cause it felt like we were getting close, then we darted away, then got close again, etc :)14:40
jdstrandstill, that email thread did at least solidify what the goals are for everyone (even if it wasn't the most efficient means to get there)14:40
mvojdstrand, niemeyer: thanks. I updated the forum with the approach for 3442 and the snap-geneate-profiles ideas we have so far14:41
Chipacajdstrand: what needs happening for services that are type=notify to be able to do their notifyish thing? (currently getting a DENIED because of trying to sendmsg to /run/systemd/notify)14:41
Chipacajdstrand: (is this on your radar at all)14:42
jdstrandChipaca: it is not. if you point me at a PR/bug, I can take a look14:42
jdstrandChipaca: I need to step away for a little bit (and then have a meeting), but can look after14:42
Chipacaok14:42
Chipacajdstrand: I'll probably not get around to doing the paperwork until tomorrow, fwiw14:44
Chipacait's not a new breakage14:44
niemeyermvo: Thanks for the update14:45
mvoniemeyer: I can make this branch much smarter my main question now is if we want it at all or if we should jump straight for the profile-regenerate helper14:46
niemeyermvo: I'll add some notes in the forum14:48
mvota14:48
mvocachio_: would be nice to get the systemctl status snapd.service output when this error happens14:56
cachio_mvo, sure, I'll add it14:57
ogramvo, is snapd actually re-creating the dir ? sems it comes in the deb with a lot of content actually14:57
ogra*seems14:57
ograat least according to dpkg -L snapd14:57
niemeyermvo: Sent15:02
morphis_mvo, fgimenez: can one of you do a second review on https://github.com/snapcore/snapd/pull/3406/ ?15:04
mupPR snapd#3406: tests,packaging: add package build support for openSUSE <Created by morphis> <https://github.com/snapcore/snapd/pull/3406>15:04
fgimenezmorphis_: sure on it15:05
morphis_fgimenez: awesome!15:05
cachio_going to lunch15:05
mvoniemeyer: thank you, I will ponder over this15:06
niemeyermvo: np, and thanks!15:10
=== ratliff_ is now known as ratliff
zyga_re15:21
* zyga_ reads backlog15:21
mvo_niemeyer: I replied, if it sounds sensible I can start hacking on it.15:25
zyga_cachio_: hey, did you see postrm-purge failures?15:27
stgraberkyrofa: around?15:27
zyga_morphis_: one conflict on https://github.com/snapcore/snapd/pull/340615:28
mupPR snapd#3406: tests,packaging: add package build support for openSUSE <Created by morphis> <https://github.com/snapcore/snapd/pull/3406>15:28
ograstgraber, you got a sabrelite, right ? did you ever use it with HDMI attached with a recent 4.x kernel ?15:28
stgraberkyrofa: snapcraft is failing autopkgtest and is blocking LXD from being pushed to the release pocket15:29
stgraberkyrofa: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-artful/artful/amd64/s/snapcraft/20170608_070900_635cb@/log.gz15:29
stgraberkristbaum: AFAICT that's not LXD related so I'm about to push an archive hint to work around this15:29
stgraberogra: I've got a wandboard (imx6 quadcore), but I use it as the LXC/LXD armhf buildd so it's never seen an hdmi display :)15:30
ograyeah, thought so :)15:30
niemeyermvo_: Thanks, I'll step out for lunch and ponder meanwhile15:31
morphis_zyga_: can you merge https://github.com/snapcore/snapd/pull/3406/ now that we have two approvals?15:36
mupPR snapd#3406: tests,packaging: add package build support for openSUSE <Created by morphis> <https://github.com/snapcore/snapd/pull/3406>15:36
zyga_morphis_: looking15:41
zyga_morphis_: it has a conflict15:41
morphis_narf15:41
mupPR snapcraft#1359 opened: tests: replace grub-doc with haskell-doc in build-packages tests <Created by elopio> <https://github.com/snapcore/snapcraft/pull/1359>15:44
kyrofastgraber, sorry for the delay, I am now16:01
kyrofastgraber, we're on it16:03
cachio_zyga, yes I saw that16:04
cachio_zyga, we were discussing that with mvo16:04
zygacachio_: aha, is this solved in master? should I merge and try again?16:05
cachio_I am adding sthe snapd.service status16:06
cachio_zyga, https://travis-ci.org/snapcore/snapd/builds/240775990#L419316:06
cachio_this is the error16:06
cachio_zyga, not sure why snapd is not creating this directory16:07
zyga_cachio_: is this issue solved now, can I help somehow?16:12
pedronisChipaca: what the's plan about my comment on your PR ? revert that bit? add a test? change the logic to do snapstate.Get first?16:12
cachio_zyga_, it is not16:12
zyga_ok16:12
cachio_zyga_, I am making working on this one16:13
cachio_zyga_, I'll ping you as soon as I have any info16:13
Chipacapedronis: does it make sense for config to return a different error if trying to get something for which there is no snap?16:18
=== koza is now known as koza|away
TribaalChipaca: so in relation to my article - can I ask you for a snappy question?16:31
TribaalChipaca: what is the best solution to put a simple file in /usr/share/backgrounds/ ?16:31
TribaalChipaca: right now I have something that's working -ish but it's a bit ugly in that it has classic confinement16:32
ChipacaTribaal: right now, you don't16:32
Tribaalthat's not going to be a great article then :)16:33
pedronisChipaca: maybe, anyway that chaneg is also not backward compatible16:33
pedronissorry maybe not16:34
pedronisChipaca: maybe reverting that bit is the easiest until we have a reason to do something else16:35
zyga_Tribaal: hey16:36
zyga_Tribaal: I have code for that but it's not finished16:36
pedronisChipaca: if you want to distinguish BadRequest vs InternalError there's, config.IsNoOption I think16:36
pedronisor something like that16:36
zyga_Tribaal: I discussed this with jdstrand earlier, it will be a new interface and a new security backend16:36
cachio_zyga_, this is the info I get  when I run the status https://paste.ubuntu.com/24809011/16:36
Tribaalzyga_: ah, that was my next attempt at code - writing a new interface16:36
zyga_Tribaal: given that I'm busy on other things and there's an upcoming sprint I suspect the code for making this work will be mid july16:36
zyga_Tribaal: it's not just a new interface16:36
Chipacapedronis: right, IsNoOption is returned if the snap doesn't exist, or if it exists and isn't configurable, or if it exists, is configurable, and has no config set for that key16:37
Tribaalzyga_: was the interface you had in mind *just* for backgrounds, or did you think of a wider permission?16:37
zyga_Tribaal: unless you are happy to jump into the frays of daily snapd development I'd recommend against it as it is unlikely to land16:37
zyga_Tribaal: I was thinking of a wider system where snaps can provide content to the classic system16:37
zyga_Tribaal: but it is not trivial, it involves several things that don't exist yet16:37
zyga_cachio_: do you have more logs?16:38
zyga_cachio_: what does systemd say?16:38
* ogra would add a "journalctl -u snapd.service"16:38
pedronisChipaca: which seems the original intention of that code, you asked for the wrong thing  (but I agree that's not the only failure mode, so check and InternalError otherwise)16:38
ograto get that output16:38
zyga_Tribaal: I have some initial code for that on my fedora workstation where I'm hacking on it, my goal is to provide the generic framework and an interface designed for shipping backgrounds16:38
Chipacapedronis: fair 'nuf16:39
Chipacapedronis: i'll get to it16:39
Tribaalzyga_: ok, so my end goal is to write a blog post about how to do the equivalent of another post I wrote using snaps. I'd like the comparaison to be favorable, so it's probably best for me to just wait for the way to be "clean" before I write anything16:39
pedronisChipaca: thx16:39
Chipacaknee deep in other stuff right now, and close to eod16:39
zyga_Tribaal: yes, I think you just need to wait, this is a new concept that snaps have traditionally not supported16:39
pedronisChipaca: fwiw I didn't see that path, just spotted the NotFound on setConf16:40
pedroniswhich was sying snap not found16:40
Tribaalzyga_: ack16:40
zyga_popey: big big hug for the wethr snap!!!16:43
zyga_I love everything about it16:43
zyga_popey: does it support any options?16:43
ogralike "--make-it-not-rain" ?16:44
ogra:)16:44
zyga_ogra: only with sudo :DD16:44
zyga_hehe16:44
zyga_godo16:44
ogra:)16:44
cachio_zyga_, it is getting stuck on the start16:50
cachio_zyga_, https://paste.ubuntu.com/24809096/16:53
cachio_this is the log that I have16:53
cachio_zyga_, error: fatal: directory "/var/lib/snapd" must be present16:58
cachio_https://paste.ubuntu.com/24809119/16:59
cachio_mvo_, https://paste.ubuntu.com/24809119/17:01
cachio_mvo_,  if I manually delete /var/lib/snapd17:02
cachio_and restart snapd17:02
cachio_it fails17:02
cachio_mvo_, with the same error17:02
ograyeah, as i said above, that dir is usually shipped with the deb17:02
ograthe postrm should instead do a rm -rf /var/lib/snapd/*17:03
ograso only content gets removed17:03
ograthe dir would go away anyway if the deb is removed17:03
Chipacahah! found a bug in getSnapConf because i dared to write a test for it :-D17:04
cachio_ogra, ok17:06
ogra(or alternatively snapd should do a mkdir on startup if the dir doesnt exist)17:07
cachio_it seems to be better17:07
cachio_mvo_, zyga_ your opinion is welcome :)17:08
cachio_niemeyer, your too17:09
mupPR snapcraft#1360 opened: cli: stop leaking green text <Created by kyrofa> <https://github.com/snapcore/snapcraft/pull/1360>17:20
Chipacapedronis: I think that should do it (let me know if I got it wrong _again_)17:31
* Chipaca EOD17:31
mupPR snapcraft#1359 closed: tests: replace grub-doc with haskell-doc in build-packages tests <Created by elopio> <Merged by elopio> <https://github.com/snapcore/snapcraft/pull/1359>17:32
cachio_niemeyer, there?17:42
niemeyercachio_: Yep17:48
cachio_niemeyer, there is an issue with the snapd.postrm scrnpt17:49
cachio_it is doing "rm -rf /var/lib/snapd"17:49
niemeyercachio_: Oh?17:49
niemeyercachio_: Well, that by itself is not an issue17:49
cachio_and then if I do systemctl start snapd.service17:50
cachio_niemeyer, we get this https://paste.ubuntu.com/24809119/17:50
cachio_not sure why this test could not be reproduced before17:51
niemeyercachio_: We need some more context.. it doesn't make sense to purge the snap and then start it17:51
cachio_niemeyer, make sense that, so I should fix postrm-purge test17:52
cachio_because after the clean of environment variables was merged, this test started to fail17:53
cachio_niemeyer, in ci17:53
niemeyercachio_: It would be good to understand what's going on there..17:53
niemeyercachio_: Why was it not failing before?17:53
niemeyercachio_: The lack of understanding in those cases generally means we're not seeing the whole picture17:54
cachio_niemeyer, agree, I would take a look to the last code merge in the master before this restore was merged17:55
cachio_niemeyer, something has to be changed in the master between the last rebase I did against the master and the moment it was merged17:56
niemeyercachio_: Yeah, perhaps related to the Fedora changes, which were quite spread out17:57
niemeyercachio_: Still, the outcome seems a bit surprising.. that doesn't seem related to the environment17:57
cachio_niemeyer, it is not, do you have a convention for the tests about how should the the snapd state after the restore?17:59
cachio_niemeyer, because I see snapd is reseted in the prepare18:00
cachio_niemeyer, but some tests like the postrm-purge are leaving snapd in a bad state18:00
cachio_niemeyer, no, not sure if I need to fix this test to leave snapd working, or I just move the environment variables clean up to the reset18:01
niemeyercachio_: We restore a number of things, such as the core snap and the entire snapd state via that tarball which you have probably passed by18:24
niemeyercachio_: These are the things tests don't need to care about18:24
cachio_niemeyer, ok, in that case I'll move the environment variables restore to the reset where the snapd state is restored18:25
niemeyercachio_: Sounds sensible.. I even assumed that was happening as part of the tarball18:25
cachio_niemeyer, in the tarball is being saved /etv/environment18:26
cachio_but also I am cleaning up the systemd unit directories18:26
cachio_because some tests are creating files with environment variables to be used by the systemd unit on there18:27
cachio_this part is being done suring the restore of the test18:27
cachio_to leave the systemd configuration as it was received18:28
niemeyerAh, nice18:29
cachio_zyga_, there=18:32
cachio_?18:32
zygayes18:32
cachio_about the reexec issue18:32
cachio_in the prepare.sh prepare_each_classic18:33
cachio_do you know why it is being created this reexec.conf file18:33
cachio_?18:33
cachio_if then snapd service is not restarted?18:34
zygacachio_: let me look18:34
cachio_it is wird18:34
cachio_weird18:34
zygacachio_: no idea, I just had a look at it, maybe check git log or ask federico in the morning18:35
zygacachio_: I was thinking that perhaps we should revert whatever change broke master18:36
cachio_zyga something changed during the last days, after I did the last rebase and before the envinroment cleanup cranch was landed18:37
cachio_zyga, becasuse the tests were not failing or the branch18:37
cachio_zyga, I can do a mkdir in the restore of the postrm-purge to make that test pass leaving a comment and create a bug to fix18:40
zygacachio_: let's do it18:46
cachio_zyga, where should I create the issue? in the forum or in launchpad?18:47
zygacachio_: just make a PR :)18:47
zygacachio_: and let's get it fixed tomorrow as well18:47
zygacachio_: I think nothing creates /var/snap today18:47
zygacachio_: if you want to discuss this a forum topic is the best, it works way better than bug trackers18:48
* zyga will be back later18:59
cachio_zyga_, when you have a minute, PR 344819:54
cachio_zyga_, this is to fix the error in master19:54
mupPR snapd#3448 opened: tests: fix for the test postrm-purge <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3448>19:55
=== JanC_ is now known as JanC
ssbashhi21:29
ssbashdoes anyone here have experience building python snaps for large python projects?22:04
Chipacassbash: only a small python thing, myself22:21
ssbashI'm having trouble getting my pythong packages to build as wheels22:24
ssbashpython-packages: [lockfile==0.12.2, lxml==3.6.4, msgpack-python==0.4.8, pexpect==4.2.1,    psutil==5.0.0, pyshark==0.3.6.1, requests==2.12.2, xmltodict==0.9.2, bottle==0.10.2, ecdsa=    =0.13, rsa==3.4.2, pyOpenSSL==16.2.0, pygtail==0.7.0, python-dateutil==2.6.0, beautifulsoup    4==4.5.1, robobrowser==0.5.3, pytest==3.0.4, pytest-cov==2.4.0]22:24
ssbashthis is what i have in my snapcraft.yaml file22:24
popeymaybe paste your yaml at http://paste.ubuntu.com/22:25
ssbashhttp://paste.ubuntu.com/24811130/22:28
ssbashthats my yaml file ^22:28
Chipacassbash: some of those specifiers seem wrong22:34
Chipacae.g. the beautifulsoup one22:34
Chipacassbash: see if this fares better: http://pastebin.ubuntu.com/24811186/22:35
Chipacapopey: ^ cleaned it up a little22:35
Chipacassbash: (just to be clear, I don't know if this is right, i've never used python-packages in snapcraft.yaml)22:36
ssbashare you allowed to list packages like that? the documentations refers to a list https://snapcraft.io/docs/reference/plugins/python22:37
=== cpaelzer_ is now known as cpaelzer
popeyi think it's syntactically valid22:39
Chipacassbash: yes, both are valid yaml22:39
Chipacassbash: when it's short, the inline one is arguably better22:40
popeyssbash: it's a bit late here, I'd recommend posting to http://forum.snapcraft.io/ - you'll get more visibility there tbh22:40
Chipacassbash: but as soon as it gets long it's unreadable22:40
ssbashah i see22:40
Chipacayeah, i'm only up because elections22:40
ssbashthanks for your help, I'll see if it works now22:40
Chipacassbash: I thought I'd try running this locally but it asks me for a bitbucket account and stuff22:41
Chipaca¯\_(ツ)_/¯22:41
ssbashyea unfortunately i can't share the code, its a private repo22:41
Chipacano worries22:42
Chipacalet me know if it works (if i'm still around)22:42
Chipacassbash: if in doubt about yaml, I've found http://yaml-online-parser.appspot.com/ very useful22:43
cachio_Chipaca, if you have 1 minute to check this https://github.com/snapcore/snapd/pull/344822:52
mupPR snapd#3448: tests: fix for the test postrm-purge <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3448>22:52
cachio_this is to fix a problem in the master22:52
Chipacacachio_: I'm eagerly waiting for it to go green22:52
Chipacaas the problem in master is blocking a branch of mine :-)22:53
Chipaca838/842, should be done soon22:53
Chipacaand no error yet :-)22:53
cachio_Chipaca, great, final version is running22:53
cachio_Chipaca, Successful tasks: 842 :)22:56
Chipacacachio_: +1'ed, and a vote to merge as is22:58
Chipacacachio_: (also a diatribe on logs because typing is cheap)22:59
cachio_Chipaca, awesome23:00
cachio_Chipaca, so, this is going to be merged once all the tests pass?23:03
Chipacacachio_: I think it's fine to merge right now, but it's your call -- you're the one that'll be left holding the pieces if it breaks :-)23:04
cachio_Chipaca, just wait until all the tests pass23:05
ssbashChipaca I was able to fix my issue, i was missing my libffi package23:16
Chipacassbash: ah, ok23:16
mupPR snapcraft#1358 closed: release changelog for 2.31 <Created by sergiusens> <Merged by elopio> <https://github.com/snapcore/snapcraft/pull/1358>23:47

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