/srv/irclogs.ubuntu.com/2017/04/25/#snappy.txt

=== chihchun_afk is now known as chihchun
mupPR snapcraft#1278 opened: recording: save the snapcraft.yaml in the resulting snap <Created by elopio> <https://github.com/snapcore/snapcraft/pull/1278>04:24
zygagood morning05:55
zygamvo: how are you doing? :-)05:55
mvohey zyga05:59
mvozyga: I'm doing very well, played hockey last night, what more to wish for?06:00
zygamvo: nice :)06:10
zygamvo: I spent some time digging through an issue and finally got to a more-less working update-ns06:10
zygahmm, tests are a bit more unreliable lately06:12
zygaor maybe just more starved for resources06:12
mvozyga: yeah, tests are a bit flaky, annoying06:16
mvozyga: but I have not seen a pattern yet06:16
malanveHi there!06:27
malanveAnyone online?06:28
zygahey06:29
zygaindeed06:29
leebobyhi06:34
malanveMorning06:37
malanveI have a serious stupid question06:38
malanveDoes snapd work for SLES (Suse Linux Enrerprise Server)06:38
malanveDoes snapd work for SLES (Suse Linux Enrerprise Server)?06:38
zygamalanve: hey06:38
zygamalanve: we have a openSUSE build and we're working on fixing some issues there still, we didn't look at SLES support yet but I'd certainly like to support it too06:39
zygamalanve: you can try the system:snappy repository to see if it'd work with a simple rebuild06:39
morphismalanve: there are also instructions available on https://snapcraft.io/docs/core/install-opensuse06:43
malanvemorphis: Not looking for Opensuse, SLES instead.06:45
malanvezyga: Thanks, but I have already tried LOL06:46
morphismalanve: for SLES we don't have packages atm06:47
morphisbut its on our list06:48
malanveThanks Guys!06:48
morphisactually I didn't looked yet what is required to get the snapd.spec building for SLES06:48
morphiscould be that there are a few dependencies missing in SLES06:48
malanveWell....06:48
malanvesudo zypper install snapd Loading repository data... Reading installed packages... Resolving package dependencies...  Problem: nothing provides systemd needed by snapd-2.23.6-1.6.x86_64  Solution 1: do not install snapd-2.23.6-1.6.x86_64  Solution 2: break snapd-2.23.6-1.6.x86_64 by ignoring some of its dependencies  Choose from above solutions by number or cancel [1/2/c] (c):06:48
malanveThere is your first dependency06:49
malanvesudo zypper install snapd Loading repository data... Reading installed packages... Resolving package dependencies...  Problem: nothing provides systemd needed by snapd-2.23.6-1.6.x86_64  Solution 1: do not install snapd-2.23.6-1.6.x86_64  Solution 2: break snapd-2.23.6-1.6.x86_64 by ignoring some of its dependencies  Choose from above solutions by number or cancel [1/2/c] (c):06:50
malanveWhoops06:50
morphismalanve: ah, no systemd06:50
morphisthat makes things a bit harder06:50
morphissystemd is more or less a strict requirement for snapd06:51
morphismalanve: which SLES version are you running?06:51
mupPR snapd#3224 closed: interfaces/mount: write current fstab files with mode 0644 <Created by zyga> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/3224>06:52
malanvemorphis: SUSE Linux Enterprise Server 11 SP406:55
morphislooks like 12 introduced systemd if I am not looking wrong06:55
zygamalanve: I think we will only support SLES 1506:55
zygamalanve: maybe 12 as well (as it matches leap 42)06:56
malanveThere SUSE Guys and them versioning.... LOL06:57
malanveThanks a lot for the info06:57
malanveThese SUSE Guys and them versioning.... LOL06:57
* zyga just shrugs thinking "LOL"06:58
* zyga has wired snap-update-ns into the rest of snapd, running tests now07:00
zygamvo: when is 2.25?07:04
zygamvo: is that now-now?07:04
mvozyga: the aliases branch need to land, right now we cannot release07:04
zygamvo: I think update-ns should be merged just after release07:04
mvozyga: so when this is ready we can do 2.2507:04
zygamvo: then have a cycle of testing07:05
mvozyga: sounds good, or we hide it behind a feature flag07:05
zygamvo: how could we do that?07:05
zygamvo: I actually do like that07:05
zygamvo: store a permanent feature flag in the snapd state?07:05
zygamvo: then have a get/set via debug API07:06
zygamvo: something like that?07:06
zygawow that all worked07:09
* zyga commits07:09
zygaI'll run a full pass over main07:11
mvozyga: or just an environment that people need to set in /etc/systemd/systemd/snapd.conf.d or /etc/environment07:11
zyga(with automatic updates to mount namespaces)07:11
mvozyga: does not have to be super fancy, but merging after 2.25 also works07:11
mvozyga: nice!07:11
zygamvo: I think it all depends on if we can merge current branches :)07:11
zygamvo: thanks for merging some of them btw :)07:12
zygaI think currently the most important one is https://github.com/snapcore/snapd/pull/322507:12
mupPR snapd#3225: cmd/snap-update-ns: add actual implementation <Created by zyga> <https://github.com/snapcore/snapd/pull/3225>07:12
zygamvo: I added https://github.com/snapcore/snapd/pull/3208 to 2.25 as we had a few people crash their snapd with 2.2407:13
mupPR snapd#3208: interfaces: recover panics when sanitizing plugs and slots <Created by zyga> <https://github.com/snapcore/snapd/pull/3208>07:13
mvozyga: sounds good, I think we just need a review from gustavo on this one07:14
zygamvo: okay07:15
pstolowskigood mornings!07:18
zygapstolowski: hey07:21
zygamvo: do you remember what discards all namespaces between test invocations?07:37
mvozyga: unfortunatly not, would have to look around, probably tests/lib/restore.sh07:38
zygamvo: do we just purge the package?07:38
mvozyga: yes we do07:40
mvozyga: tests/lib/reset.sh07:40
zygamvo: aha, thanks, I think I got it now :)07:40
zygaok, so snap-update-ns works, snap-confine writes the current profile, snap-discard-ns removes the current profile, snapd runs snap-update-ns when needed07:41
zygaI'll focus on testing but all the patches so far look great07:41
zygamvo: one request, would you +1 a small branch that makes snap-confine/snap-discard-ns grok the current profile for 2.2507:41
zygamvo: the changes are minimal there, I'll push a PR if you want to see07:41
zygamvo: this way the 2.26 release will already start with the currnet profile in most cases07:42
zygamvo: and thus nobody will have the more complex upgrade case07:42
pedronismvo: hi, yes, I'll be working on the feedback on aliases branches today, another one just need a small tweak and then I can land it... the unalias one needs larger changes that I will do07:43
pedronismvo: I'll have a couple more small branches as well07:43
mvopedronis: thanks for the update07:44
mupPR snapd#3229 opened: overlord/snapstate: make UpdateAliases idempotent, simplify the backend interface bits for aliases not used anymore <Created by pedronis> <https://github.com/snapcore/snapd/pull/3229>07:57
pedronismvo: would appreaciate a review of snapd#3229, it's small,  it was of those related small branches07:58
mupPR snapd#3229: overlord/snapstate: make UpdateAliases idempotent, simplify the backend interface bits for aliases not used anymore <Created by pedronis> <https://github.com/snapcore/snapd/pull/3229>07:58
pedroniss/it was/it's one/07:59
morphismvo: having https://github.com/snapcore/snapd/pull/3177 in 2.25 would be great, its actually really close now07:59
mupPR snapd#3177: cmd/snap: make users Xauthority file available in snap environment <Created by morphis> <https://github.com/snapcore/snapd/pull/3177>07:59
pedronismvo: also snapd#3328 small (not aliases but the issue I discussed at standup)07:59
morphismvo: you and jdstrand approved I am just waiting for the last tests to go green07:59
pedronismorphis: it will take a while for the aliases bits in case08:00
morphispedronis: ok08:00
pedronisalso tests are flakey08:01
=== mcphail_ is now known as mcphail
mvozyga: ups, missed the question about the profile. I think thats fine08:05
mvopedronis: checking 322908:06
mvopedronis: yeah, was looking at 3328 earlier, there will be conflicts with the "tracks" branch, but we can sort those easily (its mostly code going away in the channels-2.0 branch)08:06
mvopedronis: have you seen a pattern in the tests? I saw only some network issues and resource issues (cannot allocate machines). have you seen more?08:07
pedronismvo: yes, what's blocking the tracks one?08:07
mvopedronis: quick question about the repair work, what primary key (instead of repair-id) would you suggest08:07
mvopedronis: I htink the tracks one is ready now, got a +1 from gustavo last night and I think I addressed his few open questions/suggestoins08:08
pedronismvo: ok, good08:08
pedronismvo: the question about the reapair-id, is mostly if we let other entities emit repair assertions how do we carve out the namespaces? or do we want to make authority-id, or have brand-id in the assertion and part of the primary key08:09
mvopedronis: aha, so primary key would be (brand-id, repair-id) ?08:10
pedronisyes08:10
pedronisbut I think maybe we should have a short meeting with Gustavo to discuss this out08:10
pedronisor discuss it in the forum08:10
* pedronis late breakfast while tests run08:11
mvopedronis: thank you, this makes a lot of sense in the light of the open-up-for-brands later. I will put it into the forum08:11
mvopedronis: enjoy breakfast08:11
morphismvo: https://github.com/snapcore/snapd/pull/3177 is ready now08:18
mupPR snapd#3177: cmd/snap: make users Xauthority file available in snap environment <Created by morphis> <https://github.com/snapcore/snapd/pull/3177>08:18
mvomorphis: excellent, I give it a final look but I am pretty sure its excellent08:18
morphismvo: :-)08:18
mupPR snapd#3177 closed: cmd/snap: make users Xauthority file available in snap environment <Created by morphis> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/3177>08:30
morphismvo: thanks a lot!08:30
Chipacamvo— today's the cutoff for 2.25, yes?08:30
mvoChipaca: ideally, its a bit unusual this time because we need the aliases branches in08:30
mvoChipaca: so the goal is today but it depends on reviews for those08:31
pedronisChipaca: hopefully, we need aliases in, so I think either today, or middle of tomorrow08:31
pedronisfor some value of middle08:31
ChipacaI'd _really_ like to get tab completion in as well08:31
mvoChipaca: the door is open :) there is a bunch of stuff tagged for 2.25, I would love to see refresh-schedule landing. and tracks-2.008:33
Chipacasigh08:33
pedronismvo: should I merge #3141, it's green08:33
mvoChipaca: speaking of which, are there any concerns about the (small) ui change for channels-2.0 ?08:33
Chipacamvo— i haven't heard any08:33
mvopedronis: there is a (small) ui change, instead of "stable" it now says "latest/stable". but if everyone if ok I think we should merge it08:33
pedronisah08:34
Chipacamvo— in fact snapd#3141 seems to have two +1's and is green08:34
mupPR snapd#3141: many: show available "tracks" in `snap info` <Created by mvo5> <https://github.com/snapcore/snapd/pull/3141>08:34
mvoChipaca: great, then lets go ahead08:34
Chipacaheh, yeah08:34
mvopedronis: -^08:34
ChipacaI think there is one aliases branch i haven't reviewed yet, 3220, but it's the last one in the pipe08:35
mupPR snapd#3141 closed: many: show available "tracks" in `snap info` <Created by mvo5> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/3141>08:36
pedronisChipaca: there's a new small one as well #322908:36
pedronisChipaca: and there's another one that needs changes after Gustavo's feedback08:36
pedronismvo: I'm going to fix the conflicts in #322808:37
pedronisnow08:37
pedronismvo: snapd#3228 can be reviewed08:40
mupPR snapd#3228: store,daemon: make store interpret channel="" as stable in most cases <Created by pedronis> <https://github.com/snapcore/snapd/pull/3228>08:40
morphismvo, zyga: a review on https://github.com/snapcore/snapd/pull/3222 would be great08:41
mupPR snapd#3222: many: fix test cases to work with different DistroLibExecDir <Created by morphis> <https://github.com/snapcore/snapd/pull/3222>08:41
pedronisChipaca: mvo: as I said reviews for #3229 appreciated (it's small)08:41
mvopedronis: just looking at it08:41
mvopedronis: looks fine, wondering if it can ever happen that UpdateAliases(add, remove) gets the same alias.Name in both add and remove, e.g. to change alias.name to a new alias.target. but I guess no?08:43
pedronismvo: it can happen but it works anyway08:43
mupPR snapd#3136 closed: snap-confine: add code to ensure that / or /snap is mounted "shared" <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/3136>08:44
mvopedronis: oh, you are right of course08:44
pedronismvo: removed is for that case, it's just an opt though really08:44
mvopedronis: yeah, I see that now. thank, will approve08:44
mupPR snapd#3230 opened: tests: extend network-control spread test to cope with network namespaces <Created by fgimenez> <https://github.com/snapcore/snapd/pull/3230>08:45
pedronisthx08:45
Chipacamorphis, mvo, are there any distros where bash-completion isn't installed in /usr/share/bash-completion?08:45
morphisChipaca: good question08:45
morphison fedora it is08:46
mvoChipaca: a really good question, no idea. it is on debian08:53
zygaooh08:53
zyga139 tests passing with update-ns :D08:54
* zyga starts to shoot branches08:54
mupPR snapd#3191 closed: many: implement snap alias <snap.app> <alias> (aliases v2) <Critical> <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/3191>08:56
pedronisok, back to bigger fish now08:57
mupPR snapd#3229 closed: overlord/snapstate: make UpdateAliases idempotent, simplify the backend interface bits for aliases not used anymore (aliases v2) <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/3229>09:06
pstolowskipedronis, hey, 3220 appears to have conflicts09:07
=== cjwatson_ is now known as cjwatson
pedronisI need to fix 3192 first anyway09:08
mvopedronis: I can look at the conflicts in 3220 if you want09:10
mvo(my branch caused them afterall)09:10
pedronismvo: no, 3220 is something else09:11
mvoaha, 3228 is the one I had in mind09:11
pedronisand the conflicts are already in 319209:11
pedronismvo: that one is fixed already, just needs a 2nd review09:12
mvopedronis: cool, let me do that then09:12
pedronismvo: I mean I fixed the conflicts09:12
morphiszyga, mvo: https://github.com/snapcore/snapd/pull/3222 would be nice to get merged too now that all tests are passing09:33
mupPR snapd#3222: many: fix test cases to work with different DistroLibExecDir <Created by morphis> <https://github.com/snapcore/snapd/pull/3222>09:33
zygamorphis: hey09:38
zygamorphis: I'll have a look in a sec09:38
morphiszyga: whenever you have time :-)09:38
zygamorphis: just finished a call and I'm wrapping up something09:40
morphisok09:40
* zyga looks now09:44
pstolowskizyga, commented on 322509:44
zygathanks, checing09:49
zygachecking*09:49
zygapstolowski: replied09:51
pstolowskik thanks09:52
zygamvo: added one small branch to 2.25, I'll add two more (equally short)09:56
mupPR snapd#3231 opened: cmd/snap-discard-ns: remove current profile when cleaning up <Created by zyga> <https://github.com/snapcore/snapd/pull/3231>09:56
mvozyga: ok10:03
mupPR snapd#3232 opened: cmd/snap-confine: write current mount profile <Created by zyga> <https://github.com/snapcore/snapd/pull/3232>10:16
mupPR snapd#3233 opened: packaging: remove current mount profiles when purging <Created by zyga> <https://github.com/snapcore/snapd/pull/3233>10:19
zygamvo: done10:19
mvozyga: brace yourself for a grumpy review ;) - I see a lot of C10:21
zygamvo: not lots, very little!10:21
zygamvo: :D10:21
mvozyga: yeah10:22
zygamvo: if those three PRs land 2.26 will be efortless10:26
zygafor update-ns10:26
mupPR snapd#3234 opened: overlord/snapstate/backend,interfaces/mount: move ns management code <Created by zyga> <https://github.com/snapcore/snapd/pull/3234>10:27
mupPR snapd#3235 opened: overlord/hooks: make sure only one hook for given snap is executed at a time <Created by stolowski> <https://github.com/snapcore/snapd/pull/3235>10:29
zygapstolowski: updated https://github.com/snapcore/snapd/pull/322510:49
mupPR snapd#3225: cmd/snap-update-ns: add actual implementation <Created by zyga> <https://github.com/snapcore/snapd/pull/3225>10:49
zygapstolowski: looking at https://github.com/snapcore/snapd/pull/3235/files I don't understand the nesting/looping there10:55
mupPR snapd#3235: overlord/hooks: make sure only one hook for given snap is executed at a time <Created by stolowski> <https://github.com/snapcore/snapd/pull/3235>10:55
zygapstolowski: maybe it'd be easier if the function was reworked to do "bail out" style10:55
zygapstolowski: if !something { return false };10:56
zygapstolowski: instead if a { if { b if c { } } }10:56
zygapstolowski: the loop and second check for run-hook kind is something I don't understand though, can you help?10:56
morphisChipaca: /usr/share/bash-completion exists in suse too11:01
morphishm, Linode is really overallocated ..11:01
zygamorphis: yeah11:10
zygamorphis: sorry, I pushed a few branches now and spread, without queueing, is really bad11:11
morphisit is11:11
morphiszyga: aren't we specifying a maximum number of concurrent builds for travis?11:14
zyganot sure11:16
morphishttps://docs.travis-ci.com/user/customizing-the-build/#Limiting-Concurrent-Builds11:16
pedronislots of test run timing out :(11:22
pstolowskizyga, ok, let me rework it a little bit and you will let me know if it needs explanation11:23
zygamorphis: have a look at https://github.com/snapcore/snapd/pull/3222/files11:28
mupPR snapd#3222: many: fix test cases to work with different DistroLibExecDir <Created by morphis> <https://github.com/snapcore/snapd/pull/3222>11:28
zygapstolowski: thanks11:28
ogra_mvo, i think i addressed all issues in https://github.com/snapcore/core-build/pull/6 (dont want to make shellcheck a build-dep, i'll add another branch that runs it for every commit instead)11:29
mupPR core-build#6: add the initramfs-tools-ubuntu-core package source <Created by ogra1> <https://github.com/snapcore/core-build/pull/6>11:29
zygamorphis: I'm reviewing the rest, I only gave one nitpick about the true/false argument11:29
morphiszyga: ok, reworking that11:32
zygathank you!11:32
zygamorphis: will that let you run tests on fedora already?11:32
zygamorphis: or just the first step towards that11:33
morphiszyga: yes that allows us running all tests with 100% pass rate but just for the vendorized build11:33
zygamorphis: oh, that's nice11:34
morphiszyga: for the not-vendorized build we need to update a few more packages11:34
morphiszyga: and introduce one new package11:34
zygamorphis: I'll look at suse reviews, I think that needs some love too11:34
* zyga breaks for lunch11:34
morphiszyga: I am on that one right now11:34
zygaI'll focus on code reviews now11:35
zygafor the rest of the day11:35
zygaI'll start with chipaca's, then morphis' then jdstrand's11:35
morphiszyga: sounds good11:39
zyga2017-04-25 10:37:01 Cannot allocate linode:ubuntu-core-16-64: cannot create Linode disk with ubuntu-core-16-64: you do not have enough unallocated storage to create this Disk (608 requested, but only 0 available)11:40
zygapstolowski: replied on https://github.com/snapcore/snapd/pull/322511:44
mupPR snapd#3225: cmd/snap-update-ns: add actual implementation <Created by zyga> <https://github.com/snapcore/snapd/pull/3225>11:44
pstolowskizyga, ok, will check in a moment. I've simplified 3235 a bit, let me know if it's more clear now11:47
zygapstolowski: checking!11:48
zygapstolowski: nice!!11:48
morphiszyga: updated https://build.opensuse.org/request/show/49098911:50
zygamorphis: I just got a beep on my phone :)11:50
zygamorphis: thanks!11:50
morphiszyga: hehe11:50
zygamorphis: what is the rcsnapd file?11:52
morphisthat is something suse wants for systemd services to have backward compatiblity with sysvinit11:52
morphisrpmlint complains about this when it's not there11:52
morphiszyga: https://en.opensuse.org/openSUSE:Packaging_checks#suse-missing-rclink11:53
zygamorphis: approved11:53
morphiszyga: thanks11:54
pstolowskizyga, cool. i need to get rid of the habit of nesting if's... :/11:58
mupPR snapd#3228 closed: store,daemon: make store interpret channel="" as stable in most cases <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/3228>12:02
mvoogra_: thank you, I have a look12:07
ogra_sigh ...runniing shellcheck on the whole tree gives some mad ooutput :/12:07
morphisogra_: snapd tree?12:07
ogra_morphis, core-build tree12:08
morphisah12:08
mvoogra_: yeah, we will certainly need to exclude some tests12:08
ogra_i'm working on a travis commit check ... but simply running shellcheck gets me like 100 lines about missign quotes12:08
mvoogra_: i.e. --exclude=1,2,3 etc :) anyway, maybe not worth the hassle12:09
ogra_and some really pointless bits ... like12:09
ogra_            for i in $(cat /proc/cmdline); do12:09
ogra_                     ^-- SC2013: To read lines rather than words, pipe/redirect to a 'while read' loop.12:09
ogra_(that code obviously wants to read words, not lines)12:10
ogra_mvo, well, i wonder how we can exclude only single hits like the above ... SC2013 doesnt seem like a bad suggestion but i dont want to be notified for "cat /proc/cmdline"12:11
zygare12:25
mupPR snapcraft#1261 closed: storeapi:  improve the error message for the case the Store answers an upload needs manual review <Created by facundobatista> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1261>12:28
niemeyero/12:28
zyganiemeyer: hey :)12:32
pstolowskimvo, any idea why https://travis-ci.org/snapcore/snapd/builds/225133882 says "All good..", yet travis concluded a failure?12:32
pstolowskihi niemeyer !12:32
zygaall good, patient died12:32
zygaweird :)12:32
zygapstolowski: I saw that too a few times12:32
=== JanC_ is now known as JanC
pstolowski:)12:33
zygaI just re-triggered12:33
zygathough I'd wait now, everything is busy12:33
mvopstolowski: usually when the static tests earlire faied12:33
mvofailed12:33
youminhi everyone, I spend more than 3h to set up static IP address on Dell Edge with Core 16 without success. I tried everything... network-manager, interfaces, etc. Ideas?12:34
zyga/home/travis/gopath/src/github.com/snapcore/snapd/cmd/snap/cmd_changes_test.go:133:2: ineffectual assignment to rest12:34
zygapstolowski: ^^ indeed12:34
zygathe static check should have stopped the rest12:34
mvoI think we should fix that in our tests, i.e. fail early12:34
zygayoumin: hey12:34
zygamvo: yeah12:34
zygayoumin: at what stage are you know, do you have a keyboard/monitor connected to your device?12:35
pstolowskizyga, ah! thanks12:35
youminzyga: I have access through network and console12:36
zygas/know/now/12:36
zygayoumin: ok, so from the console run ...12:36
* zyga thinks12:36
zygaconsole-conf?12:36
zygaogra_: is that how the binary is called?12:36
ogra_zyga, yep12:36
zygayeah12:37
ogra_you want sudo12:37
zygafortunately the core snap is at hand to check ^_^12:37
zygayoumin: run sudo console-conf12:37
zygayoumin: and follow along :)12:37
zygayoumin: I also recommend that you check out forum.snapcraft.io12:37
mvopstolowski, zyga: I will do a branch in a bit that makes it fail early, silly travis :)12:37
zygamvo: thank you!12:37
ogra_zyga, though the dell might be special ... i.e. using some kind of assertion mgmt and NM12:38
zygaogra_: oh, I see12:38
ogra_not sure ...12:38
zygayoumin: if that doesn't work please open a question on the forum12:38
zygayoumin: the people that know the dell gateway very well will surely answer12:38
ogra_right, the CE guys shoudl know and be able to answer if it doesnt work12:38
youminzyga: thanks I'll try it, is not possible to configure that manually?12:38
morphisyoumin: you need to do that via nmcli, can you tell me what you tried so far?12:39
ogra_sigh ... shellcheck really makes me doubbt my shell skills :P ... so many missing quotes12:39
youminmorphis: I did it with nmcli and it's automatically reconfigured by the system when I reboot, I don't know how to do that properly12:40
morphisyoumin: can you show me what exactly you did?12:40
youminmorphis: the problem is not my knowldge about nmcli because it works and when I reboot my configuration disapear12:41
zygayoumin: I think this is managed through netplan12:41
zygayoumin: netplan describes the configuration declaratively12:41
zygayoumin: this is picked up by either systemd-networkd or nmcli12:41
morphiszyga: no, no netplan12:41
zygayoumin: (well, network-manager)12:41
zygamorphis: oh? no?12:41
mupPR snapd#3236 opened: tests: ensure travis fails early if static checks fail <Created by mvo5> <https://github.com/snapcore/snapd/pull/3236>12:41
zygamorphis: can you tell me more, I thought that how it worked12:41
morphiszyga: you can use netplan yes, but that is not ver well working12:42
morphislike for every netplan change you have to restart NetworkManager etc.12:42
morphiswhich will have effects on the actual network configuration ..12:42
zygammm12:43
youminmorphis: where do I can find information about how netplan works?12:44
morphisyoumin: don't consider netplan for this case, can you show me the exact commands you executed?12:44
morphiszyga: I can explain that more in depth later12:44
morphiszyga: we plan to inverse the call chain from netplan -> network-manager12:45
morphisnetwork-manager needs native read/write support for netplan instead of netplan generates network-manager configuration files12:45
mupPR snapcraft#1273 closed: core: check SNAP_NAME to detect if snapcraft is a snap <Created by kalikiana> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1273>12:46
morphisSon_Goku: you already took a look at the postrm implementation for the snapd rpm?12:48
Son_Gokuyep12:48
Son_GokuI've got something cooking for snapd 2.2512:48
morphisSon_Goku: nice, do you mind if I reuse that for suse then?12:49
youminmorphis: I use network-manager.cli con edit eth0 and then using the CLI I modify mode to manual and I set up the network parameters, then I save the config I check the configuration files and I restart network manager and it works perfectly12:49
morphisyoumin: but not after reboot?12:50
youminafter reboot my configuration disapear12:50
morphisyoumin: you saw the configuration being saved into a file?12:50
morphisyoumin: do you mind sharing the output of journalctl --no-pager -u snap.network-manager.networkmanager with me?12:51
youminmorphis: yes it is in the network-manager directories12:51
youminmorphis: now I lost the log because I reconfigured it with console-conf like you told me; but I don't know where the configuration is saved now12:52
Son_Gokumorphis: sure, I'll let you know when it's ready12:52
Son_GokuI'm still testing and tweaking12:52
morphisyoumin: can you check which files are in /etc/netplan12:53
youminmorphis: yes, here it's. Let me go to have lunch and later I'll follow trying everything12:54
youminmorphis, zyga: thanks12:54
morphisyoumin: can you show me the content of these files?12:55
youmin /etc/netplan$ l 00-snapd-config.yaml12:55
youminsudo cat 00-snapd-config.yaml  # This is the network config written by 'console_conf' network:   ethernets:     eth0:       addresses: [10.2.0.22/26]       gateway4: 10.2.0.1       nameservers:         addresses: [10.2.0.1]         search: []   version: 212:56
youminnow it's working thanks the console-conf configuration12:56
youminsorry I have to have lunch, I'll be here in some minutes12:57
morphisyoumin: ok, just ping me when you're back :-)12:59
niemeyeromw!13:02
ogra_morphis, if you implement snapd --user. please also make it time out (or add a --timeout= option the dbus invocation can use) so we dont end up with a constantly running daemon13:06
morphisogra_: good idea13:07
cwaynemorphis: ping13:09
morphiscwayne: pong13:09
cwaynemorphis: hey after running wifi-ap.setup-wizard it tells me to systemctl restart a service that doesn't seem to exist..13:10
niemeyermorphis: Some late review comments on snapd#317713:10
mupPR snapd#3177: cmd/snap: make users Xauthority file available in snap environment <Created by morphis> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/3177>13:10
morphisniemeyer: thanks! responded on the PR already13:10
morphiscwayne: looks like the message is out of date, these days you don't have to restart the service anymore13:11
morphiscwayne: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/wifi-ap/tree/cmd/client/cmd_wizard.go#n41313:11
morphiscwayne: mind propose a MP to fix that?13:11
cwaynemorphis: sure13:16
morphiscwayne: awesome!13:16
youminmorphis: I'm here13:27
morphisyoumin: ok, can you paste me the content of the files in /etc/netplan?13:28
youminI did it before, but when I paste the format is lost. How do you want to receive that pastebin?13:28
youminhttps://pastebin.com/aR9YBSDH13:29
mzanettihey, we're trying to host our own snappy store following http://blog.dustinkirkland.com/2016/06/howto-host-your-own-snap-store.html but struggling with the assertions/signatures thing atm. Does anyone have some pointers on how that stuff works?13:30
morphismzanetti: you mean creating assertions or distributing them?13:33
youminmorphis: https://pastebin.com/aR9YBSDH13:33
morphismzanetti: general documentation is available at https://docs.ubuntu.com/core/en/reference/assertions13:33
morphisyoumin: ok, that is one way you can do it but now you can't use nmcli on that connection anymore13:33
pedronismzanetti: there is no documented way to have a full idenpedent store atm, it's something we are thinking about13:34
youminyes, noticed it13:34
youminmorphis: yes, I noticed it13:34
youminmorphis: is there a way to disable netplan?13:34
morphisyoumin: just remove all lines from 00-snapd-config.yaml13:34
youminmorphis: sorry this is not enough... as I explained some times after reboot configuration of nmcli is lost13:36
morphisyoumin: sure, but I want to get to find out why :-)13:36
morphisyoumin: so drop the configuration from 00-snapd-config.yaml, try to configure via nmcli again, reboot and give me the output of $ sudo journalctl --no-pager -u snap.network-manager.networkmanager13:37
youminmorphis: me too, I assume Dell guys added anything... I'm going to do what you ask me13:37
morphisyoumin: trust me, you're talking with the right person to solve this problem :-)13:38
youminnice13:38
Chipacazyga, niemeyer, here do this: mkdir /tmp/foo && cd /tmp/foo && touch "foo$(tput setaf 1 1)bar.txt"13:38
=== alan_g is now known as alan_g_
Chipacazyga, niemeyer, and tell me what tab completion does when you try to use it in that directory (eg 'ls <tab>')13:38
niemeyermorphis: Thanks!13:39
niemeyerls foo$'\033'\[31mbar.txt13:39
niemeyerChipaca: ^13:39
Chipacaexactly13:39
Chipacait's not echoed as control characters to the terminal13:39
niemeyerChipaca: That's slightly different, right?13:39
Chipacaniemeyer— if it is, then i didn't get the point?13:40
niemeyerChipaca: I mean that one is being handled by bash internally to precisely manipulate the terminal line being edited.. the other is trying to do the right thing13:41
niemeyerChipaca: Maybe it's a non-issue, but I wouldn't be convinced just by looking at that example alone13:41
Chipacaniemeyer— that kind of thing you see is what you get when trying to complete control characters13:42
Chipacae.g. if I do, in a function, COMPREPLY=( "hello\rthere" )13:42
Chipacathe completion will offer “hello^Mthere"13:43
mzanettimorphis: am I reading that right that I should be able to use snap sign to sign our snap package and then somehow host that resulting assertions file on our store?13:43
niemeyerChipaca: Okay, that's great then13:43
morphismzanetti: you have the store working without an assertion?13:43
mzanettimorphis: yes, we can snap find and everything, just snap install fails because of the missing assertion and snap download downloads the package and then complains about not finding an assertion13:44
morphismzanetti: easiest would be to install with --dangerous for now13:44
mzanettiit says --dangerous can only be used for local files...13:45
ogra_that would also prevent updates13:45
youminmorphis: https://pastebin.com/hWqT5HXa13:45
morphisgenerating your own signed assertions will be a bit more tricky as you need a trusted key in your store and snapd needs to have its public key configured13:45
mzanettiand well, sure, we could, in theory call snap download and then do the --dangerous thing, but this is supposed to be a product, would like to set up things properly13:45
pedronismzanetti: the issue is how to setup the chain of trust,  at the moment snapd doesn't support parallel/multiple chain of trust13:46
morphismzanetti: https://github.com/snapcore/snapd/blob/master/asserts/sysdb/trusted.go13:46
morphismzanetti: but pedronis is the right person you want to talk to about this :-)13:47
mzanettiah ok13:47
morphismzanetti: btw. why do you want to have your own store?13:47
mzanettibecause canonical promised us one but isn't able to deliver in time13:47
mzanettiso, that's kinda plan b already...13:48
pedronisbut there's no real support for that plan b atm13:48
pedronissorry I don't have enough context to suggest a way forward13:48
pedronisyou probably need to reengage with the people that propsed plan a13:49
morphismzanetti: so you want a branded snap store, right?13:49
pedronismorphis: I suppose not, those are easy to setup13:49
morphispedronis: yeah13:49
mzanettiI think yes, that's what we want13:49
pedronisthen I'm confused, those are easy to setup13:49
morphismzanetti: who is "we"?13:49
mzanettimaarten said it's not13:50
mzanettiguh.io, that is13:50
mzanettiwe ^13:50
ogra_zyga, do you feel like giving a second ack on https://github.com/snapcore/core-build/pull/6 so i can merge (and move on with the tests) ?13:50
mupPR core-build#6: add the initramfs-tools-ubuntu-core package source <Created by ogra1> <https://github.com/snapcore/core-build/pull/6>13:50
Chipacathere's some detail escaping us i guess13:50
pedronismzanetti: depends what you are talking about, a branded store in our terminology is a substore in the normal store, but can be private/limited access etc13:50
mzanettiyes, that's exactly what we want13:50
youminmorphis: in the latest pastebin that I pasted there are the logs that you want13:51
morphisyoumin: thanks! I will look in a bit13:51
mzanettiin order to use snapd to distribute updates to the devices we ship...13:51
youminmorphis: no problem13:51
pedronismzanetti: sorry, we really lack context here, as I said we are probably missing something here, because those are relatively easy to setup13:51
pedronisthere may be a feature or property X  that you need and our current concept doesn't offer13:51
pedronisor some other kind of miscommunication13:52
mzanettione sec, will ask t-mon to join, he has more details than I do as I am just about to join them13:52
ogra_we definitely have a bunch of branded stores running in production already13:52
zygaogra_: looking13:53
ogra_thx13:53
niemeyerzyga: I think the Travis thing might be a momentary hiccup of travis itslef13:54
zyganiemeyer: what were you seeing exactly?13:54
niemeyerThere was a period of a day or so where most of the issues happened13:54
mzanettiok, so, t-mon, what exactly is the issue why we can't use the branded snappy store?13:55
niemeyerzyga: Spread cleans after itself today.. for us to get space allocation issues, it means several independent PRs were sequentially interrupted in the middle13:55
niemeyerzyga: In other words, several independent PRs, one after another, start and are not allowed to finihs13:55
zygaok, I'll push fewer branches, if it happens for whatever reason it will be easier to scope13:56
niemeyerHmm.. one reason why this might happen is if we get our tests to consistently blow the 50 minutes limit13:56
niemeyerzyga: ack13:56
zyganiemeyer: ah, this is a self accelerating issue then13:56
niemeyerzyga: Thanks for keeping an eye13:56
zyganiemeyer: you do over 50 because whatever, those machines stay allocated13:56
zyganiemeyer: another PR will hit the same issue, use more VMs13:57
zyganiemeyer: until all grinds down to a hald13:57
zygahalt13:57
niemeyerzyga: Well, the timing each unit takes is unrelated to whether other machines are allocated or not13:57
niemeyerzyga: So not self-accelerating in that sense13:57
zyganiemeyer: yes but you can miss it just by trying to allocate a machine and failing13:58
niemeyerzyga: Hmm.. still don't understand it..13:58
niemeyerzyga: You can miss what?13:58
zyganiemeyer: trying spread-A, busy, trying spread-B no space, trying spread-... then you run and you don't have enough time to finish13:58
zyganiemeyer: miss the 50 minute window13:58
zygaallocation takes a non-trivial amount of time13:58
niemeyerzyga: Ah, yes, although it doesn't really continue forever, nor will the independent tries sum up13:59
zyganiemeyer: but if those VMs don't get cleaned up they don't return to the pool instantly13:59
niemeyerzyga: But yes, it will consume a slice of time to not be able to allocate13:59
zyganiemeyer: so the next PR will have the same experience (unless something else finishes in time)13:59
niemeyerzyga: Yes, but it's not accelerating was my point14:00
niemeyerzyga: Each PR will wait for a fixed time limit until it gives up14:00
zyganiemeyer: once travis kills a job how long does it take for spread to collect those machines?14:00
niemeyerzyga: 2h is what we configured on spread.yaml, IIRC14:00
zygaand woud that also clean up the disk space?14:01
jdstrandogra_: fyi, new kernels available for generic (bbb)14:02
jdstrandogra_: and hi!14:02
ogra_jdstrand, yeah, i saw them on -changes14:02
ogra_(and hi! too :) )14:03
t-monHi! as mzanetti already meantioned, we have a branded store, but maarten told us this is for testing14:04
mzanettipedronis: morphis ^14:04
t-monan we are not able to release snaps (need manual review) which are not allowed14:04
t-moni f we go in production with a test store, and the store will be switched off (for what ever reason) we are dead :-D14:05
niemeyerzyga: Spread cleans up every single disk at the end of the test14:05
niemeyerzyga: Whether it allocated it for the test or not14:05
niemeyerzyga: So to drive it completely out of space a sequence of several mishaps needs to take place14:05
pedronist-mon: sorry, these sounds like commercial issues of which I don't understand the details, I don't think I can help14:05
mzanettihmm, interesting... but from a technical point of view it should just work, no?14:06
ogra_yeah ... it definitely does for others14:06
niemeyerI've just put 6 more machines on the Spread cluster to help the review week14:06
pedronismzanetti: yes, usually once it's really yours you can do reviews for it etc14:06
jdstrandt-mon: I might mention that if you have a branded store, you (or someone working on your behalf) should be in control of the review process to that store. this is part of the commercial pedronis mentioned14:07
zygaogra_: why do we ship dpkg on core?14:08
ogra_zyga, ??14:08
ogra_zyga, we explicitly remove it14:08
zyga/snap/core/current/usr/bin/dpkg14:08
zygatry that14:08
t-monperdonis: jdstrand: mzanetti: thanks, I'll get in contact on offical ways :)14:08
ogra_(we do ship /usr/local/bin/dpkg to print a pretty error ...14:09
mzanettiyeah... that makes sense... ok, we'll try to contact maarten again then... so far we were under the impression that there is something missing on the server end to be able to actually turn the production branded stores14:09
ogra_)14:09
ogra_zyga, definitely a bug14:09
zygado you want me to report it14:09
ogra_zyga, yeah, assign me14:09
zygadone14:11
zygahttps://bugs.launchpad.net/snapd/+bug/168610614:11
mupBug #1686106: The core snap contains fully working dpkg <snapd:New for ogra> <https://launchpad.net/bugs/1686106>14:11
ogra_zyga, thanks for catching that ... we obviously remove all dpkg-* binaries http://paste.ubuntu.com/24454366/ ... not sure why dpkg is left14:12
zygaogra_: you don't remove plain dpkg14:12
ogra_https://github.com/snapcore/core/blob/master/live-build/hooks/600-no-debian.binary14:12
ogra_right14:12
ogra_just anything else related to it14:13
ogra_silly oversight14:13
ogra_i actually think there was a reason for that in 15.04 thats not relevant in 1614:14
ogra_zyga, trust me !!!!14:16
ogra_:)14:16
youminmorphis: have you had the chance to see the pastebin?14:18
morphisyoumin: not yet, will do in a few min14:18
youminmorphis: oK14:20
zygaogra_: merged14:21
* ogra_ hugs zyga 14:21
mupPR core-build#6 closed: add the initramfs-tools-ubuntu-core package source <Created by ogra1> <Merged by zyga> <https://github.com/snapcore/core-build/pull/6>14:22
niemeyermorphis: Once you have a PR for those notes in the merged PR, please let me know the # and I'll include it in the review sprint board14:28
=== chihchun is now known as chihchun_afk
morphisniemeyer: will do14:33
Chipacajdstrand— give me a shout when you have a moment please?14:33
FacuHi all, I'm getting a test failure in snapcraft's master, snapcraft.tests.sources.test_subversion.SubversionDetailsTestCase.test_svn_details_commit, fails with testtools.matchers._impl.MismatchError: '1' != None14:34
Facudoes it happen to anybody else? thanks!14:34
=== Facu is now known as facubatista
morphisyoumin: you created  /etc/network/interfaces.d/eth0 ?14:38
youminno14:38
morphiscan you paste its content?14:38
morphisyoumin: also, is this a device upgrade from 15.04?14:41
youminyes, it is14:41
zygaha, curious14:42
zygahow does one upgrade from 15.04?14:42
morphiszyga: with a special upgrade tool we wrote14:43
morphiszyga: its more or less a migration than a direct upgrade14:43
morphisand needs to be run manually14:43
youminI used a pendrive that Dell gave me14:43
morphisyoumin: if you move the eth0 file somewhere else the problem should be solved14:43
youminjust rename'14:44
youmin¿14:44
youmin?14:44
morphisyoumin: you need to move it out of /etc/network/interfaces.d or remove it if you are sure you don't need it anymore14:46
jdstrandChipaca: I have an errand atm. when I get back I intend to look at your feedback from yesterday14:47
Chipacajdstrand— ok, i'll be here14:47
youminmorphis: sorry I created this file just for testing, it doesn't work. It is ignored by the system.14:48
youminmorphis: let check something14:49
morphisyoumin: you need to remove it14:52
morphisthat is why your configuration isn't correctly applied14:53
youminmorphis: now I've got the point, you're right this is the file that is processed just now14:53
morphisyoumin: what happens when you remove it?14:56
youminmorphis: now networkmanager start working14:57
morphisyoumin: so even after a reboot you have the configuraiton now applied via nmcli?15:08
niemeyerLunch, biab15:10
youminmorphis: I though network manager has been loaded but it seams is failing.... and now admin/admin is not working for login and the only IP that I have is localhost15:16
youminmorphis: I'm trying to log in but there is no way15:17
mupPR snapd#3237 opened: many: adjust /aliases and "snap aliases" to aliases v2, also some cleanup <Created by pedronis> <https://github.com/snapcore/snapd/pull/3237>15:22
pedronisniemeyer: ^ I opened this one as well about "snap aliases"15:24
morphisyoumin: can you give me a few more details, like which commands did you use to configure the network connection via nmcli etc.15:25
morphisyoumin: now that /etc/netplan and /etc/network/interfaces.d network configuration is gone you need to manually configure things via nmcli15:25
morphisyoumin: btw. the best to track this would be to file a bug as described in https://docs.ubuntu.com/core/en/stacks/network/network-manager/docs/report-bug15:28
mupPR core-build#8 opened: add shellcheck test, fix code for shellcheck <Created by ogra1> <https://github.com/snapcore/core-build/pull/8>15:33
niemeyerpedronis: Thanks, added to the board15:38
morphiszyga: https://github.com/snapcore/snapd/pull/3156 .. all green, finally :-)15:40
mupPR snapd#3156: many: support debian in our CI <Created by morphis> <https://github.com/snapcore/snapd/pull/3156>15:40
zygamorphis: wow, that's pretty neat!15:58
mupPR snapd#3236 closed: tests: ensure travis fails early if static checks fail <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/3236>16:03
zygamorphis: does [ ] support globbin?16:07
zygamorphis: you do tests like [ "$SPREAD_SYSTEM" != "debian-*" ]16:08
Chipacazyga— no16:12
niemeyerfgimenez: Can you join a call just now?16:12
zygaChipaca: right, I think you need [[ for that16:12
Chipacayep16:12
fgimenezniemeyer: sure16:12
ogra_or something like ... [ "$(echo "$SPREAD_SYSTEM" | grep -q debian-)" ]16:13
Chipacaogra_— or case/esac16:17
ogra_which would be the fastest and cleanest16:17
zygamvo: hey, are you in a meeting now?16:22
mvozyga*: yes16:22
zygamvo: let me know if you plan to relesae 2.25 today or is that slipping to tomorrow/16:24
zyga(when you can)16:24
mupPR snapd#3238 opened: cmd/snap-confine: re-enable re-assciate fix for CE <Created by zyga> <https://github.com/snapcore/snapd/pull/3238>16:25
mvozyga: looks like !today at this point :/16:26
mupPR snapcraft#1279 opened: misc: rename the snap dir variable to prime dir <Created by elopio> <https://github.com/snapcore/snapcraft/pull/1279>16:43
niemeyerCurrent stats on review sprint: 44 total → ( 14 waiting → 16 reviewing → 4 reviewed → 9 merged ) → 10 closed16:49
niemeyerIncorporated that to the bottom of the board16:50
niemeyer34 to go...16:50
niemeyerhttps://forum.snapcraft.io/t/review-sprint-1/37716:50
jdstrandChipaca: I'm here but haven't had a chance to really work through your comment. do you want me to do that first or discuss now?16:54
Chipacajdstrand— whichever you'd rather. One big question I have is whether something completing '; sudo yadda' is a problem16:55
jdstrandChipaca: well, basically what I'm thinking is that I don't want bash completion to be any worse than simply running a cli command16:56
jdstrandChipaca: and I've not tried to attack bash completion in the past, so just thinking through everything16:57
Chipacamhmm16:58
jdstrandChipaca: the user's input going into snap run --complete and then running under confinement for the bash completion is no different than just running a snap command (and whatever shell tricks that might give you. ie, no worse)16:58
jdstrandChipaca: (and again, I really like you design)16:58
Chipacajdstrand— your review made me think about what i _wasn't_ checking, and i added checks for those things16:59
jdstrandChipaca: it is the handoff from confined to unconfined that I am thinking about, and I'm not super familiar with the whole completion mechanism to know the attack surface there (yet)16:59
Chipacajdstrand— yeap17:00
Chipacajdstrand— is there anything i can do to help?17:01
jdstrandChipaca: I think there are two things to think about: 1) attacking completion after go from confined to unconfined but before the user does anything and 2) tricking the user17:01
jdstrandif there are successful attacks against '1', we could *probably* chalk that up to vulnerabilities in bash that should be fixed. however, if there are hardening measures to put some guardrails there, that would be nice17:02
Chipacaon the tricking the user front I haven't found a way to abuse, say, terminal escape chars to do evil stuff; bash escapes those before offering suggestions to the user17:02
Chipacafor escaping, i think the sanitization i did last night fixes one way that might have existed of doing that (if a malicious completion script set arbitrary things that got passed to compopt)17:03
jdstrandChipaca: yeah, echo doesn't allow that by default. I'd like to play with printf a bit more17:04
jdstrandcool, I haven't seen the updates for sanitization there17:04
Chipacahttps://github.com/snapcore/snapd/pull/3150/commits/b02ba90d15d61ad5817eda8e241975669b3fff4317:05
mupPR snapd#3150: In-snap bash tab completion <Created by chipaca> <https://github.com/snapcore/snapd/pull/3150>17:05
jdstrandChipaca: the nice thing about printf %q is it definitely makes it shell safe. I do wonder how that might trip up things in practice. I suspect a lot of things would be ok with it, but I'm not sure about everything17:06
Chipacajdstrand— for COMPREPLY (ie for the last print), it adds a layer of quoting17:06
Chipacathat will break things; a lot of code in bash completion is about getting the right layer of quoting in place :-/17:07
=== kay is now known as Guest92058
jdstrandah, I like https://github.com/snapcore/snapd/pull/3150/commits/b02ba90d15d61ad5817eda8e241975669b3fff43#diff-65f7e8d7984bf6791a40090a663253abR1717:07
mupPR snapd#3150: In-snap bash tab completion <Created by chipaca> <https://github.com/snapcore/snapd/pull/3150>17:07
jdstrandChipaca: note, you say non-alphanumeric but it is really just lowercase alpha17:07
Chipacae.g. if you have a file with a space, a line there would be foo\\ bar, so you get offered something that works when completed17:07
Chipacajdstrand— yeah; i was about to just list all the known options even but thought it overkill17:08
jdstrandChipaca: re right layer of quoting. are you saying that bash(-completion) itself is making sure that happens?17:08
niemeyermvo: snapd#2833 reviewed and approved aside from trivials.. one more review from pedronis and it should be ready to move on17:09
mupPR snapd#2833: many: allow core refresh.schedule setting <Created by mvo5> <https://github.com/snapcore/snapd/pull/2833>17:09
pedronisfinishing something and then I will look at it17:09
Chipacajdstrand— i'm saying if you want to offer the user "foo\\ bar" (so that if they choose that they get something with a space in it and not two somethings separated by a space), and we pass that through %q, they'll be offered foo\\\\ bar which is two somethings one of which ends in a backslash17:11
Chipacajdstrand— that kind of problem17:11
jdstrandChipaca: (I also acknowledge the issues with escaping ' '. it's also hard getting the blacklist correct. I was thinking a whitelist of something like '^[a-zA-Z0-9\._ -]$' and escaping everything else, but again, not thought all this through)17:11
jdstrandChipaca: yep, I get that17:12
jdstrandChipaca: eg, a kinder, gentler %q17:12
jdstrandChipaca: mind you, I'm not saying to do that, I'm saying that is something I was thinking about. do you think that is feasible?17:14
Chipacajdstrand— I'm sceptical it can be made to work in a practical way and still be useful17:15
Chipacajdstrand— i'm still hopeful you'll find it unnecessary, but if it's got to be done ¯\_(ツ)_/¯17:16
jdstrandChipaca: the other thing I was thinking about is that assuming we can trust the handoff, maybe just at the end we do some escaping. again, not looked at this17:16
mvoniemeyer: thanks a lot!17:17
Chipacajdstrand— if i can help by writing tests (or trying stuff), give me a shout17:18
jdstrandChipaca: yet another thing I was thinking of is that we can, in theory, so that we support x, y, and z completions, but not a, b and c. meaning, yes, ' ' can be in there, but no, ';' cannot17:19
jdstrandChipaca: that is a variation on the kinder, gentler %q. you said you thought that would break things to the point of it not being useful. is there something you can think of otoh?17:20
jdstrands/so that/say that/17:20
niemeyermvo: np, glad to see this one getting in :)17:20
Chipacajdstrand— if we definitely want to filter, ';' would probably do relatively little damage (i have very few files that have that in them, and don't think i've ever seen a commandline tool that takes explicit ;s outside of 'find' or programming languages)17:22
Chipacajdstrand— i mean: passing the completion through grep and doing no completion if it matches some regexp seems like it'd do less damage than quoting17:23
=== deltab_ is now known as deltab
Chipacaalternatively filtering individual completions could be done in the same way17:23
jdstrandChipaca: yeah, I have a feeling we'd want to be pretty agressive on that. I think we are at the point where I need to study the handoff17:25
Chipacajdstrand— ok17:25
morphiszyga: fixed the PR17:26
zygamorphis: thanks!17:26
jdstrandChipaca: I wonder if it would be useful to land the feature with a fairly aggressive grep. this would demonstrate the feature and we could always loosen it17:26
Chipacajdstrand— I think it might17:27
Chipacajdstrand— we have people waiting for the feature so if we're going to do that, i should check whatever we land is workable for them :-)17:28
jdstrandheh, indeed :)17:28
lazyPowerDo we have a why snaps vs $alternative page somewhere?17:29
zygalazyPower: alternative?17:29
lazyPowerzyga: eg: flatpack17:29
zygalazyPower: ah17:29
zygalazyPower: I misread your question17:29
zygalazyPower: I don't think we do17:29
zyganiemeyer: quick question, so you say it's okay to use camel case for system-level C constants like UMOUNT_NOFOLLOW?17:31
niemeyerzyga: Let's be a bit more specific..17:31
niemeyerzyga: I meant that17:31
niemeyer  const Foo // This is FOO17:31
zygalazyPower: er17:31
niemeyermethod(Foo)17:31
zygaer17:31
* zyga meant under_score17:32
niemeyerIs better as const FOO; method(FOO)17:32
zygaok17:33
nacccan classic snaps only be in beta and edge channels?17:35
zyganacc: they can be in stable as well but need store review17:35
nacczyga: ah ok -- do i need to request that manually? i don't see a way to do that from the web UI?17:35
zyganacc: I don't know TBH :/17:36
nacczyga: ok :)17:36
nacci can recommend --edge for now, for this snap, it's fine17:36
mupPR snapd#3239 opened: many: show aliases changes on snap alias/unalias (aliases v2) <Created by pedronis> <https://github.com/snapcore/snapd/pull/3239>17:36
niemeyernacc: I think you can just try to push it and the store should provide some feedback.. if it doesn't seem straighforward, please let us know as that's something we'd like to fix17:37
naccniemeyer: ok, it's an already published snap so i would have though there'd be a way to do it from the web interface (it let me add beta but didn't list the other channels)17:37
niemeyernacc: We've been handling store requested in the forum under the store category, but still.. this particular need is something that should be more integrated into the release workflow17:37
naccniemeyer: i'll try the push now though17:38
niemeyernacc: Right.. please try to just put it in the stable channel and let us know how it goes17:38
niemeyernacc: It should really be that obvious.. if it's not we have work to do17:38
naccheh, well i need to change my yaml grade first :)17:39
niemeyernacc: Indeed17:39
naccniemeyer: will wait for that to autobuild and try again, thanks!17:39
niemeyernacc: np, let us kno17:52
niemeyerw17:52
niemeyerpedronis: snapd#3192 reviewed again, and LGTM assuming you like the suggestion17:53
mupPR snapd#3192: many: implement snap unalias <alias-or-snap> (aliases v2) <Critical> <Created by pedronis> <https://github.com/snapcore/snapd/pull/3192>17:53
niemeyerWe need a second review on this one pleeeeease ^17:53
pedronisniemeyer: ah, I had that idea, if you prefer it I can go for it17:54
niemeyerpedronis: +1!17:54
niemeyerpedronis: A, B, A+B, sounds great17:54
pedronisfinishing rereviewing the refresh one and then will go back to that17:55
pedronismvo: commented on the refresh one, what I'm wondering is the Sleep left in the tests given that we don't have a timer anymore18:04
* Chipaca takes a break18:08
mupPR snapd#3218 closed: interfaces: allow writing to /run/systemd/journal/stdout by default <Created by jdstrand> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/3218>18:12
naccniemeyer: confirmed, after opening the channel via `snapcraft` it did work18:18
naccniemeyer: and now the web ui shows it for the i386 build (i did it for the amd64 build)18:18
naccniemeyer: it does seem like, though, that there is no web ui way to 'open' a channel18:18
niemeyernacc: Opening a channel is just a matter of publishing a snap into it18:21
naccniemeyer: right, but the snap is already published in the web ui18:21
naccniemeyer: and there's no option to publish it to further hcannels18:22
naccbut `snapcraft` can18:22
naccseems odd to an end  user, imo18:22
=== JanC_ is now known as JanC
cachioniemeyer, hey, I am trying to automate the console conf tests by using spread18:27
cachioniemeyer, the tests console conf is started and is it suddenly closed if I run a expect from spread18:28
pedronisniemeyer: done18:28
Chipacanacc— if you go into a revision, the "release" link lets you add it to different channels18:29
cachioniemeyer, but If I run the same with -shell and invoque the expect manually with expect -f the test work18:29
cachioniemeyer, If replicate the test execution from the test machine and execute the same command the spread executed it also works18:29
cachioniemeyer, any idea?18:30
niemeyercachio: The allocation of the terminal is a bit different when running a shell or not.. we do have expect tests in our suite, though, so somehow it does work18:31
niemeyerLet me get an example18:31
cachioniemeyer, yes I saw the code18:32
niemeyercachio: https://github.com/snapcore/snapd/blob/master/tests/main/create-key/task.yaml18:32
niemeyercachio: These tests are passing all the time18:33
niemeyerSo it necessarily must work somehow18:33
cachioniemeyer, what I see expect is not the problem, because if I run the same but form the test machine it works18:35
cachioand it is using expect18:35
cachioniemeyer, I think there is something aroud ssh or the terminal that could be affecting, but not sure18:35
niemeyercachio: That's why I'm pointing out that expect itself works, somehow, in that environment18:36
cachioI changed spread to print the command that executed to run a test and if I run the same commadn with all the exports it works18:36
niemeyercachio: I suggest starting from the task I mentioned above, and transforming it into your task until it breaks18:36
niemeyercachio: Then you'll know what's the delta that makes it not work18:36
cachioniemeyer, ok, I'll try that18:37
niemeyerjdstrand: Question on snapd#321918:40
mupPR snapd#3219: interfaces/i2c: allow modifying device-specific sysfs entries <Created by jdstrand> <https://github.com/snapcore/snapd/pull/3219>18:40
niemeyerjdstrand: Sorry, nevermind.. I'm blind18:42
mupPR snapd#3219 closed: interfaces/i2c: allow modifying device-specific sysfs entries <Created by jdstrand> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/3219>18:44
jdstrandChipaca: ok, I have data/completion/* copied over to a vm. where do those files go?18:47
jdstrandChipaca: (I of course also have the rebuilt snapd, snap, snap-exec)18:47
jdstrandlooks like etelpmoc.sh goes in /usr/lib/snapd...18:49
mupPR snapcraft#1262 closed: replace : with _ in file names <Created by andyli> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1262>18:49
jdstrandsnap probably goes in /etc/bash_completion.d18:50
mupPR snapcraft#1275 closed: init: add a newline at the end of the file <Created by roxyd> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1275>18:52
jdstrandah, complete.sh also lives in /usr/lib/snapd18:54
Chipacajdstrand— yeah in /usr/lib18:55
Chipacajdstrand— but complete.sh can be wherever18:55
* jdstrand puts snap in /usr/share/bash-completion/completions/18:55
Chipacajdstrand— that's completion for the snap command, not related to this :-)18:55
jdstrandah, ok18:56
jdstrandChipaca: so, my snap would source complete.sh, so it just needs to be somewhere predictable?18:56
* jdstrand is trying to understand the 'can be wherever' comment18:57
Chipacajdstrand— your snap wouldn't source complete.sh18:57
jdstrandright, duh18:57
Chipaca(unless you're sourcing complete.sh for reasons)18:57
Chipacacomplete.sh is the "outside" one18:57
Chipacaie the user would source it after sourcing bash_completion18:57
jdstrandChipaca: ok, that is was the comment is about. at the moment, that is happening and there needs to be some way for that to happen, but for me, I can source it and just have etelpmoc.sh in /usr/lib/snapd18:58
Chipacajdstrand— your snap needs to have a completer entry in its snap.yaml18:58
jdstranderr18:58
jdstrandthat *isn't* happening18:58
* jdstrand nods18:58
jdstrandbtw, etelpmoc.sh is incredibly hard to type :P18:58
Chipacajdstrand— yep, and you need the new snap-exec "inside" for it all to work18:59
Chipaca:-D18:59
Chipacait doesn't get easier18:59
jdstrandhehe18:59
jdstrandChipaca: so, hmm, how are you putting snap-exec insode, a bind mount/overlay mount?19:00
Chipacayeah, i just copy everything into a snapd directory and bind-mount it19:00
jdstrandnormally I only deal with snapd and just use SNAP_REXEC=0, but this is different19:00
jdstrandok19:00
mupPR snapcraft#1268 closed: Added link to forums in the Get in touch section <Created by Ads20000> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1268>19:04
mupPR snapcraft#1274 closed: Simple explanation of what the test groups mean <Created by facundobatista> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1274>19:04
zygajdstrand: question: I want to create an interface that provides data from snaps to unconfined world19:07
zygajdstrand: technically snapd would need to expand $SNAP to the externally visible location of the mounted snap19:08
jdstrandzyga: can you be more specific. what kind of data? for what unconfined process to use?19:08
zygajdstrand: so the question is this, it kind of feels like content but it's not really, snapd would need to manage a namespace of files (say snap.$SNAP_NAME.$stuff) in a fixed directory for that interface19:08
zygajdstrand: specifically wallpapers for gnome19:09
zygajdstrand: gnome needs an XML file that describes each wallpaper19:09
zygajdstrand: I'd like to have a snap that can ship wallpapers and then get the XML file where the background selector expects it19:09
zygajdstrand: I was thinking about possible attacks but let's set that aside for a moment and just think about mechanics19:09
zyga(we can say that each image is converted via a confined helper to a bmp so that it is not an attack vector)19:10
zygajdstrand: should this be a new backend19:10
zygajdstrand: that instances of that backend can manage things like this19:10
zygajdstrand: (e.g. files that are visible from classic world)19:10
jdstrandfyi, it isn't thrilling to think about xml and image files coming from a snap to be fed to unconfined processes. the wallpapers code is likely not coded defensively against malicous input19:10
jdstrandimages you can't really get away from, but xml parsing, this could be done in other ways19:11
zygajdstrand: right, we can generate the xml in confined trusted helper, we can post-process each image as I described19:11
zygajdstrand: I want to focus on just the part where you want to let snapd manage part (likely via glob like snap.*) of the classic filesystem19:11
zygajdstrand: is that a new backend?19:11
zygajdstrand: and if so is it generic or super specific to this instance of the problem19:11
jdstrandzyga: otoh I'd skip bind mounts. we have too many of them. just symlink from /usr/share/wherever/gnome/knows/about/wallpapers/snap.$SNAP_NAME.1.png to /snap/wallpapers/current/1.png19:13
zygajdstrand: we need an xml file in /usr/share/gnome-background-properties/*.xml19:13
zygajdstrand: then those files name (and describe) wallpapers19:13
jdstrandthat's fine too19:13
jdstrandusr/share/gnome-background-properties/snap.$SNAP_NAME.1.xml or whatever19:14
zygajdstrand: there's some meta-data like what is the background color, which type of scaling to use, etc etc19:14
zygajdstrand: ok19:14
zygajdstrand: snapd can even write that file though it'd be somewhat repetetive but doable (ther'es a lot of little useless things there like i18n)19:14
niemeyerpedronis: snapd#3239 reviewed too19:14
mupPR snapd#3239: many: show alias changes on snap alias/unalias (aliases v2) <Created by pedronis> <https://github.com/snapcore/snapd/pull/3239>19:14
jdstrandpoint is, use the snap.$SNAP_NAME.* mechanism and hook into existing dirs with symlinks. this should work for all kinds of things and at least parts are generalizable19:14
niemeyerThis also needs a second review ^^^19:15
zygajdstrand: symlinks targetting what? I think we need to get an actual file as $SNAP is not known at build time19:15
jdstrandgenerating xml is not, but, we could generate xml into /var/lib/snapd somewhere and symlink into there (or generate in place if that makes more sense)19:16
zygajdstrand: right, that's doable19:16
zygajdstrand: so snapd would manage generated files in /var/lib/snapd and symlinks in a designated directory19:16
jdstrandzyga: I was assuming that gnome just read the xml that told it where the images are. is that not correct?19:16
zygajdstrand: yes that's correct19:17
jdstrandok, yes19:17
jdstrandthen what you said last19:17
zygajdstrand: thanks, I may have some code for that in a few evenings :)19:17
zygajdstrand: just something I wanted to tackle personally19:17
zygajdstrand: perhaps this could be reused to allow man pages or other similar content19:18
jdstrandthe generalizable part is symlinking data from known dirs to places in /snap. the wallpaper-specific part is the xml19:18
zyga(through again always the issue will be having software munge on untrusted data)19:18
jdstrandzyga: man pages I think we could do if we ran the man page through a linter. if it passes, symlink. if not, don't19:19
jdstrandthat can happen at install/refresh19:19
zygajdstrand: hmm, here it'd not be a symlink to /snap/* anything; I assumed snapd would generate the xml files in /var/lib/snapd/(made up, say dataproviders)/gnome-wallpapers/snap.hello-kitty-1.xml and put a symlink to that file in /usr/share/gnome-background-properties/snap.hello-kitty.xml19:20
jdstrandof course, that linter should run confined, but that isn't insurmountable19:20
zygajdstrand: yeah, I think a linter or perhaps a transformation tool could be a generic step19:20
jdstrandzyga: yeah, that's fine too. I wasn't sure if gnome wanted the data in some convenient location19:20
zygajdstrand: though interesting what ships the linter, perhaps a snap that has the slot?19:20
zygajdstrand: just the xml files, the images can be anywhere19:21
jdstrandzyga: perhaps /usr/share/wallpapers so other DEs could use it without xml or something19:21
pedronisniemeyer: thanks19:21
zygajdstrand: perhaps, I was trying to get it to work in gnome first but yeah; depending on how the interface is coded it could be a generic wallpaper provider19:21
pedronisniemeyer: "snap prefer" and "snap aliases" are the two left19:22
jdstrandzyga: if we are shipping man page, core snap should arguably have the man command. it would be easy to create a profile for man to have it run checks. effectively aa-exec -p man-lint -- man /snap/foo/current/path/to/man/page19:23
jdstrandare allowing shipping man pages19:23
zygajdstrand: yes, for man I agree19:23
jdstrandit could be a separate snap such that if man command is present, just use it (putting the man page in the right place)19:24
zygajdstrand: ha, the "man" snap19:24
zygaquite literally19:24
jdstrandyeah19:24
zygait's also interesting for classic vs core19:24
zygaon core the snap makes sense19:24
zygaon classic the man slot would be on the core snap itself19:25
jdstrandwell, possibly19:25
jdstrandI'd like to see the man command on there, but it isn't up to me19:25
zygajdstrand: thanks for the discussion19:27
jdstrandnp19:28
jdstrandthis may actually help the plasma guy actually. there is a discussion there where he is running arbitrary script through a dbus api in order to set the wallpaper19:29
zygajdstrand: aha, interesting, where is that discussion?19:29
jdstrandI wonder if whatever plasma needs (ie, its equivalent of gnome's xml), perhaps he doesn't need to do all that19:29
jdstrandsnapcraft@ mailing list19:29
zygajdstrand: yes, looking at more than one consumer of wallpapers would help19:29
zygajdstrand: though this feels like wallpaper-control interface19:30
jdstrandit does19:30
mupPR snapcraft#1280 opened: Added support for 'branches' in Store responses (release, close, and status) <Created by facundobatista> <https://github.com/snapcore/snapcraft/pull/1280>19:31
jdstrandand that's ok. perhaps it uses the ExposeData (ie symlinks) backend or maybe not (depends if the data needs to be symlinked or just the meta data files)19:31
facubatistaroadmr, ↑19:31
roadmrfacubatista: whee!19:32
facubatista:)19:32
zygajdstrand: I see what you did there ;-)19:32
zygajdstrand: naming backends already, thanks!19:32
jdstrandhehe19:32
zygajdstrand: would you put the symlink + generate data functionality into that backend?19:32
zygajdstrand: I'd actually allow the specification to carry that19:33
jdstrandmaybe?19:33
zygajdstrand: as after all, it's all in snapd19:33
zygajdstrand: (then two interfaces can do different stuff without being any less trusted)19:33
jdstrandit seems clear that the backend would be useful for even just the xml, cause the backend could do the symlinking19:33
zygajdstrand: yes, I bet it could be pretty generic19:33
jdstrandperhaps the backend has a generator api that could be xml for gnome, linter for man, nothing for /usr/share/wallpapers19:34
zygajdstrand: yes, I think the symlinking is a generic feature but where the data comes from (generator) is a function the interface can attach to the specification19:35
jdstrandyeah19:35
zygajdstrand: symlink or copy or something similar, details to be defined19:35
jdstrandyes19:35
zygajdstrand: I also smell...19:35
zygajdstrand: ssl :D19:35
zygajdstrand: we could ship ssl certs with a plug19:35
zygajdstrand: (and control via assertions)19:36
zygajdstrand: and update out of bound or let private entities install their own certs19:36
zygajdstrand: we may even look at desktop files a little this way (though that's a stretch)19:36
zygajdstrand: (well just as an interface, much of the strucutre would fit right in)19:37
zygajdstrand: maybe themes19:37
* jdstrand nods19:37
zygajdstrand: I'd love if one could ship a theme this way and have it available in classic world and in snaps the same way (.so files aside)19:37
zygaanyway, I think I need to try something small firsT :)19:37
pedronisChipaca: mvo: a 2nd review of snapd#3192 would be appreciated19:38
mupPR snapd#3192: many: implement snap unalias <alias-or-snap> (aliases v2) <Critical> <Created by pedronis> <https://github.com/snapcore/snapd/pull/3192>19:38
jdstranddesktop is slightly messy cause they are so particular about the file name and the contents of the file, but sure19:41
jdstrandand yes, would be nice for themes. .so files are a bit scary though19:41
niemeyerpedronis: Just did snap prefer19:56
niemeyerpedronis: Looks sane, although it's getting a bit hard to make sure I'm not skipping anything19:57
niemeyerI'll take a break now19:58
pedronisniemeyer: yea, they are quite big :/19:58
pedronisthx19:58
zyganiemeyer: enjoy! thanks for the reviews!19:58
jdstrandoh huh, 'assumes'. I hadn't seen that20:25
mupPR snapcraft#1281 opened: core: switch to version git <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/1281>20:25
ryebotis there a timeout on `snap login`, or does the login token last indefinitely?20:55
roadmrryebot: it should last unless you logout or change your password20:56
ryebotroadmr: excellent, thanks :)20:56
roadmrryebot: (technically it expires periodically but snapd takes care of refreshing it for you, no need to re-enter credentials)20:57
ryebotroadmr: ah, good to know, thanks :)20:58
niemeyerzyga_: Thanks!22:02
niemeyerjdstrand: Yeah, not very well known22:02
pedronisniemeyer: I tried to answer the comments on the "snap aliases" one with some further questions, I do prefer to keep Status honestly22:36
niemeyerpedronis: Yo22:36
niemeyerpedronis: Sorry, which Status was that?22:36
pedronisniemeyer: Status in /aliases response22:36
niemeyerpedronis: Ah, ack.. what's the background?22:37
pedronisniemeyer: well we discussed a lot of options how to do things, having one set of aliases per snap is the simplest possible thing, not clear it will stay like that forever22:37
pedronisniemeyer: having one status per aliases should keep working though, independently of the policy by which they are disabled/enabled in groups22:38
niemeyerpedronis: Hmm22:38
niemeyerpedronis: I think we can always bring it back if necessary, but the structure we evolved towards in the server seems to ring a nice bell22:39
niemeyerpedronis: We basically have a snap, with aliases, and Auto/Manual targets22:40
pedronisniemeyer: well, it means the client needs to do all the computation that aliasesv2.go does to interpret the status22:40
niemeyerpedronis: Even if we introduce groups, it sounds like this would still fit22:40
niemeyerpedronis: Yeah, but isn't that trivial?  I find it awkward that we're still modeling the client end after the old model when the server end seems to have improved a lot recently22:41
pedronisniemeyer: sorry, personally I find it strange to have to teach the exact semantics to the client code again22:43
pedronisit needs to know again that manual wins , apply a flag across aliases etc22:44
niemeyerpedronis: I find the opposite end strange: we're sending data to the client as if aliases might have individual settings, when they really can't... people will end up building algorithms on it which don't really make sense if they think that's the case22:44
niemeyerpedronis: If this sounds controversial, it would be fine to wait a bit I think22:45
pedronisniemeyer: well we need something, atm "snap aliases is broken"22:45
niemeyerJust disabling the API for the time being so we don't buy incompatibilities22:45
niemeyerpedronis: Ok, let's come back into this tomorrow then.. it's a bit late here, and even later there!22:45
pedronisniemeyer: I see it mostly as a display to user API atm,  if we want to send more details they would probably go in /snap no, like other bits of snapstate?22:47
niemeyerpedronis: Hmm22:47
niemeyerpedronis: Okay, indeed.. we can keep this API and include the additional fields in the snap when we want to.. that's the idea I had as well (to have them in the actual snap structure instead of under /aliases)22:50
niemeyerpedronis: Can we replace "unaliased" by "disabled"?22:50
niemeyerpedronis: In the Status22:51
pedronisyes22:51
niemeyerpedronis: Okay, deal22:51
pedronisI think you proposed "unaliased" at some point, maybe because of snap install --unaliased ?22:51
niemeyerpedronis: I do have crackful ideas sometimes..22:51
niemeyerpedronis: It's a terrible term for what is simply "disabled"22:52
niemeyerpedronis: and now that we have AutoAliasesDisabled, that stands out even more22:52
pedronisniemeyer: do we care about being backward compatible at all?  I'm taking abotu App/app vs Command/command in the struct?22:53
pedroniss/taking/thinking/22:54
niemeyerpedronis: In this particular case we've opted to bite the bullet and break compatibility to have a major overhaul, and I seriously doubt there was enough time for anyone to build on this API yet, so these two things summed up make me think it's fine22:54
pedronisok22:55
pedronisso I'll change the struct and not just the output22:55
pedronisthanks22:55
pedronisin the morning though, it's indeed late22:55
pedronisniemeyer: I summarized what we discussed here in the PR22:57
* pedronis -> rest22:59
pedronisttfn!22:59
niemeyerpedronis: Thanks a lot, and have a good night!23:01
=== kay is now known as Guest53543
azubietaHello, I heard that the Ubuntu store is closing, will this affect snappy technologies to ?23:27
kyrofaazubieta, no no, just phones23:35
kyrofasnappy/ubuntu core is still going strong23:35
azubietaoh23:35
azubietagood23:35
azubieta:D23:35
azubietathanks!23:35

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