/srv/irclogs.ubuntu.com/2019/02/06/#snappy.txt

mupPR snapd#6477 closed: cmd/snap, overlord/snapstate: silently ignore classic flag when a snap is strictly confined <Created by bboozzoo> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6477>05:35
mupPR snapd#6479 opened: cmd/snap, overlord/snapstate: silently ignore classic flag when a snap is strictly confined (2.37) <Created by mvo5> <https://github.com/snapcore/snapd/pull/6479>05:40
mborzeckimorning06:10
=== phoenix_firebrd is now known as murthy
mborzeckimvo: morning08:05
mvomborzecki: hey, good morning08:05
mborzeckimvo: there was bit of trouble with osx builds yday, fortunately john reminded me of how yaml is super ambiguous about numerical vs string representation08:06
mvomborzecki: yeah, I saw that, thank you!08:06
mvomborzecki: I updated the 2.37 version now as well and removed esc.bold08:07
mborzeckimvo: i think we could cherry-pick the path warning for .2 too08:07
mborzeckioh, ok08:07
mvomborzecki: yeah, we could, probably won't hurt either way08:07
=== pstolowski|afk is now known as pstolowski
pstolowskimornings08:12
mborzeckipstolowski: hey08:13
pedronishello08:16
mvohey pstolowski and pedronis08:23
mborzeckihey pedronis08:23
mborzeckiwe're down to 43 PRs, not bad08:23
mvoindeed and 6479 will land as soon as its green so 42 effectively08:24
mupPR snapd#6380 closed: interfaces: add more permissions to network-manager slot <Created by alfonsosanchezbeato> <Closed by pedronis> <https://github.com/snapcore/snapd/pull/6380>08:29
mupPR snapd#5915 opened: interfaces/network-setup-control: allow calling netplan generate/apply <⛔ Blocked> <Created by ogra1> <https://github.com/snapcore/snapd/pull/5915>08:30
* dot-tobias waves hello09:03
mupPR snapd#6479 closed: cmd/snap, overlord/snapstate: silently ignore classic flag when a snap is strictly confined (2.37) <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/6479>09:07
Saviqis there a way to force "prune" of old snap revisions?09:09
pedronisSaviq: in which sense?  we keep a fixed number of them per snap09:16
ChipacaSaviq: snap list --all, and some scripting09:17
ChipacaSaviq: also, you can configure how many to keep, down to a minimum of 209:17
ChipacaSaviq: https://superuser.com/questions/1310825/how-to-remove-old-version-of-installed-snaps09:18
Saviqright, that! thanks09:22
mupPR snapd#6480 opened: release: 2.37.2 <Created by mvo5> <https://github.com/snapcore/snapd/pull/6480>09:29
zygahey09:36
zygaI'm just popping in briefly now09:36
zygamvo: have you seen https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1814141 ?09:36
mupBug #1814141: fail to run any snap after snapd refresh, reinstalling snapd from the archive is a temporary fix <snapd (Ubuntu):Confirmed> <https://launchpad.net/bugs/1814141>09:36
mvozyga: I have not, that sounds alarming09:37
mvozyga: the second user who is affected is using 4.15 so it looks like its not disco only09:38
zygayeah but it's not widespread either, I haven't seen this on any of my machines09:38
zygaI bet we're missing something09:38
mvoxnox: re 1814141> any denials in dmesg? (cc zyga)09:38
mvozyga: yeah09:39
zygaoh, I didn't notice who reported it!09:39
zygamvo: there's a new version of apparmor around 2.1309:43
zygamvo: wonder if that is related09:43
zygamvo: but it doesn't feel like just apparmor, we would die on many other things before09:43
pedroniswell, the error is very specific09:43
pedroniscannot read mount namespace identifier of pid 109:44
pedroniswhere do we do that?09:44
zygawe check if we are in pid-1 mount namespace09:44
zygabut09:45
zygawe do that after we check if we are confined or not09:45
zygaso either we are confined but the profile is no longer sufficient09:45
zygaor we are not confined at all (apparmor disabled on boot) but we get denied somehow?09:45
zygaperhaps this is a container so outer container profile is too strict09:45
pedronisor we lost the setuid bits?09:46
popeyChipaca: snap has "pack" - should it not also have an 'unpack'? Which does whatever unsquashfs does?09:46
zygapedronis: I think we need to get more information from xnox09:47
Chipacapopey: nobody's asked for it :-)09:47
pedronisthere is nothing really special into unpacking a snap09:47
pedroniszyga: mvo: also we do run tests on disco, no?09:49
pedronisbut as root?09:49
zygapedronis: no, we don't09:50
zygapedronis: not in typical travis-spread run09:50
mvopedronis: we should start that soon, when sergio is back09:50
zygapedronis: we run many things as root but a single test running as an user would pick this up09:50
zyga(if it was totally broken)09:50
mvoI think we have some tests that run snaps as user09:51
pedronisok09:52
pedronisanyway we need more info09:52
mvoyes, at least in the smoke suite some interface tests run as user we should probably add a very simple explict one still09:52
* mvo does that09:52
zygamvo: fun idea: run prepare/restore as root, run execute as non-root09:53
mupPR snapd#6481 opened: tests: run test snap as user in the smoke test <Simple 😃> <Created by mvo5> <https://github.com/snapcore/snapd/pull/6481>10:10
=== murthy is now known as phoenix_firebrd_
mvozyga: hm, interessting idea10:11
Chipacapedronis: thank you for the review10:16
pstolowskimvo: will you have time to take a look at https://github.com/snapcore/snapd/pull/6322 (after release stuff is over)?10:20
mupPR #6322: overlord/hookstate: apply pending transaction changes onto temporary configuration for snapctl get <Complex> <Created by stolowski> <https://github.com/snapcore/snapd/pull/6322>10:20
mvopstolowski: yeah, sounds like something for later today or tomorrow (assuming 1814141 isn't a new fire :/)10:23
pstolowskiuhm10:28
mborzeckiarch package updated10:43
mvomborzecki: \o/10:43
mvopstolowski: we have a new beta 2.37.2 - if you still have the rpi around, helping with the validation would be most welcome, I created a trello card with the individual tasks10:47
pstolowskimvo: sure, will do10:48
pedronisChipaca: hi, did you see my ping about doing a review pass on 6079 given you reviewed some of the prereq10:50
Chipacapedronis: I did not10:55
Chipacapedronis: on it now10:55
pedronisChipaca: thank you10:55
=== phoenix_firebrd_ is now known as murthy
Chipacagrah, we're being inconsistent with our help strings again :-(11:23
pedronisChipaca: can't we write tests about some of the rules? or is too much NLP?11:25
Chipacapedronis: we do have some tests11:25
Chipacabut apparently not one for this :-)11:25
Chipacawhich makes me think maybe we didn't discuss & agree on it11:25
pedronisChipaca: what is about?11:27
pedronisChipaca: I mean, what more we should be consistent about and aren't ?11:31
Chipacapedronis: sorry didn't see your q11:31
Chipacapedronis: see "snap list --help"11:31
Chipacapedronis: some options' description ends with a period, some don't11:32
pedronisAh11:32
Chipacait's silly but it irks :-)11:32
pedronisChipaca: what is your preference?11:33
Chipacapedronis: with11:34
Chipacabah, in an ideal world with unicorns and flying cars and no climate change, all but the last option description ends with a ;, and the last one with a .11:35
pedronisChipaca:  do we more with or more without11:35
mupPR snapcraft#2455 closed: cli: retrieve error data from provider <Created by cmatsuoka> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/2455>11:35
Chipaca(fun fact: we'd have to i18n the ;)11:35
Chipacapedronis: dunno, i'll look into this later11:35
Chipacain the middle of the 'connections' pr11:35
Chipacamborzecki: ping11:35
pedronisChipaca: I don't the whole constute a sentence and there is scansion in other ways11:36
mborzeckiChipaca: pong11:36
pedronisChipaca: so I don't have a strong opinion11:36
Chipacapedronis: you a verb there11:36
pedronisChipaca: oops, I don't think the whole of options constitue a sentence11:36
Chipacamborzecki: if I disconnect all the connections of a snap, 'snap connections' doesn't notice11:36
Chipacamborzecki: wondering if I'm holding it wrong11:37
mborzeckiChipaca: hmm11:37
=== murthy is now known as phoenix_firebrd_
Chipacabah, "doesn't notice", that's not quite true11:37
pedronisChipaca: fwiw, I'm slightly in favor of without myself ... but I'm interested whether we tended to do one or the other as well11:37
pedronisas I said no very strong opinion here, I do agree we shouldn't do both tough11:37
pedronisthat is just sloppy11:38
Chipacathe difference is just very subtle11:38
Chipacapedronis: same here11:38
mborzeckiChipaca: doesn't notice how?11:38
Chipacamborzecki: sorry, it does, it's just very subtle11:39
Chipacathis is home, when you disconnect it:11:39
Chipacaicdiff:home             :home            home             disconnected,manual11:39
Chipacasuper clear it's disconnected11:39
Chipacathis is personal-files, when you disconnect it:11:39
Chipacaicdiff:gitconfig        -      personal-files   -11:39
pedroniswhy the difference?11:40
mborzeckiChipaca: right, there is no slot, so no connection, we could show 'disconnected' in the notes column to make it clear11:40
=== phoenix_firebrd_ is now known as murthy
Chipacamborzecki: but home does show the slot it would connect to when disconnected11:41
Chipacawhy are these so different when they're only different in their autoconnection11:41
Chipacaand that's just an assertion away11:41
Chipacaalso, silly question, shouldn't removing a snap reset its connections?11:42
Chipacaif I disconnect something, remove the snap, and then install the snap, shouldn't it have the default connections connected?11:42
mborzeckiChipaca: afaik we keep the undersired conenctions in case you install it again11:42
Chipacahow do I tell it to connect that which it would've connected?11:43
mborzeckiChipaca: explicitly with snap connect11:43
Chipacamborzecki: but that leaves it manually connected11:43
Chipacaicdiff:home             :home  home             manual11:44
mborzeckiChipaca: yes, because it's a manual connection now11:44
mborzeckiChipaca: afaiu there's no going back to the intial state now11:45
Chipacaso how do i reset it to not be manual?11:45
Chipaca:-(11:45
mborzeckiChipaca: so the difference in presentation, what about showing (dis|un)connected in the notes column when there was no slot for a plug?11:46
Chipacamborzecki: what does --all do when you specify a snap?11:46
Chipacamborzecki: +1 to show disconnected when it's disconnected11:47
mborzeckiChipaca: --all is quite useless when you name a snap unfortunately, but i didn't error out there11:47
mborzeckiChipaca: we're back at https://forum.snapcraft.io/t/rfc-snap-connections-command/4296/5 with parameters and presentation11:48
Chipacamborzecki: playing with it "for real" always iterates these things11:49
mborzeckiChipaca: mhm11:50
Chipacamborzecki: some more comments on the PR itself11:51
mborzeckiChipaca: thanks!11:51
Chipacamborzecki: https://i.imgur.com/9s6nQG4.png ?11:58
Chipaca(that is: dim repeated snap names?)11:58
mborzeckiChipaca: fancy11:59
Chipacahm, i should add a 'dim' property to escapes, separately11:59
Chipacamborzecki: don't get me wrong the pr looks good12:01
Chipacamborzecki: i'm just wanting to be super nitpicky about ux because we got it wrong three times already :-)12:01
mborzeckihahah :)12:02
mupPR snapd#6482 opened: [RFC] cmd/snap: make 'snap list' show disabled snaps dimmed <Created by chipaca> <https://github.com/snapcore/snapd/pull/6482>12:23
* Chipaca had his fun, and now goes for lunch12:23
jdstrandmvo, zyga: fyi, I'm going to start looking at apparmor 2.13 for disco soon (assuming I can ever get away from things that keep preempting it :\)12:48
zygaack12:51
zygajdstrand: suse has it now12:52
jdstrandso does Debian12:52
zygayes, I think I saw it in sid as well12:56
pedronisChipaca: thanks for #6356,  a few small comments still12:56
mupPR #6356: overlord/snapstate: during refresh, re-refresh on epoch bump <Created by chipaca> <https://github.com/snapcore/snapd/pull/6356>12:56
=== ricab is now known as ricab|lunch
zygamvo: fedora builds under way,  I will keep you posted, going back to bed :/13:00
roadmrzyga: bed? are you sick... oh wait I know why you're sleep deprived! hang in there!13:02
zygaroadmr: yeah, sick13:02
roadmroh ouch :( get better, zyga13:02
zygathank you :)13:02
zygajdstrand: can you look at https://launchpadlibrarian.net/409976796/journalctl__grep_DENIED__tail.txt13:19
zygathis is from https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/181414113:20
mupBug #1814141: fail to run any snap after snapd refresh, reinstalling snapd from the archive is a temporary fix <snapd (Ubuntu):Confirmed> <https://launchpad.net/bugs/1814141>13:20
zygajdstrand, mvo: I added a hypothesis to that bug report13:23
pstolowskijezz pi3 tests are soo sloow, 195/262 and it's already over 3h13:27
zygamborzecki: ping13:46
=== ricab|lunch is now known as ricab
Son_Gokuniemeyer, mvo, Chipaca, zyga, mborzecki: so snappy variant is now a thing in fedora-release: https://src.fedoraproject.org/rpms/fedora-release/c/f171adca021ec0a2c599ce7c87f841c7face5f69?branch=master14:27
Son_Goku:D14:27
Chipacawoop woop :-)14:28
mborzeckiSon_Goku: nice!14:28
zygathank you, that's a great milestone!14:28
Son_Gokunow I just need to simplify and rework my tool for building the base snap14:28
ChipacaSon_Goku: a SMOP14:29
Chipaca:-)14:29
Son_Goku?14:29
Son_Gokuhaha14:30
Son_Gokuindeed it is14:30
niemeyerSon_Goku: Woo, nice!14:31
Son_Gokunow I just need snapcraft to know how to consume fedora content using dnf14:31
mvoSon_Goku: woah, amazing!14:31
* mvo hugs Son_Goku 14:31
Son_Goku😊14:32
Son_Gokuniemeyer, do you think you could see if snapcraft folks would prioritize integrating support for dnf as a backend as an alternative to apt?14:32
Son_GokuI'm fairly confident by now that I'll have fedora releng pushing official base snap stuff for fedora 3014:33
Son_GokuI just need to figure out _what_ should be in it :P14:33
Chipacasergiusens: ^14:34
niemeyerSon_Goku: It seems reasonably easy.. not sure if the snapcraft folks (e.g. Sergio :-) would do that first, or if it might be easier to just contribute an initial patch that abstracts the package management away14:36
Son_GokuI did write a skeleton patch to separate the backend from the interface two years ago14:36
niemeyerSon_Goku: If nothing else, that would make it easier to discuss the design14:36
Son_GokuI'll need to check how much of that is needed now with snapcraft 3.014:36
Son_Gokusure14:37
niemeyerSon_Goku: It probably hasn't changed much, and it should now also be easier to integrate it nicely since we have proper base (IOW, multi image) support14:37
Son_Gokuright14:37
Son_Gokuniemeyer, part of this is that if there are problems with DNF interfaces/APIs, we can start poking the DNF team to look at fixing them14:37
Son_Gokuif we can't fix them ourselves, that is14:37
Son_Gokuas a package manager developer, you better than anyone else can understand how "weird" snapcraft's use-case is14:38
niemeyerSon_Goku: Once you have a better idea of how this should work, feel free to schedule (or ask to) a meeting with you, sergiusens, cmatsuoka, pedronis, and myself14:38
Son_Gokuwill do, though I can't say I know who cmatsuoka is?14:38
niemeyerHe's hanging here.. Claudio Matsuoka.. he's recently joined the team and will be working on snapcraft in the next few weeks at least14:39
Son_Gokunice14:39
Son_Gokuwell, for the moment, I'm focused on getting the base snap work done14:39
Son_Gokubut it's something that's on my infinitely long TODO :)14:40
jdstrandpedronis: hey, I'm looking at https://github.com/snapcore/snapd/blob/master/interfaces/policy/policy.go#L9814:43
jdstrandpedronis: meh, nm for the moment14:44
jdstrandpedronis: no, actually, that function is checking the slots (snap decl, then base) then checking the plugs (snap decl, then base)14:45
pedronisjdstrand: sorry, not following what you are pointing to14:46
jdstrandpedronis: such that, if there is an error (aka, aiui, something that would prevent installation), then something in the slots that prevented installation would preempt something in the plugs that might allow it14:47
jdstrandpedronis: checkSlot will look at snap then base14:47
pedronisjdstrand: that is correct14:47
pedronisslots and plugs are orthogonal at that level14:47
pedronisit's not like connections14:47
pedronisyou cannot unblock installing a slot14:48
jdstrandI was expecting the logic to be different14:48
pedronisby telling something about plugs14:48
jdstrandI see14:48
pedronisthat wouldn't make sense14:48
pedronisjdstrand: I mean that logic is correct and doing otherwise feels like would be wrong security wise14:50
jdstrandpedronis: ok. basically, I'm rewriting the snap decl checks in the review tools to use the same procedure as snapd. I chose installation since it was before connection in the file, but it has a different algorithm that I don't need to worry about. thanks for clearing that :)14:50
pedronisjdstrand: but I can confirm, connection checks and installation checks are very different14:51
pedronisjdstrand: for connection is about can this plug be connected to that slot, but sides have a voice14:52
* jdstrand nods14:52
pedronisjdstrand: for installation, is can I install a snap sporting a plug of this interface, can I instal a snap sporting this slot?  and plug and slot of the same interface on a snap are really unrelated for this14:53
jdstrandyeah14:53
jdstrandthat isn't expressed in the spec afaics, so that would be another point to finetune14:53
jdstrandok, thanks! that reminder helps a lot14:54
pstolowskimvo: when the beta validation test says "(for snapd promotion)", does it mean anything for the test?14:56
cmatsuokaSon_Goku: looking at how dpkg support was implemented, adding support to dnf/rpm shouldn't be too hard15:04
mvopstolowski: its just a reminder for myself15:04
mvopstolowski: this means this particular test is used to test the snapd snap15:05
mvopstolowski: the other tests are about the "core" snap15:05
Saviqhey, does `snap` have a way to wait for snapd to be ready?15:05
mborzeckiSon_Goku: posted karma for EPEL update15:05
Son_Gokucmatsuoka, I already contributed support to dump rpms a couple of years ago15:05
mvopstolowski: so in theory we could release core once all tests are done and later snapd (once those tests are done)15:05
mvopstolowski: does that make sense?15:05
Son_Gokucmatsuoka, it's just that adding proper support for an rpm distro as a repo source was really hard15:05
cmatsuokaSon_Goku: it would certainly require a lot of tests and experimentation after the basic support is in place15:08
cmatsuokaSon_Goku: what were the main problems you found back then?15:08
pstolowskimvo: hmm, kind of; i don't know how to run "beta validation core18 - fresh install pi3 (for snapd promotion)" then per sergio's instructions15:08
Son_Gokucmatsuoka, well, back then, I couldn't figure out how to make the code do the right thing15:09
Son_Gokubecause snapcraft didn't know bases15:09
pstolowskimvo: sounds like it's more than just installing beta of core18 on pi3 and running the tests with dev_snapd_pi_1815:10
cmatsuokaSon_Goku: oh I see. it should be easier now :)15:10
Son_Gokuand also, snapcraft goes back and forth between in chroot and out of chroot15:10
mvopstolowski: that should be enough, use the fresh image of UC18 generator with the validator thing and run the dev_snapd_pi_1815:10
mvopstolowski: that should be ok15:10
Son_Gokuand one other problem is that the package manager likes to record its stuff in the databases in /var/lib/rpm and /var/lib/dnf15:10
pstolowskimvo: allright15:10
pstolowskimvo: thanks15:10
Son_Gokuand we _need_ that information to be writable during snap build time15:11
Son_Gokuor rather $SNAP/var/lib/rpm and $SNAP/var/lib/dnf15:11
Son_Gokuwe can obviously not include them on the layered snap, but the way the package manager works requires that15:12
Son_Gokuand of course, figuring out how to block "updating" base libraries15:12
Son_Gokuthe last part, I have an idea for, but the others I don't15:12
cmatsuokaSon_Goku: so now you could theoretically use a fedora base in the build provider, install all the packages you need there during the snap build15:15
Son_Gokuright15:15
cmatsuokathe build provider being a multipass vm15:15
Son_Gokuoh right15:15
Son_Gokuwe don't have multipass in Fedora yet...15:15
cmatsuokait's installabe as a snap15:16
Son_Gokuand in fedora infra, we have to be able to run snapcraft in a chroot15:16
cmatsuokaI run multipass on a bare metal fedora, it works well15:16
Son_GokuI thought multipass only makes ubuntu VMs?15:16
Son_Gokuthat's not particularly useful in this case15:17
cmatsuokabut wait, let me understand exactly what you are trying to accomplish here :)15:17
Son_GokuI want:15:17
Son_Goku1. to be able to build snaps using a fedora base15:17
Son_Goku2. to be able to use snapcraft for snaps to be built on top of the fedora base, even officially by fedora packagers15:17
Son_Goku3. to be able to run snapcraft within Koji, the fedora build system15:18
cmatsuokaok. then you need snapcraft to recognize fedora (or a specific version of fedora) as a base. then during the build process snapcraft would instance a fedora VM, install rpm packages, stage, prime and produce the snap15:19
cmatsuokaat runtime, you would need a fedora base image to support the snap created on top of the fedora base VM15:20
Son_Gokuthe main issue is that Koji does not allow VM creation15:21
Son_GokuKoji instantiates target-specific chroots, and runs the stuff in there15:21
Son_Gokuand they're not privileged enough to spin up VMs15:21
cmatsuokacan we run lxd containers there?15:22
=== Son_Goku is now known as Conan_Kudo
=== Conan_Kudo is now known as Son_Goku
=== Son_Goku is now known as Conan_Kudo
=== Conan_Kudo is now known as Son_Goku
cmatsuokawe should have support to lxd providers in some near future15:22
Son_Gokuno15:22
Son_Gokuno lxd packaged in fedora, and no support in koji15:23
Son_Gokuthe former would be required for the latter15:23
cmatsuokaI also run lxd from snap on my fedora system, but you probably want something more "native"15:24
cmatsuokaI can't say for sure if snapcraft would work with a plain chroot provider, perhaps sergiusens could enlighten us here15:25
sergiusenscmatsuoka: we have nothing built out for chroots today15:26
cmatsuokasergiusens: but that would be feasible?15:28
sergiusenscmatsuoka: I suspect --destructive-mode could work and then it could be just like those docker images people build15:28
cmatsuokasergiusens: yes, that's my feeling as well15:28
cmatsuokaSon_Goku: so you could set up your chroot, put snapcraft and the source project there, and run snapcraft in destructive mode inside the chroot15:30
cmatsuokaSon_Goku: the dnf-aware snapcraft15:30
Son_Gokuokay, so there's a mode there15:31
cmatsuokaSon_Goku: yes, currently the default is to use a build provider such as multipass (and, in fact, it's the only provider available right now)15:32
cmatsuokaSon_Goku: but you can also tell snapcraft to not use the provider, and run in the host environment15:32
cmatsuokathis is the "destructive mode"15:33
Son_Gokudoes multipass use libvirt?15:33
Son_Gokuah, so it does15:33
Son_Gokuit'd be cool if it was packaged in Fedora and could use the Fedora-published VM images15:34
Son_Gokuor at least if the snap could make fedora VMs too15:34
cmatsuokacurrently multipass itself is packaged as a snap and runs on fedora, but I don't know if there's a fedora image availability15:37
cmatsuokas/availability/available right now/15:38
Saviqhey all, is there a `snap waitforready` of some kind that will ensure I'm not calling `snap install` before snapd is ready?15:38
ChipacaSaviq: yes15:39
ChipacaSaviq: there's even a service that uses that, that we use in cloud? i think?15:39
ChipacaSaviq: snapd.seeded.service15:40
ChipacaSaviq: does a "snap wait system seed.loaded"15:40
cmatsuokaSaviq: do we have any fedora image available for multipass?15:40
SaviqChipaca: the socket doesn't exist yet here so that won't work...15:41
ChipacaSaviq: whoa15:41
ChipacaSaviq: how does the socket not exist yet? what's starting your thing?15:41
SaviqChipaca: lxd container15:42
ChipacaSaviq: 1. wait for the socket (it should get created really early in boot)15:42
ChipacaSaviq: 2. as above :-)15:42
ChipacaSaviq: is it a systemd unit?15:42
SaviqChipaca: no, just driving snapcraft from outside the container15:42
ChipacaSaviq: note the socket gets created before the snapd binary is started15:43
SaviqI know, socket activated15:43
Chipacayup15:43
Chipacameaning it's in relatively early boot15:43
Saviqbut still, I get ENOFILE when trying to install a snap15:43
hunterknew installs of my snap package (i.e., not updates) have started complaining about "mkdir: cannot create directory ‘/home/[username]/snap/[packagename]’: Read-only file system". Does anyone know what would cause this?15:43
Saviqoh well, will get bash to wait for the socket15:43
Saviqor just try to install a couple times ;P15:44
Chipacapedronis: in laneSnaps, your argument to pass in the tasks seems to mean I should actually pass in the rerefresh task (so the id and tasks are obviously in sync)15:44
Saviqcmatsuoka: I've not tried, but https://alt.fedoraproject.org/cloud/ should work15:44
Saviqas long as it has cloud-init15:44
pedronisChipaca: that makes sense15:44
cmatsuokaSon_Goku: ^^15:44
Chipacapedronis: it's going to break the unit tests :-) but easy to fix15:45
Son_Gokuit does have cloud-init15:45
pedronisChipaca: yes, it's a change, but I tried to explain why I think it makes sense :)15:45
SaviqSon_Goku: `snap install multipass --classic --beta; multipass launch https://...` will tell you soon enough whether it works or not15:45
Chipacapedronis: i agree15:46
Son_GokuI'll have to try that later, then :)15:46
mupPR snapcraft#2460 closed: build providers: recreate instance if base changed <Created by cmatsuoka> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/2460>15:50
SaviqSon_Goku: fwiw the OpenStack image seems to work fine, there's probably rough edges as we're assuming dpkg inside at the moment15:54
Son_Gokuyeah15:54
Saviqalso a bug in our snap packaging prevents the `launch https://` from working - need to download the image and `launch file://`15:55
Saviqand `dnf makecache` takes quite a while, we should not wait for that15:56
mupPR snapcraft#2462 opened: Release changelog for 3.1.1 <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/2462>15:56
SaviqSon_Goku: feel free to file bugs under https://github.com/CanonicalLtd/multipass/issues/new as you encounter them :)15:57
Saviqhey all, we want to transition multipass to core18 and realized there's a case where the upgrade needs user intervention to avoid data loss, what's the state-of-the-art approach to this situation? forcing a rollback (how)? failing one of the hooks (which)?16:16
Saviqepochs are not a thing yet, are they? would they be of help?16:16
JnROh thank god a Snap chat16:16
JnRmodprobe: FATAL: Module msr not found in directory /lib/modules/4.15.0-45-generic16:16
JnRWtf is msr?16:16
JnRI was building a Snap with lxd16:17
JnRI have Linux Mint16:17
JnRSorry I meant how do I get the msr. I have an idea what it is16:18
SaviqJnR: hey, this module lets you ~interrogate the BIOS to find out about virtualization support16:18
SaviqJnR: would you please file an issue in https://github.com/CanonicalLtd/multipass/issues/16:19
SaviqJnR: and in the mean time run `kvm-ok` that will guide you through ensuring your system can build snaps through multipass16:19
Saviqsome reading about why that's needed https://forum.snapcraft.io/t/reasoning-behind-the-move-to-multipass/964816:20
JnRSaviq at what point run kvm-ok? in substitute of snapcraft?16:20
JnRI haven't heard that command mention in any articles16:21
SaviqJnR: just once, now is fine16:21
Saviqthe msr module won't be needed if kvm is already set up proper16:21
mupPR # closed: snapd#5644, snapd#5915, snapd#5962, snapd#6034, snapd#6079, snapd#6098, snapd#6108, snapd#6111, snapd#6162, snapd#6177, snapd#6238, snapd#6252, snapd#6258, snapd#6270, snapd#6281, snapd#6313, snapd#6320, snapd#6322, snapd#6324, snapd#6325, snapd#6327, snapd#6329, snapd#6341,16:21
mupsnapd#6347, snapd#6356, snapd#6360, snapd#6367, snapd#6376, snapd#6381, snapd#6401, snapd#6404, snapd#6406, snapd#6410, snapd#6413, snapd#6418, snapd#6436, snapd#6464, snapd#6465, snapd#6469, snapd#6472, snapd#6476, snapd#6478, snapd#6480, snapd#6481, snapd#648216:21
JnRINFO: /dev/kvm exists16:23
mupPR # opened: snapd#5644, snapd#5915, snapd#5962, snapd#6034, snapd#6079, snapd#6098, snapd#6108, snapd#6111, snapd#6162, snapd#6177, snapd#6238, snapd#6252, snapd#6258, snapd#6270, snapd#6281, snapd#6313, snapd#6320, snapd#6322, snapd#6324, snapd#6325, snapd#6327, snapd#6329, snapd#6341,16:23
mupsnapd#6347, snapd#6356, snapd#6360, snapd#6367, snapd#6376, snapd#6381, snapd#6401, snapd#6404, snapd#6406, snapd#6410, snapd#6413, snapd#6418, snapd#6436, snapd#6464, snapd#6465, snapd#6469, snapd#6472, snapd#6476, snapd#6478, snapd#6480, snapd#6481, snapd#648216:23
JnRKVM acceleration can be used16:23
JnRIs that the appropriate response?16:23
=== phoenix_firebrd is now known as murthy
SaviqJnR: yes, can you please run snapcraft now and if it fails, please pastebin the whole log?16:23
JnRSaviq Yes sir16:24
JnRhttps://pastebin.com/LvAxLmfP16:28
JnRI ran it in debug mode16:28
JnRhttps://pastebin.com/RaXcfRFH16:29
JnRSorry I forgot the 2nd half16:29
ChrisTownsendThe real question is why isn't `/dev/kvm` there?16:30
ChrisTownsendThat's the first check the script does and if that fails, it detects if the msr module is available, and if not, it tries to load it.16:30
ChrisTownsendJnR: Does `/dev/kvm` exist on your machine?16:31
JnRChrisTownsend yes I just ran kvm-ok 5 minutes ago16:31
JnRINFO: /dev/kvm exists16:31
ChrisTownsendJnR: Ok, hmm...16:32
JnRKVM acceleration can be used16:32
JnRChrisTownsend I did read that Linux Mint has problems. I don't know why but it was the only OS they mentioned16:32
ChrisTownsendJnR: I wonder if it somehow blocks even classic installed snaps from accessing /dev.16:33
greybackJnR: you mentioned you are using lxd? How exactly?16:33
ChrisTownsendJust guessing, I have no proof at all.16:34
ChrisTownsendgreyback: I think multipass is being used and not lxd.16:34
JnRhttps://docs.snapcraft.io/build-on-lxd/415716:34
JnRThat's what I was following16:35
Saviqyeah with `base: $anything` multipass is used by default these days16:35
greybackaha, then that's a problem, as lxd installed from a snap does not have /dev/kvm access16:36
greybackrunning multipass inside lxd fails with that exact error16:36
JnRgreyback Seriously? No wonder I'm running in circles16:36
Saviqoh you're *inside* lxd16:37
JnRI thought the snapcraft website would be a good place to start...16:37
ChrisTownsendI didn't realize snaps could be installed inside a lxd container...16:37
ChrisTownsendBut yeah, I guess that makes sense:)16:38
JnRNo wonder It took me 2 hours to get it to calm down about multipass16:38
greybackJnR: unfortunately yeah. You're better off avoiding lxd for now.16:38
Saviqsergiusens: https://docs.snapcraft.io/build-on-lxd/4157 seems like could need some love...16:38
Saviqs/need/use/16:38
Chipacasergiusens: degville wrt build-on-lxd, maybe just a warning at the top "this only applies if you don't have base:"?16:44
Chipacaoh it already has that16:44
Chipacahmm16:44
Chipaca¯\_(ツ)_/¯16:44
degvilleChipaca: mmm... I could make it clearer, rather than easily skipoverable.16:46
Chipacaso the problem was that that document explains how to make snapcraft build inside lxd16:47
Chipacawhich is different from running snapcraft inside lxd to build in whatever16:48
Chipacaat least AIUI16:48
JnRWhat's the point of a disclaimer if it's not going to work?16:48
JnRUnless the disclaimer said "Doesn't work" of course16:49
SaviqJnR: it is going to work, *if* you snapcraft.yaml does not have "base: " stanza in it16:49
ChipacaJnR: Saviq: hold on16:50
Saviqok /me backs out anyway16:50
JnRSaviq ohhhh ok I have no idea what you mean16:50
ChipacaJnR: Saviq: that document that JnR pointed to, explains how to set up snapcraft to build things using lxd instead of multipass16:50
JnRChipaca Was I not supossed to use Multipass at all?16:51
ChipacaSaviq: I don't know if the document is still accurate, you know more than (or as much as) I do probably about that16:51
ChipacaJnR: what you are trying to do is _something completely different_16:51
ChipacaJnR: but, due to the limitations of language, it's hard to explain the difference between getting into a riddle16:51
ChipacaJnR: you're running snapcraft inside lxd, and want to use it to build things inside there16:52
JnRChipaca I'm fine with that but I just want to make it a point I followed the guide decently16:52
ChipacaJnR: so the question is, how did you follow a guide that tells you how to make snapcraft run lxd, and ended up having lxd run snapcraft16:53
JnRChipaca Of course you're going to make me feel foolish now you know an exponential amount more than me16:53
ChipacaJnR: be nice16:53
SaviqJnR: if you're already in a container dedicated to this build, run `snapcraft --destructive-mode`16:54
JnRChipaca Sorry I'm kinda joking my bad. But I was not in a container16:54
Saviqit is destructive because it will try and install packages in there16:54
JnRI started the container I didn't go in it16:54
* Saviq biab16:54
JnRI thought it was basically a virtual environment16:55
JnRSometimes you guys forget what it's like to learn this subject16:58
ChrisTownsendJnR: Are you using snapcraft from the archive or from the snapcraft snap?16:58
JnRChrisTownsend I downloaded everything from Snap16:59
ChrisTownsendJnR: I see "load_entry_point('snapcraft==2.43.1+18.4', 'console_scripts', 'snapcraft')()" which leads me to believe you are using the archive version.16:59
ChrisTownsendJnR: Can you run "which snapcraft" and give me the output?16:59
JnRI used snap to download and after some error I refreshed everything as well16:59
JnRusr/bin/snapcraft17:00
ChrisTownsendJnR: Ah, ok, this is your problem.  It's defaulting to the old, incompatible version.   Can you try `/snap/bin/snapcraft --help` just to see if that is there?17:01
JnRok17:02
ChrisTownsendJnR: Also, `/snap/bin` in your $PATH is last, so your system will try to use other executables first.17:02
JnRhttps://pastebin.com/sjHFpYbm17:03
JnRYour first request17:03
JnR'/snap/bin' is in my path. I put it there and just checked again17:04
ChrisTownsendJnR: Ok, that is what we need...but that traceback is due to the exported `SNAPCRAFT_BUILD_ENVIRONMENT=lxd` env var.17:04
sergiusensJnR: on lxd, considering that you are on the correct image, you can use `--destructive-mode`17:05
JnRI'm assuming that's like --force?17:05
ChrisTownsendJnR: Is it first in your path or last?17:05
ChrisTownsend`/snap/bin` that is.17:06
JnR'/var/lib/snapd/snap/bin:/snap/bin:/var/lib/snapd/snap/bin' this is the end of my $PATH17:06
JnRIt's a fresh Linux install theres not much17:07
ChrisTownsendJnR: Also, let's try to clean up from this and start afresh...17:07
sergiusensJnR: yes, in some ways, just more in your face wrt potential damage to the system where it is run on17:07
ChrisTownsendJnR: So first, unset `SNAPCRAFT_BUILD_ENVIRONMENT=lxd` by doing `SNAPCRAFT_BUILD_ENVIRONMENT=`.17:07
ChrisTownsendJnR: Then do `snapcraft clean` (not the /snap/bin/ version).17:08
ChrisTownsendJnR: Then I think you will want to just use multipass instead of lxd since that is the way things are going.  I know, the tutorial you are referring to, but I think it would be better to go the multipass way.17:10
ChrisTownsendJnR: Then you can do `export SNAPCRAFT_BUILD_ENVIRONMENT=multipass`17:10
ChrisTownsendJnR: And then you should just be able to do `/snap/bin/snapcraft`17:11
ChrisTownsendJnR: I hope this helps.17:11
JnRBut the reason I went towards lxd was the warning about Linux Mint having trouble with the base method17:11
JnRIs that not correct?17:12
JnRI'm pretty much quoting17:12
ChrisTownsendJnR: I'm not familiar with that warning.  Do you have a link I can read or the such?17:13
ChrisTownsendJnR: Also, which snap are you trying to build?  I'd like to look at its snapcraft.yaml and see if it's defining a base.17:14
JnRChrisTownsend Actually I tried a guide previously that mentioned Mint... Damn it was probably outdated. My snapcraft.yaml is terrible I was using trial and error when I hit that bump. I just ran snapcraft again and it went great except for some of my files being misplaced17:18
JnRChrisTownsend I mean I mistyped their location17:18
JnRAn error occurred when trying to execute 'sudo -i snapcraft snap' with 'multipass': returned exit code 2.17:18
JnRI did get this error though17:18
JnRI didn't use sudo I swear17:19
ChrisTownsendJnR: Sorry, I got disconnected...could you repeat the last couple of things you said?17:19
JnRAn error occurred when trying to execute 'sudo -i snapcraft snap' with 'multipass': returned exit code 2.17:19
JnRThat was the only real error I got that wasn't my misspelling17:20
sergiusensChipaca: btw, for the highly requested `--use-lxd` I would need a non root user way to retrieve the currenly installed snapcraft and its base (or core).17:20
JnRI didn't use sudo17:20
JnRNvm it went away on debug. All is well17:21
JnRThanks for the help17:21
ChrisTownsendJnR: So it's working?17:23
sergiusensmvo: hey there! Just a reminder that you never got back to me on https://bugs.launchpad.net/snapcraft/+bug/180521917:23
mupBug #1805219: .snapcraft <19.04> <19.04-external> <Snapcraft:Triaged by sergiusens> <https://launchpad.net/bugs/1805219>17:23
JnRChrisTownsend My only problem left is just that it's saying my binary files don't exist. Probably just a typo17:25
JnRI'm not using to referring to exe files in linux17:25
pedronismborzecki: are you reusing anything from #6464 in the end?17:26
=== murthy is now known as phoenix_firebrd_
mupPR #6464: [RFC] many: add simple performance measure tool mostly for firstboot <Created by mvo5> <https://github.com/snapcore/snapd/pull/6464>17:26
ChrisTownsendJnR: Ok, good luck!17:28
JnRChrisTownsend Sorry I'm so close and I'm clearly not formatting this file correctly. One more favor17:30
JnRhttps://pastebin.com/DKV7cjjS17:30
JnRI know it's probably totally jacked up I just kinda went with trial and error17:30
JnRI can't load the files properly17:31
ondrasergiusens seems like passthrough is not passing through. is there some extra level of intelligence in passthrough?17:35
=== phoenix_firebrd_ is now known as murthy
ChrisTownsendJnR: Well, the 'base: core18' in there explains why multipass was being used in your example.  But as far as the snapcraft.yaml, yeah, I'm not really sure what you are trying to accomplish there.  Maybe someone else here that is an expert on this can help???17:52
pedronispstolowski: I did (re)reviews of the current hotplug PRs17:53
pstolowskipedronis: great, thank you17:54
mvosergiusens: thanks, looking17:58
pstolowskipedronis: replied18:06
pstolowski(to some suggestions, not all)18:06
pstolowskimvo: pi3 just finished for me, two failures this time - smoke/install and sanbox; these are the ones that failed 2.37.1 validation right?18:07
pstolowski*pi3 tests18:07
mvopstolowski: I look at the failures18:08
mvopstolowski: can you please paste me the failures?18:08
pstolowskimvo: http://paste.ubuntu.com/p/K84f6yWmmq/18:09
mvopstolowski: those look like test issues to me, re-running those would be great18:11
mvopstolowski: maybe tomorrow?18:11
pstolowskimvo: sure18:12
pstolowskieod for now, cu18:12
=== pstolowski is now known as pstolowski|afk
mvopstolowski|afk: just the two that failed, I'm almost 100% positive this will be fine18:12
mvopstolowski|afk: enjoy - thanks for your help today!18:12
pstolowski|afko/18:12
Saviqhey all, we want to transition multipass to core18 and realized there's a case where the upgrade needs user intervention to avoid data loss, what's the state-of-the-art approach to this situation? forcing a rollback (how)? failing one of the hooks (which)?18:28
Saviqepochs are not a thing yet, are they? would they be of help?18:28
mupPR snapd#6464 closed: [RFC] many: add simple performance measure tool mostly for firstboot <Created by mvo5> <Closed by mvo5> <https://github.com/snapcore/snapd/pull/6464>18:28
mupPR snapcraft#2463 opened: Pass --work-dir param for out-of-tree builds <Created by abitrolly> <https://github.com/snapcore/snapcraft/pull/2463>18:54
pedronisChipaca: I answered your question, also somehow I missed the FileName suggestion, anyway I would keep Filename19:25
Chipacak19:25
Chipacapedronis: thanks19:26
Chipacapedronis: i'm going to ignore it until the morning :-)19:26
bashfulrobotQuick question I hope. With snapcraft 3, the cleanbuild command  is not longer allows when using the base keyword. What is the proper way to build with a clean environment?20:04
bashfulrobotoh, think I found it. set `SNAPCRAFT_BUILD_ENVIRONMENT multipass` and then simply the `snapcraft` command.20:09
roadmrbashfulrobot: jeopardy answer (I don't know, just throwing it out there so it sticks on the wall maybe?) - all builds are done in a multipass vm and so are a "clean environment" by default20:09
bashfulrobotroadmr: I think you are right20:10
roadmr\o/20:10
bashfulrobotUnless you set 'host', 'managed-host', or 'multipass'20:10
roadmrah, I didn't know about those :)20:17
sergiusensbashfulrobot: cleanbuild is still there if not using bases, no need to play with those environment variables20:23
JnRApparently since earlier I've been stuck in some VMX ROOT MODE20:47
mupBug #1814971 opened: 'up arrows' in snap info version list are hard to read and parse <Snappy:New> <https://launchpad.net/bugs/1814971>22:39

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