=== chihchun_afk is now known as chihchun [07:45] good morning === chihchun is now known as chihchun_afk [10:17] anyone ever saw anything like this: http://paste.ubuntu.com/15204671/? [10:27] dholbach, yeah, thats snappys way to tell you "cant install snapcraft 1.x snaps" [10:28] (or rather "cant install non-squashfs snaps" ) [10:28] ho hum [10:28] sadly the store isnt clever enough to hide them [10:29] now I get http://paste.ubuntu.com/15204710/ [10:30] JamesTait, ^ do you know about this? [10:37] ok... I got to install it now [10:37] for some reason I had to click the "sign package" and the "publish package" button [10:37] (I uploaded it through 'snapcraft upload') [10:37] neat ! [10:38] is that scriptable ? or do you need to interact manually ? [10:38] * ogra_ hasnt tried the upload feature yet [10:38] my one-char summary of it is: 😍 [10:39] oh my [10:43] dholbach, what ogra_ said for your first pastebin. Looking into your second. Sounds like the signing task either failed or hadn't completed when you tried to download. [11:14] good morning (so to speak) [11:34] dholbach, it should be fixed now. One of the units in the pool didn't restart properly. [11:37] thanks [11:41] sergiusens, kyrofa: do you think one of you (or somebody else?) can reply to the "Packaging an OSGi Java app in snappy" mail on the mailing list? === tsimonq2alt is now known as tsimonq2 [13:01] dholbach, from today? [13:01] * sergiusens is just getting up [13:06] sergiusens, no... from quite some time ago - I just noticed that nobody replied [14:01] dpm, you can set SNAPCRAFT_LOCAL_SOURCES when running and it will use your local sources.list [14:05] dholbach, I think I'll have to get back onto using snapcraft, not sure exactly where to start yet. I might have some more questions in the next few days [14:06] dpm, it should be somewhat similar to http://bazaar.launchpad.net/~dholbach/+junk/moon-buggy/view/head:/snapcraft.yaml [14:06] popey also used it for packaging cowsay... iirc his snapcraft.yaml looked quite similar [14:07] just be careful with the 'snap' bit at the end - it's an explicit list of which files to include in the .snap [14:07] best to drop it in the beginning [14:07] * ogra_ recommends to dholbach to call the binary "play" instead of moon-buggy ... so you end up with moon-buggy.play instead of moon-buggy.moon-buggy [14:08] feels somehos more user friendly :) [14:08] so the important bit for me to package ubuntu-calculator-app I guess is to set 'stage-packages', right [14:08] *somehow [14:08] and where do I need to set SNAPCRAFT_LOCAL_SOURCES ? [14:09] dpm, as an environment variable [14:09] ok [14:09] dpm: http://paste.ubuntu.com/15205853/ http://paste.ubuntu.com/15205855/ <- cowsay yaml and shell script [14:10] almost certainly a terrible example of how to make a snap via snapcraft [14:10] it was my first :) [14:10] so just set it to SNAPCRAFT_LOCAL_SOURCES=1 or just define it? [14:10] thanks popey, I'm going to have a go at packaging calculator, see where it explodes [14:10] heh [14:11] you gonna be able to do that with mir etc? [14:11] * popey updates his pi to get latest snapcraft [14:11] ogra_, done [14:12] heh :) [14:12] * dholbach <3 'snapcraft upload' :) [14:12] pindonga that's for you ^ [14:14] beuno, why do I need to publish it manually though? :) [14:14] https://myapps.developer.ubuntu.com/dev/click-apps/4075/rev/8/ [14:15] dholbach, because we're missing the snapcraft publish command [14:15] which is on our plate, please hold :) [14:15] good answer [14:15] hum [14:15] didn't the store auto-publish stuff I uploaded as a click? [14:15] I sort of expected that to happen too [14:15] jdstrand: I see what you did there "gerund-style" :) [14:16] there was a checkbox for clicks to have that happen ... i dont think i have seen that for snaps [14:16] dholbach, it did, but we now have channels, released and architectures [14:16] right [14:16] dholbach, we we need a bit more information on each upload to know where to put it [14:16] I filed a bug so we can have 'snapcraft upload edge' :-) [14:17] great [14:17] we have a sprint next week [14:17] maybe we can knock some of these off [14:17] something we should advertise as a very useful command to add to any CI :) [14:17] it depends on how good you are at international beer shipping [14:17] nooo ! [14:17] zyga: with old snapcraft I was able to generate a .snap by just doing "snapcraft" without argument. Now it seems it does not work. What do I need to type then? [14:17] stop having sprints !!! [14:17] (hello btw!) [14:18] ysionneau, that's fixed in the newest snapcraft [14:18] every time a team has a sprint something serious changes ! [14:18] ah I'm not up to date indeed [14:18] I've got a few commits late [14:18] ysionneau, https://lists.ubuntu.com/archives/snappy-app-devel/2016-February/000622.html [14:18] ogra_, this particular sprint is heads-down-get-things-landed sprint [14:18] I just confirmed the fix in xenial :) [14:18] very cool :) [14:18] beuno, phew :) [14:18] let me git pull then, thanks! [14:18] so I hope the only change is, more stuff works! [14:18] go go go! :-) [14:20] ysionneau: snapcraft snap [14:20] ysionneau: try snapcraft --help [14:21] hm, this didn't use my sources.list, resulting in no download: http://paste.ubuntu.com/15205934 [14:21] dpm, I never used the feature, it's just something sergiusens once told me about... maybe he or kyrofa know [14:23] dholbach, dpm SNAPCRAFT_LOCAL_SOURCES [14:23] don't rely on it though [14:23] yeah, I added it to .bashrc and started a new terminal, didn't seem to work [14:23] I set it to 1 now [14:23] will try that [14:23] zyga: --help was giving me this error : UnicodeEncodeError: 'ascii' codec can't encode character '\u201c' in position 364: ordinal not in range(128) :p [14:23] just prefix teh snapcraft call with it [14:24] good point [14:24] SNAPCRAFT_LOCAL_SOURCES=1 snapcraft snap [14:24] hmm still same error [14:24] ysionneau: oh, that smells like a bug [14:24] sergiusens: ^^ [14:24] ysionneau: file a bug with the backtrace [14:25] ysionneau: but for now, perhaps look at the .yaml file and see if you have some non-ascii stuff there [14:27] that's the entire stack trace : http://pastebin.com/0rpnsNGt [14:27] seems like a docstring issue [14:33] ogra_, zyga, dpm ysionneau heh, we implemented this for launchpad only, probably the reason why it fails (and the reason we don't want people to use it) [14:33] ok, calculator app snap created... what's the best way to examine the contents of the generated .snap file? [14:33] launchpad creates on sources.list [14:33] and that's all we use [14:33] if you put the deb line in sources.list it should work [14:33] that said, don't rely on this please [14:34] dpm: mount it [14:34] sergiusens, I think it's nice to be able to test it locally before you try this on LP, which is where we'll send people for something like this right? [14:35] sergiusens, yeah, otherwise there is no way I can run snapcraft manually to build something out of a PPA, right? [14:35] zyga, what's the best way to mount then? [14:37] ok, just mount $SNAP.snap $LOCATION, then [14:38] contents seem to look ok [14:39] dpm, unsquashfs -l IIRC [14:40] the simple mount command seemed to work [14:40] trying to install the generated snap now [14:43] installed fine, although I'm not sure how to execute it now to execute it [14:43] dholbach: error: no snaps found for "moon-buggy" [14:43] :( [14:43] not sure where the binary went [14:43] popey, moon-buggy.dholbach [14:44] snap find should find that [14:44] moon-buggy.dholbach failed to install: snappy package not found [14:44] I don't know what the plan is there [14:44] hohum [14:44] I dont see it [14:44] is it amd64 only? [14:44] ah yes [14:45] :( [14:45] You suck :) [14:45] I can't play moon buggy on my pi! 😃 [14:45] dholbach, the last line on http://bazaar.launchpad.net/~dholbach/+junk/moon-buggy/view/head:/snapcraft.yaml - why was it needed? was the binary not installed during the snap installation? [14:45] and i cant play it on my dragonboard ! [14:45] * popey builds [14:46] dpm, snap: [..] limits the list of installed files to just the ones explicitly listed [14:46] sadly you cant build it and give it to dholbach with the new snapcraft [14:46] no, but I can upload it [14:46] (since it wil become moon-buggy.popey) [14:46] indeed [14:47] dpm, so you don't install lots of useless files and have huge packages - for the beginning try without it :) [14:47] would be cooler if i could quickly build a binary for dholbach so we dont need different namespaces .... thats quite a drawback of our design [14:47] dholbach, ah, I see yours was just a binary. Yeah, I hadn't used it. So the generated ubuntu-calculator-app was installed, but I'm not sure where :) [14:47] (given he doesnt have arm64 HW) [14:48] dpm, if you mounted it, can't you just run a find in that directory? [14:48] brb [14:49] ah, it's in /snaps [14:50] schnaps ! [14:50] ah, bummer [14:50] "qmlscene: could not find a Qt installation of 'qt5'" [14:50] add qt-default (or whatever it is) to stage-packages? [14:50] stage-packages is your friend === alexabreu is now known as alex-abreu [14:51] qt5-default [14:51] * dpm tries [14:51] you might have to add a few other things to make it happy [14:51] thanks! [14:51] sergiusens: hi! [14:51] brb [14:52] sergiusens: so, trying out the new snapcraft-- lxd seems a rather big dependency-- shouldn't this be a recommends or depends? [14:52] sergiusens: meh, recommends or suggests? [14:53] jdstrand, hm, it ended up as a dependency? [14:53] sergiusens: I've had trouble having lxc and libvirt installed on the same machine for example due to how they've interacted with each other's networking [14:53] jdstrand, darn [14:54] jdstrand, it should not be a dep [14:54] -Depends: python3-apt, [14:54] +Depends: lxd, [14:54] + python3-apt, [14:54] that is 2.3 ^ [14:54] jdstrand, I added code in snapcraft to check if lxd was installed [14:54] * sergiusens prepares 2.3.2 [14:54] jdstrand, I'll remove the dep [14:54] adding it as a dep in the autopkgtests is of course fine [14:54] sergiusens: thanks! :) [14:55] it seems if I add staged packages to snapcraft.yaml and then I try to run snapcraft snap, it skips the staging step? [14:55] oooh. "Can not create a new package with name moon-buggy, multiple origins for moon-buggy are not allowed." when I snapcraft upload :( [14:55] not having lxd and calling cleanbuild will error out nicely with followup instructions [14:55] is there a way to run with a clean environment, or do I just delete the contents of the directory? [14:55] popey, hah, dholbach won you on that name; the logic in itself I will defer to beuno [14:56] sergiusens: might I suggest using Suggests then since Recommends will be installed automatically? [14:56] dpm, snapcraft clean [14:56] but surely it would let me do moon-buggy.popey ? [14:56] thanks sergiusens [14:56] jdstrand, oh, I was just going to remove it completely, but suggests works fine [14:56] I guess it could be dropped altogether... I'll let you decide. I'm totally fine with suggests [14:56] or dropping [14:56] popey, package names work differently in snappy [14:57] popey, that's why I say I defer to beuno [14:57] we won't support developer namespaces for a little bit [14:57] we will, but not for 16.04 [14:57] sorry [14:57] ah, so just uploading manually will work? [14:57] (not via snapcraft upload) [14:58] it won't [14:58] anymore [14:58] dholbach owns "moon-buggy" for now [14:58] *blink* [14:59] beuno: by 'not for 16.04', do you mean 'never for 16.04' or 'not by 16.04 release'? [14:59] jdstrand, the latter [14:59] * jdstrand nods [15:00] I'll start saying "not by April 21st" I think :) [15:00] cause I squatted a couple things myself [15:00] and depending on that answer, I would do different things [15:00] jdstrand, put them up for sale on ebay? [15:01] I should! :) [15:01] yeah, you're buggered if you want to make the next hello-world! [15:01] I'm not saying that's my retirement plan, but... [15:01] (I hope our tutorials don't tell people to do that) :) [15:01] yes [15:01] wow, thats pretty gross [15:01] it's not great, yeah [15:01] cant we bump such a feature to higher prio ? [15:01] we can't, no [15:01] :( [15:02] ok, seems adding 'qt5-default' to staged-packages does not pull qt [15:02] we spent a lot of time trying to, but it's not an isolated feature [15:02] it's built on other things we're building first [15:03] dpm: that doesn't actually contain it, that just sets the default qt to qt 5 [15:03] argh [15:03] yeah, there must be another metapackage you can pull to get all the deps [15:04] yeah, looking, but not sure which one it is [15:04] * ogra_ is curious how big you will end up with the binary :) [15:04] dpm: you should probably pull in ubuntu-ui-toolkit or the full sdk [15:04] dpm: because you're gonna need more than just qt5 [15:04] indeed [15:05] ubuntu-sdk-libs possibly? [15:05] * dpm looks for Mirv [15:05] (which pulls the world in) [15:05] "the new 1.5GB ubuntu-calculator snap just landed in the store" [15:06] lol [15:07] jdstrand, https://github.com/ubuntu-core/snapcraft/pull/343 [15:07] in case you want to look as well [15:12] sergiusens: awesome, thanks [15:12] the calculator snap is 150 MB, let's see if it works now [15:13] oh, thats smaller than expected [15:14] hm, somehow I can't see the qt libraries in the .snap [15:14] and no, the snap does not work either [15:16] it seems to download the qt libraries, but I can't see them under stage/lib/x86_64-linux-gnu, neither in the final snap [15:19] dpm, more likely under stage/usr/lib/x86_64-linux-gnu [15:19] i dont think qt installs in /lib usually [15:20] ah, yeah, it seems to be all in there [15:20] but qmlscene still can't find qt5 [15:25] I'll give up for today. In any case, if someone else wants to give it a go: http://bazaar.launchpad.net/~dpm/+junk/calculator-snap/files [15:25] dpm, you need to copy file a config [15:26] you might be 5 minutes away from a working snap though ;-) [15:26] sergiusens, had yoda-coffee for breakfast ? [15:26] sergiusens, not sure I understand [15:26] lol [15:26] dpm, create a config file and drop it in etc/xdg/qtchooser like in https://github.com/ubuntu-core/snapcraft/blob/master/snapcraft/plugins/qml.py#L68 [15:27] dpm, also set the envvars as in that env function [15:27] except for the mir setup [15:31] sergiusens, other than creating the conf file itself, is this something that I can do on snapcraft.yaml file (install file, set envvars)? [15:31] on *the snapcraft.yaml file [15:31] * dpm looks at docs [15:33] dpm: you might need to set QML2_IMPORT_PATH [15:34] dpm: note that it is searched backwards [15:36] jdstrand, ok, looking at the env vars now [15:37] not sure what the 'root' should be in https://github.com/ubuntu-core/snapcraft/blob/master/snapcraft/plugins/qml.py#L79 though [15:39] dpm: looking at what we are doing for click, it seems like 'QML2_IMPORT_PATH={}/usr/lib/{}/qt5/qml'.format(root, arch) should be 'QML2_IMPORT_PATH={}/usr/lib/{}'.format(root, arch) [15:39] dpm: I am no expert in this area though [15:39] well [15:39] actually [15:40] dpm, root should be $SNAP [15:40] ah, is root /snaps? [15:40] no $SNAP [15:40] schnaps ! [15:41] :-) [15:41] * sergiusens missed a comma [15:41] no, $SNAP [15:41] so in my case 'ubuntu-calculator.sideload'? [15:41] dpm, no, just the var [15:41] ah, I see [15:41] thanks [15:41] hah, so create two files, one with the conf and another which would be a shell wrapper [15:41] that will expand to the actual path at runtime [15:41] in the wrapper export your needed vars [15:42] ok [15:42] dpm: ok, so I'm not sure if it is right or wrong. I suspect it is right for stage packages but that an additional path should be appended for non-staged qml modules that you ship [15:42] dpm, in some sense like this https://github.com/ubuntu-core/snapcraft/blob/master/examples/tomcat-maven-webapp/wrapper [15:43] * dpm gives it a go [15:43] I suffered a lot getting gallery to work in the click world, there are so many Qt vars and at that time they changed the var to export too.... ah memories I am glad I forgot about [15:44] heh [15:44] that's the man who told me "you're 5 minutes away from a working snap" [15:44] you teaser :P [15:45] I think that's always true, you are 5 minutes away [15:45] 5 "jupiter" minutes :) [15:52] dpm, I had more faith in you ;-) [15:52] * sergiusens does a friday troll :-D [15:52] sergiusens, you're really into this yoda role this morning, aren't you? :) [15:59] sergiusens, jdstrand, so something like this for the wrapper? http://paste.ubuntu.com/15206673 [16:00] dpm, and an exec line at the end (like popey showed you earlier) [16:01] i'm also not sure dpkg-architecture is still there ... you might need to use uname [16:01] ogra_, ok. And which exec line you were saying? [16:02] I can't recall popey showing me this [16:02] there was a pastebin above [16:02] ( i miss some backlog here on this machine) [16:03] https://github.com/ubuntu-core/snapcraft/blob/master/examples/tomcat-maven-webapp/wrapper [16:03] that's the only thing I remember being pasted ^ [16:03] here is one of my snaps http://bazaar.launchpad.net/~ogra/+junk/ircproxy/view/head:/run-bip (though thats a service ... ) [16:04] dpkg-architecture is definitely not there [16:04] yeah, thought so [16:04] i think 15.04 still had it [16:04] as a leftover [16:04] you do have SNAP_ARCH, but it has 'amd64', not x86_64-linux-gnu [16:05] so there is perhaps a bug in snappy to export SNAP_GNU_TRIPLET (or whatever it should be named) [16:05] dpm: fyi, if you install hello-world, then you can do: $ hello-world.env |grep SNAP [16:06] oh, I just noticed a typo [16:06] SNAPP_APP_TMPDIR [16:06] * jdstrand files a bug [16:06] TMPDIR is not needed anymore iirc [16:07] yeah, just installed it, only amd64, so hardcoding for now? [16:07] why do we expose that anyway ? isnt it the same as $TMPDIR nowadays ? [16:07] jdstrand, that's there for legacy; but given everything is so aggressive I'm not sure why this is still there :-P [16:07] ogra_, so things didn't break on day one; but things have been breaking since, so it makes little sense to have this at all ;-) [16:07] I think TMPDIR should be explicitly set to /tmp [16:08] sergiusens, yeah [16:08] this actually seems to be a bug in the hello-world snap [16:08] jdstrand, I thought hello-world just ran 'env' [16:08] well, no [16:09] * jdstrand keeps looking [16:09] it's the snappy install logic most likely [16:09] ok, ubuntu-core-launcher is setting it itself [16:10] sergiusens: that's what I thought, but nothing in /snaps/bin had SNAPP_... [16:10] oh, tmpdir is special since it is in a new namespace as well [16:10] but line 254 of main.c of ubuntu-core-launcher definitely is doing it [16:12] ogra_, sergiusens, jdstrand, better? http://paste.ubuntu.com/15206764 [16:12] Also, another question, so my snap already installs a "command-ubuntu-calculator-app.wrapper" by default. How do I make it ship this new wrapper instead? [16:13] dpm, if it is the wrapper you don't control, you can't [16:13] snappy install will wrap it up once more [16:14] ok, so what do I do with "my" wrapper, simply point to it in the yaml file? [16:14] dpm, with the copy plugin [16:14] dpm: I bet you want: [16:14] export QML2_IMPORT_PATH=$SNAP/usr/lib/$ARCH/qt5/qml [16:15] export QML2_IMPORT_PATH=$SNAP/usr/lib/$ARCH:$QML2_IMPORT_PATH [16:15] jdstrand, ah, I changed it from your previous comment, I hadn't understood correctly [16:15] dpm: well, I refined my comment [16:15] dpm: actually, change that to be: [16:16] export QML2_IMPORT_PATH=$SNAP/usr/lib/$ARCH/qt5/qml [16:16] dpm, like done for mqtt-client here https://github.com/ubuntu-core/snapcraft/blob/master/examples/mosquitto/snapcraft.yaml [16:16] but with your shell wrapper [16:16] export QML2_IMPORT_PATH=$QML2_IMPORT_PATH:$SNAP/usr/lib/$ARCH [16:17] dpm: ie, set QMP2_IMPORT_PATH to what is already there, then append your app-specific modules. this should make it so your app-specific modules are used first (since it is searched backwards) [16:17] jdstrand, https://launchpad.net/ubuntu/+source/snapcraft/2.3.2 now we wait again ;-) [16:17] QML! [16:18] yes, not QMPP2 :) [16:18] QMP2* [16:18] meh [16:18] searching backwards when everything else searches forwards is super ackward [16:18] is it friday yet? [16:18] oh, so it is :) [16:18] friday is almost over in some places ;-) [16:19] sergiusens: re backwards> I know, right? [16:19] work day almost over here : 17:20 :' [16:19] nice! :) [16:19] ysionneau, nice that your work day can end at a specific point in time too ;-) [16:20] sergiusens, jdstrand, looks good? http://bazaar.launchpad.net/~dpm/+junk/calculator-snap/files [16:20] * jdstrand installs snapcraft 2.3.2 via debs [16:21] sergiusens: your work day never ends ? :p [16:22] dpm, don't use .wrapper after the : in the copy plugin [16:22] dpm: sorry, to mimic click, change this: [16:22] export QML2_IMPORT_PATH=$QML2_IMPORT_PATH:$SNAP/usr/lib/$ARCH [16:22] to [16:22] export QML2_IMPORT_PATH=$QML2_IMPORT_PATH:$SNAP/lib/$ARCH [16:22] dpm, so; line 15 -> ubuntu-calculator-app.wrapper: bin/ubuntu-calculator-app [16:23] and line 10 -> command: ubuntu-calculator-app [16:23] or line 10 -> command: bin/ubuntu-calculator-app [16:23] if you don't trust PATH resolution [16:24] ok, just noticed I was missing a 'files:' too, bad syntax [16:26] sergiusens, jdstrand, ok, updated http://bazaar.launchpad.net/~dpm/+junk/calculator-snap/files with your comments, thanks! [16:27] sergiusens: were are the examples installed when installing snapcraft-examples ? [16:27] omg, it's in your email [16:28] sorry [16:29] building the snap now [16:33] ysionneau, no worries [16:35] sergiusens, jdstrand, argh, no luck yet: [16:35] dpm@el-far:/snaps/bin$ ./ubuntu-calculator-app.ubuntu-calculator-app [16:35] qmlscene: could not find a Qt installation of 'qt5' [16:37] * jdstrand wonders if ubuntu-sdk-libs is enough or if qmlscene needs more... [16:37] dpm, you cant just run the wrapper [16:38] oh right, you have to setup the environment [16:38] run it without ./ [16:38] then the system wrapper will exxec it [16:39] not sure I quite follow, but: [16:39] dpm@el-far:/snaps/bin$ ubuntu-calculator-app.ubuntu-calculator-app [16:39] qmlscene: could not find a Qt installation of 'qt5' [16:39] like ubuntu-app-launcher on the phone [16:39] dpm, jdstrand you probably need the full list [16:39] dpm, except mir, most of what is here: https://github.com/ubuntu-core/snapcraft/blob/master/snapcraft/plugins/qml.py#L30 [16:40] qtubuntu-desktop [16:40] sergiusens, but I think from Mirv tells me, ubuntu-sdk-libs should pull Qt + the SDK. Ah, so I'm missing that one? [16:42] dpm, I think; I'm not sure; show that to Mirv [16:42] the error message [16:43] these are all the staged packages, it seems qtubuntu-desktop is not in there [16:43] http://paste.ubuntu.com/15207150/ [16:43] the click code has a bunch of libs added to its chroot creation logic too; so I don't think it is that straight forward [16:44] dpm, that provides the QPA plugin so most likely needed [16:50] sergiusens, except from qtubutnu-desktop, all the packages from the qml plugin and more are pulled, so I think I should be ok if I just add it for now. Question, though, how do the wrappers work? I'm a bit lost in the wrapper chain, and if I'm doing the right thing when trying to execute the snap from /snaps/bin directly [16:59] dpm, no, don't do it directly; it is package-name.app-name [16:59] or else nothing will work [17:00] yeah, that's how I've been executing it after ogra told me to drop the ./ but I've no idea what's happening behing the scenes and if the wrapper with the env variables is being called at all [17:03] dpm, running package-name.app-name -> exec ubuntu-core-launcher -> execs the snapcraft wrapper -> execs your wrapper script [17:03] each of the wrappers adds bits to the env [17:04] ah, cool, that makes it clearer, thanks [17:04] (ubuntu-core-launcher actually sets the SNAP_DIR and stuff) [17:04] snpppy should have been called wrappy actually ;) [17:05] *snappy === dholbach_ is now known as dholbach [17:24] can someone explain what is the "uses" keyword in snap.yaml? === tyhicks` is now known as tyhicks [17:53] hm, any ideas how this could have happened? [17:53] $ sudo snappy remove ubuntu-calculator-app [17:53] Removing ubuntu-calculator-app [17:53] remove /snaps/ubuntu-calculator-app.sideload/INUMLeWbJcQO/bin/ip: read-only file system [17:53] I've removed the app a few times already between tries, but this time around it can't be removed [18:18] dpm I'm hitting that as well. You must be on rolling [18:19] kyrofa, weird thing is, it just affects that particular installation of the app. I can install new versions and remove them [18:19] have you found any workarounds? [18:24] actually, I can't [18:24] garbage collection impossible: prerequisites untrue: remove /snaps/ubuntu-calculator-app.sideload/INUMLeWbJcQO/bin/ip: read-only file system [18:27] dpm no, though it only seems to happen to me when the installation fails [18:27] yeah, not sure what to do, I can neither remove nor install the app now [18:29] Is there a good command to use to build a snap package within a snappy environment, to make sure I have dependencies right? [18:56] * zyga ends the day [18:57] next week: focus on getting working interfaces in master [18:57] have nice weekend everyone [18:58] sergiusens, jdstrand, I think I'm nearly there with the calculator snap. I think I've figured out why qmlscene wasn't finding Qt, but in this I've uncovered a new issue. So: [18:59] ubuntu-calculator-app.ubuntu-calculator-app -> exec ubuntu-core-launcher -> execs the snapcraft wrapper -> execs my wrapper [18:59] The problem is, the snapcraft wrapper calls 'ubuntu-calculator-app', which also turns out to be the name of the launcher script for the app. [18:59] If I understand it correctly, as the launcher script is in $SNAP/usr/bin, it takes precedence over my wrapper with the same name in $SNAP/bin [18:59] So my wrapper is never called and no env variables are set [19:01] dpm: I think you need to have a different name for your wrapper and for the calculator. then your wrapper calls the calculator and you tell snapcraft to install your wrapper as the command [19:01] that way you'll get snapcraft wrapping your wrapper, which wraps your command [19:02] that will work. sergiusens might have another suggestion [19:02] jdstrand, yeah, but I'm not sure how to best change the name and what controls what the snappy wrapper calls [19:02] is it the 'command' field under "apps:"? [19:02] dpm: can you provie the link to the snapcraft.yaml? [19:03] jdstrand, http://bazaar.launchpad.net/~dpm/+junk/calculator-snap/files [19:03] dpm: ok, so down in 'files', you have: [19:03] ubuntu-calculator-app.wrapper: bin/ubuntu-calculator-app [19:04] change that to: ubuntu-calculator-app.wrapper: bin/ubuntu-calculator-app.wrapper [19:04] dpm: then up above, do: [19:04] apps: [19:04] ubuntu-calculator-app: [19:04] command: ubuntu-calculator-app.wrapper [19:04] I think that will do what you want [19:04] ah, yeah, that was the bit I wasn't sure about [19:04] thanks I'll try that [19:04] np [19:06] be sure that ubuntu-calculator-app.wrapper can find your real command of course) [19:20] hm, that didn't seem to work [19:20] Stripping ubuntu-calculator-app [19:20] Command '['/bin/sh', '/tmp/tmp2iyqiobh', '/bin/sh', [19:20] '/tmp/tmpjc9j0l7z']' returned non-zero exit status 1 [19:21] after running snapcraft snap [19:21] any ideas how to debug that? [19:24] dpm: i have seen that [19:24] can i see the yaml? [19:25] popey, http://bazaar.launchpad.net/~dpm/+junk/calculator-snap/files [19:25] this seemed to cause it: http://bazaar.launchpad.net/~dpm/+junk/calculator-snap/revision/7 [19:26] bizarre [19:30] indeed. If I rename it back to ubuntu-calculator-app, it works :/ [19:30] but neither ubuntu-calculator-app.wrapper nor ubuntu-calculator-app-wrapper does, I get that weird error [19:31] oh, is the name too long, perhaps? [19:31] we had that issue with the phone launcher, didn't we? [19:31] sergiusens, elopio alright I'm here for a decent stretch, I think [19:32] no, it turns out that 'command' can only be 'ubuntu-calculator-app' :/ [19:35] dpm that's probably due to the command not being found in the snap [19:36] right, your binary namespace is your snap namespace in the system [19:36] dpm, that error message could be a bit more helpful, perhaps :) [19:36] you can't have a snap called "calculator" that installs "apache" :) [19:36] * beuno hopes dpm is taking notes about the frustrations and sends a summary to the list [19:39] jdstrand: where should I report DENIED errors on ubuntu 16.04 desktop [19:40] kyrofa, that's a nice way to put that the error message should be meaningful to humans :) [19:41] dpm, I'm not even sure I'd say that one is meaningful to computers ;) [19:41] indeed :) [19:41] zyga: what is the denial? [19:41] Feb 26 20:32:44 x200t kernel: [31556.508068] audit: type=1400 audit(1456515164.332:46): apparmor="DENIED" operation="open" profile="/usr/lib/*/mediascanner-2.0/mediascanner-extractor" name="/sys/devices/system/node/node0/meminfo" pid=17842 comm="qtdemux0:sink" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 [19:41] beuno, taking notes, but not frustrated yet, I'll succeed! :) [19:41] jdstrand: though I saw other failures eariler (related to dhcp client) [19:41] zyga: mediascanner2 [19:42] kern.log:Feb 24 19:07:03 x200t kernel: [ 15.239795] audit: type=1400 audit(1456337223.467:29): apparmor="DENIED" operation="open" profile="/sbin/dhclient" name="/etc/ssl/openssl.cnf" pid=1112 comm="dhclient" requested_mask="r" denied_mask="r" fsuid=0 ouid=0 [19:42] zyga: it depends on if the package ships the profile or not. if in doubt, can always file against apparmor and we'll reassign [19:42] dpm, does that bzr repo contain the entire snap? Happy to take a look [19:42] zyga: the dhclient one is already fixed [19:42] jdstrand: oh, nice, thanks. I'll file the one on mediascanner then [19:42] kyrofa, it does, do read the readme file, though [19:43] it looks like 4.3.3-5ubuntu8 didn't make it out of proposed yet [19:43] kyrofa, you'll need to add the PPA to your sources from where the staging packages are being taken [19:43] * jdstrand investigates [19:43] (that was for isc-dhcp) [19:43] jdstrand: btw, I'd like to look into adding old-security skills next week [19:44] kyrofa, I think the last issue to overcome is the upstream launcher script overriding the wrapper script in the snap [19:44] jdstrand: I'll poke you with some ideas [19:44] dpm, alright, grabbing it now [19:45] kyrofa, oh, and importantly, that snap is for unity 7 on the desktop, not for mir. I.e. it runs on X, and it won't pull any mir dependencies or set any mir env variables [19:45] dpm, sweet [19:46] bbiab [19:53] dpm, pretty sure it's because the wrapper isn't executable [19:54] dpm, yep, that was it [20:00] Oh my goodness, travis, work with me here. At least wake up, pretend you're alive [20:01] dpm https://bugs.launchpad.net/snapcraft/+bug/1550496 [20:01] Launchpad bug 1550496 in Snapcraft trunk "Error message when command can't be found/isn't executable is terrible" [High,Triaged] [20:05] oh wow, nice catch kyrofa! [20:07] hm, still getting the error [20:08] dpm, did you clean first? [20:08] kyrofa, no, I didn't, that's what I was going to do next. But is there a way to clean without deleting the staged packages? [20:09] dpm, yeah, that's why I told you not to name your wrapper .wrapper as we do that internally as well and there is a clash [20:09] dpm, for this specific situation, yes, but you have to fool snapcraft. Snapcraft isn't very smart about this type of thing yet (I'm working on that right now, actually) [20:10] sergiusens, at least we use command-.wrapper [20:11] sergiusens, no, the clash is somewhere else. Actually renaming it to .wrapper fixes it [20:11] (or anything else) [20:11] dpm actually you can replace the old non-executable wrapper with the new one yourself in the parts/ubuntu-calculator-app/install/ directory [20:11] dpm, then run snapcraft snap again [20:11] dpm, that should work [20:11] dpm, right, I gave the exact lines and told you to make sure your script wrapper was +x along the conversation this morning :-P [20:11] giving it a go [20:13] sergiusens, these were two separate issues. With the exact lines, there was a clash with the upstream launcher script, that's why I need to rename it now [20:20] dpm, oh, right; your wrapper might have just been called 'wrapper' or whatever; the front facing command is what is in apps: anyways [20:24] argh, now the wrapper is called, but qmlscene cannot find the main qml file, even though the path is correct [20:24] $ ubuntu-calculator-app.ubuntu-calculator-app [20:24] [20:24] $ ubuntu-calculator-app.ubuntu-calculator-app [20:24] /snaps/ubuntu-calculator-app.sideload/INUXMfbfaWSb/bin/ubuntu-calculator-app.wrapper: 40: exec: /snaps/ubuntu-calculator-app.sideload/INUXMfbfaWSb/usr/bin/qmlscene /snaps/ubuntu-calculator-app.sideload/INUXMfbfaWSb/usr/share/ubuntu-calculator-app/ubuntu-calculator-app.qml: not found [20:24] I give up for today === dpm is now known as dpm-afk === tsimonq2alt is now known as tsimonq2