/srv/irclogs.ubuntu.com/2017/01/11/#snappy.txt

richteraDoes sudo snap install snap-codelabs no longer work or do I have something setup incorrectly.02:51
=== mup_ is now known as mup
hangunhi04:53
hangunI am porting snappy to bubblegum96  board, the Soc has a fixed layout that the bootloader.bin ’s offset is at 2097664 and the u-boot is at 3145728.It works when I  use https://github.com/uCRDev/Bubblegum96-Snappy/blob/master/gadget/gadget/meta/gadget.yaml and ubuntu-image version 0.10.04:53
hangunSince the ubuntu-image is updated to version 0.12,  it may cause the error like this:04:54
hangunsudo /snap/bin/ubuntu-image --channel stable --image-size 2G --extra-snaps bubblegum96-gadget_16.04-1.1_arm64.snap --extra-snaps bubblegum96-kernel_3.10.0_arm64.snap -o bubblegum96.img bubblegum96.model04:54
hangunFetching core04:54
hangunCopying "bubblegum96-kernel_3.10.0_arm64.snap" (bubblegum96-kernel)04:54
hangunCopying "bubblegum96-gadget_16.04-1.1_arm64.snap" (bubblegum96-gadget)04:54
hangunbubblegum96-gadget already prepared, skipping04:54
hangunbubblegum96-kernel already prepared, skipping04:54
hangungadget.yaml parse error: mbr structures cannot be larger than 446 bytes.04:54
hangunUse --debug for more information04:54
hangunubuntu-image had fixed a bug so that causes my issue   https://bugs.launchpad.net/ubuntu-image/+bug/163076904:55
mupBug #1630769: part with role='mbr' should be stricter about its parameters <Ubuntu Image:Fix Released by barry> <https://launchpad.net/bugs/1630769>04:55
=== chihchun_afk is now known as chihchun
zygagood morning08:29
mupPR snapd#2602 opened: overlord/snapstate: remove restriction on ResetAliases <Created by pedronis> <https://github.com/snapcore/snapd/pull/2602>08:47
mupIssue snapd#2603 opened: Disk free space left check <Created by cyberb> <https://github.com/snapcore/snapd/issue/2603>09:04
mupPR snapd#2604 opened: interfaces: add classic-dimension interface <Created by mvo5> <https://github.com/snapcore/snapd/pull/2604>09:12
mupPR snapd#2605 opened: overlord,overlord/snapstate: have UpdateMany retire/enable auto-aliases even without new revision <Created by pedronis> <https://github.com/snapcore/snapd/pull/2605>09:16
mupPR snapd#2498 closed: interfaces: add new upower-control interface <Created by morphis> <Closed by morphis> <https://github.com/snapcore/snapd/pull/2498>09:30
mupIssue snapd#2557 closed: interfaces: connect tun-based serial port <Created by mrsinghgit> <Closed by niemeyer> <https://github.com/snapcore/snapd/issue/2557>09:38
mupIssue snapd#2503 closed: chattr code (tests/main/chattr/task.yaml) fails on ppc64el <Created by mvo5> <Closed by mvo5> <https://github.com/snapcore/snapd/issue/2503>09:52
mupIssue snapd#2504 closed: interfaces-upower-observe snap test fails on ppc64el <Created by mvo5> <Closed by mvo5> <https://github.com/snapcore/snapd/issue/2504>09:52
mupBug #1655592 opened: interfaces-upower-observe snap test fails on ppc64el <Snappy:Triaged> <https://launchpad.net/bugs/1655592>09:52
mupBug #1655593 opened: chattr code (tests/main/chattr/task.yaml) fails on ppc64el <Snappy:New> <https://launchpad.net/bugs/1655593>09:52
mupBug #1655594 opened:  expect based tests fails on ppc64el <Snappy:New> <https://launchpad.net/bugs/1655594>09:52
mupIssue snapd#2502 closed: expect based tests fails on ppc64el <Created by mvo5> <Closed by mvo5> <https://github.com/snapcore/snapd/issue/2502>09:53
iceysergiusens: trying to do my classic snap, I added the .desktop file to the snap and suddenly snapcraft hates me again with: 'classic confinement requires the core_dynamic_linker to be set'09:54
liuxgogra_, ping09:56
ogra_hey09:56
liuxgogra_, yesterday, thanks for answering my question regarding the slow build. do you mean to replace all of strings "http://ports.ubuntu.com/ubuntu-ports/ " in the source.list to " http://localhost:9999/ubuntu-ports"?09:57
liuxgogra_, currently the sources.list file is like http://paste.ubuntu.com/23780838/09:58
ogra_liuxg, yep ... then you need to use apt update once to initialize the proxy db ...09:58
ogra_hmm09:59
* zyga feels spring in the air :)09:59
liuxgogra_, how to initialize the proxy db? once it is installed, it is initialized?09:59
ogra_that sources.list misses all basic entries09:59
ogra_no, it is initialized with the first apt-get update10:00
ogra_(just means it downloads the index files once from the archive)10:00
mupBug #1639284 changed: Cant start any snap application on Xenial <snapd:Incomplete by zyga> <https://launchpad.net/bugs/1639284>10:01
liuxgogra_, ok.. thanks. this is the default sources.list file in my pi device. http://paste.ubuntu.com/23780856/ do you mean I need to add more stuff there?10:02
Odd_BlokeI'm trying to remove the ubuntu-core snap (so I can install the core snap), and I can't work out how to do so.  `sudo snap remove ubuntu-core` gives "error: cannot remove "ubuntu-core": snap "ubuntu-core" is not removable".10:03
ogra_liuxg, no, that one looks fine .,.. your first one was missing the top part10:03
Odd_Blokehttps://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1589210 suggests that running snap disable first allows removal, but that also doesn't work.10:03
mupBug #1589210: snap remove failed ubuntu-core snap package <snapd (Ubuntu):Confirmed> <https://launchpad.net/bugs/1589210>10:03
liuxgogra_, I think your solution is very useful since a lot of developers could not compile their target due to the slaggish network on-site.10:03
stubOdd_Bloke: Just doing that myself. I think you are stuck 'apt purge snapd', trashing all your snaps and their data, then 'apt install snapd'10:03
liuxgogra_, yeah, I just cut some of part of it, it is my fault. thanks for clarification.10:04
iceywhy is snapcraft.io not served with SSL?10:06
stokachusergiusens, this python encodings error makes me sad10:06
Odd_Blokestub: Aha, fair enough; I knew I'd have to trash all snaps, didn't realise snapd itself had to go.  Thanks!10:07
sergiusensstokachu we can skip lunch and fix it :-) Have you tried removing the stage/prime entries in your parts?10:08
iceysergiusens: see my ping above?10:08
iceyalso, can classic snaps access the system clipboard?10:08
stokachusergiusens, yea i cleared those out10:09
sergiusensicey nope, just logged on to irc after 6 days10:09
stokachusergiusens, we can look after lunch :)10:09
iceysergiusens: it was 10 minutes ago :-P10:09
iceyhow about this: sergiusens: trying to do my classic snap, I added the .desktop file to the snap and suddenly snapcraft hates me again with: 'classic confinement requires the core_dynamic_linker to be set'10:09
sergiusensicey you need the core snap installed10:09
iceyrather than the  ubuntu-core snap, I'm going to have to do that uninstall dance aren't I?10:09
sergiusensicey yeah10:10
stubI just filed https://bugs.launchpad.net/snappy/+bug/1655599 since this is technically a dataloss bug (if people have production data in their snap containment)10:10
mupBug #1655599: No migration of ubuntu-core to core <Snappy:New> <https://launchpad.net/bugs/1655599>10:10
iceysergiusens: after removing everything, how do I replace ububtu-core with core10:11
mupBug #1655599 opened: No migration of ubuntu-core to core <Snappy:New> <https://launchpad.net/bugs/1655599>10:11
iceyoh really, uninstall snapd!?10:11
stubhttps://bugs.launchpad.net/snapcraft/+bug/165094610:11
mupBug #1650946: unhelpful error when building a classic snap: classic confinement requires the core_dynamic_linker to be set <Snapcraft:Fix Committed by sergiusens> <https://launchpad.net/bugs/1650946>10:12
liuxgogra_,  one more question, do I need to change the sources.list in the ubuntu core snap or in the classic snap? sorry10:14
ogra_in classic, i dont think it is even writable in the core side10:15
iceysergiusens: :-/ '[Errno 2] No such file or directory: '/mnt/Media/projects/alacritty/parts/desktop/install/meta/gui''10:15
liuxgogra_, ok. I got it.. yeah, that is currently what I am doing now :)10:15
sergiusensicey wait, let me get back to you on this, this is not how setup/gui works10:16
liuxgogra_, this is currently how sources.list looks like in my classic snap  http://paste.ubuntu.com/23780885/10:17
iceysergiusens: sure, I'll grab you in a bit, copying the original source on it :)10:17
ogra_that shoudl work fine10:17
liuxgogra_, thanks. I am now trying to apt-get, it is still slow. the first time apt update is slow, right? after that, it should be fine.10:18
stokachuhow do you clean a specific part again?10:19
stokachuthought it was snapcraft clean pull10:19
ogra_liuxg, yeah, it only pays off the second time you access a package indeed10:19
ogra_liuxg, but from then on it will only download packages that are newer in the archive10:19
iceystokachu: `snapcraft clean {STAGE}` just worked for me10:19
stokachuah stage10:20
stokachuicey, thanks10:20
liuxgogra_, this is awesome. You saved the world:)10:21
ogra_:)10:21
ogra_liuxg, under  http://localhost:9999/ you can also see some very basic statistics10:22
ogra_(or rather http://<ip-address>:9999/ since you need a browser fro this indeed)10:23
liuxgogra_, this is what I am building now http://imgur.com/a/6UqDY, is it downloading some new packages? I have already done the apt-get update.10:25
ogra_liuxg, it will have to download the index files every time to compare if something was updated10:27
ogra_also, if it is your first build it indeed has to download the packages once, like i said above10:27
liuxgogra_, ok. thanks. I will check it. yeah, the first time build seems to  be slow anyway. now, it says 30 mins10:28
ogra_it needs to pull all debs into the proxy once indeed ...10:29
liuxgogra_, still, I think this is cool. for hackathon event, it is very needed. sometimes a single line change takes the build for 20 mins, basically, it makes the event useless.10:33
ogra_well, on a hackathin i'D set up a dedicated machine and have everyone else point to it10:34
ogra_*hackathon10:34
ogra_and if you knwo what you are building you can do one build in advance and fill the proxy cache ahead of time10:34
liuxgogra_, but for developers, they may not know what are needed. Last time, I saw a developer using nodejs, the package took years to get downloaded.10:35
ogra_yeah10:36
liuxgogra_, do you know how to set up a machine like what you said so that everyone can point to the machine?10:38
ogra_you just do the same you just did above ;) and have people use the ip instead of localhost10:38
liuxgogra_, oh, you mean a Pi device? so everyone changes the sources.list to point to the same pi device?10:40
ogra_or a laptop10:40
liuxgogra_, but a laptop is x86, right? most people work on arm.10:40
ogra_whatever you have around ... the point is to use one central machine instead of everyone having his own proxy10:41
liuxgogra_, I got it. May I will have a try10:41
ogra_the underlying arch doesnt matter ... packageproxy works on all arches ;)10:41
ogra_and for all arches ... i.e. for x86 packages you would simply point to http://localhost:9999/ubuntu ... instead of /ubuntu-ports10:42
liuxgogra_, how does a x86 provides the debian packages for the arm architecture.10:44
ogra_you are aware that the ubuntu archive is just a webserver ?10:44
liuxgogra_, yeah10:44
ogra_the packageproxy just copies the content ... doesnt matter what arch10:45
liuxgogra_, ok. I got it. so it archives all of the debian packages whenever it is used to download from the archieve10:45
ogra_for the main archive it serves them under /ubuntu ... for poirts.ubuntu.com it serves them under /ubuntu-ports10:46
liuxgogra_, so the proxy snap should be installed on the laptop machine, right?10:46
ogra_yep10:46
ogra_or on a central rpi if you have one spare ... or on a PC at home if you have proper bandwith to serve the archive from there ...10:47
ogra_(or in the office if you have an external IP for the machine)10:47
ogra_wherever you like ;)10:48
=== chihchun is now known as chihchun_afk
liuxgogra_, thanks. I got what you mean. this is truly useful for events. I had headaches to let developers develop onsite.. most of the time, they go home to finish the work.10:48
mupPR snapd#2606 opened: overlord/snapstate: share code between Update and UpdateMany, so that it deals with auto-aliases correctly <Created by pedronis> <https://github.com/snapcore/snapd/pull/2606>10:49
foxrider83hello all10:56
rvrogra_: I'm building an image with edge, and I get snap 2.20.1, is that equivalent to 2.21?10:56
ogra_obviously not10:56
ogra_2.20.1ubuntu1 is the latest release10:57
rvrogra_: I see10:57
rvrogra_: So when 2.21 is available, will it be in both edge and candidate channels?10:59
ogra_yep10:59
ogra_well, edge first, but it will move to candidate eventually indeed11:00
rvrOk11:01
mupPR snapd#2607 opened: many: move interface test helpers to ifacetest package <Created by zyga> <https://github.com/snapcore/snapd/pull/2607>11:06
zygaogasawara: hey, do you remember the conversation about putting kernel snap projects on github.com/snapcore/snapd similar to how the gadget snaps are there now?11:12
zygaogasawara: did you have a chance to discuss that in the kernel team?11:12
ogasawarazyga: yep, did you not see the email I sent you about it?11:14
* ogasawara will resend11:14
ogasawarazyga: sent11:16
mupPR snapd#2608 opened: don't install govendor each  time <Created by zyga> <https://github.com/snapcore/snapd/pull/2608>11:16
zygaogasawara: thanks, I got it now11:17
mupPR snapd#2555 closed: many: implement 'snap aliases' <Created by pedronis> <Merged by chipaca> <https://github.com/snapcore/snapd/pull/2555>11:38
=== didrocks1 is now known as didrocks
liuxgogra_, when I build my project for the second time, I get the error like http://paste.ubuntu.com/23781469/, what could be the reason for it? thanks12:11
popeysergiusens: elopio the "build dir is empty" bug.. I'm seeing similar with nodejs plugin, not just rust. Plausibly same bug or new one?12:12
ogra_hmm12:12
ogra_liuxg, can you ping localhost ?12:13
liuxgogra_, yes http://paste.ubuntu.com/23781476/12:14
ogra_weird, works fine here12:16
liuxgogra_, inside classic http://paste.ubuntu.com/23781481/12:16
ogra_and if you just call apt update in classic ?12:17
ogra_does it update ?12:17
mupPR snapd#2608 closed: don't install govendor each  time <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/2608>12:17
ogra_or install a random package12:18
liuxgogra_, the snap is there12:18
ogra_that wasnt my question12:18
ogra_does apt update inside the classic env work12:18
ogra_or can you apt install some random package12:18
liuxgogra_, it is like http://paste.ubuntu.com/23781493/12:19
ogra_looks like the proxy isnt running ... could it be that you ran out of diskspace or some such ?12:19
liuxgogra_, http://paste.ubuntu.com/23781496/12:19
liuxgogra_, http://paste.ubuntu.com/23781501/, I have a 16G disk12:20
ogra_systemctl status snap.packageproxy.approx.service12:22
ogra_?12:22
ogra_(outside of classic obviously)12:22
liuxgogra_, http://paste.ubuntu.com/23781511/, it is running. I just disable and enable it again.12:24
ogra_well, i have never seen it not work and i use it since about two years on various machines ... pretty weird12:25
liuxgogra_, http://paste.ubuntu.com/23781527/12:26
ogra_anything in syslog about why it fails ?12:27
ogra_(thats an extremely dumb app, it can not fail, this is super strange)12:27
mupPR snapd#2609 opened: store: request no CDN via a header using SNAPPY_STORE_NO_CDN envvar <Created by pedronis> <https://github.com/snapcore/snapd/pull/2609>12:27
ogra_is 9999 taken by anything else ?12:30
liuxgogra_, no, I do not think it is taken. no other software uses the port12:31
ogra_do you perhaps have a stale lockfile in /var/snap/packageproxy/3/lockfile.lock ?12:33
liuxgogra_, I am now doing it again.12:34
ogra_doing what again ?12:34
liuxgogra_, http://paste.ubuntu.com/23781554/12:35
liuxgogra_, you are right.12:35
ogra_remove it12:35
ogra_thought this is extremely odd ... it is really a very dumb script, i havent seen it fail in years12:35
ogra_the only thing i could imagine is that you either run out of diskspace (which you dont) or ram to make it fall over12:36
liuxgogra_, how could that happen? I must win the first prize :)12:36
liuxgogra_, now, it seems to be right. it starts to snap ...12:37
liuxgogra_, thanks.. this time, the build is really fast :)12:40
liuxgogra_, we should let the rest of the developers know this trick!12:40
ogra_are you building something that could use a lot of ram during the build process?12:41
liuxgogra_, I do not think so. it is just dump plugin and compile some c files.12:42
ogra_liuxg, well, if you see anything like the above again, please let me know12:42
liuxgogra_, by the way, if someday I do not want to have the cached files, how can I remove them?12:42
liuxgogra_, sure, I will observe it.12:42
ogra_either snap remove packageproxy ... or just rm -rf /var/snap/packageproxy/3/var/cache/approx/*12:43
liuxgogra_, alright. many thanks12:43
ogra_if you want to toggle it dynamically, just use a default sources.list and copy them back and forth as you need12:43
liuxgogra_, yeah, that makes sense. In fact, i did not keep the old one :) I will find it back.12:45
ogra_it is in the core env ... if you exit classic12:45
ogra_remember ? it is readonly there12:45
didrocksogra_: is there any kind of autoclean of the cache?12:46
liuxgogra_, yeah, it is the same.12:46
ogra_ogra@pi3:~$ cp /etc/apt/sources.list .12:46
ogra_ogra@pi3:~$ sudo classic12:46
ogra_(classic)ogra@pi3:~$ sudo cp sources.list /etc/apt/12:46
ogra_and you are back on the default sources.list ;)12:46
ogra_didrocks, there is /var/snap/packageproxy/3/config.yaml ... you can adjust such stuff if needed12:48
didrocksnice!12:48
liuxgogra_, right. I got it. thanks12:48
ogra_didrocks, i didnt port all config options yet but largely http://manpages.ubuntu.com/manpages/xenial/man5/approx.conf.5.html applies12:49
didrocksogra_: good work! thanks for the reference :)12:51
ogra_old stuff ... i need to update it again so that snap set and get work ;)12:51
ogra_i created it in 15.04 snappy originally ... :)12:52
ogra_adjusted it for newer changes)12:52
ogra_*(only adjusted it...12:52
mupPR snapd#2607 closed: many: move interface test helpers to ifacetest package <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/2607>12:52
mupPR snapd#2601 closed: overlord, store: move confinement filtering to the overlord (from The Store) <Created by chipaca> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2601>13:13
rvrfgimenez: ping13:17
rvrfgimenez: Hey. Do you have a doc/spec or any good description about re-exec? It's planned for 2.21, want to be prepared to check it.13:18
mvorvr: give me some minutes and I send you something13:23
rvrmvo: Thanks13:23
fgimenezhey rvr, nope sorry, none that i know, thx mvo!13:24
=== hikiko is now known as hikiko|ln
mupPR snapd#2610 opened: interfaces/browser-support: add @{PROC}/@{pid}/fd/[0-9] w and misc /run/udev <Created by jdstrand> <https://github.com/snapcore/snapd/pull/2610>13:29
mupPR snapd#2599 closed: interfaces: add new-style interfaces <Created by zyga> <Closed by zyga> <https://github.com/snapcore/snapd/pull/2599>13:46
=== ben_r_ is now known as ben_r
mupPR snapd#2602 closed: overlord/snapstate: remove restrictions on ResetAliases <Created by pedronis> <Merged by chipaca> <https://github.com/snapcore/snapd/pull/2602>14:09
=== hikiko|ln is now known as hikiko
=== andyrock_ is now known as andyrock
mupPR snapd#2611 opened: interfaces: use fewer dot imports <Created by zyga> <https://github.com/snapcore/snapd/pull/2611>14:16
=== ben_r_ is now known as ben_r
elopiopopey: can you share your nodejs snapcraft.yaml ?14:42
elopioI've been playing a lot with nodejs and haven't seen anything like the error on the rust one.14:42
popeyelopio: it's super basic. http://paste.ubuntu.com/23782053/ - output http://paste.ubuntu.com/23782054/14:47
=== ben_r_ is now known as ben_r
elopiopopey: agh, seems like exactly the same rust issue :( Can you please report a bug? I'll fix it for tomorrow's release.14:53
ryebotis the snap store accepting classic confinement snaps, yet?15:01
zygaryebot: I believe it should but I heard that people had some issues15:02
ryebotzyga: ack, thanks15:02
popeyelopio: ok15:02
mupPR snapd#2612 opened: cmd/snap, daemon, overlord/snapstate: tests and fixes for "snap refresh" of a classic snap <Created by chipaca> <https://github.com/snapcore/snapd/pull/2612>15:04
popeyelopio: https://bugs.launchpad.net/snapcraft/+bug/165567815:15
mupBug #1655678: nodejs plugin fails to build - empty build dir <Snapcraft:New> <https://launchpad.net/bugs/1655678>15:15
elopiothank you.15:16
mupPR snapd#2611 closed: interfaces: use fewer dot imports <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/2611>15:22
mupPR snapd#2613 opened: interfaces: add new interface API <Created by zyga> <https://github.com/snapcore/snapd/pull/2613>15:23
zygajdstrand: ^^15:27
zygajdstrand: take two on the idea15:27
zygajdstrand: hey15:47
zygajdstrand: debugging those i386 seccomp failures on xenial (for the old tests)15:49
zygajdstrand: I get killed by lack of 201, looking at libseccomp source code that is geteuid3215:49
zygajdstrand: what was that tool that resolves syscalls to numbers?15:49
zygajdstrand: I'm asking because this cannot be right, we allow that specific syscall in the common.sh profile15:50
zygaah15:50
zygafound it15:50
zygasorry :)15:50
morphiskyrofa, sergiusens: somehow the dependency handling for my snap is really different when using snapcraft to build and switching between classic and devmode confinement15:52
morphiskyrofa, sergiusens: my app depends on libboost which I pull in a build-depends via libboost-system-dev for example but with classic confinement libboost-system doesn't end up in prime15:53
morphiswith devmode or strict it does15:53
morphisis there some fundamental difference other than that confinement is disabled with classic?15:53
kyrofamorphis, hmm... there is a difference, but I wouldn't expect it to cause that15:58
kyrofamorphis, it uses the linker of the core snap and uses rpaths to the libs within, but that shouldn't stop boost from getting in15:59
morphiskyrofa: so classic snaps are still running against the core snap or not?15:59
zygaand fixed it :)16:00
kyrofamorphis, you're on the verge of my knowledge here, but zyga will know more16:00
morphiszyga: any ideas?16:01
kyrofaI suspect that since snapcraft uses the rpaths, all those bind mounts don't happen16:01
kyrofaSo while the core snap is not its execution context, it still runs reliably16:01
kyrofaBut I'm making stuff up16:01
morphiskyrofa: possible, lets see what zyga says16:03
zygamorphis: classic and devmode are not just confinement, the snap is built entirely differently16:03
zygamorphis: all the code in your snap needs to be built from source16:04
zygamorphis: and it is built against what is in the core snap16:04
morphiszyga: means if I use boost, I have to build boost on my own?16:04
zygamorphis: all the executables are linked with stuff from /snap/core/current16:04
zygamorphis: yes16:04
morphisso I can't reuse any deb packages?16:04
zygamorphis: the dynamic linker is also used from the core snap16:04
zygamorphis: not that I know of16:05
morphisso if I have a app which depends on mesa, sdl, boost, protobuf, sdl, alsa, ... I have to build all of them manually?16:05
zygayes16:05
morphiswow16:05
morphisthat makes it a knockout thing16:06
zygaI don't think anyone tried it against gui apps16:06
zygasince core doesn't contain anything GUI-ish it is a difficult task I think16:06
morphisso what is the reason for this?16:06
zygawhat is the reason for what?16:06
zygathat they need to be built?16:07
zygabecause they are linked against the core snap16:07
morphiszyga: when I don't use classic confinement I use the linker from the core snap too, correct?16:07
zygamorphis: no16:08
zygamorphis: not directly16:08
zygamorphis: it depends on where you run16:08
morphistrue16:08
morphisso on Ubuntu Core I do but on desktop I don't16:08
zygamorphis: if you want to understand the details I can discuss this with you but believe me when I say this is the only way it can work16:08
zygamorphis: you have to build it16:08
morphiszyga: I believe you, just trying to understand16:08
zygamorphis: ok16:08
zygamorphis: build this and ldd it16:08
zygahttps://git.launchpad.net/checkbox-converged/tree/build-me16:09
zygahmm16:09
zygawrong link16:09
zygahttps://github.com/zyga/hello-classic16:09
zygamorphis: ^^16:09
zygamorphis: ldd this and look at what the elf file contains16:09
zygamorphis: this is the only way to make it work without controling the mount namespace16:10
morphishm16:10
morphisI see16:10
zygamorphis: yeah, I bet it is going to be tough; I would love to see better support in snapcraft where one can lessen the cost of those builds16:11
zygamorphis: smarter caching16:11
zygamorphis: distcc/ccache16:11
zygamorphis: and working complex examples16:11
morphiszyga: its quite of useless if you have to rebuild everything and add it to your snapcraft.yaml16:11
morphiswhich makes it kind of complex for not tiny applications16:11
zygamorphis: well, not useless16:12
zygamorphis: just time consuming16:12
zygamorphis: sergio built a lot of nice things (git, vim) this way16:12
zygamorphis: and this is not a design choice, just technical challenge16:12
zygamorphis: this is a hard problem16:12
zygamorphis: you can cheat16:13
morphisyeah it is16:13
zygamorphis: you can build it to look for big libraries in /usr/lib16:13
zygamorphis: but that's not guaranteed to work16:13
zygamorphis: only /snap/core is guaranteed16:13
zygamorphis: btw, I could use a review on the new interface API if you have some time16:20
morphiszyga: sure!16:20
morphiszyga: but not today16:20
mupPR snapd#2587 closed: interfaces/mount: add snippet types <Created by zyga> <Closed by zyga> <https://github.com/snapcore/snapd/pull/2587>16:33
elopiopopey: could you try with snapcraft from master?16:34
popeyelopio: uhm, where's that?16:45
elopiopopey: git clone https://github.com/snapcore/snapcraft16:46
elopioand then instead of running just snapcraft, use the full to the bin/snapcraft that you cloned from that repo.16:47
popeyok16:48
popeyelopio: ok, fails differently now :)16:50
elopiopopey: let me see...16:51
popeyelopio: http://paste.ubuntu.com/23782441/16:52
mupPR snapd#2573 closed: snap: add information about tracking channel (not just actual channel) <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2573>16:52
stokachutrying to get around a apparmor issue: http://paste.ubuntu.com/23782447/16:53
stokachuwanting to systemctl start my custom bridge16:53
elopiopopey: ok, I think you should use cleanbuild, because it might be having a conflict with your local npm stuff.16:53
popeyah16:54
stokachuheres my snapcraft http://paste.ubuntu.com/23782451/16:54
popeyelopio: trying..16:54
roadmrjdstrand: hello! so the store is updated to tools r817 finally \o/ (also heads up - the controls for plugs/slots, classic and others have moved to the snap level (rather than upload level). Let me know if you have any trouble finding them now16:55
popeyelopio: fails in the old way in cleanbuild... http://paste.ubuntu.com/23782468/16:56
stokachualso ubuntu-core doesn't seem to have the firewall-control anymore16:56
stokachunm was called core16:56
elopiooh, right, cleanbuild installs the released one.16:57
elopioso, hum, I don't think there's a way for you to test it.16:57
popeyi can just make a deb16:57
elopioinstead of a snap? :)16:58
popeylulz16:58
elopiopopey: no, you can get a lxc container, or a clean vm. Clone snapcraft, and try there.16:58
mupPR snapd#2609 closed: store: request no CDN via a header using SNAPPY_STORE_NO_CDN envvar <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/2609>16:58
popeymaking a deb is quicker16:59
elopioor delete your local npm stuff.16:59
popeyhm, might do that too16:59
elopiopopey: hum, but you need to install that deb in a clean environment.17:00
popeyyeah, just realised that :D17:00
elopiowe have a few bugs about using unclean containers for cleanbuild. That would make testing easier, despite the contradiction.17:00
elopioand it might be a bug that npm fails if you have some local stuff. I'm not sure about that, npm is confusing altogether.17:01
popeyyeah, nuking my ~/.npm helped17:02
mupBug #1655711 opened: typo in Ubuntu Core documentation - Ubuntu Core Images <Snappy:New> <https://launchpad.net/bugs/1655711>17:05
popeyelopio: built! :D17:05
pstolowskiratliff, hello! I noticed you were looking at my notes re per-snap context implementation; just a heads up, I17:06
pstolowskiratliff, I've added two sentences regarding the use of snap-confine and the behavior on missing context17:07
elopiopopey: yay! so the bad news is that I spent a couple of hours trying to fix a bug that was already fixed, wondering why I couldn't reproduce it here.17:08
zygajdstrand: can you please +1 https://github.com/snapcore/snapd/pull/243317:10
mupPR snapd#2433: tests: run all snap-confine tests in c-unit-tests task <Created by zyga> <https://github.com/snapcore/snapd/pull/2433>17:10
zygajdstrand: it's tiny and I wanted to land it when green17:10
zygajdstrand: the tests were okay, just common.sh needed more i386 specific syscalls17:10
popeyhah, sorry el17:11
popey*elopio17:11
elopiopopey: no, thanks a lot for your help. I also found a couple of things that are not nice, and a mistake in my rust PR.17:12
popeysweet! good to hear17:12
mupIssue snapd#2559 closed: seccomp tests fail on Ubuntu 16.04 in when running in qemu or linode <Created by zyga> <Closed by zyga> <https://github.com/snapcore/snapd/issue/2559>17:43
mupPR snapd#2521 closed: interfaces: allow read/write access of real-time clock with time-control interface <Created by morphis> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2521>18:09
jdstrandzyga: I'll add it to my list18:47
jdstrandroadmr: thanks!18:47
jdstrandstokachu: I think that may be bug #1655369. if you have time, it would be great if you could comment in the bug and provide more info18:49
mupBug #1655369: cannot use the platform plug with a snap in 'classic' confinement <snapd (Ubuntu):Incomplete> <https://launchpad.net/bugs/1655369>18:49
jdstrandzyga: the tool that resolves syscalls both ways is scmp_sys_resolver18:50
lazyPowerso, i know that snapcraft has a daemon key you can set to have snapcraft generate a systemd unit file. Say i want to deliver a custom systemd unit file + defaults with my daemon, would the proper path forward be to write a wrapper that does the systemd unit install + configuration, and invoke that bash script manually, or is there a tuneable unit file template syntax?18:53
lazyPowerSorry if this has been covered elsewhere, i've been in/out of this conundrum for a few days now and have been split-attention with it, so any pointers are welcome.18:53
kyleNI'd like to include a LOCAL (non-published) gadget snap in a model assertion for use with ubuntu-image.  I tried the full gadget snap file name in the model assertion ("gadget": "pi2kyle_16.04-0.17_armhf.snap",) but the ubuntu-image command does not find it. is there a way to do this?19:20
kyleNput another way, is it a requirement that the gadget snap is published to stable for ubuntu-image to find it?19:27
mupPR snapd#2614 opened: interfaces: allow getsockopt by default since it is so commonly used <Created by jdstrand> <https://github.com/snapcore/snapd/pull/2614>19:42
mupPR snapd#2615 opened: make patch4 robust against in-progress install changes <Created by pedronis> <https://github.com/snapcore/snapd/pull/2615>19:57
pedroniskyleN: no, the model assertion just needs the name, you pass the local snap to ubuntu-image with --extra-snaps20:00
kyleNpedronis, thanks. I did not know you could do that with the gadget snap.20:03
pedroniskyleN: the option name is a bit unclear but is both extra or local overrides20:04
kyleNack20:06
mupPR snapd#2612 closed: cmd/snap, daemon, overlord/snapstate: tests and fixes for "snap refresh" of a classic snap <Created by chipaca> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2612>20:16
mupPR snapd#2614 closed: interfaces: allow getsockopt by default since it is so commonly used <Created by jdstrand> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2614>20:19
stokachujdstrand, yea i can provide my snapcraft etc to that bug20:31
ryebotAs part of my snapcraft.yaml, I'm pulling a binary from an upstream source and using the dump plugin. Problem is, the binary isn't marked executable. Is there a pattern for dealing with this?20:37
ryebotI tried writing a wrapper that sets the executable bit, but of course the fs is readonly, so.20:37
stokachujdstrand, updated that bug #165536920:37
mupBug #1655369: cannot use the platform plug with a snap in 'classic' confinement <snapd (Ubuntu):New> <https://launchpad.net/bugs/1655369>20:37
Skuggenryebot: Newer snapcraft have keywords for parts that let you execute shell statements as part of the build process. Maybe you can use that to set the executable bit during the build?20:40
ryebotSkuggen: excellent, thanks, I'll take a look20:41
SkuggenCan't actually find it in the online docs, but if you run snapcraft help plugins it's mentioned, I think. I've used the prepare: keyword to run a script that stages files to use in the build20:43
mupBug #1655369 opened: cannot use content interface with a snap in 'classic' confinement <Snappy:Triaged> <https://launchpad.net/bugs/1655369>20:48
jdstrandstokachu: I responded in the bug20:51
stokachujdstrand, thank you! testing now20:51
stokachujdstrand, in theory if i do a classic snap can i just include other binaries i need to run my app?20:52
stokachui realize it isn't confined and im interested in getting updates out quicker than a ppa20:52
mupPR snapd#2424 closed: interfaces/builtin: add physical-memory-* and io-ports-control <Created by tonyespy> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2424>20:52
jdstrandstokachu: you can put whatever you want in your snap20:53
stokachuplus i want to eventually control the versions of juju/lxd that go into it20:53
stokachuat least until there is a sense of snap dependencies i guess20:54
jdstrandstokachu: note that if this is going to be officially supported by Canonical, you'll want to talk to ratliff and tyhicks about best practices and tracking. this is work that is being discussed at the sprint20:54
stokachujdstrand, ok yea ive spoke to tyhicks today, i wanted to get this at least running so he could see what im trying to accomplish20:54
jdstrandbut in terms of what is possible with snapd, you can put anything in your snap20:54
stokachuthen iterate from there20:54
jdstrandcool20:54
lazyPowerOP: :so, i know that snapcraft has a daemon key you can set to have snapcraft generate a systemd unit file. Say i want to deliver a custom systemd unit file + defaults with my daemon. The generated unit file clearly states at the top its auto-generated, and editing is highly discouraged. How can I provide these extra bits to my daemon?20:56
jdstrandstokachu: also, I'll be adding a check to the review tools to alert when specifying 'confinement: classic' with 'plugs' (in general, there is one possible use case with the content interface)20:56
stokachujdstrand, ok awesome20:56
stokachulazyPower, i think you can do like templating in the yaml20:56
stokachulazyPower, believe i saw it in some of the openstack snaps jamespage was writing20:57
lazyPowerstokachu ah good info, thanks for the pointer20:58
lazyPowerstokachu - i think this is what  i was looking for under config21:00
lazyPowerhttps://github.com/javacruft/snap-openstack-compute-controller/blob/master/snapcraft.yaml21:00
mupBug #1594919 changed: Require a method to ship udev rules independent of apps and slots <snapd-interface> <Snappy:Won't Fix> <https://launchpad.net/bugs/1594919>21:24
mupPR snapd#2615 closed: make patch4 robust against in-progress install changes <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/2615>21:26
kyrofajdstrand, do the review tools break on _any_ symlinks pointing outside of the snap?21:37
jdstrandkyrofa: no. there are exceptions based on snapcraft and one other for symlinks from the SNAP dir into SNAP_DATA21:47
jdstrandwell, /var/snap/SNAP_NAME/...21:47
kyrofajdstrand, alright, I just noticed that snapcraft leaves dangling symlinks if they're pointing to libs contained in libc21:47
kyrofaI didn't realize that was ever done on purpose21:47
jdstrandkyrofa: yes. that is intentional and the review tools make exceptions for those21:48
mupPR snapd#2610 closed: interfaces/browser-support: add @{PROC}/@{pid}/fd/[0-9] w and misc /run/udev <Created by jdstrand> <Merged by jdstrand> <https://github.com/snapcore/snapd/pull/2610>21:51
kyrofajdstrand, can you imagine any downside to snapcraft simply deleting those links and letting the snap use the one directly from core?21:52
jdstrandkyrofa: I don't recall the details, but sergiusens left those on purpose cause things were crashing if they used a different libc than what was on core21:53
kyrofajdstrand, but the libs they link to (/lib/<arch>/blah) _come_ from core, do they not?21:53
kyrofaEver since snap-confine reversed the mounts I've not been able to keep track of what's mounted where :P21:55
jdstrandkyrofa: I'm not sure they are guaranteed to. Like I said, I sergiusens did this very specifically. probably best to ask him cause the details are foggy for me21:56
kyrofajdstrand, alright will do, thanks :)21:56
jdstrandsure thing21:56
stokachuis there a way in --classic to run the systemctl command to start a service i need within my snap?22:06
stokachuautomatically after snap install22:06
stokachusimilar to the postinst in a deb package22:06
kyrofaYou might be able to do that in the configure hook22:07
seshukyrofa: Do you have any references to configure hook? documentation or example?22:08
kyrofaseshu, https://github.com/snapcore/snapd/wiki/hooks22:10
seshukyrofa: Thanks much!22:10
stokachuwhere would i put this in snapcraft?22:12
kyrofastokachu, https://github.com/snapcore/snapcraft/blob/master/docs/hooks.md but note that what's documented there has not yet been released22:14
kyrofaYou can run out of master if you need it22:14
stokachucool thanks, yea i run master22:15
seshukyrofa: I don't see snap get <snapname> <key> example. Is it still under development?22:19
kyrofaseshu, `snap get` should work22:21
kyrofaDoes it not?22:21
seshukyrofa: it works, kind of...22:23
kyrofaseshu, what's wrong?22:23
snappy_ircWe are trying to build kernel snap from a binary .deb, it's not working, want to know if it is supported. We get the following error after executing '$ snapcraft'22:23
seshukyrofa: two things. 1. I'm trying to see how I can implement get and set for my snap22:23
snappy_irc$ snapcraft22:23
snappy_irc"confinement" property not specified: defaulting to "strict"22:23
snappy_irc"grade" property not specified: defaulting to "stable"22:23
snappy_ircUse of build-properties in the schema is deprecated.22:23
snappy_ircPlugins should now implement get_build_properties22:23
snappy_ircSkipping pull kernel (already ran)22:23
snappy_ircPreparing to build kernel22:23
snappy_ircBuilding kernel22:23
snappy_ircmake -j1 defconfig22:23
snappy_ircmake: *** No rule to make target 'defconfig'.  Stop.22:23
snappy_ircCommand '['/bin/sh', '/tmp/tmp_gqzcokn', 'make', '-j1', 'defconfig']' returned non-zero exit status 222:23
kyrofasnappy_irc, please utilize http://pastebin.ubuntu.com/22:24
seshukyrofa: 2. Trying to get key:value pairs network-manager supports...apparently, without knowing key there is no way to use snap get command22:24
kyrofaseshu, you don't have to do anything special to support `snap get/set`22:26
kyrofaseshu, as for trying to obtain all keys, or defining a schema, indeed that functionality doesn't exist today22:27
seshukyrofa: got it. Thanks for clarification.22:27
kyrofaseshu, `snap set` will result in your configure hook being called (if you wrote one), where you can handle the configuration change. `snap get` doesn't use your hook at all, it just returns whatever was previously set (either by snap set or by snapctl set, in your hook)22:28
seshukyrofa: ah! okay!22:29
stokachusomeone mind looking at https://github.com/conjure-up/conjure-up/blob/snapcraft-updates/snapcraft.yaml and why my conjure-up.sh script isn't replacing the conjure-up command?22:29
naccstokachu: is conjure-up.sh correctly placed in the snap's squashfs?22:32
stokachunacc, do i use like snapcraft try to see that?22:33
naccstokachu: i tend to use `unsquashfs -l /path/to/whatever.snap`22:33
stokachuah nice22:33
naccstokachu: there might be a more 'official' snapcraft way , though :)22:33
stokachuhere's the output squashfs-root/bin/conjure-up.sh22:34
stokachuerr22:34
stokachuhttp://paste.ubuntu.com/23783977/22:34
stokachulooks like both are there22:35
naccstokachu: the other thing to look at, might be to see if you can add a shell app (I don't know if that has been added as default boilerplate or not), so you can drop to a shell in the snap and see what's where22:35
naccstokachu: and in this case, I guess, what is pointing to where :)22:35
stokachuah ok, ill add bash toit and see22:35
naccstokachu: ah there is 'snap run --shell <app>`22:36
naccstokachu: that *might* be all you need22:36
stokachulemme try that22:36
naccstokachu: sorry for the vagueness, i'm not a snapping expert by any means :)22:41
stokachuall good, the tips help :)22:42
stokachubah need to sleep, sergiusens im needing some help tomorrow :)22:48
mupPR snapcraft#1035 closed: rust plugin: use the part source path <Created by elopio> <Merged by kyrofa> <https://github.com/snapcore/snapcraft/pull/1035>22:53
kyrofastokachu, what do you mean "replacing" ?22:54
kyrofanacc, note that whatever is in `prime` will end up in the snap, so it's easier to just look in there22:55
stokachukyrofa, so i have a conjure-up.sh file and i want that to be used instead22:55
kyrofastokachu, instead of what?22:55
stokachuinstead of the conjure-up script that gets created from the python setuptools22:56
stokachui need to pass in some custom snap paths22:56
kyrofastokachu, ah, is the one from python the bin/conjure-up (no .sh) ?22:56
stokachuyea22:57
kyrofastokachu, it's not replacing it because it's named `conjure-up.sh`22:57
kyrofaWhat are you expecting exactly?22:57
kyrofastokachu, do you want to exclude bin/conjure-up completely?22:58
stokachuso i want conjure-up.sh to be called from the cli as 'conjure-up' but that script is just a wrapper around the real 'conjure-up' with some additional options22:58
kyrofaAh, then you should be fine on all counts22:58
kyrofaYou don't want bin/conjure-up replaced22:58
kyrofaYou just want it callable via `conjure-up`, which is should be thanks to your app22:58
stokachuah ok22:59
kyrofastokachu, if bin/conjure-up.sh replaced bin/conjure-up... you wouldn't be wrapping anything!22:59
stokachuso the error i get is fatal: could not create work tree dir '/snap/conjure-up/x8/spells': Read-only file system22:59
kyrofastokachu, might I recommend a better naming convention though22:59
stokachushould i not be using $SNAP/spells22:59
stokachukyrofa, yea ill take all the help i can get23:00
kyrofastokachu, just name the wrapper something more obvious, like conjure-up-wrapper.sh, or run-conjure-up.sh, etc23:00
kyrofa(note that you don't even need the .sh if you don't want it)23:00
stokachuah ok23:00
kyrofastokachu, is that error at runtime, then?23:00
stokachukyrofa, yea23:01
kyrofaYeah, $SNAP is the squashfs image, which is always read-only23:01
kyrofaYou'll want to use one of the writable areas23:01
stokachuSNAP_USER_DATA persists through upgrades, is that the best place to put it?23:01
stokachuor i think it used too23:02
kyrofastokachu, all writable areas persist through upgrades, but do so slightly differently23:02
kyrofastokachu, see https://askubuntu.com/questions/762354/where-can-ubuntu-snaps-write-data for more information23:02
stokachuthanks will take a look23:02
stokachukyrofa, \o/ yay that worked23:06
stokachunow i can just bug sergiusens about the hooks tomorrow :D23:06
stokachukyrofa, thanks again23:06
kyrofastokachu, sure thing. Note that sergiusens is sprinting this week and likely won't be very responsive23:07
stokachukyrofa, yea im at the same sprint :D23:07
kyrofaAh :)23:07
stokachui tend to stalk him, he's popular at these things23:08
kyrofastokachu, yeah he's a popular dude. I can help you with the hooks if you need some pointers23:09
stokachuok cool, i read the snapcraft hook doc it wants me to place the hooks in a snap dir, should i just put everything inside there?23:10
stokachuive been keeping it all in snapcraft dir23:10
kyrofastokachu, "everything" meaning what, exactly?23:11
stokachuoh i see the demo23:11
stokachui create a part for the hook and then manually copy over a script I need to run after an install into $SNAPCRAFT_PART_INSTALL/snap/hooks?23:11
stokachui guess $SNAPCRAFT_PART_INSTALL/snap/hooks/<trigger>23:12
kyrofastokachu, that's the second of the two supported methods23:12
kyrofastokachu, if your hook is coming from a part, you do it that way. If instead your hook is maintained in the repo along with the snapcraft.yaml, you can put it in the snap directory23:13
kyrofa(like the other demo)23:13
stokachuah23:13
stokachukyrofa, is configure the write hook to use?23:14
kyrofastokachu, for what?23:14
kyrofastokachu, note that, according to the snapd docs, that's really the ONLY hook to use23:14
stokachuok23:15
stokachuit's just for installing a network bridge and doing it via systemd once23:15
stokachuand on any reboots23:15
kyrofastokachu, it won't run on reboot, just install, upgrade, and `snap set`23:15
kyrofastokachu, so you might want to do it from the wrapper itself23:15
stokachuah ok just check before hand for the interface and bring it up that way23:16
kyrofaYeah23:17
stokachuyea that makes sense as the app isn't running a long standing process23:17
stokachuso my snap contains lxd daemon, does that get started at all prior to me running the actual conjure-up script?23:18
kyrofastokachu, yes, daemons contained within the snap are fired up as part of the installation23:18
stokachukyrofa, what happens on reboot will they be started again?23:19
kyrofastokachu, indeed, they're systemd units (check /etc/systemd/system)23:19
stokachuah nice23:19
stokachukyrofa, i think that covers everything then :D23:20
stokachuill give this a run in the morning23:20
kyrofastokachu, very good23:20
stokachucya23:21
mupPR snapcraft#1043 opened: [DO NOT MERGE] check the cla exception <Created by elopio> <https://github.com/snapcore/snapcraft/pull/1043>23:53

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