/srv/irclogs.ubuntu.com/2017/07/26/#snappy.txt

mupPR snapd#3622 opened: tests: enable regression, upgrade and completion test suites for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3622>01:48
=== chihchun_afk is now known as chihchun
=== AdmWiggin is now known as tianon
zyga-ubuntugood morning06:48
* zyga-ubuntu actually had brakfast today and starts hacking07:29
zyga-ubuntumvo: do you want to sync about the debian situation?07:29
mvozyga-ubuntu: in some minutes, hacking on base snaps07:32
zyga-ubuntuokay07:35
mupPR snapd#3620 closed: interfaces/builtin: discard empty Validate{Plug,Slot} <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/3620>08:36
=== chihchun is now known as chihchun_afk
=== daker_ is now known as daker
* zyga-ubuntu is puzzled09:30
zyga-ubuntusingle test doesn't fail, lets run the suite09:30
mupPR snapcraft#1419 opened: add "base" to the snapcraft.yaml schema <Created by mvo5> <https://github.com/snapcore/snapcraft/pull/1419>09:49
ogra_fgimenez, do our spread tests accept TMPDIR ? (see https://forum.snapcraft.io/t/how-to-use-spread-to-test-ubuntucore-image/1323 )09:51
fgimenezogra_: looking09:52
morphiszyga-ubuntu: ping09:55
zyga-ubuntumorphis: hey09:58
morphiszyga-ubuntu: the changed way of describing interfaces in the snapd code, is that documented somewhere?09:58
zyga-ubuntumorphis: changed as in how?09:59
morphisbringing https://github.com/snapcore/snapd/pull/3615 into shape for kyle right now09:59
mupPR snapd#3615: add broadcom-asic-control interface <Created by knitzsche> <https://github.com/snapcore/snapd/pull/3615>09:59
zyga-ubuntumorphis: but I think it's not described in many places09:59
morphiszyga-ubuntu: "Description is now out. Please open a thread on the forum, document the interface there and add a documentation link (I will try to land the related branch today so that you can do this)." is what you said09:59
* zyga-ubuntu looks09:59
morphisI didn't saw this changed for any of the other interfaces yet09:59
zyga-ubuntumorphis: ah, I see09:59
zyga-ubuntumorphis: this is 339909:59
zyga-ubuntumorphis: which will hopefully land later today09:59
zyga-ubuntumorphis: not much changes, just DocumentationURL -> DocURL and Description -> out10:00
ogra_WOHOO !!!10:06
ogra_the latest nplan fixed the wlan issues on pi310:07
ogra_\o/10:07
morphisogra_: nice :-)10:10
* ogra_ just set up a pi3 without any wired network 10:10
mupBug #1632387 changed: console-conf wifi only setup on pi3 beta3 image not possible <Snappy:Confirmed> <subiquity (Ubuntu):Confirmed> <https://launchpad.net/bugs/1632387>10:13
zyga-ubuntuogra_: did wifi work on first boot?10:15
zyga-ubuntuogra_: wow :)10:15
zyga-ubuntuogra_: what was the issue?10:15
mupPR snapd#3623 opened: interfaces/builtin: implement broadcom-asic-control interface <Created by morphis> <https://github.com/snapcore/snapd/pull/3623>10:15
ogra_zyga-ubuntu, netplan had a unbind/bind cycle hardcoded for all drivers10:16
ogra_zyga-ubuntu, which the broadcom driver of the Pi doesnt suopport10:16
zyga-ubuntuah, I see10:16
zyga-ubuntuinteresting, I never worked with driver binding/unbinding before10:17
ogra_https://forum.snapcraft.io/t/failing-raspberry-pi-3-config-wlan-disappears/1023/6 has all info10:18
mvodoes anyone know if there is a way to force snapcraft to *not* create a wrapper script?10:21
mvofor the things in my apps: section10:21
* ogra_ doesnt think there is 10:21
zyga-ubuntumvo: AFAIK, no10:22
mupPR snapd#3545 closed: many: support querying and completing assertion type names <Created by chipaca> <Merged by chipaca> <https://github.com/snapcore/snapd/pull/3545>10:22
mupPR snapd#3611 closed: overlord/snapstate/backend: some copydata improvements <Created by chipaca> <Merged by chipaca> <https://github.com/snapcore/snapd/pull/3611>10:22
Chipacapedronis: niemeyer: snapd#3614 is ready for another look i think (spread failed so i'm re-running it, but errors were not related to the pr)10:40
mupPR snapd#3614: daemon, client, cmd/snap: implement "snap services" <Created by chipaca> <https://github.com/snapcore/snapd/pull/3614>10:40
pedronisChipaca: thanks, I'm having lunch break and then I have an errands, but will look later in the afternoon10:41
Chipacanp10:41
Chipacai'm about to break to see if i can't have my lunch run during a break in the rain10:42
mupPR snapcraft#1420 opened: add new "no-wrapper" property to apps <Created by mvo5> <https://github.com/snapcore/snapcraft/pull/1420>11:01
zyga-ubuntumvo: wow, nice11:02
zyga-ubuntumvo: suggestion added as comment11:03
zyga-ubuntumvo: woot, 3621 is green :)11:03
zyga-ubuntumvo: I forgot to commit :'D11:04
zyga-ubuntumvo: this means I can pursue this idea further and do what we discussed on the call earlier today11:06
mupPR snapd#3624 opened: rework for avahi interface <Created by kubiko> <https://github.com/snapcore/snapd/pull/3624>11:40
zyga-ubuntumvo, Chipaca: can I land https://github.com/snapcore/snapd/pull/3619 please?11:49
mupPR snapd#3619: interfaces/builtin: reduce duplication and remove cruft in Sanitize{Plug,Slot} <Created by zyga> <https://github.com/snapcore/snapd/pull/3619>11:49
zyga-ubuntuthere are new interfaces coming up and I wanted to make sure they can benefit11:49
zyga-ubuntuChipaca: I need some advice12:06
Chipacazyga-ubuntu: delete facebook, hit the gym, lawyer up?12:06
zyga-ubuntuChipaca: can you have a look at https://github.com/snapcore/snapd/pull/3399#discussion_r12929604312:06
mupPR snapd#3399: many: add the interface command <Created by zyga> <https://github.com/snapcore/snapd/pull/3399>12:06
zyga-ubuntuhaha, nice :)12:06
zyga-ubuntulawyer up?12:06
zyga-ubuntuwhat does that mean?12:06
Chipacazyga-ubuntu: contact, and possibly retain, a lawyer12:06
mvozyga-ubuntu: 3619 has my review already, just needs a second one12:07
zyga-ubuntuChipaca: aha12:08
Chipacazyga-ubuntu: what's your question?12:08
zyga-ubuntumvo: thanks, I'll rally some help then ... (looks at Chipaca)12:08
zyga-ubuntuChipaca: so say I "snap list barf", that doesn't return 404 or anything similar but instead does client side translation from len(results) == 0 to a dedicated error12:09
zyga-ubuntuChipaca: I used the same approach for snap interface12:09
zyga-ubuntuChipaca: now the question is, should both change to server side error?12:09
Chipacazyga-ubuntu: the behaviour of 'snap list' probably needs revisiting; the logic has grown organically for a while with no active pruning12:10
Chipacazyga-ubuntu: it used to be that all filtering of snap list was client-side12:10
Chipacazyga-ubuntu: then a minimal change was added to move the filtering to the server12:10
Chipacazyga-ubuntu: but the error logic was probably left alone12:10
zyga-ubunturight12:10
zyga-ubuntuI'm after a common front, we can change the code once we agree on how12:10
Chipacaok12:11
niemeyerMornings o/12:11
Chipacazyga-ubuntu: sounds good12:12
Chipacazyga-ubuntu: for snap list, it is not an error to say "snap list" and have it return nothing (it prints a message, but isn't an error)12:12
Chipacazyga-ubuntu: for snap list, it is an error to say "snap list foo" if foo is not installed12:12
Chipacazyga-ubuntu: for snap list, it is _not_ an error to say "snap list foo bar" if foo is not installed but bar is12:13
zyga-ubuntuChipaca: how would the results be conveyed?12:13
zyga-ubuntuChipaca: and why is the last thing different from the 2nd thing?12:14
zyga-ubuntuChipaca: I was thinking about an xml-rpc like multi-call request, (one request packing many requests and returning many responses)12:14
zyga-ubuntuChipaca: so that individual query elements can fail12:14
Chipacazyga-ubuntu: how do you tell bash that12:15
Chipaca"snap list" takes the approach that if at least one succeeds, the op succeeded12:15
Chipacamy question is whether that is appropriate for the other thing you're wanting to generalise it to12:15
zyga-ubuntuChipaca: well, bash can just fail with "error code 1"12:15
zyga-ubuntuChipaca: bash isn't a problem here, I think12:15
zyga-ubuntuChipaca: and we can either fail or succeed12:16
zyga-ubuntuChipaca: depending on the context12:16
zyga-ubuntuChipaca: but we need to know we did fail in the first place12:16
zyga-ubuntuChipaca: I think we need to get the wire format right first12:16
Chipacazyga-ubuntu: what's the advantage for the user?12:17
zyga-ubuntuChipaca: user advantage is can be defined later, right now I think we are still stuck at the request/response layer12:18
Chipacazyga-ubuntu: you're starting from the wrong place then :-)12:18
zyga-ubuntuChipaca: well, not sure, at the moment we cannot even convey this to the user because we have no data to say so12:19
niemeyerChipaca: I think it's awkward that "snap list foo bar" doesn't error if one of these is missing.. feels like a bug12:20
niemeyerChipaca: I don't think the wire format is involved in any of this12:21
niemeyerSorry, that was actually for zyga12:21
niemeyerThe user interface is what creates expectation.. depending on what is being done, the expectation is broken and becomes a bug12:22
zyga-ubuntuniemeyer: by wire format I was referring to being able to encode this, right now I'm not sure if we should use status codes or what12:22
niemeyerThe API under it can work in many different ways12:22
niemeyerzyga-ubuntu: We don't want to send bash status codes in the API.. makes no sense12:22
zyga-ubuntuniemeyer: I wasn't talking about bash status codes12:23
zyga-ubuntuniemeyer: just the fact that "snap list foo bar" didn't know about "bar" but found "foo"12:23
niemeyerzyga-ubuntu: Well, which status codes are you talking about then? :)12:23
zyga-ubuntuniemeyer: I was thinking about http status codes12:23
niemeyerzyga-ubuntu: We use those fine I think12:23
Chipacaniemeyer: it may well be, and if it is we can change it, but right now this is how it behaves -- changing it because it's a bug is fine, changing it because we want to change the wire format so we can change it is not12:23
zyga-ubuntuniemeyer: should that give a 404, a 200 with some extra data or something entirely different/12:23
zyga-ubuntuniemeyer: so far snap list doesn't 404 AFAIK12:23
niemeyerThankfully!!!12:24
niemeyerOne more for emphasis: !12:24
niemeyer:P12:24
* Chipaca lends niemeyer a double ‼12:24
niemeyerThanks! :)12:24
Chipacamaybe some bold ones as well ❗❕12:25
* Chipaca stops12:25
zyga-ubuntuniemeyer: in any case, please have a look at 339912:25
zyga-ubuntuniemeyer: there is one outstanding point12:25
zyga-ubuntuniemeyer: that is related to the discussion above12:25
zyga-ubuntuniemeyer: and if you can, please +1 3619 as I want to fix some incoming interfaces12:26
pedronisChipaca: did another pass on your branch12:26
niemeyerzyga-ubuntu: Some background: 404 generally means "nothing to see here" in HTTP protocols.. quite error prone to return it on a request that was processed and which has a richer response than simply "nothing to see here"12:26
niemeyerzyga-ubuntu: In this specific case, the API returning one element out of two seems reasonable.. it's the user action of saying "list me those two" in a CLI that makes this an error12:27
Chipacapedronis: by "just check and transform the result" you mean "if it has ‘.’, call snap.SplitSnapApp, otherwise don't"?12:27
pedronisChipaca: no check if the two parts are equal, if they are return  one and ""12:28
Chipacapedronis: so if the user says "foo.foo" they still get all the apps from foo?12:28
Chipaca:-/12:28
niemeyerzyga-ubuntu: I think I just responded to that point?12:28
pedronisChipaca: well as I said I'm not happy with tha ambiguity12:29
Chipacapedronis: these are services, not … not-services, so the "foo means foo.foo" doesn't apply12:29
pedronislet me think12:30
* Chipaca steps back from the thinking pedronis 12:30
zyga-ubuntuniemeyer: so if we ask about one interface and it is not there the server should then give us some kind of 404-ish error?12:30
pedronisChipaca: ok,  yes, I think you need to check if '.' is the thing then12:31
niemeyerzyga-ubuntu: How does "snap list" report that today?12:31
pedronisanyway it's a nitpick12:31
zyga-ubuntuniemeyer: it translates that in the client12:31
niemeyerzyga-ubuntu: How does it report?12:31
zyga-ubuntuniemeyer: with identical if len==0 check12:31
zyga-ubuntuniemeyer: zyga@fyke:~/go/src/github.com/snapcore/snapd$ snap list nothingtoseehere12:32
zyga-ubuntuerror: no matching snaps installed12:32
niemeyerzyga-ubuntu: Sorry, for extra clarity: your question is about what the server does.. I'm driving an analogy with snap list, and asking how the server reacts to those requests12:32
niemeyerzyga-ubuntu: We don't want these APIs side-by-side with diverging behaviors12:33
zyga-ubuntuniemeyer: to the best of my knowledge snap inteface and snap list behave the same way server side, unknown things are skipped silently12:33
Chipacaniemeyer: "list" does not error on returning empty12:33
Chipacaniemeyer: /v2/snaps i mean12:33
Chipacaniemeyer: does not consider returning an empty list to be a 40412:33
zyga-ubuntuyou just get an empty result container12:33
niemeyerChipaca: Great, thanks12:33
niemeyerzyga-ubuntu: So that's what we want for interfaces too, on the server side12:34
zyga-ubuntuniemeyer: that's exactly what happens now12:34
niemeyerzyga-ubuntu: On the client side, a person asking to list something non-existing is generally an error12:34
Chipacawe could change it so that, if "snaps" is specified to /v2/snaps, then it 404s if empty12:34
zyga-ubuntuniemeyer: we just return an empty list and the client checks that12:34
Chipacabut, for snaps, it's never a 404 for the result to be empty if "snaps" is not given12:34
niemeyerChipaca: It seems fine as it is.. as long as the behavior is consistent.. it's generally also easier to handle and less error prone per reasons above12:35
Chipacathat is, an empty collection is not a not-found12:35
zyga-ubuntuniemeyer: so from my POV, it's consistent and no further change is needed there12:35
* zyga-ubuntu would love to land that PR :-)12:35
Chipacabut also note that /v2/snaps/foo will happily 40412:35
niemeyerzyga-ubuntu: Ok.. so about the client: the CLI needs to error when an interface requested by the user is not found12:35
niemeyerzyga-ubuntu: It can even list the first one, but it should error at the end pointing out the missing interface12:36
zyga-ubuntuniemeyer: I think it does as well, the client checks if we got an empty response and returns an error12:36
zyga-ubuntuaha12:37
zyga-ubuntuniemeyer: note that we can only ask about one interface toaday12:37
zyga-ubuntuniemeyer: so we do that12:37
zyga-ubuntuniemeyer: you either see what you asked for or you get an error12:37
niemeyerzyga-ubuntu: Okay, LGTM then12:37
zyga-ubuntu\o/ woot :)12:38
niemeyerand we need to fix snap list later to correct that behavior12:38
zyga-ubuntuniemeyer: I'll just point out that you cannot ask about many interfaces and if you want that, I can happily change that12:38
niemeyerzyga-ubuntu: On this specific point.. the rest of the review still applies obviously :)12:38
zyga-ubuntuniemeyer: so there's more parity on list and interface12:38
niemeyerzyga-ubuntu: Hmm12:38
zyga-ubuntuniemeyer: I think the rest of the review is fully addressed12:38
zyga-ubuntuniemeyer: if you don't ask about a specific interfaces you get the listing12:38
Chipacais it OK that the client is now calling them connections, even though the endpoint is interfaces?12:38
zyga-ubuntuniemeyer: if you ask about a specific, you get it or you get an error saying it's not there12:38
Chipacaor should it be /v2/connections?12:39
niemeyerzyga-ubuntu: Yeah, I'd expect an API close to what we have with snaps12:39
zyga-ubuntuChipaca: that's a thing we want to untangle but we didn't want to break compatibility12:39
zyga-ubuntuniemeyer: note that on the API layer you can ask for many12:39
* Chipaca shuts up and puts the bikeshed inside the shed and puts a padlock on the shed and burns down the whole house with the shed inside it12:39
zyga-ubuntuniemeyer: it's just the command line tool asks for one12:39
niemeyerChipaca: It's the opposite unfortunately12:39
niemeyerzyga-ubuntu: Ah, that's fine12:39
niemeyerzyga-ubuntu: Easy to improve the CLI later12:39
niemeyerzyga-ubuntu: Was mainly worried about the API12:40
niemeyerChipaca: The /v2/interfaces we have *today* is more like a "/v2/connections" thing12:40
niemeyerChipaca: So instead of creating a /v2/more-interfaces :), we introduced new behavior on /v2/interfaces in a compatible way, that makes it return something that looks more like an actual interface12:41
niemeyerand we should really go back to the forum on those conversations.. all of that background will be trashed in a couple of hours12:42
pedronisChipaca: did you see my other comments, a table of bools doesn't seem very readable but maybe you discussed that already to death12:44
* zyga-ubuntu eats lunch quickly, see you at the call12:50
Chipacapedronis: no, we didn't discuss that aspect of it12:52
pedronisChipaca: also to be active it needs to be enable, right?   and vice versa if it's not enabled it cannot be active12:53
Chipacapedronis: it can be active and not enabled, and enabled but not active12:54
pedronisChipaca: ah, if you do systemd stuff12:54
pedronisdirectly12:54
pedronisanyway I still don't know if a wall of true/false is great12:55
Chipacapedronis: "snap stop" does not disable12:56
Chipacapedronis: "snap start" does not enable12:56
niemeyerpedronis: Indeed12:56
Chipacapedronis: so "snap stop --disable" -> service is inactive,disabled; "snap start" -> service is active,disabled12:57
Chipacapedronis: me neither12:57
Son_Gokuwhy are you doing that?12:57
Chipacabut it does need to be lined up12:57
niemeyerMaybe  active vs. -, and enabled vs. -, would be more visually appealing12:57
ChipacaSon_Goku: what "that"'s that?12:57
Son_Goku[08:57:00 AM]  <Chipaca>pedronis: so "snap stop --disable" -> service is inactive,disabled; "snap start" -> service is active,disabled12:57
ChipacaSon_Goku: as opposed to what?12:57
* Son_Goku shrugs12:57
pedronisall our services are created enabled though?12:58
pedronisright?12:58
pedronisthat's the initial state12:58
Son_GokuI mean specifically service management through snap command12:58
Chipacapedronis: yes12:58
niemeyerSon_Goku: https://forum.snapcraft.io/t/command-line-interface-to-manipulate-services/26212:58
ChipacaSon_Goku: it's been requested multiple times, for convenience12:58
niemeyerAnd this is where we should be having this conversation too.. :)12:58
niemeyer(so we can link next time)12:58
Son_GokuI'll have to trawl through that and give my feedback on the whole thing12:59
Son_Gokuso far, I don't know if this is a good idea12:59
* Son_Goku sighs13:00
Son_Gokuthe forum is too hard to follow13:00
niemeyerSon_Goku: IRC is even harder to follow.. all of the conversation above will be gone in 2h tops13:00
Son_Gokuyes, but because it's real-time-ish, I can just ask people :)13:01
niemeyerSon_Goku: Yes, and people can repeat the same thing they tell you 20 times more, to every next person asking.. /o\13:01
Son_Gokuhaha13:01
Son_GokuI'm still waiting for desktop snaps to be unbroken: https://forum.snapcraft.io/t/integrate-snapd-xdg-open-into-snapd-repository/10013:02
Son_Gokuniemeyer: the issue with the forum is that I don't get emails of threads that I can jump into arbitrarily13:03
Son_Gokuonly things that I've already commented on13:03
Son_Gokuso I barely know what the heck is going on13:03
zyga-ubuntuChipaca: standup please13:03
niemeyerSon_Goku: You can subscribe to categories, topics, or even the whole forum13:03
Son_GokuI can?13:03
Son_Gokuhow?13:03
niemeyerSon_Goku: "Mailing list mode" in your preferences13:03
Chipacazyga-ubuntu: omw!13:03
niemeyerSon_Goku: Per category, going to the category and selecting your subscription option13:04
Son_Gokuso if I just set mailing list mode without doing anything else, it'll send me everything, right?13:05
niemeyerSon_Goku: Yep!13:09
Son_Gokuniemeyer: done, thanks13:23
Son_Gokuhopefully now I'll be able to be kept in the loop more13:23
fgimenezniemeyer: mvo i've just promoted 2.26.14 to stable13:39
zyga-ubuntuwoot13:40
mvofgimenez: excellent, thanks a lot13:43
* zyga-ubuntu small break before doing more stuff13:47
zyga-ubuntuI need to put my fedora box on my desk13:47
zyga-ubuntuI miss it :(13:47
mvozyga-ubuntu: if you have a rpm based system at hand, could you please touch a file like /usr/bin/vi and then rpm install vi and see if rpm just overwrite the file if it  is already there? that is what dpkg is doing and if rpm is doing the same we are good for the bash-completion idea we had the other day13:50
mupPR snapd#3625 opened: many: end-to-end support for the bare base snap <Created by mvo5> <https://github.com/snapcore/snapd/pull/3625>13:57
zyga-ubuntumvo: checking14:00
Son_Gokumvo: if it's not a config file, then that behavior is valid14:00
Son_Gokuif it's a ghost or a real file tracked by rpm and already exists, you're toast14:00
mvoSon_Goku: great, thats my undersanding as well14:00
mvounderstanding14:01
Son_Gokunote that a ghost file is one that is known to be tracked by rpm once something creates it14:01
Son_Gokuthey don't necessarily care about *everything* about them14:01
zyga-suse_mvo: although I will use emacs :)14:01
Son_Gokubut rpm does track them for the purposes of being able to remove them14:01
=== zyga-suse_ is now known as zyga-suse
* zyga-suse curses at packagekit for being ugly and stupid 14:01
zyga-suseand not wanting to shut down14:02
Son_Gokuif you're on suse, you can force pk to give up14:02
zyga-suseI just tired because it gave me that option14:02
zyga-suseit doesn't work14:02
Son_Gokulovely :(14:02
zyga-suse"must be busy"14:02
zyga-suseno shit sherlock?14:02
ogra_stop  giving it so much to do then14:02
ogra_poor thing ...14:02
Son_Gokuhaha14:03
zyga-suseit would have been nicer if it didn't just run on resume14:03
Son_Gokumvo: the only semantic that differs between dpkg and rpm on file handling is the concept of ghost files14:03
zyga-suseok, installing emacs14:03
Son_Gokuthey don't exist in dpkg14:03
Son_GokuI believe it treats those as a conflict as well14:04
zyga-susezypper says "checking for conflicts amongs files"14:04
zyga-susemust be doing something14:04
Son_Gokuit's resolving @System.solv against your proposed transaction14:04
Son_Gokumvo: since unless you do %config %ghost (which is dumb for a variety of reasons), a %ghost file is a real file to the rpmdb like anything else14:05
zyga-suseChipaca: offtopic,if I have a huge snap, will it resume a partiall download?14:05
zyga-susemvo: it works as in dpkg14:05
zyga-suseI just installed emacs14:05
zyga-susenow how do I quit ;-)(14:06
Son_Gokuzyga-suse: really?14:06
zyga-suse(just kidding, I know how to quit, emacs was my first editor)14:06
Son_Gokumvo: this is why I declared certain files in the fedora snapd spec as %ghost, so that they're owned by snapd and other things can't collide with it14:06
zyga-suseSon_Goku: I touched /usr/bin/emacs14:06
zyga-suseSon_Goku: then zypper installed emacs14:06
zyga-suseSon_Goku: then confirmed the file was overwritten14:06
Son_Gokuyep14:06
Son_Gokumvo: even though they're not created by the rpm, rpm "knows" something "owns" it, and won't let something else "different" take it over14:07
Chipacazyga-suse: if you have a huge snap, and as part of an install the connection gets interrupted and needs to be redone, yes it continues14:09
zyga-suseChipaca: awesome14:10
zyga-suseChipaca: at some point it would be cool to be able to pause downloads14:10
zyga-suseChipaca: so you could snap install that-huge-thing and pause it while needing the bandwidth14:10
Chipacazyga-suse: if you get 50% through a download and the network goes away so badly that the install actually aborts after retrying a few times, then no, the tempfile gets nuked14:10
zyga-suseChipaca: ah, I see; I think we will want to re-visit that over time14:10
zyga-suseChipaca: unless the user aborts I'd keep the file around and try until it works14:10
zyga-suse(knowing that the snap exists and can be pulled)14:11
Chipacazyga-suse: you're proposing that we have a cache14:11
zyga-susenot even a cache14:11
zyga-suseif I download a 5GB snap14:11
Chipacazyga-suse: I'm just saying, that thing behaves like a cache14:11
zyga-suseand it aborts because I'm offline for 5 minutes14:11
zyga-suseand it downloads it again14:11
Chipacazyga-suse: meaning it's Hard14:11
zyga-suseit's the (insert emoji that flips the table now)14:11
Chipacazyga-suse: https://github.com/dysfunc/ascii-emoji14:12
zyga-suseChipaca: again, not hard, not cache, just keep the file around for as long as the user doesn't abort14:12
Chipacazyga-suse: right14:12
zyga-suseChipaca: and also perhaps not /tmp but /var/tmp that's on /writable14:12
Chipacazyga-suse: the user didn't abort but the install failed14:12
zyga-suseChipaca: as 5GB snap is valid, even on devices with 512M memory14:12
Chipacazyga-suse: so it's a year later and you now have 87G of half-downloaded snaps14:13
Chipacazyga-suse: and you ran out of space14:13
zyga-suseChipaca: no other consumer system does that (steam, gog, appstore.{ios,android})14:13
zyga-suseChipaca: if I don't abort the download that's what I wanted14:13
zyga-suseChipaca: and I hope it will install them actually14:13
zyga-suseChipaca: *and* we might be able go just mv the file rather than use 2x space for a copy out of /tmp14:13
Chipacazyga-suse: do you understand how what you are describing is a cache, meaning it has all the problems of a cache that need addressing?14:13
Chipacazyga-suse: we don't download to tmp14:14
zyga-suseChipaca: I don't think it is a cache or that it has any problems. We should just not abort at all if network is bad but we got at least one byte and can keep re-trying.14:14
zyga-suseChipaca: but I assume to be ignorant about things you know better14:14
zyga-suseChipaca: ah, that's good. I was afraid we did (must be confusing with sideload)14:14
zyga-suseChipaca: cache is another thing (e.g. remove and reinstall)14:15
zyga-suseChipaca: but I'd argue that what I described is not a cache and is easier14:16
Chipacazyga-suse: maybe i misunderstood; you're saying we should keep retrying forever?14:16
zyga-suseChipaca: yes, and never unlink the file unless the user "snap aborts"14:17
zyga-suseChipaca: again, think of the behavior on huge snaps and non-ideal network conditions, or metered connections14:17
ogra_cyphermox, hey, thanks for the bind/unbind fix in netplan (it fixed the pi3 core image) ... one thing that struck me is that vendors that will build core images from their own BSP might hit that same issue (i guess it is pretty common that platform devices in SoCs do not support unbind) ... do you think we could make the code read a config file with a list of drivers that vendors could simply extend ?14:29
ogra_it would avoid that they have to wait for another netplan fix to land14:29
cyphermoxogra_: that's a good idea, can you please file a bug for it?14:30
ogra_will do14:30
ogra_cyphermox, bug 1706680 for you14:34
mupBug #1706680: add config file to list drivers that do not support unbind <nplan (Ubuntu):New> <https://launchpad.net/bugs/1706680>14:34
sergiusenstyhicks , jdstrand hey there, is there an interface which would allow lttng /dev nodes to be used?14:37
Chipacaniemeyer: hah!14:38
Chipacaniemeyer: I had most of a post to the services forum post written :-)14:38
niemeyerChipaca: Hopefully we even agreed unkowingly? :)14:39
niemeyerChipaca: Sorry, I've spent the last 25 minutes writing and deleting my own proposals.. :P14:39
Chipacaniemeyer: maybe i should post it anyway and then we can play "spot the differences"14:40
jdstrandsergiusens: not currently14:41
niemeyerSure, having more data won't hurt..14:41
Chipacaniemeyer: there ya go14:41
* ogra_ definitely likes niemeyer's proosal better because there are bars in it (it carries the subconcious promise of beer in it)14:42
ogra_*proposal14:42
sergiusensjdstrand: thanks, given that lttng is specifc to lttng can we update snappy-debug ?14:43
Chipacaogra_ walks into a bar14:43
Chipaca>clonk<14:43
* ogra_ grins14:43
VamsiHi, I don't seem to find info on error reporting and handling for snaps. Does anyone know where I could read about it?14:43
ChipacaVamsi: could you expand on what you mean?14:44
ChipacaVamsi: hi :-)14:44
VamsiChipaca: Hi14:44
VamsiChipaca: In case a snap fails to start or is behaving incorrectly, how is this conveyed to the user?14:45
ChipacaVamsi: currently it is not14:46
ChipacaVamsi: assuming that by "a snap" you mean a service inside a snap14:46
ogra_well, if you are lucky the developer added some info to the description ... which you can obtin with snap info14:47
Chipacaif the service fails to start entirely then the snap _should_ fail to install (but it's harder to detect than it should be, so we don't always catch that)14:47
Chipacaand the user can inspect the service status and its logs if things aren't working14:48
Chipacabut snapd itself doesn't tell the user14:48
* ogra_ read the above as "where to report bugs about specific snaps" ... (perhaps i misunderstood)14:48
Chipacaah, if it is indeed where to report bugs, snap info tells you14:48
Chipacathat's what the "contact" field is for14:49
Chipacabut the question was 'how was this conveyed to the user', not 'how does the user convey this to the snap author'14:49
ogra_yeah14:49
ogra_thus my comment14:49
ogra_(that i might have misunderstood)14:50
Chipacaogra_: too much walking into bars :-p14:50
ogra_:P14:50
ChipacaVamsi: why do you ask?14:52
zyga-suseChipaca: snappy, flatpak and appimage walk into a bar14:53
ogra_and snappy is the only one who has an interface to the barkeeper to order beers ;)14:53
Chipacazyga-suse: rox wonders what they did to not be invited14:54
zyga-suseogra_: flatpak needs a beer portal, one is coming in F28, appimage just grabs the beer and snappy needs an assertion for the beer to be connected14:55
ogra_dang14:56
VamsiChipaca: I was read on in the documentation that it was possible to revert back to the older version of a snap in case the update causes a problem. Additionally, the documentation says that the revert for a snap app happens when the user manually refreshs the snap. So if it is manual, how does the user or say a developer know what went wrong and where. The was the idea behind the question.14:57
VamsiChipaca: Okay I didn't realise that I typed so much :|14:58
ChipacaVamsi: "the revert for a snap happens when the user manually refreshes the snap" that's not quite right, not sure exactly what you understood14:59
Chipacabut14:59
ChipacaVamsi: if "snap install foo" fails, you do not end up with half-installed things (compare with "apt install")14:59
ChipacaVamsi: if snap install succeeded, and then a later refresh (whether automatic or manual) fails, that refresh is undone15:00
ogra_well15:00
ogra_and you *can* snap revert manually indeed :)15:00
ChipacaVamsi: "snap revert" is a different operation, where the user manually reverts to a previous version15:00
ChipacaVamsi: the user would initiate the revert because something broke, even though snapd didn't realise15:01
ChipacaVamsi: we want to additionally introduce health checks, where if a snap has a health check, and that helth check fails, the snap is automatically reverted15:02
ChipacaVamsi: but this last bit of work is not started15:02
ogra_we're such slackers!15:02
* Chipaca writes down "trick ogra_ into creating a slackware base snap"15:02
ogra_lol15:03
ogra_tarballs everywhere !15:03
Chipacaogra_: I'll take that as a "yes"15:06
ogra_heh15:07
VamsiChipaca: Thanks :-) The document said this: 'For application snaps the user does this with snap revert <snap>'. So I understood that the revert process for application snaps was manual.15:11
ChipacaVamsi: correct, revert is manual15:11
VamsiChipaca: Okay. In case of a failure of a snap. I.e., the snap stopped working or etc., are these logged automatically somewhere? If not, Is there a standardized way that a developer can implement such logging?15:14
VamsiChipaca: Lets say, I have a snap. A user reported an error in it's behavior or something like that. As the application's developer, is it possible for me to get logs from the user's device to understand what caused the problem?15:17
VamsiChipaca: I am trying to understand the diagnostic capabilities of snappy core.15:18
ChipacaVamsi: that's not currently a feature we offer, no15:20
VamsiChipaca: So it's safe to say that snappy core offers no diagnostic tools to remotely check the device for errors errors etc?15:24
ChipacaVamsi: It is safe to say that, today, that is correct.15:24
ChipacaVamsi: why do I get the impression that you should be talking with our commercial team and not with us15:25
VamsiChipaca: Thanks :-) Additionally, in one of your previous messages you said it is possible for the user to see a service's status and its logs. Where could I see this.15:26
VamsiChipaca: Oh I am in touch with them. They directed me to the some documentation. Questions I asked here were something that was not clear/available in the documentation :|15:27
ChipacaVamsi: today, the way to look at a service's status and logs is via systemctl and journalctl15:30
ChipacaVamsi: i'm working on giving a slightly nicer way to get that, because of user demand :-)15:30
ChipacaVamsi: wrt commercial, ok. I only mention it because it's one of the things that drive feature prioritization.15:32
Chipacaeg if there's a clear "we need <feature> so we can <zomg>", it's a lot easier to get to it sooner on the roadmap15:32
zyga-susemvo: any idea what just happened here:15:33
zyga-susehttps://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-xenial-snappy-dev-image/xenial/i386/s/snapd/20170726_141551_02f64@/log.gz15:33
zyga-suse- Run install hook of "core" snap if present (internal error: no registered handlers for hook "install")15:34
zyga-susevia https://github.com/snapcore/snapd/pull/339915:34
mupPR snapd#3399: many: add the interface command <Created by zyga> <https://github.com/snapcore/snapd/pull/3399>15:34
zyga-susemvo: I assume this is the new stable core15:34
VamsiChipaca: Got it. Right now I am only evalutaing Snappy core. Perhaps once I figure out what are the features that we need that are missing in snappy core, perhaps then would be good to raise requests for features.15:35
mvozyga-suse: autsch15:37
ChipacaVamsi: ok. Good luck!15:37
mvozyga-suse: a new core was released today15:37
zyga-suseright, I recall that15:37
zyga-suseand this didn't fail earlier15:37
mvozyga-suse: looks like the new hook stuff is not quite working15:37
zyga-suseand the branch is definitely unrelated to hooks15:37
mupPR snapcraft#1421 opened: Travis: Wait for apt/ dpkg lock <Created by kalikiana> <https://github.com/snapcore/snapcraft/pull/1421>15:37
zyga-suselooks like we broke something again15:38
zyga-susemaybe the old snapd setup hooks in one way15:38
zyga-suseand new snapd does it in a different way15:38
zyga-suse(just task names)15:38
zyga-suseso now we get this15:38
zyga-suseso maybe we need a .15 that adds re-adds the legacy hook task handlers15:38
zyga-suse(just a shoot in the dark)15:39
* zyga-suse is super sleepy and feels like actually sleeping now15:39
ogra_Vamsi, if you talk about core itself, the core and kernel snaps definitely have some self tests and auto-rollback features ... managed by the bootloader setup together with snapd ...15:40
ogra_this is different from application snaps though15:40
ogra_(it checks if after an upgrade a certain safe point inn thhe system boot was reached, if not, it will automatically go back to last kernel or core)15:41
fgimenezmvo: zyga-suse fwiw refresh from latest stable to the new core when it was in beta has been successfully tested, incuding revert, not sure what can be causing that test/upgrade/basic error15:46
mupPR snapcraft#1422 opened: tests: remove the old script to launch lxc <Created by elopio> <https://github.com/snapcore/snapcraft/pull/1422>15:49
Chipacaniemeyer: for your lunch break: https://thedailywtf.com/articles/the-nuclear-option15:51
niemeyerChipaca: Thanks! :)15:51
* Chipaca was closing tabs :-)15:52
mvozyga-suse, fgimenez: also funny that it only happens on i38615:52
fgimenezmvo: yep, and refresh from latest stable was also successfully tested on i386 (on all the archs for that matter :)15:56
mvofgimenez: yeah, never doubted this :) I'm just puzzled, one would assume it would fail everywhere at least15:57
fgimenezmvo: does it fail in more than one PR?15:57
mvofgimenez: I have not instigated that yet, sorry16:02
fgimenezmvo: np thanks, looking16:02
pedronisChipaca: +116:24
Chipacapedronis: grazie mille16:24
mupPR snapd#3399 closed: many: add the interface command <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/3399>16:53
* zyga-suse needs a second review for 361917:02
zyga-susemvo: I had a look at the branch for bases and I need to think about it; in theory all the snaps have a base and I'd rather have something uniform (I'm thinking about the extra bool flag)17:03
zyga-suseChipaca, pedronis ^ (maybe)? I could help some folks with their interface PRs if this lands17:07
jdstrandsergiusens_: what change are you thinking for snappy-debug?17:09
niemeyerChipaca: OMG.. that code17:18
zyga-susego generate xls plugin17:21
niemeyerOkay, I'm being pinged by Linode again.. will need to work on Spread to reduce the API calls so we don't get our tests blocked again17:31
niemeyerMoving to that now17:32
Pharaoh_Atemzyga-suse: yo17:33
zyga-suseo/17:34
Pharaoh_Atemzyga-suse: did you ever send an email to the selinux@ mailing list asking about how to do the stuff we need for snap confinement to work?17:34
zyga-suseno, I didn't :-(17:35
Pharaoh_Atemit was pointed out to me in #fedora-devel that no one has ever actually asked there17:35
Pharaoh_Atemso no one knows why snapd can't be plugged into selinux the same way it can be on apparmor17:35
zyga-suseshall we start that thread today?17:35
Pharaoh_Atemyes, hold on17:36
Pharaoh_Atemneed to sub to SELinux ML17:36
zyga-suseyeah, me too17:36
zyga-susePharaoh_Atem: this one?17:37
zyga-susehttps://www.redhat.com/mailman/listinfo/fedora-selinux-list17:37
tyhicksmjg's post in the snapcraft forum summarizes the problems quite well17:37
Pharaoh_Atemzyga-suse: no, the upstream one: https://www.nsa.gov/what-we-do/research/selinux/mailing-list.shtml17:38
* Chipaca EODs17:38
Pharaoh_Atemzyga-suse: though sending to fedora-selinux is also a good idea17:38
zyga-suseChipaca: noooo17:38
tyhicks(https://forum.snapcraft.io/t/selinux-interface-support/255)17:38
Pharaoh_Atemzyga-suse: I would send to both17:38
Pharaoh_Atemzyga-suse: hold on, the fedora one is this: http://lists.fedoraproject.org/archives/list/selinux@lists.fedoraproject.org/17:40
tyhickszyga-suse, Pharaoh_Atem: I think the better solution is to work towards getting the LSM stacking patches fully functional and upstream17:41
Pharaoh_Atemtyhicks: it won't matter17:41
Pharaoh_Atemdownstream, hardly anyone will do it17:41
Pharaoh_Atemit's just too much extra work17:41
Pharaoh_Atemmaintaining *one* security system is a lot of work as it is17:41
Pharaoh_Atemif you expect people to maintain two for just *one* application, it's not going to fly17:41
tyhicksit is far less work than attempting to write equivalent SELinux policy for interfaces17:41
tyhicksmany distros already have kernel and userspace support for multiple LSMs17:42
zyga-susetyhicks: I somewhat agree with Pharaoh_Atem here, I think that in Fedora/RHEL land specifically it would fly much better with native selinux support even if that is harder17:42
zyga-suse(because they support selinux and not apparmor even if it technically gets stacked)17:42
Pharaoh_Atemwe don't even have the apparmor userspace stuff packaged in Fedora17:43
pedroniszyga-suse: sorry, what was the "this" in your review request?  the PR before was merged17:43
tyhickszyga-suse: they don't need to support apparmor policy - they only need the tools available17:43
pedroniszyga-suse: before as in the logs here17:43
zyga-susepedronis: https://github.com/snapcore/snapd/pull/361917:44
mupPR snapd#3619: interfaces/builtin: reduce duplication and remove cruft in Sanitize{Plug,Slot} <Created by zyga> <https://github.com/snapcore/snapd/pull/3619>17:44
Pharaoh_Atemand unless zyga wants to add *that* to his plate of packages, it's unlikely to get in17:44
zyga-susepedronis: nothing fancy, just a small cleanup17:44
Pharaoh_Atemnothing says that apparmor userspace can't be packaged, but you need to convince the kernel team to enable it17:44
Pharaoh_Atemthey currently do not17:44
jdstrandtyhicks: technically, snapd could ship its own abstractions and parser there too17:44
* zyga-suse has stuff falling off his plate already17:44
tyhicksjdstrand: that's a very good point17:44
Pharaoh_Atemand all the things need to be compiled with apparmor support17:44
zyga-susejdstrand: technically, don't we already do that in core?17:44
zyga-susePharaoh_Atem: I subscribed to both though I didn't get a confirmation from the NSA one17:45
zyga-suse(maybe they need to login to all my machines to check first ;-)17:45
jdstrandzyga-suse: yes. things would need to be shuffled around to use the internal parser, but yes17:45
Pharaoh_Atemtyhicks: it's a humongous amount of work and coordination to get things through and enabled, even with no policy17:46
Pharaoh_Atemzyga-suse: I've not seen an confirmation email either17:46
Pharaoh_AtemI'm not sure it sends one...17:46
zyga-susePharaoh_Atem: while it may not be supported by fedora I think tyhicks' point is that it can all be done in snapd as long as the kernel cooperates17:47
zyga-susewhich is another question17:47
Pharaoh_Atemagain, convincing the fedora kernel team is another obstacle toward that17:47
Pharaoh_Atemunless you want to be "point man" for Fedora AppArmor, it's not something worth suggesting17:48
tyhicksPharaoh_Atem: what about all the technical limitations of attempting to write equivalent SELinux policy to match existing AppArmor policy? I feel like you're vastly ignoring the problems there17:48
zyga-susewell, I think we want to attempt both ways17:48
zyga-susetechnically LSM stacking is easier and feels better17:49
zyga-susebut socially it may be received less well17:49
zyga-suse"easier" as in just easier, not easy though17:49
Pharaoh_Atemtyhicks: I'm not17:49
Pharaoh_Atemboth are hard, but one involves working with a hell of a lot of other people17:49
jdstrandI don't doubt that some may push back, but lots of people want stacking-- this isn't just a snapd thing. lots of distros enable both selinux and apparmor (and other LSMs) in their kernels, but either do nothing with policy or pick one17:50
Pharaoh_AtemI think you underestimate how much coordination effort is actually required for getting even apparmor userspace up and going, even without policy17:50
tyhicksthey both do17:50
tyhicksit is just different groups of people :)17:50
jdstrandthere is a spectrum17:50
jdstrandPharaoh_Atem: as mentioned, that could ll be packaged within snapd if the distro doesn't care about it17:51
* zyga-suse things one thing is horribly missing; a good barrel of beer and all the key people in one room17:51
zyga-suseso that all the hard edges can be discussed17:51
Pharaoh_Atemjdstrand: you're still missing that systemd can't filter profile things17:51
Pharaoh_Atemthat needs linking into libapparmor17:51
Pharaoh_Atemlook, adding apparmor as a userspace package is *easy*17:51
jdstrandwe don't use systemd's apparmor support in snappy17:51
Pharaoh_Atemzyga-suse could propose it today, and I can have it added in right away17:52
jdstrandsnapd manages it all itself17:52
Pharaoh_Atemthat's not a big deal17:52
Pharaoh_Atemif zyga-suse put on his nicest outfit and the best words, he probably could sweet-talk Fedora kernel team into enabling apparmor in the kernel17:52
Pharaoh_Atemhonestly, I'm not worried about those things17:52
Pharaoh_Atemwhat I'm worried about is making sure that the apparmor stuff is usable17:53
Pharaoh_Atemaccording to the folks I've talked to, there are currently no efforts in stacking selinux and apparmor17:53
zyga-suse"I have the best words" doesn't sound like someone I want to be affiliated with, just look at my hair anyway17:53
tyhicksthat's not true17:53
jdstrandif people want full apparmor userspace, that's great and yes that would include the tools and systemd and policy and .... my point is that all that isnt strictly needed with snapd. only the kernel to have it compiled in. I suspect booting without it enabled wouldn't be terrible too-- snapd could mention changing the command line to make it work (at least until it proves itself)17:53
tyhickswe're (AppArmor upstream) working the author of the LSM stacking patch set17:54
zyga-susePharaoh_Atem: offtopic, boltron feels ... bolted ... on ... who names those things?17:54
Pharaoh_Atemzyga-suse: the Czech guys did17:54
tyhicksin fact, he is working on testing his patch set with the apparmor regression test suite: https://lists.ubuntu.com/archives/apparmor/2017-July/010909.html17:54
Pharaoh_Atemclearly, no sense for names17:54
Pharaoh_Atemjdstrand: look, if the kernel feature is enabled, there's literally no reason not to have apparmor in Fedora as userspace package17:55
Pharaoh_Atemit's probably easy for zyga to maintain as he works with you guys17:55
tyhicksthis is something that we're going to be discussing and working on between now and the Linux Security Summit, where there's a BOF discussion17:55
jdstrandPharaoh_Atem: I totally agree with that. In terms of steps and push back, etc, I'm just saying there are different options and paths17:55
zyga-suseit's hard as we have a hard time to keep focus on packaging _and_ upstream work17:55
Pharaoh_Atemand zyga-suse is friends with zbyszek, who is the fedora systemd maintainer :)17:56
Pharaoh_Atemso getting apparmor switched on in Fedora systemd is probably not going to be hard17:56
Pharaoh_Atemheck, for some reason, smack support is enabled17:56
jdstrandI'd love to see full blown apparmor support in fedora. I suspect some people might like it too. maybe that happens right away. maybe it doesn't. maybe having only snapd use it makes it more interseting to make it available in the distro17:56
zyga-suses/friends/I was friendly towards him and vice versa but we never met IRL/g17:56
zyga-susebut yeah ;)17:56
Pharaoh_AtemI wish AppArmor had better diagnostics17:57
tyhicksPharaoh_Atem: am I looking in the wrong place? http://pkgs.fedoraproject.org/cgit/rpms/kernel.git/tree/baseconfig/CONFIG_SECURITY_SMACK17:57
jdstrandanyway, I'm not advocating a particular path. I'm just mentioned some options17:57
jdstrandmentioning*17:57
Pharaoh_Atemtyhicks: I've never seen this before O.o17:57
* Pharaoh_Atem should read these things more often17:57
Pharaoh_Atemtyhicks: yeah, it's not enabled in the kernel17:57
tyhicksPharaoh_Atem: how are you seeing that smack is enabled?17:57
tyhicksok17:58
Pharaoh_Atemtyhicks: I mean it's enabled in systemd17:58
tyhicksah, I see17:58
Pharaoh_Atem[neal@yu-ohki ~]$ systemctl --version17:58
Pharaoh_Atemsystemd 23317:58
Pharaoh_Atem+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN default-hierarchy=hybrid17:58
zyga-suse-apparmor :'-(17:58
Pharaoh_Atemzyga-suse: I suspect if you packaged apparmor for fedora and got it in, zbyszek would be happy to enable it17:59
tyhicksI don't want to discourage you from engaging with SELinux upstream but I did want to point out that AppArmor upstream is going to be working with the greater LSM community to get LSM stacking into shape and widely available17:59
zyga-suseto be able to commit to that I'd have to become a full blown package maintainer and I have a lot of upstream work to be able to do that, I don't think it's realistic today17:59
Pharaoh_Atemzyga-suse: tyhicks and jdstrand will gleefully support your endeavor to spread the AppArmors :P18:00
tyhickswe're getting pretty off-topic here but I'll mention that opensuse's packaging for apparmor would probably be reusable18:02
Pharaoh_Atemtyhicks: nothing is offtopic in a channel with no topic :)18:03
tyhicks:)18:03
Pharaoh_Atembut yes, it most likely would be18:03
Pharaoh_Atemit does some dumb suse-y things, but it's generally okay18:03
* zyga-suse summons sysrich and gets popcorn18:03
Pharaoh_AtemAppArmor has also been on the wishlist for literally years: https://fedoraproject.org/wiki/Package_maintainers_wishlist?rd=PackageMaintainers/WishList#A-D18:04
Pharaoh_Atemtyhicks: I have my hands full working on the features I'm working on in Fedora now18:06
tyhicksPharaoh_Atem: I wasn't implying that you should do any work18:06
Pharaoh_Atembetween the pkgconf transition in f26 and the new debuginfo stuff in f27 and the core development work in mga7, I'm stretched quite thinly18:06
Pharaoh_Atemnevermind keeping up with snappy stuff :)18:07
tyhicksyeah, sounds like a lot18:07
Pharaoh_AtemI need to find someone interested in snappy stuff in mga to pull into this18:08
Pharaoh_AtemI can't juggle so many things :)18:08
zyga-susemore hands is always good18:09
zyga-suseif you know someone that would be a good fit please introduce such a person18:10
Pharaoh_AtemI actually do18:10
Pharaoh_AtemRemi Verschelde18:10
Pharaoh_AtemAkien18:10
Pharaoh_Atemhttps://twitter.com/akien18:10
Pharaoh_Atemhe's also one of the core developers of the Godot game engine18:10
Pharaoh_Atemzyga-suse: you should reach out to him with your best words :)18:13
* zyga-suse thinks about another trump joke 18:14
* zyga-suse has super slow network 18:15
zyga-suseI'm trying to follow him and I'll reach out as soon as my network recovers18:15
zyga-susefor now I'll resort to reading a book and trying to fall asleep again18:15
niemeyerI just deployed a new spread change that performs more caching to avoid hitting Linode so badly18:16
Pharaoh_Atemzyga-suse: you could email him instead if you want18:16
niemeyerPlease let me know if you see any issue18:16
niemeyers18:17
zyga-suseniemeyer: thanks! I assume locally installed spread should be updated as well18:17
zyga-suseniemeyer: how many requests were we making?18:17
zyga-susePharaoh_Atem: can you share his email address please?18:18
niemeyerniemeyer: Too many.. we've never tried to optimize away that because it was created with 2 or 5 instances in mind, rather than 20 or 3018:18
niemeyerzyga-suse: ^18:18
Pharaoh_Atemzyga-suse: done, sent via PM18:18
niemeyerzyga-suse: The Linode listing calls being the main offender, as they were done recurringly and per instance to check the power status18:18
niemeyerNow it performs a single list call for all instances, and caches the result.. so not linear anymore18:19
Pharaoh_Atemzyga-suse: feel free to cc me if you want18:22
niemeyerFolks, please update spread on your systems as well18:28
niemeyercachio_ ^18:28
cachio_niemeyer, ok18:28
=== sergiusens_ is now known as sergiusens
sergiusensjdstrand: today it tells you to adapts /dev/shm so that it is namespaced, but it is a common interface point for lttng so maybe suggest devmode until an interface exists18:45
mupPR snapcraft#1421 closed: ci: wait for apt/dpkg lock when setting lxd up <Created by kalikiana> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1421>18:53
niemeyerpedronis: Did the final review on Chipaca's point, which is actually just a +1 on your point regarding the app name splitting18:53
niemeyerpedronis: Since Chipaca is not around, LGTM on the PR assuming we fix that18:53
niemeyerpedronis: The reason the PR had to introduce an independent split function is precisely that it's introducing an independent understanding of how to split, which seems unnecessary18:54
niemeyer(and wrongish)18:54
niemeyerThis is about snapd#361418:55
mupPR snapd#3614: daemon, client, cmd/snap: implement "snap services" <Created by chipaca> <https://github.com/snapcore/snapd/pull/3614>18:55
mupPR snapcraft#1410 closed: tests: remove download timeout workaround <Created by elopio> <Closed by sergiusens> <https://github.com/snapcore/snapcraft/pull/1410>18:59
mupPR snapcraft#1423 opened: Revert "tests: workaround issue that causes failures to download core… <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/1423>18:59
mupPR snapd#3626 opened: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3626>19:03
jdstrandsergiusens: ack19:04
mupPR snapd#3626 closed: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <Closed by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3626>19:09
mupPR snapd#3627 opened: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3627>19:11
cachio_niemeyer, if you have a time for review this PR 362719:13
cachio_niemeyer, not sure why it shows 28 commits when I just did 219:14
niemeyerLooking19:16
niemeyercachio_: That's because you have a fork of master on your end with dozens of changes, some of which have been integrated19:19
niemeyercachio_: Create a new branch from master on your end, and then merge the patch from that branch on it, and it'll clean the PR up19:20
cachio_niemeyer, ok, thanks19:21
pedronisniemeyer: well afaiu  the code there wants use "foo" to always mean the snap,  and "foo.foo" to mean the app, not quite sure how to accomodate that and the idea that foo means "foo.foo"19:25
mupPR snapd#3627 closed: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <Closed by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3627>19:25
mupPR snapd#3628 opened: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3628>19:25
pedronisniemeyer: Chipaca: I fear it means probably the API is too dwimish for being an API19:27
pedronisniemeyer: is this bit of API convention/doc that is problematic:   +// Apps returns information about all matching apps. Each name can be19:28
pedronis +// either a snap or a snap.app.19:28
niemeyerOh no.. there we go again.. Chipaca will have a heart attack :)19:29
niemeyerpedronis: Hmm.. I think it may be okay, though19:30
niemeyerpedronis: We can use the foo.foo syntax to disambiguate, perhaps19:30
pedronisniemeyer: yes, exactly19:30
pedronisthat's why he need the different split though19:30
pedronisniemeyer: my point is more whether this bit should be part of the REST API (or there app vs snap should be more explicit) or just part of cmd/snap code19:31
niemeyerpedronis: Yeah, indeed19:31
mupPR snapd#3628 closed: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <Closed by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3628>19:32
niemeyerLet me check it again19:32
Chipacaniemeyer: ping19:32
mupPR snapd#3627 opened: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3627>19:33
niemeyerChipaca: I know!19:33
niemeyer:P19:33
Chipaca?19:33
niemeyerChipaca: Joking.. We were just discussing the PR and the comment above, seconds ago :)19:33
Chipacaah. missed it.19:33
niemeyerChipaca: Yeah, sorry, and no worries19:33
niemeyerChipaca: I know the issue with my suggestion.. trying to think through it19:34
Chipacaniemeyer: but i'm hear about the pr and the review and the comment19:34
niemeyer(pedronis pointed out)19:34
Chipaca"the issue" being that AFAIK the only place where foo.foo == foo is in /snap/bin?19:34
niemeyerChipaca: Well, every place we use the main split function that logic plays again19:35
pedronisChipaca: also snap run I think19:35
pedronisand lots of places internally19:35
niemeyerChipaca: So this is sort of a fundamental rule we've been trying to respect19:35
niemeyerChipaca: Given the term Apps(foo) I think the most natural would be for foo to be names of apps19:36
ChipacaFTR, the service units do not follow this19:36
niemeyerChipaca: So the app "foo" would IMO take precedence of the snap "foo"19:36
niemeyerChipaca: Yeah, but that's sort of an edge that we'll soon see fixed19:37
niemeyerChipaca: (that entry in the roadmap that we've been overlooking)19:37
Chipacain fact I don't see a place that usees snap.SplitSnapApp that isn't about /snap/bin, or aliases19:37
niemeyerChipaca: Where else do we talk about apps in the user interface?19:39
niemeyerChipaca: Ah, and look at JoinSnapApp as well19:40
niemeyerChipaca: This is the complement of Split19:41
Chipacasigh19:42
Chipacai don't see it being relevant for services :-(19:42
Chipacai don't get why it's so fundamental all of a sudden19:42
Chipacabut, it's past my eod. i'll leave you to it.19:42
Chipacattfn!19:42
niemeyerChipaca: The point is that it's not all of a sudden..19:42
Chipaca19:42
niemeyerChipaca: Wait..19:42
Chipacaniemeyer: but it is?19:42
pedronisDWIMish apis are strange19:42
pedronisI think we had related problems with aliases19:43
zyga-suseDWIM?19:43
pedronisand had to think a bit19:43
pedroniszyga-suse: do-what-I-mean19:43
niemeyerChipaca: No, we do that for apps for quite a while, and services are apps, as we've been going through a few times19:43
zyga-suseaha19:43
zyga-susegcc --dwim would be a nice feature19:44
niemeyerChipaca: But, let's just try to fix this somehow.. hmm19:44
Chipacaif the veredict is "it's always app names, never snap names", that's easy to do19:46
Chipacacompletion will be there, so users can always use alt-*19:46
niemeyerChipaca: Problem with that is that the most useful outcome for that specific command is that it's always snap names19:46
Chipacaof course most users don't know about alt-* ¯\_(ツ)_/¯19:46
niemeyerChipaca: Maybe we should just split those apart19:46
mupPR snapd#3629 opened: tests: fix refresh tests not stopping fake store for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3629>19:47
niemeyerChipaca: That removes the ambiguity19:47
niemeyerYeah, I think that's the most sane19:47
Chipacaniemeyer: io19:47
niemeyerChipaca: Two different parameters.. instead of names, "apps" and "snaps", on the API19:47
Chipacaniemeyer: i'm not sure if you're agreeing with yourself or with me, there19:47
Chipacaniemeyer: i don't understand how that helps19:47
mupPR snapd#3627 closed: tests: fix refresh task not stopping fake store for fedora <Created by sergiocazzolato> <Closed by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3627>19:48
cachio_niemeyer, finally the PR to review is 362919:48
niemeyerChipaca: apps resolves _only_ to apps, and snaps resolves _only_ to snaps (returning the set of all apps in that snap)19:48
cachio_niemeyer, it is fixed now19:48
Chipacayes but the user doesn't talk to the api19:48
niemeyerChipaca: Then, on the CLI, let's accept snap names only19:48
niemeyerChipaca: Or, actually.. we can still accept both.. one sec19:49
mupPR snapcraft#1408 closed: lxd: Stop setting $HOME in containers <Created by kalikiana> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1408>19:50
niemeyerChipaca: Yeah, okay: if we receive "foo" we handle it as a snap name.. if we receive "foo.bar" we handle it as an app name19:50
niemeyerChipaca: Calling the respective APIs19:50
Chipacawhen you say "calling the respective APIs"19:51
niemeyerChipaca: The effect is pretty much the same as your current PR.. only difference is that the API becomes unambiguous19:51
niemeyerI guess it doesn't matter much..19:53
niemeyerWe can always introduce the new parameters with the new meanings..19:54
niemeyerChipaca: Go rest19:54
niemeyerChipaca: PR LGTM once tests pass19:54
ChipacaPR has conflicts, and tests fail I assume because of the core release19:55
Chipacawill fix in the morning19:55
Chipacag'night19:55
* zyga-suse hugs Chipaca19:55
* Chipaca hugs zyga-suse back19:55
zyga-susehave a good rest man19:55
Chipacammm19:55
Chipacaneed a walk first i think19:55
Chipaca\o19:55
pedronisniemeyer: yes, having separate snaps vs apps seems similar to what we did with aliases I think19:56
niemeyerpedronis: Yeah, I think that's what we need19:56
niemeyerpedronis: Let's please make sure that the current parameters is "names" instead of "apps"19:57
niemeyerpedronis: So we clear the path for the unambiguous version of those19:58
niemeyerapps should be apps, not snaps19:58
pedronisah, yes, it's apps19:58
pedronisatm19:58
pedronisso it need some change anyway :/, we'll see what Chipaca thinks19:58
niemeyerpedronis: Let's just call it "names".. makes no difference for this PR20:00
niemeyerpedronis: We can keep support for "names" later as the magic matching, as is now, and have "snaps" and "apps" with the unambiguous versions of those20:01
pedronisjust pointing out that the PR needs a change20:01
niemeyerYeah, it needs a change anyway20:01
pedronisa small one20:01
niemeyer(to solve conflicts)20:01
pedronisah, that too20:01
pedronisok20:01
* zyga-suse read https://lwn.net/Articles/728699/20:03
niemeyercachio_: Do you have the new PR?20:03
niemeyerzyga-suse: Paywal20:03
niemeyerl20:03
zyga-suseniemeyer: I think you have a subscription20:04
zyga-suseniemeyer: but I can give you a "free" link in a PM if you want one20:04
niemeyerzyga-suse: Do I?  Either way, most people here don't I'd assume20:05
zyga-suseniemeyer: everyone at Canonical does20:05
zyga-suseI PMd you with a "freel" link20:05
cachio_niemeyer, yes20:18
cachio_niemeyer, I had to recreate the local master20:19
cachio_niemeyer, and make cherry-pick to fix it20:19
niemeyercachio_: link?20:19
cachio_niemeyer, https://github.com/snapcore/snapd/pull/362920:21
mupPR snapd#3629: tests: fix refresh tests not stopping fake store for fedora <Created by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3629>20:21
dpb1hey all --- $ simplenote20:21
dpb1cannot stat /var/lib/snapd/seccomp/bpf: No such file or directory20:21
dpb1something missing with apparmor?20:22
zyga-susedpb1: hey, what is your "snap version"?20:24
zyga-susethat looks like a bug in snapd20:24
zyga-susedpb1: (it's actually seccomp, not apparmor this time)20:24
dpb1sec20:25
dpb1snap    2.26.1420:25
dpb1(xenial)20:25
dpb1ah, snapd update is waiting20:25
zyga-suseis this in a container?20:26
niemeyercachio_: I'm finding these prepare and restore in the refresh test pretty hard to follow20:26
niemeyercachio_: There are so many exit points.. pretty hard to track what is actually happening there20:26
dpb1zyga-suse: no, it's a desktop workstation20:26
dpb1I'm upgrading snapd and will try again20:26
zyga-susedpb1: can you open a topic on forum.snapcraft.io please?20:26
dpb1zyga-suse: sure20:27
zyga-susedpb1: add things like "snap version" (the full output), "snap changes" and the name of the snap that you saw this with20:27
niemeyercachio_: Your changes are minor, so if they fix the problem, LGTM20:27
niemeyercachio_: But it would be good to clean that up at some point20:27
zyga-susedpb1: not sure what's wrong yet, I mean, I know but not sure why :)20:27
dpb1zyga-suse: looks like it's still happening after the upgrade, so I will open that post20:27
cachio_niemeyer, but I already did it20:27
zyga-susedpb1: ack20:28
niemeyercachio_: ?20:28
zyga-susewhen did it break on you?20:28
cachio_niemeyer, the clean up for the commits20:28
zyga-susejust now?20:28
zyga-suse(we released a new stable core snap so you likely updated to it)20:28
zyga-susedpb1: paste the link to the forum once you have that topic up20:29
niemeyercachio_: Did you read the messages above? :)20:29
cachio_niemeyer, no, now reading20:29
zyga-suseniemeyer: can you squeeze a quick review of https://github.com/snapcore/snapd/pull/3619 ?20:29
mupPR snapd#3619: interfaces/builtin: reduce duplication and remove cruft in Sanitize{Plug,Slot} <Created by zyga> <https://github.com/snapcore/snapd/pull/3619>20:29
* zyga-suse is 3/4 through "ponyo" but then needs to put kids to bed (including any extra food and cleaning they may need)20:30
cachio_niemeyer, yes, agree with you, there are so many if20:30
cachio_niemeyer, as part of this branch I just fixed the issue20:30
dpb1zyga-suse: https://forum.snapcraft.io/t/simplenote-snap-cannot-stat-var-lib-snapd-seccomp-bpf-no-such-file-or-directory/144620:30
zyga-susethanks!20:30
niemeyercachio_: Not just that, but the break outs via exit makes it all hard to follow20:30
zyga-suseha20:31
cachio_niemeyer, ok, I can work in another branch to simplify that20:31
zyga-susesnap    2.26.1420:31
zyga-susesnapd   2.2520:31
zyga-susethis is very very wrong!20:31
zyga-susecan you add your journal logs? (like journalctl -u snapd)20:31
niemeyercachio_: Not super urgent, but worth an item in the backlog20:31
cachio_niemeyer, in fact, the prepare/restore is repeated in 7 tests20:31
cachio_niemeyer, prepare-image-grub, refresh-all-undo, refresh-all, refresh-devmode, refresh, revert-devmode and revert20:32
zyga-susedpb1: let's move the discussion to the forum20:32
cachio_so, 1 fix would work for all of them20:33
dpb1zyga-suse: adding20:33
dpb1zyga-suse: and ok20:33
dpb1:)20:33
cachio_niemeyer, it goes to my queue20:35
zyga-susedpb1: more questions posted20:36
dpb1zyga-suse: ok, I'm doing an apt-get dist-upgrade right now as I'm pretty out of date20:37
zyga-susedpb1: which version were you on?20:37
dpb1zyga-suse: I'll post back results to the forum in a sec20:37
zyga-susethanks!20:37
mupBug #1681833 changed: Devmode Edge Snap not automatically updating <Snappy:Invalid> <https://launchpad.net/bugs/1681833>20:40
mupPR snapcraft#1422 closed: ci: remove the old script to run with lxc <Created by elopio> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1422>20:41
niemeyercachio_: Thanks!20:41
* zyga-suse afk for some time20:41
jdstrandroadmr: hey, I added another check to the review tools. can you sync r892? this isn't urgent20:46
roadmrjdstrand: sure thing!20:46
jdstrandroadmr: thanks!20:46
=== cachio_ is now known as cachio_afk
mupPR snapcraft#1373 closed: snapcraft.yaml: add support for reload-command and completer directives <Created by bloodearnest> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1373>20:56
=== zarcade_droid is now known as ^arcade_droid
* zyga-suse EODs21:35
mupPR snapcraft#1416 closed: core: a clean command should clean <Created by sergiusens> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1416>22:08
mupPR snapcraft#1423 closed: Revert "tests: workaround issue that causes failures to download core… <Created by sergiusens> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1423>22:11
=== cachio_afk is now known as cachio
mupPR snapcraft#1418 closed: nodejs plugin: copy the content of out of tree symlinks <Created by sergiusens> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/1418>22:38
mupPR snapd#3629 closed: tests: fix refresh tests not stopping fake store for fedora <Created by sergiocazzolato> <Merged by sergiocazzolato> <https://github.com/snapcore/snapd/pull/3629>23:05
cachioniemeyer, 2017-07-26 23:17:27 Cannot allocate linode:ubuntu-14.04-64: backend "linode" missing Linode API key23:19
cachioniemeyer, all the builds failing because of that23:19
cachioniemeyer, example: https://travis-ci.org/snapcore/snapd/builds/257940281?utm_source=email&utm_medium=notification23:20
niemeyercachio: Thanks, will have a look later today23:20
cachioniemeyer, quick question, any idea is snapd will be uploaded to the zypper repository?23:23
niemeyercachio: I don't really know23:27
cachioniemeyer, ok, np23:27

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