/srv/irclogs.ubuntu.com/2016/05/13/#snappy.txt

kyrofasgclark, there are a few here: https://github.com/kyrofa/qt-example-snaps00:34
kyrofaSorry the room is a little quiet-- most of the team is in a team meeting this week00:34
sgclarkno worries, tyvm!00:35
kyrofasgclark, they're literally qt examples (from the sdk)00:35
elopioasac: can you please create a PPA for me in ~snappy-dev called edge? or give me access to do that00:35
sgclarkkyrofa: excellent, looks to be exactly what I need. thank you again.00:39
kyrofasgclark, certainly! They aren't perfect-- I'm missing a few stage packages; menus don't work00:39
kyrofasgclark, but elopio will fix that soon00:39
sgclarkcool, I have the kde community at my disposal to bug as well :)00:41
kyrofasgclark, I think https://code.launchpad.net/~dpm/ubuntu-calculator-app/snap-all-things will make for a QML example00:41
kyrofasgclark, very receptive to pull requests if you're able to improve things00:41
sgclarkexcellent, I look forward to some fun. been wanting to work with snappy for some time.00:42
kyrofasgclark, wonderful! This room will be hopping again next week :)00:57
=== Aria22 is now known as Aria22|away
* sergiusens waves hello at sgclark01:36
sergiusensnice to see you!01:36
sgclarkhi sergiusens :)01:40
sergiusenssgclark so there is some interesting stuff coming up soon wrt that library snap I mentioned a while back. It should be worked on soon and make getting the full kde stack in fairly easily. In the meantime, I guess I can suggest to create a snap with one app and then continue adding on to it.01:48
sergiusenssgclark I am just implying you are doing kde stuff from what I read above :-)01:48
sergiusensIn any case I hope you find the fun in it.01:49
sergiusens:D01:49
vziosshello01:57
kyrofavzioss, hi! Welcome01:58
vziossthanks kyrofa!01:58
vziossI am trying to build a snap package01:58
vziosshaving doubts in the parts plugin thing01:59
kyrofavzioss, how can I help?01:59
vziossIf I understood from the your-first-snap help page01:59
vziossyou can write python3 in the plugin section02:00
vziossand have python302:00
vziossand you can also use source to point to a python3 code02:00
kyrofavzioss, indeed, run `snapcraft list-plugins` to see all the options you could use there02:00
kyrofavzioss, if you want to see how to use the python3 plugin, try `snapcraft help python3`02:01
vziossbut how does one tells that there is dependency on things like pyqt, numpy, and stuff like this ?02:01
vziossah02:01
vziossok02:01
kyrofavzioss, does that help a bit?02:01
vziossthis help command tells me just that02:01
kyrofavzioss, very good :)02:01
vziossthis is really useful02:01
vziossthanks02:01
kyrofavzioss, any time!02:03
kyrofavzioss, if you want some examples to refer to, take a look here: https://github.com/ubuntu-core/snapcraft/tree/master/examples02:06
vziossthanks kyrofa!02:10
vziossI'm am trying here, I think I can make this work... If it works, this is the most impressive thing I've seen.02:10
kyrofavzioss, then I hope it works! :)02:11
vziosskyrofa, have you used python3 plugin?02:21
kyrofavzioss, indeed02:21
vziosskyrofa, I understood that below the line plugin:python3, I should just place a line stating with python-packages:02:22
vziossthe package names02:22
vziosshow do I list them?02:22
vziossI wrote python-packages:pack1,pack2,pack3 and got "is not of type array"02:23
kyrofavzioss, yeah you need a YAML array02:23
kyrofavzioss, so you have two options: python-packages: [pack1, pack2]02:23
kyrofaor02:23
kyrofapython-packages:02:23
kyrofa  - pack102:24
kyrofa  - pack202:24
vziossah, ok02:24
vziossThis is really my first yaml file in my life02:24
vziossthanks, stage worked02:25
vziossdamn pillow returns a error.02:27
vziossis there a plugin for apt ?02:27
kyrofavzioss, you mean you need debs in your snap as dependencies?02:27
vziossso I could just install python3-pillow from repo instead ?02:27
kyrofavzioss, you can (by using stage-packages), but you should be able to make it work from source as well02:28
vziossyeah, pip or whatever snapcraft stage call get's an error02:28
kyrofavzioss, is the pip package bad?02:29
vziossI don't know, let me try to install pillow from pip02:29
vziossI'm in a clean virtual bo02:29
vziossx02:29
kyrofavzioss, what error did you get? Maybe pastebin it?02:29
vziossjust a moment02:30
vziosspastebin.com/EtY2ubiv02:33
kyrofavzioss, ah, looks like you need libjpeg02:34
kyrofavzioss, try adding build-packages: [libjpeg-dev] to your part02:34
vziossok02:34
kyrofavzioss, do you see where I got that?02:35
vziossbuild packages is nested below my part?02:35
kyrofavzioss, example: https://github.com/ubuntu-core/snapcraft/blob/master/examples/py3-project/snapcraft.yaml02:36
vziossok02:37
vziossit asked my sudo password02:37
vziossis this normal?02:37
vziossI gave it02:37
vziossjust found unusual...02:37
kyrofavzioss, indeed, build-packages install on the host02:37
vziossok, it build ok02:37
kyrofavzioss, so it just ran `apt install` for you02:37
vziossI will try adding pyqt402:38
vziossthis will be a ride...02:38
vziossI was never able to install pyqt4 from pip, always used the ubuntu packages02:38
kyrofavzioss, you still can. It looks the same as the build packages, but it's called stage-packages02:39
kyrofavzioss, but oftentimes debs are hard-coded to work in a typical debian system, and snappy is a little different, which is why I typically recommend using source02:39
kyrofavzioss, but wouldn't hurt to try02:39
vziossif I just add in build-packages02:40
vziossit should work right?02:40
vziossok, it appears it worked02:41
kyrofavzioss, read about the differences between stage- and build-packages: https://github.com/ubuntu-core/snapcraft/blob/master/docs/snapcraft-syntax.md02:41
kyrofabuild-packages install on the host (and don't make it into the snap), stage-packages are unpacked into the snap02:41
vziossthanks, I am saving this chat and favoriting those links.02:42
kyrofavzioss, we're working hard on better docs as well, but glad you're asking the questions!02:43
vziossyeah, I really pyqt, it's really easy to use, being able to hop in the gigantic library of things in python gives faster results02:46
vziossand the snappy system is really way less daunting than packaging something to be available in debian.02:46
vziosshow do I clean after having made a mistake before stage?02:48
vziossit should be written here: https://developer.ubuntu.com/en/snappy/build-apps/snapcraft-usage/02:48
kyrofavzioss, check out `snapcraft -h`. Specifically, you can run `snapcraft clean` to clean completely, or `snapcraft clean --step=stage` to clean only the stage step02:49
vziossCollecting pyqt4  " Could not find a version that satisfies the requirement pyqt4 (from versions: ) No Matching distribution found for pyqt4 "02:51
vziossthis is a weird error, let me first google this...02:52
vziossok, used stage-packages03:09
vziossdoes anyone have some docs on the filesets ?03:09
kyrofavzioss, https://github.com/ubuntu-core/snapcraft/blob/master/docs/snapcraft-parts.md03:10
vziossok, reading here: https://developer.ubuntu.com/en/snappy/build-apps/your-first-snap/03:12
vziosshow does the source in the line: source: git://github.com/mikix/golang-static-http03:13
vziossgoes to the right place ?03:13
vziossI understood filesets does that, but not exactly how03:13
vziossthe source points to a single file, named main.go03:14
vziossin the filesets there is a entry named go-server03:15
vziosssince this exact name isn't anywhere else I assume this name doesn't matter03:16
vziossand then there is the line bin/golang-*03:16
vziosshow did it went to the bin folder ?03:16
kyrofavzioss, the go plugin puts it there03:17
vziossok, the python plugin creates a folder named build03:18
vziossbut then, I understand that unless I created a setup.py file03:18
vziossthe program won't be in /opt or wherever I want03:19
vziossis this the correct understanding ?03:19
vziossI mean, what matters is what ends up in the folder "stage"03:20
kyrofavzioss, what REALLY matters is what ends up in the "snap" folder, but you have the right idea03:20
kyrofavzioss, indeed, the python plugin needs you to tell it somehow what to build, where stuff should go, etc.03:20
vziossyeah, I didn't get to the snap step yet03:21
vziossok03:21
vziossthanks kyrofa03:21
vziossIt seems I need to take some time with this, but it's very doable03:21
vziossI really liked03:21
vziossI am going to sleep because I have to work in 5 hours03:21
kyrofavzioss, just like the make plugin, or cmake-- you need install rules in order for snapcraft to know what is important to go into the snap. You don't want it to just copy everything (object files and whatnot)03:21
kyrofavzioss, alright, sleep well!03:22
vziossbye, thanks kyrofa!03:23
kyrofavzioss, any time!03:23
vziosscompany is CentOs, some day I need to findout how to run this there.. hahaha03:23
=== chihchun_afk is now known as chihchun
=== chihchun is now known as chihchun_afk
=== chihchun_afk is now known as chihchun
=== chihchun is now known as chihchun_afk
jdstrandtyhicks: fyi, https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1576287/comments/713:09
ubottuLaunchpad bug 1576287 in snapd (Ubuntu) "unity7 plug needs to be updated to allow menus export" [Undecided,Fix released]13:09
ysionneauhttp://paste.ubuntu.com/16388460/13:10
ysionneauany idea what's going on?13:10
jdstrandtyhicks: you mentioned appmenu, do you know of a failing app?13:11
jdstrandysionneau: this seems wrong: devpts on /dev/ptmx type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)13:12
ysionneauah ?13:12
jdstrand/dev/ptmx should be a file, not a filesystem13:13
ysionneauhmm I wonder who's doing this mount then :o13:13
jdstrandit can either be an actual file or a symlink to /dev/pts/ptmx13:13
jdstrandaiui13:13
ysionneauroot@localhost:/etc/apparmor.d# ls -l /dev/ptmx13:14
ysionneauc--------- 1 root root 5, 2 Jan  1  1970 /dev/ptmx13:14
jdstrandysionneau: is this on a classic system?13:14
ysionneauthis is on a Snappy system13:14
jdstrandysionneau: what type of snappy system?13:15
ysionneauI took the rpi2 ubuntu-core (+ initrd) and modified it to run on my board13:15
jdstrandamd64, rpi2, ...13:15
jdstrandI see13:15
ysionneauit's running on Tegra X113:15
ysionneaubut it's basically an rpi2 ubuntu-core13:15
jdstrandoh, you did it13:16
jdstrandroot@localhost:/etc/apparmor.d# mount -o bind,rw /dev/pts/ptmx /dev/ptmx13:16
jdstrandno that's right13:16
jdstrandmeh13:16
ysionneaunop actually the first line was already there before my mounting try13:17
jdstrandysionneau: looking at the apparmor message, it seems that on your system /dev/ptmx is a directory and not a file13:17
jdstrandysionneau: I suggest rebooting and confirming that13:17
ysionneaubut ls -l shows a character device :o13:17
ysionneauok let's try that13:18
jdstrandysionneau: perhaps because of the bind mount you did13:18
jdstrand(re the ls)13:18
ysionneauah yes13:18
jdstrandysionneau: http://manpages.ubuntu.com/manpages/xenial/en/man4/ptmx.4.html13:19
jdstrand"The  file  /dev/ptmx  is a character file..."13:20
jdstrandif it comes up as a directory, that is the issue13:20
ysionneauafter a reboot: http://paste.ubuntu.com/16388554/13:20
jdstrandthat all looks fine13:21
ysionneauI think it's just apparmor refusing the mount ... but why13:22
ysionneausince the apparmor profile looks fine to me13:22
jdstrandysionneau: notice in the denial it said '/dev/ptmx/13:22
jdstrandthat trailing '/' indicates that apparmor interpreted the mount as on /dev/ptmx/ not /ev/ptmx13:23
jdstrandthe apparmor rules allow mounting on the file, not the dire13:23
jdstrandctory13:23
ysionneauaaah ok13:23
jdstrandwhy it was a directory at that time, I can't say13:24
ysionneauweird because in ubuntu-core-launcher there is no trailing / : http://bazaar.launchpad.net/~snappy-dev/ubuntu-core-launcher/trunk/view/head:/src/main.c#L34113:24
jdstrandysionneau: right, that all supports what I'm saying13:25
jdstrandysionneau: the launcher just tries to mount on /dev/ptmx13:25
jdstrandbut *if* /dev/ptmx is a directory at the time that happens, apparmor (the kernel) will interpret that as /dev/ptmx/13:26
ysionneauah ok13:26
jdstrandand the policy doesn't allow mounting on /dev/tpmx/ (a dir), it allows mounting on /dev/ptmx (a file)13:26
ysionneauso something might remove the /dev/ptmx file when running ubuntu-core-launcher and replace it with a directory :o13:27
ysionneauweird13:27
jdstrandagain, why it was a directory at the time of the mount is a mystery still. I suggest keeping on eye out for this and if you can find a reproducer, file a bug13:27
morphisjdstrand: ping13:28
jdstrandI'm not able to reproduce it here13:28
jdstrandmorphis: hey13:28
morphisjdstrand: hey!13:28
morphisjdstrand: did you saw my update on the network-manager PR?13:28
jdstrandmorphis: I just came on and haven't gotten through my email yet. I see the mails13:29
morphisjdstrand: aye13:29
morphisjdstrand: if you have a few min I have another quick thing and would like to see if you like it or not13:29
jdstrandfire away13:30
morphiswe thought a bit how we could do just in-snap dbus communication13:30
morphislike we put modem-manager into the same snap than network-manager13:30
morphiswhich we require a very specific interface for this13:30
morphisso instead of crafting a eventual vendor-specific interface here I have two new dbus interfaces: dbus-name and dbus-access13:31
morphisdbus-name is provided by the OS snap and allows a snap to acquire a dbus name13:31
morphisdbus-access is another interface to allow dbus communication between two apps on specified object paths13:31
morphiswhich then summary allows soemthing like: https://pastebin.canonical.com/156418/13:32
morphisdbus-access creates just one slot-side apparmor rule so far: https://paste.ubuntu.com/16388712/13:33
ysionneauIsn't there any other possibility than /dev/ptmx being a directory ?13:34
ysionneau'cause I find this highly unlikely :/13:34
jdstrandmorphis: the fact that it slots the service1 and service2 means it would be connectable between snaps (in the current implementation). also, what if I create a snap that does path: /org/freedesktop/NetworkManager ?13:34
morphishowever this introduces one problem: anyone could try to get access to anything if not prohibited in some way13:34
jdstrandysionneau: there could be a bug somewhere-- but I can't reproduce. if you can, please file13:34
morphisjdstrand: yeah, I see the same problem13:35
ysionneauwell I can reproduce it but on a hardware I am the only one to possess :p13:35
ysionneauI would try on my rpi2 but I guess it won't reproduce13:35
morphisjdstrand: but I don't see another way so far how we can allow dbus communication between apps of the same snap13:36
morphiswe could limit the dbus-access rule to check for label=snap.<snap-name>.*13:36
ysionneaulet's try on the rpi2 anyway13:36
jdstrandmorphis: so internal snap communications should be allowed imo, but using dbus in this manner is using a public bus to do internal communication13:37
morphissure13:37
jdstrandI wonder if you used a private bus?13:37
morphisthen we loose the capability for other snaps to communicate with us13:38
jdstrandjust spitballing here13:38
morphisor would require us to proxy between two dbus-daemons13:38
jdstrandmorphis: but you said modemmanager was only for internla?13:38
morphisyes13:38
jdstrandoh so you are saying nm is external and mm insternal, that is an issue. I can see that13:39
morphisif we just leave modem-manager running against its own dbus-daemon we introduce a set of complex problems in the interface from network-manager13:39
jdstrandif both were internal, maybe a private bus could be used13:39
morphisyes13:39
jdstrandmorphis: I'm not sure... I think this needs zyga and niemeyer13:40
morphisjdstrand: yeah, just wanted to get your first feeling about this13:40
jdstrandmorphis: well, I think the use case is interesting. I think there are some issues to work through13:41
morphisjdstrand: basically I would like to escape a bit from the need to write an interface in snappy core for everything13:41
morphisthat slows things terrible down13:41
jdstrandI can understand that13:41
jdstrandI can say that things should go much faster once we have some experience and have worked through the corner cases13:42
jdstrandthe thing is now, everything is new and needs to be thought through a lot13:42
jdstrandI mean,  they'll all need to be thought through a lot, but in the future we will have already thought through big parts13:43
morphisyeah!13:43
jdstrandman, why is my irc so laggy?!13:43
morphisfreenode :-)13:45
jdstrandseb128: hi! do you know of something that uses appmenu that I can use for bug #1581191 ?13:48
ubottubug 1581191 in snapd (Ubuntu) "please add AppMenu to the unity7 interface" [Medium,Triaged] https://launchpad.net/bugs/158119113:48
jdstrandit seem slibreoffice does13:53
jdstrandI'll see if I can work with that13:53
seb128jdstrand, check with tedg I would say, I'm unsure when/when com.canonical.AppMenu is used14:12
jdstrandcodesearch indicated libreoffice does. I'll play with that14:13
jdstrandseb128: thanks!14:13
seb128yw14:13
seb128k14:13
=== Aria22|away is now known as Aria
=== Aria is now known as Aria22
ShR3KIs there a solution to have snappy on tablet like Nexus 7 or Aquaris M1014:27
ShR3K?14:27
ysionneauhmmm I can't get the RPI2 to boot anymore with Snappy :o14:32
ysionneauI've just generated a brand new rpi2 image using zyga's ubuntu-image14:33
ysionneauit says "Starting kernel ..." and nothing more14:33
jdstrandseb128: fyi, libreoffice in at least xenial does not use AppMenu15:01
ysionneauis the rpi2 port broken as of today?15:01
jdstrandtedg: hey, can you give me an example application that uses AppMenu (it could even be a test program)15:01
tedgjdstrand: I believe that GTK apps do, it's the registration mechanism.15:14
tedgjdstrand: It'll need to have the unity-menus module loaded15:15
tedgjdstrand: Which might not be in your snap.15:15
jdstrandtedg: so, I've seen some things with dbusmenu and a lot of things for gmenu. global menus seem to work15:17
jdstrandtedg: it sounds like perhaps if I add unity-menus to stage-packages in a snap I might start to see AppMenu accesses?15:18
jdstrandwould it work for say, gnome-calculator-app?15:18
jdstrandand ftr, I can't wait for unity815:18
tedgjdstrand: I believe so, it depends on the app. Let me check that one.15:19
jdstrandthese dbus apis for menus are not very mediation-friendly15:19
tedgjdstrand: No, they were designed in a simpler time :-)15:19
jdstrandI wonder what we are going to do when someone finds a way to attack the menu system of another app...15:20
tedgjdstrand: It really only tracks by window ID really. So we have no good way to verify either.15:21
tedgjdstrand: Perhaps with X11 AppArmor stuff?15:21
jdstrandnope15:22
jdstrandthat was ruled out15:22
jdstrand(in the sprint this week)15:22
tedgjdstrand: Ah, makes sense, but not up to date :-)15:22
jdstrandif anything is done for X (subject to desktop team priorities) it will be a nested X15:22
tyhicksjdstrand: sit tight on the global menu stuff - I'm gathering info15:38
tyhicksjdstrand: it sounds like people may be mixing up the global menu and the indicators15:38
jdstrandtyhicks: well, I'm still going to fix the things I know are broken. eg, I have a PR for the systray bug for notifications and then preparing another one that makes libreoffice work15:44
jdstrandtyhicks: I talked with tedg about AppMenu. See the conclusion: https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1581191/comments/115:45
ubottuLaunchpad bug 1581191 in snapd (Ubuntu) "please add AppMenu to the unity7 interface" [Wishlist,Won't fix]15:45
jdstrandtyhicks: I guess that counts as 'sit tight'15:45
Trevinhojdstrand: asf far I cheked, the appmenu interface was supported by ubuntu-qt module...15:46
jdstrandTrevinho: do you have a snap I could try this on?15:47
jdstrandtedg: was that one you looked at? ^15:47
tedgjdstrand: No, I was looking at GTK apps, I thought they still used it.15:47
tedgDidn't think of the Qt one.15:47
Trevinhojdstrand: mh, no.. but you can do it with any simple electron app. They are using appmenus (sadly, so I'll probabably fix it upstream), but even the electron simple binary uses it15:48
Trevinhotedg: yeah... as for qt btw I (or someone else) will probably move the things to menumodel... most of the pieces are already there15:48
jdstrandTrevinho: I'm unfamiliar with electron apps. is there a simply one you can point me to?15:49
jdstranderf, it looks like they embed chromium15:49
jdstrandsergiusens: don't you have an electron app?15:49
kyrofajdstrand, yes he does!15:50
kyrofajdstrand, vscode and atom in progress15:50
Trevinhojdstrand: I guess snapcrafting https://github.com/electron/electron-quick-start is just enough15:51
zygagood morning16:16
jdstrandso, if it uses chromium, perhaps I can play with chromium to see if it needs the accesses16:22
jdstrandchromium works fine with my two PRs16:25
elopioogra_: can you please change the daily os snap builds to use the new edge PPA, instead of the image one?16:34
ogra_elopio, where is that ?16:34
ogra_(you also need to let mvo know where to upload to then)16:35
elopioogra_: no, I've forbidden mvo to upload here. :)16:37
elopioogra_: https://launchpad.net/~snappy-dev/+archive/ubuntu/edge/+packages16:37
elopiothe rc snap will be generated from -proposed. And the stable from the xenial archive. But we can talk about that in a few mins.16:37
ogra_yeah, lets talk16:38
ogra_(there are a bunch of issues since we need the PPA for development)16:38
morphisjdstrand: my current implementation is now at https://github.com/morphis/snappy/commit/7d4a725b6fa72ee80558fbb1ab19b4340acb8640 (dbus-name) and https://github.com/morphis/snappy/commit/38d60ce083d1684b20d7394ad5f6824a298efd9d (dbus-access)16:58
morphisjdstrand: which actively prevents the interface connections from plugs/slots which are not part of the same snap: see https://github.com/morphis/snappy/commit/0489b6f23b190d817975247d460990f67e0c4d5c#diff-79bf2731f5c1893501e7731ecbcf7059R5817:01
morphiszyga: ^^ you might be interested in that as well, prototyped a quick idea today to enable in-snap dbus communication17:01
morphisnot ready yet for an MP and we should discuss that next week or so a bit more in detail17:02
morphisjdstrand, zyga: see https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/examples/tree/ for two snaps which are using those two things17:04
jdstrandmorphis: interesting17:04
morphisdon't count on any names/patterns or so yet17:04
jdstrandwell, it is a starting point for discussion17:05
kyrofajdstrand, I tested out https://github.com/ubuntu-core/snappy/pull/1165 and had a question on the PR17:05
morphisjdstrand: yeah17:05
morphisso, weekend time :-)17:05
jdstrandkyrofa: hmm I didn't play with the indicator bit (I missed it)17:06
jdstrandkyrofa: let me look at that17:06
kyrofajdstrand, excellent, thank you!17:06
jdstrandok yes I can confirm17:07
kyrofajdstrand, ping me if/when you add something there and I can retest17:11
zygamorphis: interesting, let me see17:16
zygamorphis: that's really cool17:21
zygamorphis: I think we should explore the attribute matching on slots and plugs17:21
zygamorphis: so you'd have a slot 'bus-name' with an attribute 'com.example.App'17:22
zygamorphis: and a slot with something similar17:22
zygas/slot/plug/17:22
zygamorphis: and only allow the connection to form when those match17:22
zygamorphis: we need to get a callback for connection attempt17:22
zygamorphis: by default it should just check the interface name on both ends17:23
jdstrandzyga: one thing I'm concerned about is squatting a well-known name17:23
zygamorphis: but this would need it to match attributes too17:23
zygajdstrand: that's a review process17:23
zygajdstrand: we'll let people do squatting in private17:23
zygajdstrand: then nail it in review17:23
zygajdstrand: (stateful review matters)17:23
zygabrb17:23
jdstrandzyga: I think we should discuss this with niemeyer next week17:24
jdstrandzyga: (since morphis is eow)17:24
jdstrandkyrofa: ok, pushed17:24
kyrofajdstrand, sweet, testing now17:25
jdstrandkyrofa: https://github.com/ubuntu-core/snappy/pull/1165/commits/de024b32878e82d8b28e695a83641f2883d3f1f017:25
kyrofajdstrand, perfect17:28
kyrofaWorks great17:28
zygajdstrand: that's a plan17:29
zygajdstrand: note that we anticipated some of this with the $syntax17:29
zygajdstrand: where an attribute starting with the dollar sign was reserved17:29
jdstrandkyrofa: \o/17:29
jdstrandzyga: interesting17:29
morphisjdstrand: mostly eow18:11
morphiszyga: thanks for a having a first look18:11
zygamorphis: I'll have to talk to gustavo about the implication of getting the generic IPC interfaces in place18:11
morphiszyga: thanks18:12
zygamorphis: and we should open a pull request only after this is done18:12
morphiszyga: the background for this is basically:18:12
zygamorphis: one more thing, I think the connection "sanitization" method is needed in the interface18:12
zygamorphis: so that we can reject right there without a hook18:12
zygamorphis: and so that it is a natural place to enable hooks later18:12
morphiswe thought this morning about: what if we do a snap which privides modem-manager and network-manager but we only want it for a specific vendor and only want to provide an external interface for network-manager18:12
morphisputting those bits into a network-manager interface doesn't sound right18:13
zygamorphis: hmm, maybe18:13
morphisand we should have a way to allow in-snap IPC communication18:13
zygamorphis: yes, I agree about the 2nd part for sure18:13
zygamorphis: still need to think about 1st18:13
sergiusensjdstrand I have a vscode one to share with you if you want, give me a sec to upload to the store. Can you see unpublished snaps?18:14
morphiszyga: for me it does, as we're cluttering a generic network-manager interface then with implementation specifics18:14
zygamorphis: I need to think if n-m + mm is a special case18:14
morphiszyga: sure, I am still playing with this, will folow up with you guys next week18:14
morphishave to leave now!18:14
morphisbye18:14
zygamorphis: +118:14
sergiusenselopio mind testin 2.8.8b when it comes into proposed?18:19
elopiosergiusens: no problem.18:20
sergiusensjdstrand putting the snap somewhere you can get, expect to look at PMs18:26
jdstrandsergiusens: ack18:43
Trevinhojdstrand: a basic electron app could be just https://code.launchpad.net/~3v1n0/+junk/electron-quick-start-snap19:07
Trevinhojdstrand: however, I don't see the menus exported there, but it might be cause of many reasons (electron might think that is not running in unity, or missing some gtk stuff - although adding it didn't change much)19:08
jdstrandok. I'll take a look. tedg said maybe some library just needs to be present19:10
=== Aria22 is now known as Aria22|away
Trevinhojdstrand: yeah, in the past they were doing a check of the presency of libunity I think20:01
Trevinhojdstrand: oh, it was just about including libdbusmenu-glib4 as stage package... http://i.imgur.com/RH6Jhgd.png20:17
jdstrandnice!20:18
jdstrandI'll take a look in a few minutes20:18
Trevinhojdstrand: ah, I didn't check the unit7 rules, are the libunity apis already available for users (the ones that add badges and progress bars to the launcher)?20:18
jdstrandTrevinho: some are, I'm sure there are some missing (I lacked an example)20:19
Trevinhojdstrand: mh, hello-unity should be snappified in the examples, it's a good way to test things20:23
Trevinhojdstrand: I mean this one http://bazaar.launchpad.net/~snappers/snappy-playpen/trunk/files/head:/hello-unity/20:24
jdstrandTrevinho: ok. I think I tried that before, but it was weeks ago20:25
* jdstrand tries again20:25
jdstrandTrevinho: did you commit your libdbusmenu-glib4 change to the junk branch?20:26
Trevinhojdstrand: the wrapper has i386 arch, so I guess you want to change that20:26
jdstrandoh maybe that is all it was20:26
Trevinhojdstrand: speaking of which... do we plan to ship better "default" scripts for such cases?20:26
jdstrandTrevinho: I think that is a sergiusens question20:27
Trevinhoand to to use the arch for the builder...20:27
Trevinhojdstrand: ah, yeah...20:27
TrevinhoAlso, it would be nice to be able to generate .cache files (such as the mime type or the libgdk pixbuf plugin liest....) from the files installed locally.. So chrooting where the fiels have been eextracted and running thr proper tools at build time20:27
Trevinhosame for compiling gsettings schemas...20:28
jdstrandyeah, I think the desktop team maybe was looking into that20:28
jdstrandI know I faced it and so did they20:28
TrevinhoI mean, a plugin that alows to run stuff on the staging dir20:28
jdstrandsergiusens: ^20:28
* Trevinho is part of that team too (although, looking at this out of my work scope right now) :)20:29
TrevinhoSo, what I'd like to know, sergiusens, is what would be the best way to do this with the current architecture...20:30
jdstrandTrevinho: fyi, http://paste.ubuntu.com/16397996/20:34
jdstrandTrevinho: that is what I recall seeing now that I think of it20:34
=== Aria22|away is now known as Aria
jdstrandtedg: fyi, I can't seem to find anything related to 'unity-menus'. I'm going to try unity-gtk3-module20:45
Trevinhojdstrand: what you need?20:45
tedgjdstrand: Yes, that sounds right.20:45
Trevinhojdstrand: the unity-gtk3-module is only used for gtk3 apps that export menus though libgmenumodel20:46
jdstrandTrevinho: just mentioning that hello-unity doesn't work cause of that traceback. I know you're off so just fyi20:46
Trevinhojdstrand: yeah, I've seen it... i was looking if I can find a solution20:46
jdstrandoh you were asking about the unity thing20:46
jdstrandthe menu thing20:46
jdstrandTrevinho: all you did for electron-quick-start was add libdbusmenu-glib4 to stage-packages?20:47
sergiusensTrevinho ok, so you should be able to modify the staging dir, only consume from it20:48
Trevinhojdstrand: yep20:48
sergiusensTrevinho if you recompile this code patched that has fixed path expectations won't it be better?20:48
Trevinhosergiusens: the problem is with file that are normally generated at post-install time... it's not about paths, since these are fixable even without recompiling20:49
* sergiusens really thinks that stage-packages are broken until people start making those stage-packages work wih PIC20:49
Trevinhosergiusens: things like gsettings schema20:49
Trevinhowe'd need something that, once the staging dir is full of the things, we go into that in a mode like chroot, and we generate the files we should... Like mime cache, pixbuf helpers chace, compiled gsettings schema20:50
sergiusensTrevinho does gsettings schema work with relative paths? Can it use envvars? Those are the things that would need fixing20:51
Trevinhosergiusens: you can generate it wherever you want... All you need is call glib-compile-schemas /path/where/they/are20:51
Trevinhosergiusens: but we need to do this just before the snap is going to be packaged20:52
Trevinhoin its context20:52
ogra_why not from a startup wrapper (where you have the actual paths available) ?20:53
Trevinhoogra_: since it's ro?20:53
ogra_a snap has rw areas20:53
ogra_at runtime20:53
Trevinhowell, sure... for something we could use it..20:53
Trevinhoso it's just about defining a XDG_DATA_DIR (for the glib-2 case), or an env pointing to that writable space20:54
Trevinhobut.. Since in general these paths can be modified with env variables, it would be also nice to build the most we can at snappification tiem20:55
Trevinhotime*20:55
ogra_hmm, i think XDG_DATA_DIR is even being set by the ubuntu-app-launch bit20:55
Trevinhowe can redefine it.. it's a :-separated list20:55
Trevinhoand we already redefine it20:55
ogra_i dont think u-a-l will allow re-defining20:56
ogra_(though i'm not sure if it is less strict in the desktop/classic context)20:56
Trevinhoin the desktop snaps we've done so far we always redefine it...20:56
ogra_but inside the snap ... not outside of it20:56
ogra_i.e. if i set XDG_DATA_DIR=~/.foo ... that wont be handed to the app20:57
ogra_only if it is done inside the snap via a wrapper or some such20:57
Trevinhoyes, sure...20:58
jdstrandTrevinho: fyi, I need to move on to something else, but fyi, running electron-quick-start doesn't display anything. the command just hangs. I'll circle back next week perhaps20:58
Trevinhojdstrand: well.. it works fine here... but maybe because i'm running it in --devmode?20:59
Trevinhoinstalling*20:59
jdstrandI didn't see any denials20:59
jdstrandI guess I can try with that20:59
TrevinhoAh, yeah...it doesn't run in non-devmode20:59
TrevinhoI need to check what's going on20:59
Trevinhoit was my next step :)21:00
jdstrandI see. I can confirm it does work in devmode21:00
jdstrandweird that there were no denials21:00
* jdstrand disables rate limiting21:01
Trevinhojdstrand: what shouuld I check to see what's wrong? I was thinking about strace, but... anything else?21:01
jdstrandthat is what I would start with21:01
jdstrandwell, after looking in syslog for denials21:01
jdstrand(they're aren't any atm)21:02
jdstrandit might be an explicit denial21:02
jdstranddoesn't seem to be that21:03
jdstrandsergiusens: erf, vscode is using gconf?21:04
jdstrandthis is going to be a lot to go through. I think I will do that next week :)21:04
sergiusensjdstrand it uses a bunch of G stuff, yeAH21:39
Trevinhojdstrand: you can test the launcher apis with https://code.launchpad.net/~3v1n0/+junk/unity-launcher-api-snap22:10

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