[00:32] helo? [00:32] anyone here? [00:46] hello? [00:56] hi swluo [00:58] hey [00:58] i was wondering if you could help me out with some library issues that i've been having [00:59] is there any ways of editing the default SNAP_LIBRARY_PATH [00:59] i'm getting errors when trying to load my shared libraries [01:09] hey qengho [01:10] hey jjohansen [01:10] hey swluo [01:11] hey man i was wondering if you can quickly help me out [01:11] do you know if you can edit the default path of the SNAP_LIBRARY_PATH [01:11] i'm having issues loading shared libraries [01:12] swluo: sorry that is one I don't know [01:12] mhmm thanks [01:12] too bad [01:13] the documentation could be a lot better for snap [01:13] is it because its soo new? [01:13] swluo: is this on trusty? [01:13] nah 16.04 [01:13] like i can run it from command line just fine [01:14] swluo: yeah snap is a moving target, so its hard to get good docs just yet [01:14] but when i use the snap command it gives me library not ffound [01:14] ahah yeah true true fair enough. [01:15] "cannot open shared object file: No such file or directory." [01:15] and i can't even make symlink for the default path with is annoying as well [01:16] oh yes, confinement is great until it gets in the way, and then its at a minimum annoying, and usually a right pita [01:17] swluo: it's a symlinked binary and you have the libraries (shared objects) also being packaged? [01:17] well ok like in the .yaml [01:18] i've delcared build-packages: [libsdl2-dev] [01:18] which should give me the proper libraries that it needs [01:18] so i didn't package it together [01:18] will that work? [01:18] i wouldn't know if it does or not. maybe you can look at what is in $LD_LIBRARY_PATH from inside your env [01:19] aha its funny cause i tried that [01:19] if you open your snap, does it have the .so files that you'd expect? [01:19] from the docs "snap run --shell ." [01:19] this commant should let me look at the env. but it also gives me errors [01:19] no it does not. because i'm assuming its already downloaded [01:21] swluo: well, in most system, 'build packages' would not be included in the final output [01:21] for example, in debian, you have build deps which are only required for building the package (but not required for installing it), i might check if that is what is happening here [01:22] swluo: just fyi, i am new to snap, so i am not a reliable source of ideas / debugging [01:22] yeah no worries [01:22] anything helps [01:22] just need to bounch ideas off someone [01:22] like do you think it possible to just bundle the library with the snap? [01:22] and somehow refer it then [01:23] swluo: can you check if it is building a statically linked binary or a dynamic library? [01:23] its a dynamic library [01:23] like i can't run it using the snap command [01:23] but if i use the absolute path [01:23] it runs just fine [01:23] "concentration /snap/concentration/x13/run: error while loading shared libraries: libSDL2-2.0.so.0: cannot open shared object file: No such file or directory" [01:24] so if i go "/snap/concentration/x13/run" it works [01:25] swluo: in your command wrapper, dump env using 'env' command and inspect the vars. compare your current LD PATH and see if where libSDL2 resides now is in the snap's paths [01:25] are you running as root or regular user? and is this a snap you are running via the 'try' command or is it installed? [01:27] i'm regular user [01:27] and its being installed everytime [01:28] swluo: i just did a search on google for 'snapcraft libsdl2' and came across your SO question, lol [01:28] yeah ahaha! [01:28] i'm at a hackathon soo time is kinda important [01:29] PR snapcraft#1106 opened: tests: check the CLA on all the commits [01:29] anyways how do you do a dump? [01:29] from the command wrapper [01:29] swluo: add the line 'env' [01:32] swluo: ok, so: can you check to see if your stage/ has the library files? if it does (and the prime/ does not), you need to manually specify that they are copied over into the prime/ [01:32] i don't have any stage library files [01:32] where do they exist at all? how is it building? [01:33] so i think i might need to manually copy it into prime [01:33] its building all from parts [01:33] its all building from just one make file [01:33] yeah, at each stage, you can specify which files to copy over to the next (or something like that) [01:34] interesting yeah ok i'll try that thanks [01:34] so basically we're back to the original idea of just shipping the library file with teh snap then [01:34] ahah [01:34] that's how it would have to be done, though... [01:34] unless you are creating a statically linked binary [01:35] mhmm ok maybe i'm just understanding it inocrrectly then [01:35] i think (and i'm not certain) that snaps are supposed to be runnable standalone (as though all necessary libraries are included with them) [01:35] mhmm no that makes sense let me try some things out [01:35] you've been great [01:35] cheers [01:38] swluo: plz let me know if you get it working, good luck at the hackathon! [01:38] yeah i'll update it here [01:38] are you a fulltimer or a student? [01:40] swluo: fte [01:41] where you working? i'm coop at blackberry rn ahahahah [01:41] swluo: at one of those big companies that no one likes [01:42] there are so many of them, now that i think about it [01:42] ahahaha would you do something else if you could? [01:43] swluo: why do you ask? [01:43] idk if this is the stuff i want to do in the future [01:43] swluo: i'm in charge of my self, atm, so i'm fine with how things are - i would not trade it, perhaps excepting for 50 mil [01:43] like i'm good at it and its good money [01:44] but i "love it" [01:44] don't* [01:44] swluo: take your computer to a relationship counselor [01:44] tell the counselor that you've fallen out of love and need to rekindle the spark [01:44] and like i'm just starting sooo its aiiyaaah [01:44] mhmm rando strangers on the internet that my mom says i shouldn't talk to? [01:45] swluo: you should read "Disciplined Minds: A Critical Look at Salaried Professionals and the Soul-battering System That Shapes Their Lives" [01:46] or at least the wiki page on it [01:46] damn the first review on amazon hit me like a truck. [01:46] thanks for the advice ahah [01:46] actually, nvm - wiki page is terrible [01:47] i just brought the book [01:47] ... see this is what happens when you have too much money and no girlfriend to spend it [01:57] btw oky thanks [01:58] i figured it out you're right [01:58] i included all the libraries using a stage [01:58] https://developer.ubuntu.com/en/blog/2016/11/16/snapping-qt-apps/ [01:58] cheers [02:00] haha, awesome === markusfluer1 is now known as markusfluer [03:01] just updated corebird-diddledan to corebird-1.4.2 === chihchun_afk is now known as chihchun [07:19] PR snapd#2788 closed: store,osutil: use new osutil.ExecutableExists(exe) check to only use deltas if xdelta3 is present [07:31] PR snapd#2780 closed: tests: increase snap-service kill-timeout [07:36] PR snapd#2760 closed: merge release 2.22.1 into master [08:10] pstolowski: hi! Got a minute to talk about interface hooks? [08:12] mardy, hi! sure [08:13] pstolowski: so, I finally succeeded in getting my hook invoked :-) [08:14] mardy, great! :) [08:14] pstolowski: now the next question is, how to get information about the client, from within the hook of the socket [08:15] pstolowski: I tried with "snapctl get", but it failed to read the attributes set on the plug [08:16] pstolowski: I'm running this: snapctl get --plug :online-accounts manifest [08:17] pstolowski: where "online-accounts" is the name of the interface, and manifest is an attribute set on this interface in the plug [08:18] mardy, can you show me a complete hooks/ content? [08:18] pstolowski: and I get this on stderr, when connecting: error: cannot add authorization: open /home/mardy/.snap/auth.json: permission denied [08:19] mardy, that should generally work in my branch (i've a spread test with similar setup) [08:19] pstolowski: I'll push the branch in a minute, I'll ping you [08:21] pstolowski: bzr branch lp:~mardy/webapps-core/iface-hook-test [08:22] pstolowski: the socket is snap/amazon/snapcraft.yaml [08:22] pstolowski: the plug is snap/facebook/snapcraft.yaml [08:23] mardy, socket == slot ;) [08:23] * pstolowski was slightly confused for a moment [08:23] pstolowski: indeed :-) [08:31] mardy, no hooks files there, did you forgot to commit them? [08:32] pstolowski: ehm... :-) [08:35] pstolowski: ok, please pull again [08:37] PR snapd#2791 opened: store: use xdelta3 from core if available and not on the regular system [08:52] mardy, ok [08:52] mardy, so, the problem is [08:53] mardy, you want plug and slot names there, not the interface names; so this will be 'oa', not online-accounts. that applies both to the :names you pass to snapctl, and to the names of the files under hooks/ [08:56] mardy, or rename oa to online-accounts [08:56] pstolowski: right, makes sense [08:57] pstolowski: thanks a lot, I'll try that [08:58] mardy, np. see my test snaps under tests/lib/snaps/basic-iface-hooks-* (in my MP) if in doubt [08:59] pstolowski: btw, would it be possible to get an implicit attribute with snapctl, which is the name of the connecting snap? [09:00] pstolowski: I mean, suppose that that plug doesn't declare any attributes; could the slot hook still infer some info about who's trying to connect? [09:01] pstolowski: the use-case is that we want to make sure that the client really is what it claims to be [09:02] mardy, i see what you mean. yes that's easy to do, i wonder if env variables would be good for that. i'll bring it up with niemeyer [09:03] pstolowski: thanks [09:53] PR snapd#2763 closed: store: retry on 502 http response as well [10:04] PR snapd#2761 closed: vendor: move gettext.go back to github.com/ojii/gettext.go === chihchun is now known as chihchun_afk [11:22] hi === jamespag` is now known as jamespage [11:44] PR snapcraft#1106 closed: tests: check the CLA on all the commits [11:47] PR snapcraft#1105 closed: tests: rename the integration test snaps [11:56] PR snapcraft#1099 closed: catkin plugin: don't pass args to setup.sh [12:05] PR snapcraft#1107 opened: meta: correct the deprecation for `setup/gui` use === hikiko is now known as hikiko|ln [12:33] ogra_: heya [12:33] lool, yo [12:33] ogra_: what's the cleanest way to put a GRUB config snippet (override kernel cmdline) with the x86 images? [12:34] create your own gadget [12:34] is there no local way? [12:34] well, you asked for the cleanest :) [12:34] (I need it to survive upgrades) [12:34] you can surely just hack up /boot/grub/grub.cfg [12:34] ogra_: hehe, yes [12:34] we dont update bootloader configs on gadget upgrade currently [12:35] so whatever you do there should persist [12:35] ogra_: would you have an upboard by any chance? [12:35] nope, never heard of it [12:35] kind of a rpi from intel [12:35] http://www.up-board.org/ [12:36] v2 isn't out yet [12:36] ah [12:38] some guys using it have trouble forcing the CPU to max freq, I'm trying to let them set cmdline options to disable it [12:41] lool, wont work ... we force the ondemand governor [12:41] from an ancient init.d script [12:42] (see /etc/init.d/ondemand ) [12:42] ogra_: well unless we disable it from the kernel cmdline, no? [12:42] so the CPU will always scale down .. what they could do is build their own kernel with only performance in it [12:43] I was actually thinking of disabling the underlying implementation rather than the governor, /me digs the name [12:43] the script reads /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors [12:43] intel_pstate=disable [12:43] if you can make it not appear there it should work [12:44] ogra_: for some reason, they can't even set the "performance" governor on this board (it appears, but can't be selected) [12:44] my devices here use ACPI, but they have a more recent Intel embedded CPU which does this pstate stuff [12:44] hmm, thats weird ... [12:45] yeah, i'm not very familiar with pstate vs cpufreq yet ... i'd ask cking [12:46] (i dont really have newer intel systems here, only ARMs :) ) [12:47] well ARM is the new Intel! [12:47] soon we'll be looking at some other architecture which is more embedded and wants to displace ARM! ;-) [12:47] hehe [12:50] lool: let's skip mips and go to risc ;-) [12:50] no risc, no fun [12:51] but low-risk risc is fun [12:52] lool: just get a reflex hammer and strike arms elbow that'll displace it [12:54] zyga: I was thinking something lower tech like stones [12:54] take two piles of stones together to make an addition [12:54] remove stones to make a substraction [12:54] throw stones to make a function call [12:54] ubuntu for forests and quarries? === hikiko|ln is now known as hikiko [13:04] PR snapd#2792 opened: tests: add spread test for delta downloads [13:28] PR snapd#2779 closed: tests: gruntwork backend and suite; task for sync snapd with vendor [13:49] hello #snappy. Can I get help here in pushing packages to the Ubuntu Store ? I have this package with confinement classic that I cant push [13:59] anyone can help me with this ? :) https://myapps.developer.ubuntu.com/dev/click-apps/6815/rev/4/ [14:00] join [14:41] https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1662181 is this expected behaviour? People have to enable each alias individually? [14:41] Bug #1662181: Aliases didn't enable out of the box [14:42] zioproto: hello, i think jdstrand is the one to ask about that - I note he already replied to one of your uploads though. [14:43] ogra_: when did we drop ppp from the core snap? [14:43] ogra_: we have a dependency on it from the modem-manager snap [14:43] that is why we created the ppp interface [14:44] popey, do you mean 'This snap is using 'classic' confinement. At this time we have the technical implementation for how to implement classic confinement but the processes for when to grant acceptance in the store is still being worked out. This is actively being discussed and we'll get back to you once the store acceptance policies are defined.' ???? [14:44] popey, that is a bot answering [14:45] zioproto: no, jdstrand is a person :) [14:46] ooh, speak of the devil [14:46] jdstrand: when you have a moment, zioproto is asking about https://myapps.developer.ubuntu.com/dev/click-apps/6815/rev/4/ === ara_ is now known as ara === ara is now known as Guest93169 [14:54] popey: that is actually something for ev [14:56] ah okay. [14:56] thanks [14:56] np [15:04] who is ev ? [15:05] zioproto: evan, why? [15:05] zioproto: I'm discussing with him, I'll get back to you asap [15:05] okay [15:06] jdstrand: hey, I'm ill today; if you have some time please look at C patches, otherwise I'm semi-useless and not making much code [15:06] jdstrand: I know that the kernel has a way to convey bind mounts to userspace now [15:06] jdstrand: I'm coding a routine that does that [15:11] PR snapd#2793 opened: Add Maliit input method interface [15:11] PR snapcraft#1103 closed: meta: support for the environment keyword [15:14] zyga: hope you get better soon [15:16] thanks [15:17] PR snapcraft#897 closed: pluginhandler: use an alternate location to organize [15:17] PR snapcraft#1064 closed: pluginhandler: support colliding with directories [15:19] mterry: hey, working through the unity8-session store reviews. note that until the PR lands, I don't think we should issue a snap declaration for unity8 (I'm not sure of the side effects that would have on systems without unity8). I see you already are using only 'mir', and I issued a snap declaration for that [15:20] jdstrand: sorry, you mean allowing unity8-session snap to have those slots? [15:20] mterry: I also see that you are using top-level 'slots'. This gives all commands PermanentSlot policy for the mir server. I'm quite sure you do not want this. Please add 'slots: [ mir ]' to the command that needs it [15:20] PR snapcraft#904 closed: cleanbuild: use pylxd instead of lxd command line [15:21] mterry: unity8-session is now allowed to use slot mir [15:21] mterry: I think we should wait for it to slot unity8 until the PR lands [15:21] jdstrand: yeah that was because I needed to talk to tedg_ about which of the commands actually need it, but noted [15:21] jdstrand: yah agreed -- I took out the slot [15:24] mterry: you are going to receive a few rejection emails until we hit the upload that only slots mir [15:25] Huh... I was under the impression I had already built and uploaded one of those [15:25] it's going to take a few minutes [15:25] * mterry rebuilds a new snap [15:25] I mean, I did that on Friday [15:26] mterry: you did, but the way the store works is this is a queue of uploads. I need to reject each one that is queued before it [15:26] oh ah [15:26] * mterry doesn't build a new snap then [15:27] it'll be a few minutes before we are there (fyi, the store team will be improving this process for reviewers) [15:35] kgunn, http://imgur.com/a/ddqjQ Pi2 ubuntu-core running the unity8-session snap !!! [15:36] (right monitor) [15:36] nice! [15:37] there are font issues and the top panel is completely transparent .... tha console is also spilled with lots of failing/respawning upstart jobs [15:37] ogra_: i didn't think pi2 had the right stuff for gpu... [15:37] but its the first time i get something on display with that snap [15:37] only pi3 [15:37] very cool [15:37] i made sure both do now :) [15:37] after all the changes were identical [15:37] and yeah, lots of spew [15:37] re upstart jobs [15:37] yep [15:56] nessita: fyi, bug #1662218 [15:56] Bug #1662218: Please email store reviewers with changes to classic confinement [15:56] nessita: and hi! [16:00] jdstrand, hi! I would have thought we did that already, but let me check and/or raise the issue. Thanks! [16:00] roadmr, ^ [16:01] nessita (roadmr): if you look at the 'Package declaration update' email, it lists plugs, slots, auto-aliases and refresh-control, but not classic. I can't recall ever seeing and email for changes to classic confinement [16:01] right nessita jdstrand maybe we did that for the other things and not classic... ugh sorry [16:04] jdstrand: Thanks for the approval on the juju-crashdump snap. I had a question re: your comment about LP builds. [16:05] I tried to have it build on LP, but it's failing except on ppc64el: https://code.launchpad.net/~johnsca/+snap/juju-crashdump [16:06] cory_fu: that seems like a question for the LP team based on, for example, https://launchpadlibrarian.net/305075153/buildlog_snap_ubuntu_xenial_arm64_juju-crashdump_BUILDING.txt.gz [16:07] known bug [16:07] https://bugs.launchpad.net/launchpad-buildd/+bug/1650946 [16:07] Bug #1650946: unhelpful error when building a classic snap: classic confinement requires the core_dynamic_linker to be set [16:08] cjwatson: Ok, thanks [16:09] How long after releasing a snap to the stable channel should I be able to see it in `snap find`? Is there something I can run locally to force a refresh? [16:09] Planning to attack that later this week; just need to get an ack from Sergio on the basic approach first [16:13] nessita, might you be able to transfer ownership of the juju snap between ubuntu one accounts? [16:13] balloons, hello! yes, I can do that. What would be the target account? [16:14] balloons, also, please send me an email with the request so I can keep track of the transfers, I'd need source account and target account, with some consent from the target account in there [16:17] nessita, will do. I'll cc both accounts and yourself so you can see consent [16:18] balloons, thank you! [16:28] stokachu, here [16:28] whats the best way to get someone who is has ubuntu-core snap installed migrated to the latest core snap? [16:29] they're on snapd 2.21 [16:29] he can't remove the ubuntu-core snap and snap refresh/install does not seem to handle upgrading from ubuntu-core to core [16:30] would a simple apt-get remove snapd and reinstall work? [16:34] zyga, ^ any idea here? [16:35] stokachu, I removed and reinstalled and now I can install core (previously installed snaps were gone) [16:35] aisrael, ok cool [16:35] may be worth trying to reinstall conjure-up now [16:35] before you do a build [16:36] aisrael, ^ [16:36] stokachu, yes, that works but removes all already installed snaps alongside ... so handle with care ;) [16:37] ogra_, is there any upgrade path? [16:37] stokachu, There were a few leftover symlinks in bin I had to remove. With those gone, conjure-up installed and works [16:37] aisrael, \o/ [16:37] mvo works on that ... not sure whats the target release for it though [16:42] stokachu: you want to transition ubuntu-core to core? [16:42] mvo, yea we had a user aisrael who still had ubuntu-core on his system [16:42] they already did by reinstalling snapd ... [16:43] mvo, yea he reinstalled snapd which wasn't an issue for him but i was curious what the upgrade path is [16:43] stokachu: please try the snapd from -proposed or run "snap refresh --candidate ubuntu-core" for re-exec magic [16:43] mvo, ah ok, ill make a note if anyone else runs into that [16:43] stokachu: thank you, please do. keen to get feedback on the auto-migration :) [16:43] mvo, is there a way i can manually reproduce? [16:44] can i snap install ubuntu-core on a fresh xenial system with 2.21? [16:44] stokachu: so far it works well but it seems relatively few people are astill having ubuntu-core [16:44] mvo, yea this was the first case i ran into where someone was still on ubuntu-core [16:44] stokachu: yes, if you have nothing installed you can snap install ubuntu-core [16:44] mvo, cool ill give it a shot and let you know if i run into an issue [16:44] stokachu: then you can upgrade your snapd or install a newer ubuntu-core that contains the re-exec magic and it will auto-transition you [16:44] stokachu: great, thank you [16:45] mvo, ah so his issue was he couldnt snap install ubuntu-core [16:45] or snap refresh ubuntu-core [16:45] stokachu: ohh [16:46] mvo, snap refresh just told him no updates available [16:46] aisrael: hey, if you were affected by the problem with not being able to install/refresh ubuntu-core, could you please pastebin "journalctl -u snapd" (or mail that output to me). that hopefully gives me a clue why the system behaved strangely [16:47] stokachu: snap changes should show a transition, it may take up to 10min though to start [16:48] mvo, oh i learned a new command [16:48] stokachu: please paste the snap --version output here so that I can check if the version you have supports the auto migration already [16:48] snap 2.21 [16:48] snapd 2.21 [16:48] series 16 [16:48] ubuntu 16.04 [16:48] stokachu: snap changes is cool, you can also see the individual changes via "snap change N" (with N being the one you want to see) [16:49] stokachu: aha, that is not recent enough, you will need 2.22.X, either from xenial-proposed or "sudo snap refresh --candidate ubuntu-core" [16:49] stokachu: with either one of those the next snap --version output should be higher [16:49] mvo, ah that is it then [16:49] yea we're both on 2.21 still [16:50] stokachu: aha, ok. the journal output for snapd from the broken system should have hints what went wrong. i need to leave for dinner now but you can mail it to me at mvo (at) ubuntu.com [16:51] and I have a look (or I will read scrollback when I return :) [16:51] mvo, sure ill get another system going [16:53] ping elopio: test from quassel-webserver snap [17:04] mvo, https://gist.github.com/battlemidget/e55498a759f14b865c2bfe1e410a022c thats where i ended up at [17:08] stokachu: thanks, lets talk tomorrow but I think snapd 2.22.X will fix it automatically for you [17:08] * mvo waves and leaves for dinner [17:08] PR snapcraft#1108 opened: Add support for LTS Channels [17:09] yea installing snapd 2.22 from proposed cleaned up my core snaps without an issue [17:09] doh he left already [17:16] I released my snap to the stable channel a couple of hours ago, but still can't install it. Re-released via snapcraft per the docs and it still doesn't work. http://pastebin.ubuntu.com/23942129/ Any suggestions? [17:17] cory_fu, did you check on the store page ? [17:18] ogra_: I originally released it via https://myapps.developer.ubuntu.com/dev/click-apps/6876/ and it still says that it's published [17:18] and it is published in the stable channel ? [17:18] ogra_: Yes (see pastebin) [17:19] ogra_: NB: it is a classic snap, if that makes a difference [17:19] oh, it surely does ... i think classic snaps need manual approval in the sotre [17:19] *store [17:19] ogra_: It was approved by jdstrand [17:20] jdstrand: browser-support is triggering a manual review for a daemin app, I believe I needed it for NodeJS (or somethingJS) that's used by the daemon [17:20] is there a security concern about allowing that interface for daemons without review? [17:21] * mhall119 thinking back, I believe it wasn't NodeJS itself, but something else couchdb does with js, so maybe there aren't that many cases where this will happen [17:36] ogra_: Any other advice? :/ [17:36] cory_fu, well, if the version shows a green box in the UI and you have a channel listed in the details of the version then i dont know [17:42] ogra_: Oh, I figured it out! I had only released the ppc64el version that had managed to successfully build on LP, so it wasn't showing up for me due to arch mismatch [17:42] aha ! [17:42] yeah, i see it :) [17:43] congrats ! [17:43] ogra_: Thanks, and thanks for your help [17:43] the store UI is an adventure game at times :) [17:44] :) It told me the info I needed, but it just wasn't very prominent [17:44] yep [18:02] PR snapcraft#1109 opened: LP #1662240 (define post-stop-command) [18:06] mhall119: note, this is a warning, not an error (no difference for human review of course). the browser-support interface is a transitional interface for full-on web browsers (eg, chrome, firefox, webbrowser-app, etc) and it would be unusual for a server to embed a complete web browser. can you remove 'browser-support' and show me the denials? [18:17] PR snapcraft#1107 closed: meta: correct the deprecation for `setup/gui` use [18:22] mterry: ok, all revisions with only slots: mir are approved but not released [18:22] (and the other rejected) [18:23] jdstrand: = Seccomp = [18:23] Time: Feb 6 13:22:11 [18:23] Log: auid=4294967295 uid=0 gid=0 ses=4294967295 pid=32209 comm="couchjs" exe="/snap/couchdb/x15/rel/couchdb/bin/couchjs" sig=31 arch=c000003e 141(setpriority) compat=0 ip=0x7f465ca61177 code=0x0 [18:23] Syscall: setpriority [18:23] Suggestion: [18:23] * add one of 'browser-support, process-control' to 'plugs' [18:23] jdstrand: I don't think I have access myself to the store page -- will future auto-uploads pass through without the manual review process? [18:23] fwiw, it's only happening when I try to run couchdb's builtin health check [18:23] jdstrand: (thanks for clearing the queue btw) [18:24] mterry: yes. if you want, I think I can press the 'release' button [18:24] jdstrand: sure that saves a rebuild, thanks! [18:25] mhall119: use process-control instead, not that 2.23 will have policy that may allow you to drop process-control [18:25] s/not/note/ [18:27] thanks jdstrand [18:28] Is there a way to see what platforms a particular snap is available for? [18:29] mterry: ok, released all to 'edge' [18:30] cheers [18:36] Would that be a no?:D [18:41] PR snapd#2784 closed: image: check kernel/gadget publisher vs model brand, warn on store disconnected snaps [19:05] stokachu, did you see my note about bash completion with your snap? [19:13] balloons, nah [19:13] balloons, you get it working? [19:13] stokachu, I couldn't get what you'd check in to build, but I believe it will work with the addition I made [19:14] balloons, you got a diff or PR for me? [19:14] stokachu, sure. Let me find the repo [19:17] balloons, if we get this working are we advertising pure snaps for the next release announcement? [19:17] it has my vote stokachu [19:17] yay [19:17] balloons, im getting a testsuite done this week too [19:20] balloons, ill take a diff to whatever is easier for you [19:20] or just the entire file and ill merge it [19:21] stokachu, basically you are missing the bash completion file for 'juju'. It needs to be named 'juju' [19:21] as that is what it will go looking for. The 2 bins we're shipping (well, one bin for you I guess?) is juju and juju-2 [19:21] found the diff [19:22] stokachu, https://pastebin.canonical.com/178372/. You can see I had trouble with the source dump location. But I trust the rest more or less makes sense [19:22] stokachu, essentially cp etc/bash_completion.d/juju-2 $SNAPCRAFT_PART_INSTALL/usr/share/bash-completion/completions/juju [19:23] I *think* that will make it work [19:24] ah i think i did that earlier [19:24] lemme double check [19:26] balloons, building again but i did already do this one min [19:26] balloons, make sure you're using snapcraft from master [19:26] just git clone https://github.com/snapcore/snapcraft; and access snapcraft/bin/snapcraft [19:28] balloons, once you do that then clone https://github.com/conjure-up/conjure-up and try to build again [19:28] that should work [19:31] stokachu, ahh, the snap/snapcraft is supported now [19:31] yea [19:32] cool, so I can play more if needed [19:32] yea im building the latest now and going to test it again [19:45] balloons, yea that change didnt work either :( === kay_ is now known as Blu2 [19:45] no idea what im missing [19:46] ohmygiraffe update :D [19:46] anyone else familiar with bash completion inside a snap? [19:47] stokachu: I've been wondering how to implement that! [19:47] we copy our files here: https://github.com/conjure-up/conjure-up/blob/master/snap/snapcraft.yaml#L63-L65, and source them https://github.com/conjure-up/conjure-up/blob/master/snap/wrappers/juju#L8-L9 [19:47] mcphail, yea we're hitting some kind of issue even after we source the completion [19:48] mcphail, ^ should give you some kind of idea of how we're doing it if youre curious [19:48] just doesn't work quite yet [19:48] stokachu: cheers! I'll have a look [19:49] stokachu: that way isn't going to work, though, is it? Surely that will just source the completion from the subshell, rather than the shell you're using to call the program? [19:50] mcphail, ah [19:50] yea bash completion would need access to the binary and not the wrapper [19:51] hmmmm, what if i put it in /etc/bash_completions.d/ [19:51] stokachu: completion is done by the shell you use to call the snap. But completion isn't loaded into that shell. You'd need access to a completions directory, as you say [19:52] (and that isn't allowed, afaik) [19:52] mcphail, we use a classic snap so maybe we can? [19:52] stokachu: aah. I haven't looked at classic snaps yet [19:53] does bash completion have a ENV variable we can alter? [19:53] I noticed that snaps are not allowed to link to a website using the default browser [19:53] i couldnt find anything in the docs about it [19:54] stokachu: you know /etc/bash_completions.d/ is deprecated for all packages anyway? [19:54] mcphail, ah i do now :) [19:54] `pkg-config --variable=completionsdir bash-completion [19:54] should give the up-to-date one [19:55] ah perfect [19:55] so we put those completion in that directory now [19:55] but that's within the snap [19:56] Yes. Nothing useful is going to see that [19:57] and there doesn't seem to be a way to make bash completion look in an alternative directory [19:57] I think there needs to be a hook for completions [19:58] stokachu, I also got the snap built, but it's not providing juju [19:58] balloons, you gotta run snap alias [19:59] balloons, and make sure you dont have the deb juju installed otherwise it'll make you think you got it working :) [19:59] stokachu, sorry snap lied: snap list aliases error: no matching snaps installed. Trying again, I suddenly see the aliases for conjure-up and lxd [19:59] balloons, ah [20:01] stokachu, nothing in /usr/share/bash-completion/completions/ [20:01] so the hook didnt work. this is the problem I had [20:01] balloons, yea they would be in $SNAP/usr/share/bash-completion/completions [20:01] they can't go there. They need to be in the right place [20:02] so you could try taking out $SNAPCRAFT_PART_INSTALL [20:02] it'd have to go in a different hook though not the install [20:03] i think mcphail is correct though there needs to be a hook for it [20:04] they have to live outside of the snap [20:04] balloons, we could put it in the hooks/configure script [20:04] stokachu, yes, I was trying in the configure hook [20:05] I thought you were too [20:05] oh lemme check [20:05] maybe i did [20:05] I just hit build, I've no idea :p [20:06] building now i didnt have it in there [20:10] balloons, pushed a new update to the master branch [20:10] that copies the files to the hosts system [20:11] balloons, so that section where it's detecting which juju binary to use [20:12] balloons, https://github.com/juju/juju/blob/staging/etc/bash_completion.d/juju-2.0#L339-L350 [20:12] balloons, do you need to add the /snap/bin/juju path too? [20:13] balloons, yea changing the last line's path to /snap/bin/juju makes it all work [20:14] for realz? [20:14] balloons, yep [20:14] woot [20:14] balloons, so if you could get the updated completions pushed to branch 2.1 ill rebuild with it all [20:14] or i can just include it as a file in the snap [20:15] i can also make a new section and just pull from juju master for the completion stuff [20:15] PR snapcraft#1101 closed: misc: consistently use a dash for copyright years [20:16] stokachu, hmm, let's have a think [20:16] I need the same for the juju snap [20:17] balloons, yea [20:21] balloons, worse case i can do some sed magic to replace /usr/bin/juju with /snap/bin/juju [20:23] stokachu, ok, so it's what I was thinking. We should just add a check for /snap/bin/juju as well [20:23] It checks $gopath as well for example [20:25] balloons, yea [20:26] PR snapd#2789 closed: overlord/devicestate: backoff between retries if the server seems to have refused the serial-request [20:28] stokachu, awesome. So we have a complete snap story then? [20:28] balloons, yep just as soon as you update the bash completion in the upstream code [20:28] i can pull that down and install it [20:28] I'll make a PR with it and the tweaked snap [20:29] balloons, cool once that lands we'll be in good shape [20:29] stokachu, did you push what worked for you for conjure-up? [20:29] ill create a seperate section to pull from master for it as well unless you think it'll make it into the beta5 branch? [20:29] balloons, yea thats pushed upstream [20:30] stokachu: you got it working? [20:30] mcphail, yea, basically what you said we had to put it in the hooks/configure in the snap build [20:30] and install it to /usr/share/bash../ [20:31] stokachu: aah. Is tehre any way to clean it up if the snap is removed? Thinking we really do need some form of hook [20:33] mcphail, unfortunately there isn't a cleanup hook for snaps, it has been asked a few times to incorporate that so i think that discussion is ongoing [20:33] a uninstall hook would be nice [20:33] i think the fear is making building snaps to complicated by going down that road [20:33] stokachu: shame. Would be nice to have that. I'll need to check out these classic snaps. Seems to give more freedom [20:34] mcphail, yea tons of freedom though at a cost like what you see here [20:34] Ideally, it would be good to have a hook to deal with completions/man pages etc [20:35] mcphail, so i think mayb esomething like https://github.com/snapcore/snapd/wiki/Content-Interface [20:36] though i don tknow if that addresses the issue of putting it outside the $SNAP [20:39] stokachu: Don't think that is a complete solution, but is certainly a start. Would be interesting to have a virtual filesystem overlaid on the completions directory which would give access to these slots [20:40] that would be cool [20:41] balloons, ping me when you get a pr up so i can subscribe to it [21:02] heya there. I have an application that builds a binary folder with plenty of assets it as well needs to start the executable in the bin* folder. I didn't yet understand how am I supposed to copy the folder from my parts into the stage and the command does not ship a make install command [21:03] PR snapd#2794 opened: tests/lib/fakestore/refresh: some more info when we fail to copy asserts [21:04] Fohlen: Hi! Is the build system unique? [21:05] qengho: it's conan [21:05] and produces cmake in the end [21:05] https://www.conan.io/ [21:05] Ah, I know cmake. [21:05] basically what I would like snap to do is copy the bin folder and make it executable [21:07] Fohlen: Put your snapcraft.yaml in a pastebin so we can see. Someone, perhaps not me, might have an idea what you need to do. [21:08] http://pastebin.com/HEb3z1Sv [21:12] PR snapcraft#1110 opened: Show error messages for snap processing errors [21:15] Is ./run_checks no longer used for snapd? It's reporting bad formatting in master [21:25] Fohlen: Hi. First, you probably don't need your "stage-packages" as staged packages, because those are ones that go into your snap. You only need most of those for building. That's a different object, "build-packages:", I think. [21:26] Fohlen: Then, your filesets: object doesn't do anything. That just gives some things a name "binaries", and you don't use that name anywhere. [21:30] qengho: http://pastebin.com/Dfebej1d [21:30] trying this now. [21:39] PR snapd#2795 opened: Only add aliases field when we have aliases [21:48] PR snapd#2794 closed: tests/lib/fakestore/refresh: some more info when we fail to copy asserts [21:48] which org is behind snapcraft, btw? [21:49] is it canonical? what is yocto? [21:51] PR snapcraft#1111 opened: tests: rename the waf test snap [22:21] oky, indeed, canonical is behind snapcraft [22:27] kyrofa: ok, interesting. is there a discussion of the potential downsides of snapcraft that i can refer to? just things to know before i use it [22:27] (common pitfalls would be useful, too) [22:28] oky, all the docs are on snapcraft.io [22:28] i think i've read a lot of them, curious to find things like project philosophy and motivation [22:28] (i do see snapping philosophy doc, don't worry) [22:29] oky, perhaps its README would be helpful? https://github.com/snapcore/snapcraft [22:30] kyrofa: it is, yes - but it seems like perhaps there were a lot of design docs or internal discussion that [22:30] is unavailable [22:31] oky, I'm not really sure what you're looking for then, I'm sorry [22:32] kyrofa: things like: "what is current support on other distributions", "what are potential downsides of using snaps", "how do pin a snap to a specific version", "who is doing the vetting" [22:32] oky, snapcraft is only a packager of snaps. It sounds like you're looking for the philosophies behind snaps themselves [22:32] i really like what i am seeing about snaps, they appear to be recipes that create statically installable packages akin to .dmg files [22:32] kyrofa: yes, that must be it [22:33] That's like expecting pbuilder to document the rational behind the deb format [22:33] kyrofa: so, there's a seperate site for docs on snaps? [22:33] kyrofa: i'm not blaming or accusing, just looking for more info - and yes, i am confused about the two names. i've seen snappy, snap, snapd and snapcraft. the only docs i've read are the snapcraft ones [22:34] oky, there isn't one place that answers all your questions, but I can point you in a few different directions to obtain answers [22:34] kyrofa: thanks! [22:35] oky, first of all, the current distro support matrix is here: https://github.com/snapcore/snapd/wiki/Distributions [22:36] PR snapcraft#1112 opened: core: setup core to support classic confinement [22:36] oky, as far as potential downsides, there are a few AskUbuntu questions about them but the answer is really opinion-based [22:37] oky, there are a few downsides I can list off: dependencies are bundled so they tend to be larger than, say, a deb would be. Developing them can be a little different because, as you noted, they are read-only images with defined writable areas and not all software is used to working that way [22:39] I'm not sure pinning is supported, but there are some features coming that will get you closer [22:39] As far as who is doing the vetting, I'm not quite sure I understand the question [22:40] kyrofa: the concern with 'pinning' is regarding having a set of packagers with expertise vetting their work vs. anyone self publishing. with packagers, its a little more assured that new version should not break things, but self publishing leads to weirdness with deps between parts, etc [22:40] oky, there are no dependencies with snaps, at least not in that sense [22:40] pinning (or custom repos) appears to be a compromise to sticking to a specific version (and having that version available at some later data, ideally), which is why i asked about it [22:41] kyrofa: even if there are no direct deps or compile time, there inevitably will be deps or linked packages (imo) [22:41] oky, of course, but they're contained within the same snap [22:41] kyrofa: interesting, ok - so, the store would have many different versions for each package depending on the config desired [22:42] kyrofa: thanks for taking the time [22:43] oky, that depends on the package I suppose [22:43] oky, for example, there's a Nextcloud snap that bundles mysql and apache. There is _not_ a nextcloud snap that uses nginx instead [22:44] Nothing is stopping that, but nextcloud only supports that one setup [22:44] kyrofa: i'm thinking of an example more like: package + data dependencies. maybe there is a package of geoip data and you can buy addon packs [22:45] anyways, it's all tangential - not that important to my other questions [22:46] oky, that's probably a use-case for the (very limited) sharing that can happen between snaps. That's called the `content` interface [22:46] it seems like the snaps should ideally prevent lots of bugs and make it so that security flaws in out dated libraries are still contained in what damage they can do [22:46] Indeed [22:46] so in the end, its still an improvement in security (maybe) [22:46] That's the idea anyway [22:47] i was trying to imagine what happens when the next large networking bug comes along and threatens a bunch of packages [22:50] oky, well, let's walk through that using the Nextcloud example [22:51] oky, let's say the bug was so bad as to grant a shell with the Apache permissions [22:51] lsb_release crashes on Ubuntu Core 16 - where should that be reported? [22:51] Which is pretty much as bad as it can get [22:51] What happens? [22:52] http://pastebin.ubuntu.com/23944029/ [22:52] kyrofa: how does nextcloud enforce that the user is 'apache' user? [22:52] i'm looking through https://github.com/nextcloud/nextcloud-snap/blob/master/snapcraft.yaml to see how they manage permissions [22:52] oky, nope, it's root [22:53] oky, however, even though it's root it's still under confinement [22:53] oky, which means they can access the network and the writable areas of the snap [22:53] oky, they can't alter anything contained within the snap because it's by definition read-only [22:53] kyrofa: and the confinement is via SElinux? ima? app armor? [22:54] appamor, seccomp, and cgroups [22:54] oky, the worst they can do is mess with the data of the nextcloud snap. They can't touch the rest of the system [22:57] oky, and there's nothing they can do to prevent the next snap update from happening, which would hopefully contain a fix [22:57] kyrofa: and does app armor support integrity checks via hardware? (TPM, for example) [22:58] That I don't know [22:58] ok, it's also tangential [22:58] PR snapd#2796 opened: Fix checks failing on code formatting [22:59] oky, also, to clarify terminology: snapd is the daemon behind the snap format. It's in charge of mounting snaps into place, running their services, handling updates, etc [22:59] kyrofa: thanks for all the info, i'm looking forward to seeing wider adoption on other platforms [22:59] oky, snapcraft is a packager. It allows one to create snaps [22:59] oky, "snappy" is just referring to the whole system [22:59] kyrofa: ok, i'll try to remember their distinct usages [23:18] Bug #1662357 opened: Can't use lsb_release on Ubuntu Core 16 [23:30] PR snapcraft#1111 closed: tests: rename the waf test snap === wxl_ is now known as wxl === andyrock_ is now known as andyrock === DedSec_ is now known as DedSec === tai271828_ is now known as tai271828 === beowulf_ is now known as beowulf === Dmitrii-Sh_ is now known as Dmitrii-Sh === dragly_ is now known as dragly === petevg_ is now known as petevg === mpontillo_ is now known as mpontillo === plars_ is now known as plars === cargonza_ is now known as cargonza === AndyWojo_ is now known as AndyWojo