/srv/irclogs.ubuntu.com/2016/08/02/#snappy.txt

bananabothi, i'm trying to build a snap which includes a opencv program accessing an openni2 camera. wondering if someone has any hints on getting setting the permissions so the snap thing gets access to the hardware. is there any way to define this in snapcraft? I found this here https://developer.ubuntu.com/en/snappy/guides/appliance-builder-guide-webcam/ but it seems to be old documentation from when snap was called snappy. is there an equivalent to sudo00:27
bananabotsnappy hw-assign webcam-demo.canonical /dev/video0 or better something to define udev rules for a snap?00:27
ali1234there is a v4l plug/interface00:33
ali1234you put plugs: [camera] in your snapcraft.yaml00:35
ali1234then you connect it after installing it00:35
ali1234something like sudo snap connect camera <snap>00:36
bananabotthe problem is that camera doesn't show up as a /dev/video device. i think openni uses libusb to access the camera directly00:45
ali1234then you are out of luck because there is no interface for that yet00:56
ali1234bug 159826600:56
mupBug #1598266: Cannot read/write to usb device [libusb][hidapi] <snapd-interfaces> <Snappy:Triaged> <https://launchpad.net/bugs/1598266>00:56
mupBug #1607265 changed: Ubuntu-core downloads before querying store for missing snap <Snappy:Invalid> <https://launchpad.net/bugs/1607265>00:58
bananabothm ok. that makes it pretty hard to use in robotic applications then. thanks for the link that explains at least that snappy hw-assign got removed.01:09
ali1234you can always run in devmode until it gets implemented01:10
ali1234i'm waiting on the same stuff01:10
bananabotis there anything else other than "confinement: devmode" i need change to get it working. i have udev rules to get the camera working in the normal system.01:15
ali1234yes you have to sudo snap install --devmode01:22
kalikianaNote: sudo is only needed if you're not logged in ;-)01:41
ali1234logged in to what?01:43
bananabotthanks, it seems to be working in devmode now02:41
=== chihchun_afk is now known as chihchun
mupPR snapd#1614 opened: Update documentation of /v2/system-information GET result <Created by robert-ancell> <https://github.com/snapcore/snapd/pull/1614>03:28
liuxghas anyone tried the example mosqitto at https://github.com/snapcore/snapcraft/tree/master/demos/mosquitto. after I install the app, it seems there is no output.04:01
qengholiuxg: What output are you expecting?05:14
liuxgqengho, I did not see any output from running http://paste.ubuntu.com/21857552/. it could possible that the broker is not ready before the publish app is running05:15
liuxgqengho, I can see the output of the broker at http://paste.ubuntu.com/21857599/, it seems that it is running. the subscriber is not running as well.05:16
qengholiuxg: Ah.05:16
liuxgqengho, this is the output of the subscriber http://paste.ubuntu.com/21857694/. I think it is good to define the order of the running services in snapcraft since some of the apps depending on the some of of services.05:18
qengholiuxg: "not found" seems weird.05:22
liuxgqengho, i did not install the snapd from the proposed channel. I just install it from the normal channel.my snapd version is like http://paste.ubuntu.com/21858068/05:24
liuxgqengho, I think it could be possible that broker should be running first, then subscriber/publisher05:25
qengholiuxg: I don't think you're seeing the systemctl message correctly  "No such file or directory" is a big deal.05:27
qenghoThat's not an app failure. That's a systemd failure, right?05:27
liuxgqengho, I am not quite sure about that. it is weired to me.05:29
qengholiuxg: systemd could not reach down into the app to find out how and why it failed to find something. systeemd itself(!) couldnot find something.05:30
liuxgqengho, OK. does it mean that it is a bug somewhere?05:34
qengholiuxg: Yes. Probably snapcraft.yaml05:35
liuxgqengho, do you how I can install the latest snapd 2.11 version?05:35
qenghoThough, I thoughsnapcraft catchesthis problem.05:36
liuxgqengho, maybe I file a bug against snapcraft?05:36
qengho[5~Sure.05:37
liuxgqengho, thanks. my colleague got the latest https://paste.ubuntu.com/21858180/ snapd version. How can I install it without installing the latest xenial-proposed? thanks05:37
qengholiuxg: you need the deb file.05:39
liuxgqengho, where can I find the debian file?05:39
qengholiuxg: And you need luck that it doesn't pull new deps.05:39
qenghoHow should I know?05:39
liuxgqengho, what is your version of it?05:40
qengholiuxg: If it's in Y, you can use "APT pinning" to upgrade only it. Google will help.05:40
liuxgqengho, ok. thanks05:41
qengholiuxg: I'm stale because I can't afford to break anything right now.05:41
liuxgqengho, yeah, I am using the stable as well :)05:42
liuxgqengho, I just reported a bug at https://bugs.launchpad.net/snapcraft/+bug/160879405:46
mupBug #1608794: snapcraft mosquitto demo got "not-found (Reason: No such file or directory)" <Snapcraft:New> <https://launchpad.net/bugs/1608794>05:46
qengholiuxg: is your colleague with snapd YC?05:55
liuxgqengho, yes05:55
mupPR snapcraft#706 opened: Added "camera" plug into the example <Created by liu-xiao-guo> <https://github.com/snapcore/snapcraft/pull/706>06:01
liuxgqengho, sorry, I made  mistake in running the mosquitto demo app. the "subscribe" and "publish" are both apps instead of daemon. they both need to run using commands. now, the demo works fine as expected :)06:24
mupBug #1608807 opened: create-user fails to create user <create-user> <Snappy:New> <https://launchpad.net/bugs/1608807>06:30
dholbachhey hey06:35
didrocksgood morning dholbach!06:36
dholbachhey didrocks06:36
trijntjewhen I open a file dialog from a snapped program it starts in $USER/snap/snapname/x106:37
trijntjeIs there a way to have it start in $HOME so the user doesnt have to navigate there each time the app is used?06:38
didrockstrijntje: there is no env variable AFAIK pointing to user's $HOME, $HOME in the snap is in $USER/snap/snapname/<version>/ as you told06:38
didrocksmaybe a discussion to trigger on the ML?06:38
didrocks(ask niemeyer about his thoughts on this)06:39
trijntjedidrocks: Ok thanks, I thought so. Maybe add a soft link to home in the snap folder itself? You can set HOME for most programs, but then it will try to put configs and data in there which is not allowed06:42
didrockstrijntje: that's exactly the issue, worth raising it IMHO :)06:45
trijntjedidrocks: I'll put it on the ML later today, I'll just wait a bit for niemeyer to respond06:48
didrocksyeah, let's see :)06:49
mupPR snapd#1614 closed: Update documentation of GET /v2/system-information result <Created by robert-ancell> <Closed by chipaca> <https://github.com/snapcore/snapd/pull/1614>07:08
=== hikiko is now known as hikiko|afk
mwhudsonogra_: good morning07:55
mwhudsonogra_: we (cyphermox and i) have been having some fun with ubuntu-core images that don't dhcp07:55
mwhudsonogra_: do you know anything about any problems like this?07:55
mwhudson(sometimes they do dhcp... just not very often)07:56
kalikianatrijntje: You can do HOME=/home/$USER so long as you tell the app not to use it for . files. That's what I do in neovim.08:13
kalikianaXDG_ variables point inside the snap folders08:13
qenghoThat is a big assumption about home dir. Be careful. Convention is not law.08:15
kalikianaLaw very often is based on convention ;-)08:16
kalikianaAlternate suggestions welcome, I'm really just tweaking things as I go along as many things aren't established08:21
=== JanC is now known as Guest77763
=== JanC_ is now known as JanC
mupPR snapd#1615 opened: overlord/snapstate, daemon: support for multi-snap refresh <Created by chipaca> <https://github.com/snapcore/snapd/pull/1615>09:44
ogra_mwhudson, i see the firstboot setup stuff panic in syslog, and i noticed that i sometimes dont end up with a /etc/network/interfaces.d/eth0 ... which i think the firstboot job sets up09:48
ogra_so yeah, that usually results in not getting dhcp requests09:48
mwhudsonogra_: hm, what does that panic look like?09:52
mwhudsonAug  2 02:55:41 localhost systemd[1]: snapd.firstboot.service: Main process exited, code=exited, status=1/FAILURE09:54
mwhudsonAug  2 02:55:41 localhost systemd[1]: Failed to start Run snappy firstboot setup.09:54
mwhudsonhm informative09:54
mwhudsonoh is error: cannot read seed yaml: /var/lib/snapd/seed/seed.yaml related?09:55
mwhudsonhmm maybe09:58
mupPR snapd#1616 opened: tests, integration-tests: implement the cups-control manual test as a spread test <Created by fgimenez> <https://github.com/snapcore/snapd/pull/1616>09:58
mwhudsonogra_: what is supposed to create seed.yaml?09:58
ogra_mwhudson, ubuntu-devcie-flash i think10:01
ogra_(or in the new worldorder perhaps "snap prepare-image"10:02
ogra_)10:02
mwhudsonogra_: ah so maybe my bootleg ubuntu-device-flash is too old?10:02
ogra_mwhudson, is that syslog or journald ? i thin journald doesnt show the panic10:02
mwhudsonogra_: syslog10:02
ogra_k10:02
mwhudsoni don't see an actual panic though10:02
mwhudsonin my case :-)10:02
ogra_and is that real HW ir kvm ?10:02
ogra_*or10:02
mwhudsonkvm10:02
ogra_interesting ... i see the panic all the time10:03
mwhudsoni come from the server space, none of these toys :-)10:03
ogra_lol10:03
ogra_http://people.canonical.com/~mvo/all-snaps/16/ ... thats the latest udf10:03
ogra_it seems to have issues when you use any local snaps though ... works fine with snaps from the store10:04
* mwhudson bangs head on desk10:04
ogra_the seed.yaml actually describes the preinstalled and existing snaps ... when you boot like that, does snap list show you anything ?10:05
mwhudsonno10:06
ogra_right10:06
mwhudsoni have noticed the oddness where on a system like this when you run snap install hello-world, the first thing it does is install the ubuntu-core snap10:06
ogra_yeah10:06
mwhudsonwhich given what you said is not surprising10:07
ogra_well, the feature comes from the desktop...10:07
ogra_not sure if it should even kick in here10:07
ogra_you dont have a kernel or gadget snap either ...10:07
ogra_(i mean, you have thgem, but snapd doesnt know)10:07
mwhudsonhmmm10:11
mwhudsonthis is all interesting but seems unrelated to networking, on looking at the code10:11
mwhudsonogra_: what panic do you see, do you have one lying around to pastebin?10:12
ppisati_is there a way to patch an app on-the-fly when snappying it?10:12
ogra_mwhudson, http://paste.ubuntu.com/21754413/10:15
mwhudsonogra_: wee10:16
ogra_and this is the seed.yaml i end up when sideloading ubuntu-core http://paste.ubuntu.com/21762356/10:16
ogra_not sure if the two are actually related though10:16
mwhudsonheh so i make an image to test this and of course it dhcp's this time10:21
ogra_heh10:21
kalikianappisati_: Not formally, no. You'd have to add your own build scripts.10:23
kalikianaUnless you count environment variables.10:23
mwhudsonogra_: so yeah, on an image that got networking there is /e/n/i.d/eth0, on one that did not there is not10:27
ogra_right10:27
ogra_Chipaca, do you happen to know what is supposed to create /e/n/i.d/eth0 nowadays ?10:28
=== hikiko|afk is now known as hikiko
ogra_(i know we forcefully disable cloud-init network setup currently because snapd used to be supposed to create it, perhaps thats not the case anymore ? )10:29
mwhudsonit sure looks like snapd is trying to create it10:29
ogra_k10:29
ogra_i wonder if it is supposed to change though10:29
Chipacaogra_: `snap firstboot` creates it10:29
mwhudsoncould this be a race with whatever populates /sys/class/net/eth* ?10:30
ogra_ok10:30
ogra_mwhudson, hmm, that would be the NIC module10:30
mwhudsonlooks from the code that the only reason EnableFirstEther would return without writing a file is no /sys/class/net/ thingies10:30
ogra_probably firstboot should wait til module-init-tools (or however systemd calls it) has run10:31
Chipacaogra_: mwhudson: snapd.firstboot.service is run before network-pre.target which might be bad10:31
Chipacain that the whole early boot ordering is a nightmare10:32
Chipacaearly for snappy that is10:32
Chipaca:-)10:32
ppisati_kalikiana: what you mean "Unless you count environment variables"?10:32
ogra_well, snappy is also special in the initrd setup ... we dont ship each and every NIC module in the world like a classic install would10:33
ogra_so module loading actually only happens after the rootfs is fully set up10:33
ogra_which is a lot later than in classic10:33
mwhudsonChipaca: should i file a bug at launchpad.net/snappy saying 'firstboot does not always create populate /e/n/i.d' or something like htat?10:33
Chipacaogra_: mwhudson: could you post the output of `systemd-analyze --system plot` somewhere?10:33
ChipacaI'm assuming this is in an all-snaps system10:34
mwhudsonyes10:34
Chipacagood :-)10:34
kalikianappisati_: You can supply a wrapper that tweaks the environment as needed, maybe affects modules loaded by the binary, or even edits use-writable files during launch.10:34
mwhudsonChipaca: can you remind me how to run kvm so that i get the tty on stdin/stdout, not in a window?10:34
ppisati_kalikiana: nope, a wrapper in this case won't cut it10:34
mwhudsonChipaca: also a non-custom ubuntu-core snap would make this easier...10:34
Chipacamwhudson: -nographic ?10:35
kalikianappisati_: Personally I would aim for solving everything through config values - if the snapped binary has no option to let you snap it properly, it can probably be added10:35
mwhudsonoh wait, i have a sufficiently un-custom snap i think10:35
flixrhi guys, I'm wondering what happend to the support of assiging udev rules to allow a snap to access certain hw devices as described in https://developer.ubuntu.com/en/snappy/guides/appliance-builder-guide-webcam/10:35
flixrhas this support gone away with 16.04 and snapcraft?10:36
flixrhow would I allow my snap to access multiple cameras and other hw devices like sensors connected via iio?10:36
mwhudsonChipaca: oh heh, right10:36
Chipacamwhudson: if this is to get the output of analyze, note it's an svg10:37
mwhudsonChipaca: oh10:37
kalikianappisati_: In the short term you can of course simply fork whatever it is and patch that before you consider upstreaming (as I did because I required new options in neovim's build)10:37
ppisati_kalikiana: yeah, i see what you mean10:37
mwhudsonChipaca: i guess i can scp after running dhclient manually...10:37
Chipaca:-)10:38
Chipacathank you10:38
mwhudsonof course now my images are consistently managing to dhcp by themselves10:38
ppisati_kalikiana: i'm actually snaping two apps: midnight command (so i can probably tweak some stuff with ./configure --... there) and a second unrelated python scrpt based app (that requires the patching too)10:38
ppisati_let's see10:38
Chipacamwhudson: oh, wait, this is a "sometimes yes sometimes no" problem? have you checked journalctl for circular deps?10:39
Chipacaotherwise yeah timing probably10:39
Chipacameaning the deps are wrong one way or another10:39
ogra_on my working system the firstboot job runs ~2sec before network-pre10:39
mwhudsonChipaca: i did look in journalctl but not specifically for that, how does it show up?10:40
Chipacamwhudson: in angry red (if your term supports it), search for "cyclic"10:40
mwhudsonChipaca: nothing like that10:41
mwhudsoni've just had a terrible thought10:41
mwhudsonwhich is that i didn't see this with -nographic10:41
mwhudsona difference with nographic is that you don't see grub and so have to wait 2 seconds for the default to be taken10:42
mwhudsonwhereas with kvm in a window i can be impatient and hit return early10:42
trijntjekalikiana: The app I'm snapping looks for .dot files and folders in$HOME, so I have to set $HOME to the snapdir. Ideally, we would have something for every snap that takes care of this, so we don't have to modify every app ;)10:43
mwhudsonChipaca: http://people.canonical.com/~mwh/plot.svg10:46
ogra_wow10:48
ogra_your boot takes awfully long10:48
Chipacamwhudson: and that time it worked?10:49
Chipacamwhudson: (i'm assuming you remove the stampfile or start from pristine every time)10:49
ogra_nearly 5sec longer than mine here10:49
Chipacaactually if the stampfile is there systemd would not even run it, so yeh10:50
mwhudsonChipaca: no that was a failed boot10:50
mwhudsonChipaca: i've been re-running udf between boots10:50
Chipacaoooh, what is sys-subsystem-net-devices-eth0.device10:50
mwhudsonwell not a failed boot but a failed to network boot10:50
Chipacamwhudson: can you edit the firstboot service file?10:52
Chipacamwhudson: by copying it to /etc/systemd/system for example10:52
Chipacamwhudson: and change it to be After: network-pre.target Before: snapd.service networking.service10:53
mupPR snapcraft#702 closed: Use the new snapcraft.io mailing list as contact information <Created by seb128> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/702>10:53
mwhudsonChipaca: it's nearly 2300 here so...10:53
* ogra_ notes he definitely does not have sys-subsystem-net-devices-eth0.device on a successfully booted setup10:53
trijntjeCan anyone build the plank snap from the snappy playpen? It asks me for my git.launchpad.net credentials but fails anyway. I want to take a look at how the mime types are defined in the final snap https://github.com/ubuntu/snappy-playpen/tree/53d3668ab6dc1a5c711f9c5e2deddd6abd59482b/plank10:53
ogra_oh10:53
ogra_wait, i do10:53
Chipacamwhudson: aw10:53
Chipacamwhudson: get out of here then :-)10:53
mwhudsonChipaca: let's give it one shot10:53
Chipacahoping that one's not cyclic :-/10:55
mwhudsonChipaca: seems to have worked!10:58
mwhudsonof course it sometimes worked anyway, but eh10:58
Chipacamwhudson: go to bed, more tomorrow10:59
mwhudsonChipaca: feel free to talk to cyphermox about this when he wakes up :-)10:59
Chipacaand if there isn't a tomorrow, not going to bed won't fix it either10:59
mwhudson(if you are still around then)10:59
mwhudsonheh10:59
mwhudsoni like your plan though10:59
* mwhudson zzz10:59
trijntjeI'm reading the terms on the  ubuntu snap store, and it says "App(s): one or more applications or content items owned by you which you submit through the Developer Site and any associated screen shots and marketing materials provided by you. "11:19
trijntjewhat about snapping software that you are not the owner of, like most open source projects?11:20
mwhudsonChipaca: final thought, this will all change when netplan takes over the world i guess!11:21
mwhudsonChipaca: i need to talk to someone about that, definitely not right now though11:21
Chipacamwhudson: i can't hear you because you are asleep11:21
ogra_mwhudson, depends if pitti plans to backport everything to 16.04  :)11:23
ogra_(and i mean everything ... )11:23
kalikianatrijntje: Teach the app XDG_ variables. Other than that what else would you do? Bind-mount . files to fool the snapped executable?11:56
trijntjekalikiana: no, the app respects XDG_ variables, but then we tell it that its home is in $USER/snap/mysnap/x1. So when we then go to open a file, the file dialog starts there, instead of in /home/$USER11:58
kalikianatrijntje: Which is why I would map HOME=/home/$USER12:11
stokachuso how does one include config files into our snap that's not in the same directory as our snapcraft file?12:27
kalikianastokachu: Where do those files come from? A subfolder? Or a separate repository?12:28
stokachukalikiana: https://github.com/conjure-up/conjure-up is my current directory structure, snapcraft/snapcraft.yaml holds that metadata and etc/conjure-up.conf holds the config12:29
stokachui want to make sure etc/conjure-up.conf ends up in my snap user data directory12:29
kalikianastokachu: Afair it must be in the read-only bit first, then the wrapper could determine if it exists and create/copy it on startup12:31
kalikianaYou could use the copy plugin to make sure it's in there12:31
stokachui tried the copy plugin but i don't know where to copy the config from while int he build12:32
stokachui have to do weird stuff with the requirements.txt file,     requirements: parts/conjure/src/requirements.txt12:33
stokachui dont understand why it doesn't just pick it up during the build12:33
kalikianastokachu: Copy is relative to the snapcraft.yaml, so files: etc/conjure-up.conf: etc/conjure-up.conf should work12:34
stokachukalikiana: snapcraft/snapcraft.yaml is the location12:34
stokachuand doing ../etc/conjure-up.conf: etc/conjure-up.conf doesn't work12:34
kalikianaOh, I see12:35
stokachui could just move the snapcraft.yaml but i want to understand how to grab those files regardless of location of snapcraft.yaml12:35
stokachulike what if snapcraft.yaml was a different repo from the source12:35
kalikianastokachu: I think in theory you could use copy with the same git repo and get it from there, although I've not tried it12:36
flixris there any replacement for giving access to devices in snappy 16.04 (was possible via assign: rules: -kernel: foo in 15.04), is there anything planned?12:36
flixror why was it removed in the first place?12:36
kalikianastokachu: ie. if you specify source, it won't look at the snapcradft folder12:36
flixrkind of makes it not usable for IoT devices anymore12:36
stokachukalikiana: ok ill play with that a bit12:37
flixrzyga, r u there?12:39
stokachucan you specify multiple plugins for a single part?12:39
Mirvis there something like source-sha256: or how would I make a validation of the upstream source fetched?12:41
Mirvif source is upstream tarball, or do I need to just download the source locally and validate manually?12:42
kalikianastokachu: No. But snapcraft should be smart enough to re-use it and not re-download.12:45
stokachukalikiana: it rechecks out the git source it looks like12:45
kalikianastokachu: Hrm. I'd say that's a bug.12:46
stokachuverifying now with a clean install12:46
kalikianaThere's one bug about deb packages being pulled in by multiple parts so there might be other flaws in the caching.12:47
stokachusergiusens: ^ do you know if this is the case12:47
stokachuhmm, the snap shows /etc/conjure-up.conf but conjure-up.shell doesn't see that file at all12:51
ali1234by default snapd doesnt set up XDG_DATA_DIRS12:52
ali1234so "teaching" the app about them doesn't actually help very much12:52
stokachuso in my snapcraft.yaml where do i copy those files too?12:52
stokachuright now it's etc/conjure-up.conf: etc/conjure-up.conf12:53
stokachuthis is my current yaml https://gist.github.com/battlemidget/1bb079992272b96e85ab2ac135a0d54112:54
ali1234that seems reasonable?12:54
stokachuim guessing it's not reasonable? since it doesn't work12:55
ali1234you need to make the app look for $SNAP/etc/conjure-up.conf12:55
ali1234by changing the source code if necessary12:55
stokachuso we have to basically code our applications to be snap specific?12:56
ali1234no12:56
ali1234you just have to code them with a command line option that allos you to specify the location of the config file12:56
ali1234all good software already does that since years...12:57
ahoneybuncwayne: I'm using your snapcraft.yaml to try to build atom 1.9 that came out today12:57
stokachusame with directory structure since years...12:57
ali1234yes, XDG_DATA_DIRS has been around for a long time12:58
kalikianastokachu: So what doesn't work? Is the file in the snap?12:58
stokachuthe file is in the snap12:58
stokachubut not when i run conjure-up.shell12:58
stokachuunsquashfs list the file12:58
cwayneahoneybun: are you hitting any issues? i know didrocks cleaned mine up quite a bit12:59
ahoneybunnot sure yet still building12:59
ahoneybunI used your snap to make mine lol12:59
ahoneybunor try to13:00
ali1234the problem is this https://github.com/conjure-up/conjure-up/blob/master/conjureup/app.py#L18513:00
stokachuso if conjure-up.shell shows files in /etc, why doesn't my file show up there even though is specifically told it to copy there13:01
ali1234because that is not what copy plugin does13:02
ali1234copy plugin copies a file in to your snap13:02
didrockscwayne: IIRC, yours should work without devmode13:02
kalikianastokachu: If they are in the snap, where are they? .shell should see anything that is in there once it's installed13:02
stokachuali1234: if it's in the snap why isn't it in the shell?13:02
ali1234what do you mean "in the shell"?13:03
stokachuhttps://www.irccloud.com/pastebin/V9HfBlV2/13:03
stokachukalikiana: ^13:03
stokachuali1234: conjure-up.shell13:03
ali1234because snaps arent uncompressed over /?13:03
stokachuali1234: are you asking me if they are?13:04
kalikianastokachu: As the code looks for ../etc/conjure-up.conf maybe you need a subfolder in there13:04
ali1234no13:04
ali1234your code looks for /etc/conjure-up.conf and ../etc/conjuse-up.conf. the file will actually be at /snap/conjure-up/xn/etc/conjuse-up.conf13:05
cwaynedidrocks: nope, cause it tries to call nohup13:05
cwaynefor some reason13:05
ahoneybunmm an error13:06
stokachuali1234: so that goes back to using $SNAP to figure out where the file is13:06
ali1234stokachu: yes, exactly13:07
ahoneybuncwayne: http://pastebin.ubuntu.com/21888796/13:07
stokachuali1234: even if i give it a cli option to poitn to the config file13:07
ahoneybunI used the one from playpen13:07
stokachuit still requires $SNAP13:07
ali1234stokachu: then you use the cli option from within your wrapper script13:07
stokachuand where do i edit that file?13:08
stokachuin the apps section?13:08
ali1234yes13:08
stokachucommand: conjure-up <what goes here>13:08
ali1234command: mywrapper conjure-up13:08
stokachujust the relative path to the config?13:08
stokachuoh i see13:08
stokachui have to create another file to do this13:08
ali1234yes13:08
ali1234see for example the desktop-launcher13:09
stokachuhttps://github.com/snapcore/snapcraft/tree/master/demos?13:09
ali1234you could also do it by just supplying arguments13:09
stokachuwhere is that example13:09
ali1234https://github.com/ubuntu/snapcraft-desktop-helpers13:09
ali1234so you could probably just do command: conjure-up -c <path-to-config>13:10
ali1234if conjure-up accepted a -c option13:10
stokachuali1234: can i do conjure-up -c $SNAP/etc/conjure-up.conf13:10
ali1234yes13:10
stokachui didnt realize $SNAP was translated in the snapcraft.yaml file13:11
stokachuor do i still need the wrapper?13:11
ali1234$SNAP isn't know until install time13:11
stokachuok so still need the wrapper13:11
ali1234no, you don't13:11
ali1234maybe not for this13:11
ali1234but you might need it for something else13:11
ali1234depends what problem you run into next?13:11
stokachuhow do i know where the conjure-up.conf file is located if i just wanted to do it in the snapcraft.yaml?13:12
ali1234you write $SNAP13:12
ali1234snapcraft.yaml copies it into the shell script it generates automatically13:12
balloonshey kyrofa, do you expect your godeps PR to land soon? https://github.com/snapcore/snapcraft/pull/69113:12
mupPR snapcraft#691: Add godeps plugin <Created by kyrofa> <https://github.com/snapcore/snapcraft/pull/691>13:12
ali1234look at /snap/bin/conjure-up13:12
ali1234it is a shell script13:12
stokachui see13:12
stokachuali1234: https://gist.github.com/battlemidget/1bb079992272b96e85ab2ac135a0d541#file-snapcraft-yaml-L12 can i do something liek this?13:13
ali1234when you run a snap it is shell scripts inside shell scripts13:13
ali1234yes if you add that command lne option to conjure-up13:13
stokachuyea i will13:13
stokachujust curious on that part with snapcraft13:13
stokachuali1234: kalikiana: this clears up a lot, thanks for putting up with my questions13:14
ali1234you can also do it with a wrapper script, which is neater if you need a lot of arguments and environment variables13:14
ali1234it is just up to your personal preference13:14
stokachuali1234: yea I will probably end up doing that13:14
cwayneahoneybun: that looks like an issue within atom itself somehow13:17
cwayneas its failing to run its own bootstrap script..13:17
=== mhall119_ is now known as mhall119
mhall119sergiusens: kyrofa: can one of you let me know when my patch is in a snapcraft release? I'd like to propose my packaging configs to upstream Arduino, but can't until it "just works"13:40
mupPR snapd#1511 closed: overlord: actually run hooks <Created by kyrofa> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/1511>13:42
didrockscwayne: interesting, I was sure it was it was working, did you talk with the security team about ideas to circumvent that?13:45
cwaynenope13:45
didrockscwayne: another way, we can set -f by default, this shouldn't call nohup?13:45
cwaynedidrocks: i think i tired that, but didnt change anything13:45
didrocksinteresting, I was sure to have run atom unconfined from the latest playpen13:48
didrocksbut I might be wrong13:48
didrocksor have bad memory :p13:48
didrocksbut otherwise, open a bug and try to talk about it on the ML with the security guys for ideas13:48
didrocks(but the answer might just be "fix upstream" :p13:48
ali1234didrocks: is there some better way to achieve this, without putting a wrapper in a wrapper? http://paste.ubuntu.com/21893086/13:54
didrocksali1234: for now, this is the best you can do. I wonder strongly if the desktop-launch wrapper can't source some directories for this13:55
didrocks(that would avoid chaining wrappers)13:55
ali1234i was thinking more like... make it pull stuff from the yaml13:55
didrocksbut yeah, no other way right now, sorry13:55
didrocksali1234: easy for simple case like FOO=bar13:55
didrocksa little bit less for FOO=$FOO:bar13:56
didrocksbecause in your specific case, you want this to apply after desktop-launch is running13:56
didrocksjust before its exec=13:56
didrocks(you may dep on some variables set by the wrapper)13:56
ali1234maybe13:56
ali1234however you could just insert things from the yaml verbatim into the launcher13:57
didrocksyeah, for env variables, this is planned13:57
ali1234cool :)13:57
didrocksI don't know where sergiusens is on his long priority list :)13:57
didrocksbut this is definitively part of it13:57
ali1234in this specific case i should probably just build everything with /usr prefix13:58
ali1234i'm not really sure about the implications of doing that though13:59
didrocksyou will get your result in $SNAP/usr/…13:59
ali1234that's what i want13:59
ali1234but is there any risk that absolute paths could creep in?14:00
ali1234should i use /usr or usr/?14:00
ali1234or just "usr"?14:00
didrocksdepends on the build system :)14:01
ali1234autotools14:01
didrocksif they generate a config.h file14:01
didrocks(yeah, but what modules?)14:01
didrocksfor instance, some are doing:14:01
ali1234no idea14:01
didrocksDATADIR=$PREFIX/share14:01
didrocksand so you will get some tools fetching sources from a hardcoded /usr/share14:02
didrocks(and so, not being relocatable)14:02
ali1234yeah that's the problem that i have14:02
ali1234except that if you don't supply a prefix then the plugin uses ""14:02
ali1234and it looks in /share14:02
ali1234so maybe i should just use "usr" AND ALL MY PROBLEMS GO AWAY LIKE MAGIC14:02
ali1234oops caps :)14:02
didrocksyeah, setting the prefix wouldn't help in that case IMHO :)14:02
didrocksis there any env var to override this?14:03
ali1234yes, XDG_DATA_DIRS14:03
mupPR snapd#1617 opened: many: move to purely hash based key lookup and to new key/signature format (v1) <Blocked> <Critical> <Created by pedronis> <https://github.com/snapcore/snapd/pull/1617>14:03
ali1234hence my wrapper script14:03
ali1234but it looks in $XDG_DATA_DIRS/share and not $XDG_DATA_DIRS/usr/share14:03
ali1234unless you build it with prefix="/usr" (or some variation)14:03
kalikianaali1234: didrocks Environment variables is bug 158325914:04
mupBug #1583259: Snappy needs to influence environment variables in applications  <snap-desktop-issue> <Canonical Click Reviewers tools:Fix Committed by jdstrand> <Snappy Launcher:Invalid> <Snapcraft:Triaged by sergiusens> <Snappy:New> <https://launchpad.net/bugs/1583259>14:04
ali1234thanks14:04
didrocksali1234: yeah, so "fixable" at least :)14:04
didrockskalikiana: thanks for the ref!14:04
ali1234yeah but fixable in multiple ways, i don't know which way is the right one :)14:04
didrocksenv var for now I would say14:05
ali1234so double wrapper... okay14:05
didrocksyeah, we'll get better at it, but it's an incremental process :)14:05
ali1234so it would be nice if you could achieve what the desktop-launcher does, with only the correct lines in the yaml14:05
ali1234or at least most of it14:06
jdstrandcwayne: please file a bug for nohup and paste the security denials (grep audit /var/log/syslog) for that app14:06
jdstrandcwayne: add the snapd-interface tag14:06
didrocksjdstrand: I don't think it's something you would really want to allow right?14:07
didrocksali1234: yeah, it's the long term goal :)14:07
didrocksnohup wouldn't give you long running process that you wouldn't like?14:07
ali1234didrocks: also it would be nice if this was one of the standard built-in vars: https://github.com/ubuntu/snapcraft-desktop-helpers/blob/master/common/desktop-exports#L1314:08
ali1234maybe $SNAP-LIBDIR or something14:08
Odd_BlokeHello all, I'm getting 'This application failed to start because it could not find or load the Qt platform plugin "xcb".' when building a PyQT5 application; I'm stage-package'ing python3-pyqt5 and libx11-xcb1.  Am I missing something else I need to add?14:09
jdstranddidrocks: well, we already allow background processes in the form of daemons. but, I think the denial is only for the nohup command. and app could ship that itself or trap the signal itself so I don't really see the point in blocking it14:09
Odd_Bloke(I'm getting this even in devmode)14:09
jdstrandwe'll see what the denial is14:09
didrocksali1234: oh don't tell me, it's on my list since a very long time :)14:09
didrocksjdstrand: oh, good point14:11
qenghoOdd_Bloke: that is the most common complaint I see. :(14:35
kyrofaballoons, I expect the godeps plugin to land in master tomorrow-ish15:02
kyrofamhall119, will do! I've been in that boat before :)15:03
kyrofamhall119, though you can keep an eye on your bug as well-- it'll be updated as it goes through the SRU process15:03
renatuhey guys how I can force snapcraft to re-download the deps after update the stage-packages list.15:05
SamYaplecan I get some help with this PR? I can't actually access the autopkgtest to see why it failed. https://github.com/snapcore/snapcraft/pull/66315:07
mupPR snapcraft#663: Improve python2 test coverage <Created by SamYaple> <https://github.com/snapcore/snapcraft/pull/663>15:07
SamYapleit was passing before I rebased it since it had gone a while without review15:08
kyrofaOdd_Bloke, you're missing the stage-package that includes those plugins (and potentially missing the environment variable to pick them up in the snap)15:15
kyrofaOdd_Bloke, is this qt5?15:15
Spadshttps://github.com/scummvm/scummvm/pull/800 <-- zyga15:19
mupPR scummvm/scummvm#800: Add snapcraft.yaml so you can `snapcraft build` <Created by spads-spads> <https://github.com/scummvm/scummvm/pull/800>15:19
=== chihchun is now known as chihchun_afk
sergiusensSpads \o/15:46
sergiusenshello everyone15:47
seb128hey sergiusens15:48
stokachuugh, sudo snap install conjure_up_2.0.0.7_amd64.snap --devmode works, sudo snap install conjure-up --devmode does not15:51
stokachui dont understand why15:52
seb128stokachu, does conjure-up exist?15:52
stokachuyea15:52
seb128is that in the store?15:53
seb128or a local snap?15:53
stokachuboth15:53
seb128what error do you get if you try to install the .snap?15:53
seb128can you pastebin the cmd and output?15:53
stokachuthat way works, it's installing from the store that fails15:53
stokachuit just hangs when i run `conjure-up -h`15:53
stokachuhttps://www.irccloud.com/pastebin/ZkY2QFmd/15:54
sergiusensstokachu did you "release" your latest upload?15:54
stokachujust tried this ^15:54
stokachusergiusens: yep15:54
stokachuhttps://myapps.developer.ubuntu.com/dev/click-apps/5479/rev/9/15:54
sergiusensso hashes match15:54
stokachuconjure-up   2.0.0.7               9    adam-stokes  devmode15:55
stokachufrom snap list15:55
sergiusenswhat's the sha512 of conjure_up_2.0.0.7_amd64.snap ?15:55
stokachu9c43bfeb723da09b1e56adb8b42cc41977a937153a34a24ea2211ffb250c71f882b4e16c00f79ad01686dd86bec3176ba129acca2dc2025f33bfdea464f89377  conjure-up_2.0.0.7_amd64.snap15:55
stokachuhttps://github.com/conjure-up/conjure-up/blob/f7ec4ea632ab5f8b8d4f368bcdb09475b6e6f8cd/snapcraft/snapcraft.yaml is my snappy file15:57
sergiusensChipaca can you give us some insight on the client installing with --devmode from the stable channel ?15:57
stokachusergiusens: are you able to download the snap directly and install it?16:00
sergiusensstokachu I can, but there is no user facing api that allows this16:00
stokachuhttps://myapps.developer.ubuntu.com/dev/click-apps/5479/download/rev/9/16:01
stokachuthat doesn't work for you?16:01
sergiusensstokachu oh, I can fetch that snap, yes16:01
stokachuand then install it locally to see if it works16:01
* sergiusens is downloading16:01
sergiusensstokachu you can also just install remotely and copy over the .snap from /var/lib/snapd/snaps16:02
* sergiusens is unsure about the exact path16:02
stokachuim just curious if it fails the same way for you16:02
stokachuinstalling it locally should allow you to do conjure-up -h16:02
sergiusensstokachu will install as soon as it finishes downloading16:02
stokachuok16:02
* sergiusens leaves to pick up his son from daycare in the meantime16:03
sergiusensstokachu sorry to say I am on 3Mbps here ;-)16:03
stokachu:\ https://www.irccloud.com/pastebin/kRLqcOUN/16:06
tianonjdstrand: ah, good point re seccomp -- I'd managed to narrow down the list of calls Docker itself makes, but forgot that it starts arbitrary processes within containers which might need more O:)16:16
brendandhttps://developer.ubuntu.com/en/snappy/build-apps/your-first-snap/ seems to imply that after adding the 'parts' section and running snapcraft stage that i should have something in stage/bin, but it's empty16:24
brendandthe only output i saw that was suspicious was 'Please consider setting `go-importpath` for the 'cam' part'16:24
sergiusensstokachu did you get around to logging the snappy bug for that?16:27
trijntjekalikiana: but HOME gets mapped to $SNAP_USER_DATA for all snaps:16:27
trijntjeexport HOME="$SNAP_USER_DATA"16:27
stokachusergiusens: no, im not sure if it's a bug on my end or snappy16:27
sergiusensstokachu it is snappy for that one, it should exit and be done with it16:28
stokachuok ill file a bug now16:29
sergiusensstokachu but it seems to be reexec'ing on and on16:29
stokachusergiusens: file against which project? snapcraft?16:30
argeshi is there a way to re-run autopkgtest on a pull request? i seem to have a failure but it seems to be unrelated to my change16:30
argeshttps://github.com/snapcore/snapd/pull/161216:30
mupPR snapd#1612: interfaces: add /proc/version_signature to appamor template <Created by arges> <https://github.com/snapcore/snapd/pull/1612>16:30
sergiusensstokachu launchpad.net/snappy16:31
Chipacasergiusens, what about the client installing with --devmode from the stable channel?16:31
Chipacaouch, that linkfest looks wrong :-(16:33
stokachusergiusens: https://bugs.launchpad.net/snappy/+bug/160904516:33
mupBug #1609045: running conjure-up -h results in the snap re-execing itself over and over <Snappy:New> <https://launchpad.net/bugs/1609045>16:33
mupBug #1609045 opened: running conjure-up -h results in the snap re-execing itself over and over <Snappy:New> <https://launchpad.net/bugs/1609045>16:34
Chipacastokachu, can you add information about where you're running thins?16:34
Chipacathis*16:34
Chipacastokachu, like the distro you're on, and the snapd version, etc16:34
stokachuChipaca: done16:35
seb128no mvo around?16:36
Chipacaseb128, no16:36
seb128Chipaca, do you know when he's back?16:36
sergiusensseb128 tomorrow16:37
seb128sergiusens, thanks16:37
stokachusergiusens: were you able to run conjure-up -h or did it hang?16:37
trijntjekalikiana: wait nevermind, that is before the wrapper is called, so you can still change it their16:39
Chipacastokachu, you're re-execing the thing again and again i guess?16:41
mupPR snapcraft#663 closed: Improve python2 test coverage <Created by SamYaple> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/663>16:41
=== chihchun_afk is now known as chihchun
mupPR snapcraft#706 closed: Added "camera" plug into the example <Created by liu-xiao-guo> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/706>16:47
sergiusensChipaca his code isn't doing it16:47
sergiusensChipaca in his snapcraft generated wrapper script I added some echo's to be sure; zyga said something weird was going on16:48
kyrofaHey sergiusens, I expected you to be out another day16:49
sergiusenskyrofa next week16:49
kyrofasergiusens, ah!16:49
sergiusensbut I am so tired; not really inspired today16:49
sergiusensso just clearing the PR queue which I would feel bored to do some other day ;-)16:49
sergiusenskyrofa is godeps good to go btw?16:50
kyrofasergiusens, yessir!16:50
kyrofaI just updated it16:50
kyrofa(from master, I mean)16:50
Chipacasergiusens, um16:54
Chipacasergiusens, conjure-up16:54
Chipacasergiusens, calls a wrapper script, something like command-conjure-up.wrapper16:54
Chipacasergiusens, which exec's conjure-up16:54
sergiusensChipaca yes16:54
sergiusensChipaca in that wrapper I added "echo running" and I see that echo'ed eternally16:55
Chipacawhich, if your machine has a python3 interpreter in /home/adam/something, will pick up a conjure up inside the snap16:55
Chipacabut if not, it will look up the path16:55
Chipacaand find the conjure-up where it all started16:55
stokachuhttps://www.irccloud.com/pastebin/0XFp8Crt/16:55
stokachuChipaca: should i cahnge the conjure-up key to something else?16:55
stokachuis it looping b/c of that?16:55
Chipaca"key"?16:55
stokachuthe key in snapcraft.yaml16:56
ogra_well ... dont use the machines interpreter ...16:56
Chipacaah, in the yaml16:56
stokachuline 216:56
ogra_but ship your oown python16:56
stokachucan i just add that to my stage packages16:56
stokachuand does that fix my current issue?16:56
ogra_well, what Chipaca said sounded like it could16:57
Chipacalet me see16:57
Chipacastokachu, are you familiar with "snap try"?16:57
stokachuChipaca: a little16:57
ogra_if you ever want conjure to run on a snap image instead of a classic install it is safer to ship your own interpreter anyway ...16:57
ogra_same goes for making your snap cross dristro16:58
Chipacaogra_, they are shipping their own interpreter16:58
stokachui would've though the python3 plugin would take care of that16:58
ogra_ah16:58
Chipacain fact they're shipping two of them just to be safe :-p16:58
Chipacasnapcraft is putting python 2 and 3 in the snap16:58
ogra_well, as long as all shebangs are mangled to point to that ...16:58
Chipacabut that's not the issue16:58
Chipacathe issue is the shebang16:58
Chipacastokachu, so, do this16:58
Chipacastokachu, in your conjure-up script and all other scripts you want to use16:58
Chipacayou see to have16:59
Chipaca#!/home/adam/Projects/conjure/snapcraft/parts/conjure/install/usr/bin/python316:59
Chipacastokachu, change that to #!/usr/bin/env python316:59
Chipacastokachu, that will work; i've just tried it16:59
stokachuok what do i need to do in my snapcraft.yaml to make that happen?16:59
Chipacait's not snapcraft16:59
Chipacait's the project itself16:59
stokachuChipaca: so i use setuptools to generate the script17:00
stokachuhttps://github.com/conjure-up/conjure-up/blob/master/setup.py#L2117:00
Chipacabah, maybe snapcraft is responsible for the bad mangling of the shebang? sergiusens?17:00
Chipacastokachu, that works17:00
Chipacawell, actually i don't know17:00
Chipacai don't know what's generating the conjure-up script itself17:00
stokachuso i dont know where to put that shebang line at17:00
ogra_i think the python plugin actually re-writes them17:01
Chipacathat is the usr/bin/conjure-up script in the snap17:01
stokachuit's all happening via setuptools17:01
Chipacasergiusens, this is all on you, it seems :-D17:01
stokachusergiusens: also the python3 plugin still won't pick up my requirements.txt17:01
stokachuthis all makes17:02
* stokachu very sad17:02
* Chipaca hugs stokachu 17:03
stokachusergiusens: feel free to try and reproduce with https://github.com/conjure-up/conjure-up17:03
stokachuChipaca: \o/17:03
sergiusensChipaca oh we fixed that in master, in any case the exec should be fine17:03
sergiusensstokachu I can fix requirements.txt today; I thought I told you to use master17:03
Chipacasergiusens, I'm not following what you mean about the exec being fine17:03
sergiusensChipaca in any case, how would the outside app find the exec from the inside? isn't that just wrong in any case?17:04
sergiusensChipaca shebangs are fixed in master17:04
Chipacasergiusens, because the .wrapper is doing PATH=$SNAP/bin:$SNAP/usr/bin:$PATH, and PATH already has /snap/bin17:04
mupPR snapd#1618 opened: interfaces: add lscpu to apparmor template <Created by arges> <https://github.com/snapcore/snapd/pull/1618>17:05
sergiusensChipaca so /snap/bin exists inside the contained environment? for what possible reason?17:05
Chipacasergiusens, what do you mean? the whole system is there17:05
ogra_i think he meant $SNAP/bin17:05
Chipacano, /snap/bin17:05
sergiusensogra_ no, I mean /snap/bin17:05
ogra_what would a snap do with /snap/bin ?17:06
Chipacanothing17:06
ogra_it cant exec anything there by default17:06
Chipacanothing, for now at least17:06
sergiusensogra_ which is why I think it shouldn't be there after snap-confine sets up the env17:06
ogra_right17:06
ogra_well, it should be in the users PATH17:07
ogra_but not in any of the wrappers17:07
sergiusensalso, $SNAP/bin/conjure-up should resolve before /snap/bin/conjure-up given the way we resolve the path17:07
Chipacasergiusens, first, snap-confine isn't a thing yet17:07
sergiusensChipaca heh, zyga sold it to me as a thing ;-)17:08
sergiusenstalked about it all week ;-)17:08
ogra_it is definitely in proposed17:08
Chipacasergiusens, second, the idea isn't that it gives you a chroot-like experience where only your things exist17:08
Chipacasergiusens, snap-confine is 2.11 which is proposed. debian has 2.08 still /o\17:08
Chipacasergiusens, it's still apparmor and seccomp mediating stuff, with the whole system there but inaccessible17:09
Chipacaright?17:09
sergiusensChipaca so what is with my statement that $SNAP/bin/conjure-up should resolve before /snap/bin/conjure-up given precedence of path?17:10
Chipacai saw no such statement, but i'll address it now17:10
Chipacasergiusens, that is correct, but only if $SNAP/bin/conjure-up has a valid shebang17:10
Chipacasergiusens, that is, the wrapper sets it up that way17:10
sergiusensChipaca as it is invalid, should it just exit?17:11
Chipacaas I said: the .wrapper is doing PATH=$SNAP/bin:$SNAP/usr/bin:$PATH17:11
Chipacasergiusens, feel free to file a bug against posix or something; this isn't our behaviour17:11
Chipacasergiusens, wiht an invalid shebang it is not a valid executable17:11
Chipacasergiusens, so the search continues along the path17:11
Chipacasergiusens, i mean: this is /bin/sh doing the work, not us17:12
sergiusensChipaca http://paste.ubuntu.com/21914894/17:13
sergiusensit didn't bounce to the next here17:13
Chipacasergiusens, now try with exec17:16
sergiusensChipaca ah, there we go :-)17:16
sergiusensstokachu can you try master with your branch? in the meantime I'll fix that requirements.txt issue17:19
stokachusergiusens: i tried building snapcraft from master and it failed17:19
sergiusensstokachu building with snapcraft or building snapcraft?17:20
stokachusergiusens: building snapcraft itself17:20
stokachusergiusens: sorry, ./setup.py install seems tow ork now17:22
stokachulemme try to rebuild17:22
sergiusensstokachu how did you try and build? gbp buildpackage?17:22
sergiusensstokachu in any case you can just use the sources directly17:22
ogra_gbp ?17:22
stokachusergiusens: what do you want me to try master with?17:22
ogra_you need to pay in british pounds ?17:22
stokachui thought it was snapcraft17:22
sergiusensstokachu just run snapcraft as <path to snapcraft source>/bin/snapcraft17:22
stokachuok17:23
sergiusensstokachu master has your shebang fix17:23
kyrofasergiusens, are you +1 on godeps? I can babysit and merge when green if so17:23
sergiusensogra_ gbp == git build package17:23
ogra_ah17:23
sergiusenskyrofa I want balloons to try it out though17:23
sergiusensogra_ akin to bzr bd17:23
ogra_yeah17:23
balloonsI tried it and failed in Leiden17:24
ogra_got it ... never used git for package trees :)17:24
balloonsas in I failed to get it to run.. it ate my snapcraft17:24
kyrofaballoons, huh?17:24
kyrofaballoons, you mean you weren't successful in running snapcraft from source?17:24
balloonskyrofa, in other words, I have no useful data for you. But yes, I would really like it to land to use it17:24
balloonskyrofa, right. I failed to get it to run (though I did a make install)17:25
balloonserr.. setup.py install17:25
sergiusensballoons oh, just run from source17:25
kyrofaballoons, yeah just clone snapcraft and run snapcraft from `<snapcraft root>/bin/snapcraft`17:25
sergiusenskyrofa do we have docs for running from source?17:25
kyrofasergiusens, honestly I don't think so17:25
kyrofaWe should17:25
sergiusensseems like we should17:25
* sergiusens is enjoying a nice blackout tethering with a very slow 3g connection for the past hour17:26
kyrofasergiusens, we have "bin: Holds the main snapcraft script. Putting this bin in your PATH or directly running scripts from it will find the rest of the source tree automatically."17:26
ogra_could be worse ...17:26
kyrofain HACKIND.md17:26
kyrofasergiusens, haha: https://github.com/snapcore/snapcraft/blob/master/HACKING.md#installing-in-a-virtualenv17:26
kyrofasergiusens, I doubt that actually works17:27
ogra_(smoke signs ... having to translate to morse code ... etc)17:27
stokachucant wait for deltas...17:27
kyrofasergiusens, I seem to remember josepht making some setup.py changes to make that better17:27
kyrofaBut yeah, balloons running straight from source is probably the easiest17:28
kyrofaballoons, any chance you can give that a shot for me? Uninstall snapcraft from the system and run from source to use the new plugin, then you can just install snapcraft from the archive again17:28
balloonskyrofa, ohh.. I remember one other bit about my attempt actually. It wasn't clear how to use the plugin17:29
balloonskyrofa, but yes I can try now. My snap needs this plugin17:29
kyrofaballoons, `snapcraft help godeps` will give you the various options it supports17:30
stokachusergiusens: still seems to be re-execing17:31
stokachuusing snapcraft from master17:31
stokachuhttps://www.irccloud.com/pastebin/FZvrc3li/17:32
stokachusergiusens: ^ maybe running from snapcraft/bin/snapcraft isn't using the source from that tree?17:33
kyrofastokachu, uninstall the snapcraft deb, first17:36
stokachurunning it in pyenv17:36
stokachushould be ok that way17:37
jcastrohey, if I apt install snapd on a system that doesn't have it, do I need to logout and back in for the path to work? Seems like /snap/bin wasn't in my patyh17:40
stokachuhttps://www.irccloud.com/pastebin/VkC9E3HR/17:43
stokachusergiusens: still uses this shebang path17:43
stokachuholy balls17:53
stokachui think it is working now17:53
kyrofajcastro, yeah, probably. /snap/bin is in /etc/profile.d17:54
kyrofaset in, rather17:54
stokachucan someone else run `snap install conjure-up --devmode`, then run `conjure-up -h` to see if the help screen works17:58
* balloons tries18:01
balloonswhoa, 150mb!18:01
stokachuballoons: hah18:02
stokachui even stripped out the juju packages except for the binaries18:02
stokachuthats like 40mb18:02
balloonskyrofa, I believe my yaml file is correct now, it's cloned and pulling depends. Hopefully my import path is correct18:03
kyrofaballoons, it just needs to be whatever the project expects it to be-- the plugin doesn't care18:04
balloonsstokachu, it works18:07
stokachuballoons: \o/18:07
stokachuballoons: thanks for checking18:07
jhobbshttps://github.com/snapcore/snapcraft/pull/697 how do i proceed with this PR? autopkgtest snaps failed, though I can't see its results, and didn't make any changes that would have affected package builds afaict18:08
mupPR snapcraft#697: Also use INSTALLROOT for make plugin <Created by jhobbs> <https://github.com/snapcore/snapcraft/pull/697>18:08
jcastrostokachu: works for me too18:09
stokachujcastro: sweet! it doesn't deploy yet but im working on that now18:10
kyrofajhobbs, I just requested a retest, but it looks like it's out of date with master as well. Can you hit the "update branch" button, there?18:11
balloonskyrofa, is there a way to easily reattempt the build step? I don't want to have to pull everything again18:11
balloonsIMHO, snapcraft should just re-execute a step if I specify it specifically18:11
kyrofaballoons, indeed, you can `snapcraft clean --step=build` (or `snapcraft clean <part> --step=build`) and then run `snapcraft` again18:12
jhobbskyrofa: k, just did18:12
balloonskyrofa, yea go-importpath is not happy18:15
kyrofaballoons, what's happening?18:15
balloonskyrofa, typically I would go install github.com/juju/juju/...18:16
kyrofaballoons, so I assume you specified github.com/juju/juju as the go-importpath?18:17
balloonsthat causes warning: "./github.com/juju/juju/..." matched no packages18:17
balloonskyrofa, right18:17
sergiusenskyrofa can you look at 707?18:17
mupPR snapcraft#707 opened: Use the proper requirements.txt path <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/707>18:17
kyrofaballoons, any chance you could pastebin your YAML? Or if this is contained within a source tree, push it up somewhere I can take a look?18:18
balloonskyrofa, and sure enough, there is no parts/juju/go/src/github.com/juju/juju18:18
kyrofaballoons, huh. That should be done as part of the pull step18:19
kyrofaActually, that's not true18:19
sergiusenskyrofa during standup I will go over the changes we will do with the go plugin which we could reflect in godeps18:19
balloonswell, I got parts/juju/go/src/github.com/juju, but not parts/juju/go/src/github.com/juju/juju18:19
kyrofaballoons, it should just be a symlink to parts/juju/src18:20
kyrofaballoons, so what are you pulling?18:20
balloonskyrofa, https://github.com/nskaggs/snap-juju.git18:20
mupPR snapd#1619 opened: Add initial "docker" interface based on some of 15.04's privileges <Created by tianon> <https://github.com/snapcore/snapd/pull/1619>18:21
kyrofaballoons, take a look at parts/juju/src. Does it contain the entire repo?18:21
kyrofaOr is it missing stuff, too?18:21
balloonsit looks correct18:22
balloonshmmm18:23
balloonsfound the symlink18:24
balloonsit's parts/juju/go/src/src/github.com/juju/juju18:24
kyrofaballoons, wait.. src is duplicated? Okay, let me clone your project. It's up to date?18:26
balloonsyes, it is18:26
balloonsI may be at fault here18:26
balloonsfixing the bad symlink is getting a good run now18:27
balloonsI think I pulled with the import path containing an extra src argument in it. That's my guess18:28
kyrofaOh oops18:28
balloonskyrofa, I have a snap now18:28
kyrofaballoons, I'll verify what you have up there real quick18:29
balloonsack, ty18:29
mupPR snapcraft#698 opened: Add option disable-parallel for autotools plugin <Created by blakerouse> <https://github.com/snapcore/snapcraft/pull/698>18:29
balloonssnap works. This is nice. +1 from me18:30
kyrofaballoons, I'm testing on a clean lxc. Mind +1ing the PR?18:34
balloonsbtw, testing a new plugin is actually really simple as you say. Just add the python file to the plugins dir :-)18:36
kyrofaballoons, indeed. Did you know that you can use plugins from parts/plugins as well?18:42
kyrofaballoons, so you can test/develop before upstreaming, or just distribute plugins that do things for weird build systems that shouldn't necessarily be upstreamed18:42
balloonskyrofa, I believe I learned that last week, but it's a good reminder. Parts can be reused; not something I've played with yet18:45
sergiusensballoons can you unsquashfs -l <snap> and show me the contents?18:46
kyrofaballoons, I'm not talking about the parts, I mean plugins. Like you could have copied the godeps.py src and put it into parts/plugins/godeps.py and run snapcraft using the plugin from there18:46
kyrofaballoons, you should add bzr as a build-package on this, by the way18:46
kyrofaballoons, but yeah, things look good18:46
sergiusenskyrofa standup18:47
kyrofasergiusens, finding headphones18:47
balloonssergiusens, sure18:48
balloonskyrofa, add bzr as a build-package for juju?18:48
kyrofaballoons, indeed, some of the godeps pull via bzr18:48
balloonskyrofa, ohh.. good catch18:49
balloonssergiusens, http://paste.ubuntu.com/21927350/18:49
balloonskyrofa, right, you discovered that by running in the lxc container I'd guess :-)18:50
kyrofaballoons, you got it. cleanbuild (or running on LP) would discover that as well18:50
balloonsright -- I hope to have LP build it18:50
balloonsI need to look into how that works18:50
SamYaplesergiusens: regarding https://github.com/snapcore/snapcraft/pull/707 , what behaviour would that be changing?18:56
mupPR snapcraft#707: Use the proper requirements.txt path <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/707>18:56
SamYaplesergiusens: os.getcwd() should always be self.sourcedir right?18:57
sergiusensSamYaple you saw my PR?19:02
SamYaplesergiusens: i see all PRs19:03
sergiusensSamYaple yeah, for when using remote sources19:03
SamYapleoh. ok that makes more sense19:03
sergiusensSamYaple I was going to ask you if you minded updating with my19:03
SamYapleill update my constraints PR19:03
sergiusensSamYaple thanks19:19
sergiusensballoons thanks19:19
sergiusensballoons was your intention to have all those binaries?19:20
sergiusensbuild them even19:20
kyrofaballoons, things have changed slightly since I wrote this, but it'll still be helpful: https://kyrofa.com/posts/building-your-snap-on-device-there-s-a-better-way19:22
balloonssergiusens, an excellent question. I want juju, jujud, juju-metadata, juju-upgrade-mongo19:22
SamYaplesergiusens: hitting C901, pep8 complexity on _pip()19:22
SamYaple:/19:22
balloonssergiusens, and sometimes I don't want jujud19:23
SamYaplesergiusens: let me refactor it, but one of us will have to rebase19:23
SamYaplesergiusens: if you remove the python2 changes from your PR i can incorprate them in mine19:23
mupPR snapcraft#691 closed: Add godeps plugin <Created by kyrofa> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/691>19:23
kyrofa\o/19:24
sergiusensSamYaple I have static conflicts and integration test conflicts19:24
sergiusensSamYaple so I need to look at those for a bit19:24
sergiusensSamYaple that means, I will rebase19:24
naccso I've got a fairly simple python script in snap, and sys.getfilesystemencoding() is reporting 'ascii'. This is leading to issues with subprocesses, which are unable to parse UTF8 (aiui). Is this a limitation of squashfs? Any suggested workarounds?20:07
naccas far as I've been able to tell, setting LC_ALL or LANG or LC_CTYPE has no effect on the sys.getfilsystemencoding() value20:09
kgunnjdstrand: so if my interface is "autoconnect" for mir, does that mean both the server side and the client side are autoconnect?20:24
mupBug #1609045 changed: running conjure-up -h results in the snap re-execing itself over and over <conjure> <Snapcraft:New> <https://launchpad.net/bugs/1609045>20:45
stokachusergiusens: ^ just moved that over, feel free to close it if it's going in the next snapcraft release20:46
stokachukyrofa: ^ not sure if you're also a maintainer20:47
kyrofastokachu, what about the directory creation to be investigated by zyga? Do you want that?20:49
stokachukyrofa: ah, im not entirely sure what sergiusens was referring to20:50
kyrofastokachu, that was Chipaca, from the bug. If this is referring to the python shebang lines, indeed this is a dupe. But it also sounds like there's a snapd bug there20:50
stokachukyrofa: ok i think it'll be best if i get with sergiusens and create a new bug for snapd20:51
stokachuso they don't get mixed20:51
kyrofastokachu, alright, I'll dupe20:51
stokachuthanks20:51
kyrofastokachu, thank you!20:53
jdstrandkgunn: the 'permanent' slot or plug policy is generated unconditionally. auto-connect true will auto-connect a snap that slots: [ mir ] to all snaps that plugs: [ mir ]21:03
tianonI wish "snappy-debug.security scanlog" supported colors somehow so the output was easier to visually skim O:)22:07
tianonanyone know where I'd report such a "feature request" for that specific snap? :)22:08
kgunnjdstrand: what did you mean by "The connected plug should actually be 'common'." in terms of a change?22:20
tianon(in case anyone else is interested, if you don't need the suggestions that "scanlog" provides, I've been having reasonable success with "dmesg --follow --color=always | grep --color=none 'audit.*docker'" for colored audit logs that are also single-line and way easier to just skim)22:26
kyrofatianon, I'm not sure where the code for the snappy-debug snap is hosted, but jdstrand might be able to tell you how to log bugs against it22:42
tianonsounds like all roads lead to jdstrand eventually :D22:42
kyrofatianon, indeed. jdstrand knows all things22:48
tianon:D22:51
kyrofakgunn, where did he say that? He seems to be away, can I help?22:52
qenghoOkay, so I have a snap. I worked on it for a while, made some local data. I tested new revisions by installing local snaps, and it pulls my data forward each time. Great. Now I have a new version in the store and I want to refresh and I don't want to uninstall and lose that data.23:35
kyrofaqengho, unfortunately, sideloaded snaps and snaps from the store, even while sharing names, are completely different snaps23:37
kyrofaqengho, there's really no way to do what you ask23:37
qenghokyrofa: I don't know what "are different" means when I can't "snap install" a version from the store.23:38
qenghoStore -> local was trivial. Once I install a local file with same name, it poisons everything?23:39
kyrofaqengho, ah, you initially had a version installed from the store and you sideloaded over the top, now you want to go back?23:39
qenghoCan I uninstall that different snap, then?23:39
qenghoYes.23:39
kyrofaWhat does snap refresh <snapname> tell you?23:40
qengho'''error: cannot refresh "tor-middle-relay": cannot refresh local snap "tor-middle-relay"'''23:41
kyrofaqengho, let me try something, hold on23:42
qenghoI recall one of the promises of snaps was that one could "roll back" changes.23:42
kyrofaqengho, indeed, the initial bits of that is in -proposed, but it's not yet complete23:43
qenghokyrofa: I'm looking around, and I see only three xNN revision directories for data. Maybe I'm too far into the future since the store version?23:44
kyrofaqengho, no revisions start without x?23:45
qenghokyrofa: correct.23:45
kyrofaArgh!23:45
kyrofaThere's obviously a bug here. I'm not sure what it is though. Should it be impossible to sideload over a store snap if you can't go back?23:45
=== chihchun is now known as chihchun_afk
kyrofaI didn't think revision cleaning was released yet23:46
kyrofaqengho, are you on -proposed?23:46
qenghokyrofa: No, stable. Pretty sure.23:47
qenghoI don't know how to check.23:47
kyrofaqengho, that's okay, then you probably aren't on proposed23:47
kyrofaqengho, you have a few options. You can come back tomorrow a little earlier in the day when snapd devs are around who can answer your question, or you can log a bug to make it more asynchronous23:49
kyrofaqengho, actually, you should send an email to the mailing list23:49
kyrofaSince we're not sure where the bug lies23:49
qenghokyrofa: I think the first bug is that I can't roll back.23:49
kyrofaqengho, that's known though, and in progress23:49
qenghokyrofa: The second bug is that installing a local package with the same name is possible. OR, that once a snap is installed locally, "snap refresh" never looks at the store for a replacement.23:51
kyrofaqengho, indeed, it's the OR that suggests this would be a good mailing list post23:51
qenghokyrofa: It's my 8AM, so I'll be around for a bit. I'll see about the mailing list.23:52
kyrofaqengho, yeah, you're pretty much exactly opposite the rest of the team, so that may be your best bet23:52
qenghokyrofa: I'm returning to the US tonight, so will be back in sync with them soon.23:53
kyrofaqengho, ah! Where are you if I may ask?23:53
qengho<- Desktop team guy, spent the summer in Taiwan.23:54
kyrofaNice23:59

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