[00:01] PR snapcraft#1052 closed: Make git pulls less error prone due to history changes [00:19] Bug #1645445 changed: Turtlebot needs /dev/kobuki [00:21] PR snapd#2806 opened: interfaces/io-ports-control: use /dev/port, not /dev/ports [00:22] Bug #1646559 changed: should periodically refresh ssh keys that were obtained from SSO/store for local users [00:40] Bug #1662723 opened: Removing a snap with `snap remove ` doesn't remove everything [01:22] Bug #1662723 changed: Removing a snap with `snap remove ` doesn't remove everything === markusfluer1 is now known as markusfluer === chihchun_afk is now known as chihchun [03:49] PR snapcraft#1116 opened: Changed "snappy try" to "snap try" [04:17] Bug #1634890 changed: File system not resized in some devices [06:04] PR snapcraft#1117 opened: [wip] build and push the API docs to github pages [06:27] Bug #1662772 opened: systemd[1]: Failed to start Set the hostname to the value stored on the writable partition [06:31] PR snapcraft#1075 closed: travis: allow to pass --channels parameter to generate proper config [06:31] PR snapcraft#1118 opened: Trigger beta tests on travis every day [06:40] PR snapcraft#1109 closed: meta: allow `post-stop-command` for an app entry in `apps` [08:10] Snaps don't install in lxd containers unless the squashfuse package is installed, but I can't find the relevant bug report to link. [08:14] Found it: Bug #1628289 (although it claims to be FIX COMMITTED in xenial, comments indicate otherwise) [08:14] Bug #1628289: snapd should depend on squashfuse (for use in containers) [08:33] Hrm. Issues like bug 1652643 make a snappy life tedious at times. Bonus points for letting a non-tech-aficionado use LibreOffice on one of my machines. [08:33] Bug #1652643: LibreOffice Snap: unable to access documents in some nested direcotries [08:37] Bug #1612453 changed: `snap connect` requires me to type ubuntu-core [08:56] morning all [08:56] I have a question re auto-aliases and conflicts with other snaps [08:57] jdstand kindly setup auto-aliases for the openstackclients snap yesterday [08:58] however that had a slightly un-intended side effect that now the glance, nova etc snaps are not co-installable with the openstackclients snap, as it ships aliases for commands with the same name as those sanps [08:58] for example [08:58] error: cannot install "glance": snap "glance" command namespace conflicts with enabled alias "glance" for "openstackclients" [09:00] however the glance snap does not provide a 'glance' command :-) [09:05] jamespage: well it could at some point [09:05] because is its snap name [09:05] pedronis, I guess my question is what is the conflict resolution strategy for this type of thing? [09:06] if this is always enforced in this way, we should have policy that means one snap can't auto-aliase a command with the name of another snap right? [09:06] jamespage: yes, that was the idea [09:09] jamespage: IĀ understand this is annoying, the issue here is that in theory any snap has the right to a command called like it [09:10] pedronis, I'm ok with that, I guess my challenge is how that and auto-aliases should be managed [09:11] ideas - when you install the glance snap on a system that already has openstackclients, we might un-alias a conflicting glance command/aliase, and let glance own it. [09:11] jamespage: but is annoying if server/client snap have pairs where we call server foo and client has a command foo [09:11] pedronis, yup that's this use-case [09:12] pedronis, I'll raise a bug so we can track this better [09:12] hello there [09:13] jamespage, unalias sounds bad [09:14] usually people on the openstack controller have both the glance-api that comes with the glance snap and the glance client utility [09:14] they need to work both at the same time [09:15] zioproto, oh I agree [09:15] zioproto, its common todo that [09:15] letme raise this bug [09:15] jamespage: the problem is that well known aliases are also for scripts so random unaliasing them is bad [09:15] paste here the bug link so I can subscribe to it [09:16] mmh, what IĀ mean is more that we need predictable behavior [09:16] https://bugs.launchpad.net/snapd/+bug/1662815 [09:16] Bug #1662815: conflicts between auto-aliases and real snap names [09:16] pedronis, agreed [09:16] zioproto, ^^ [09:19] zyga: I got the point of "version" What if, for example, everyone upload their "version" of vim and actually they are almost the same just uploaded by different person and have different namespace [09:20] kw: nothing [09:20] kw: as long as they have different snap name this is all right [09:21] zyga: I see. interesting :) [09:23] kw: there were some ideas about how to let pepole get an official vim or a fork of vim from a given user (vim being just an example) but there was no agrement on what the semantics would be [09:23] kw: but it is possible we will re-visit this [09:27] zyga: I suppose that people would prefer a copy from author or official one which makes them comfortable [09:29] Bug #1662817 opened: some snaps stop working after revert the core snap === kw is now known as anta === anta is now known as kw [09:39] PR snapd#2806 closed: interfaces/io-ports-control: use /dev/port, not /dev/ports === ackkk is now known as ackk` === leftyfb_ is now known as leftyfb === DavidDuffey is now known as dduffey === chihchun_ is now known as chihchun === StoneTable is now known as aisrael === iahmad_ is now known as iahmad === ackk` is now known as ackk [10:02] PR snapd#2766 closed: tests: improve snap-env test [10:18] is there a plugin or other way to build and install a debian package from source? running debuild and dpkg -i would be enough.. [10:20] cos-, a rather ugly way is https://github.com/ogra1/packageproxy/blob/master/Makefile [10:20] from https://github.com/ogra1/packageproxy [10:20] (it works though) [10:21] https://github.com/ogra1/laidout is another one [10:22] (the latter only uses a binary, the former builds a deb from the upstream source) [10:25] ok, no clean way to do that :-( [10:26] dont judge by my hacks :) [10:27] this is all very old stuff, perhaps there is a cleaner way nowadays [10:28] i just tend to abuse makefiles as scripts for quick results [10:28] cos-: why do you need to rebuild the deb? can't you just suck it in? [10:28] yeah, then you would just put it in stage-packages [10:29] popey: if it exists only in a private git repo [10:41] why is some snap namespace reserved? e.g. i7z [10:54] Will we get to the point of being able to guarantee that a Xenial or later machine has the snapd package installed when it is provisioned? [10:54] I've got a problem with /snap/bin not being in the $PATH of processes spawned before the snapd package got installed (lxd containers in this case) [10:57] I don't know if I should file an lxd bug (because it provisioned a machine without snapd and handed it to Juju),or a Juju bug because it asked for the wrong thing, or an Ubuntu bug because /snap/bin should be on the $PATH in /etc/profile no matter what [11:00] Or if I should be handling it myself, and rebooting the machine after installing the snapd package to get the /etc/profile.d changes in effect everywhere [11:00] kw: so the upstream developer can 'claim' it. [11:00] or someone working with the upstream developer [11:17] PR snapd#2805 closed: snap: improve message after `snap refresh pkg1 pkg2` [11:18] PR snapd#2807 opened: snap: add new `snap switch` command [11:26] ogra_, ping === cmars` is now known as cmars [11:57] vigo, yo [12:09] ogra_, what does this mean? [12:09] 2017-02-08T12:08:04Z INFO snap "core" has bad plugs or slots: core-support (unknown interface) [12:09] when do you get this ? [12:09] I get this refreshing core from candidate [12:10] well stable-> candidate [12:11] well, it is an info message telling oyu that the running core does not have the interface (the new core after the install finished will have it) [12:11] the question is here if snapd is clever enough to re-run any potential config settings that use this interface once the new core is running [12:12] if not, that would be a bug === hikiko is now known as hikiko|ln [12:24] ogra_, great, thanks [12:34] Hello! where can I download model assertion for rpi2 ? need to build an image with default user [12:35] I have the one for pc right now but want to build for rpi2/db [12:37] jdstrand, any reason you can think to not let strict snaps read /usr/share? [12:37] jdstrand, if yes, what about just /usr/share/bash-completion/bash_completion :-) === hikiko|ln is now known as hikiko [13:17] PR snapd#2804 closed: interfaces/core-support: allow modifying systemd-timesyncd and sysctl configuration [13:30] PR snapd#2774 closed: interfaces/mount: add dedicated mount entry type [13:30] PR snapd#2808 opened: interfaces: use mount.Entry instead of string snippets [13:37] Chipaca: this is going to be a can of worms. in general, we should only allow what is required. ok, so for bash completion that is /etc/bash_completion* and /usr/share/bash_completion/*. however, on classic, /etc is mounted in the snap but /usr/share is from core, and core doesn't ship /usr/share/bash-completion/bash_completion, so there is a potentional mismatch, especially when using different cores [13:38] jdstrand, core ships it now [13:38] Chipaca: assuming you fix that (or defer caring), then all the commands in /usr/share/bash-copmpletion/completions/* are probably going to access the filesystem in new and exciting ways [13:39] ogra@localhost:~$ ls /usr/share/bash-completion/bash_completion [13:39] /usr/share/bash-completion/bash_completion [13:39] added last week :) [13:39] that's find, but the /etc vs /usr bit on classic may cause problems and I'm positive will cause problems with say, a fedora core [13:40] * jdstrand wonders why he doesn't have an updated core [13:40] jdstrand: what do you see in snap changes? [13:40] jdstrand: anything that indicates why core is not updating? [13:40] maybe it didn't go to stable? [13:40] yeah, far from that [13:41] jdstrand: oh, you are using stable :) consider switching [13:41] I have r888 [13:41] edge and (not sure) perhaps candidate [13:41] well, my laptop I won't, but I can do that somewhere else [13:42] * jdstrand notes that adding bash_completion was the least of his concerns-- that's easy :) [13:43] (the file, not the functionality) [13:50] jdstrand, core does ship bash completion as of now (on edge) [13:50] jdstrand, all I really need is /usr/sahre/bash-completion/bash_completion, not the completion scripts [13:51] Chipaca, well, on classic you might want them [13:53] ogra_, not from inside confinement [13:54] ^ strict [13:55] ah,. k [13:55] mvo: have you given this bug more thought: hsearch_r failed: No such process? [13:55] jdstrand: yes [13:56] mvo: I updated core and now nothing starts (cause of old snap-confine) [13:56] jdstrand: in the standup right now, I have something but we need to talk more because reverts of core are probably broken right now too [13:56] jdstrand: I have a branch that is still a bit messy [13:56] mvo: I would be interested in seeing that branch when you're ready for me to look at it [13:57] hey when you have a syntax like git+https://github.com/zioproto/kolla-ansible how do I select a specific branch ? [13:58] I mean in python-packages: in the snapcraft.yaml [13:58] jdstrand: preview (slightly messy) https://github.com/snapcore/snapd/compare/master...mvo5:feature/snap-confine-from-core?expand=1 [13:58] jdstrand: but its essentially what we discussed via mail, i.e. snapd wil create correct apparmor profiles for the snap-confine on core === stokachu_ is now known as stokachu [14:00] managed ! #branch=name [14:08] Hi guys, I am using /snap/bin/snappy-debug.security scanlog my_first_app [14:08] zioproto: yeah, same semantics as with pip [14:09] to see why AppArmor is blocking it [14:09] br4nd0m: awesome, how's it working out? [14:09] and I get:* adjust snap to ship 'ip' * adjust program to use relative paths if the snap already ships 'ip' [14:09] hi popey, it's going OK, just got stuck there [14:11] ogra_: Serial console on the Pi is the best invention since the sandwich :) [14:11] haha [14:11] ogra_: Do you know why the wifi is not working on the Pi3 yet? === tsdgeos_ is now known as tsdgeos [14:15] rvr, driver bug, not sure if ppisati ever got around reserching it more (i didnt) [14:16] rvr, it works if you first configure wired, then reboot and call sudo console-conf via ssh ... you can then turn off wired, configure wlan and reboot [14:16] ogra_: I see [14:16] ogra_: I just re-checked during the first boot, and of course failed [14:17] righ, second boot is the key :) [14:18] * Mirv notes that tsdgeos_ should get a shell account or fix internets [14:19] Mirv: oh no [14:19] it's that snap is hardlocking my system [14:19] that's what shoudl be fixed :D [14:19] it cannot be, ogra_ says snappy fixes stuff, not breaks [14:21] mvo: http://paste.ubuntu.com/23954598/ [14:21] mvo: would be nice if I could comment on your branch before the PR... [14:21] jdstrand: oh, nice [14:21] jdstrand: thank you! [14:22] jdstrand: I can make it into a PR, then you can comment [14:22] mvo: there is one other fun wrinkle that I thought of. /etc/apparmor.d/abstractions vs /var/snap/core/current/etc/apparmor.d/abstractions [14:22] mvo: this is something that has always been there but I don't think we ever considered [14:23] mvo: today I think we are lucky cause the core snap is pulling from the archive and so is the classic host and we haven't made changes to the abstractions, so they are in sync [14:24] jdstrand: yeah, good point [14:24] mvo: but it is easy to imagine scenarios when they may be out of sync [14:24] mvo: I don't think that has to be fixed here [14:25] jdstrand: https://github.com/snapcore/snapd/pull/2809/files [14:25] PR snapd#2809: cmd/snap-confine-tests: reformat test to pass shellcheck [14:25] PR snapd#2809 opened: cmd/snap-confine-tests: reformat test to pass shellcheck [14:25] jdstrand: https://github.com/snapcore/snapd/pull/2810 <- so that you can comment more easily [14:25] PR snapd#2810: snap: use snap-confine from the core snap [14:25] jdstrand: I work on that now [14:26] zyga: speaking of shellcheck. I noticed that my build environment was complaining (non-fatally) that shellcheck wasn't there. I then installed it, and it still complained [14:26] PR snapd#2810 opened: snap: use snap-confine from the core snap [14:26] not restarting into "/snap/core/current/usr/bin/snap" ([VERSION=2.21 2.21]): older than "/usr/bin/snap" (2.22.2+17.04) [14:26] what does this mean? [14:26] is it bad? [14:30] tsdgeos_: totally harmless - where do you see that? [14:30] mvo: /var/log/syslog [14:31] tsdgeos_: ok, that is expected. it just means your deb version of snapd is newer than the version in the stable core snap. on zesty that is pretty much always the case because zesty is very ahead :) [14:31] ok, tx [14:33] mvo: we are missing in ver[1] in the printing that message :) [14:33] s/in// [14:33] how do i see what applications are available in the core snap [14:34] stokachu, we onyl guarantee /bin/sh (and recently python) [14:34] ogra_, ok cool, makes it easy [14:34] pedronis: indeed, the message is not as nice as it should be [14:34] stokachu, while theer are indeed a lot more binaries included they can always drop out [14:35] ogra_, ack [14:36] Mirv, since you are here ... [14:36] ogra@localhost:~$ snap install ubuntu-app-platform [14:36] error: cannot install "ubuntu-app-platform": snap not found [14:36] do we not build it for armhf ? [14:36] mvo: commented === rumble is now known as grumble [14:36] (i can actually install the terminal app butz not the needed platform for it) [14:37] jdstrand: re-run autogen, that should fix shellcheck [14:37] jdstrand: it's a configure-time decision [14:37] jdstrand: thank you! [14:38] ogra_: we guarantee a bit more [14:38] zyga, well, libc [14:38] ogra_: look at what the apparmor profile allows for various interfaces [14:38] ogra_: if we say that interface "foo" can run /usr/bin/fooctl then that is what we allow [14:38] zyga, well, thats definitely wrong then [14:38] ogra_: we really do that [14:38] jdstrand: I added a review to mvo's branch [14:38] unless we dropped all our policies [14:39] jdstrand: please read it as well as it is very tricky business [14:39] any binary in the core can drop out at any time [14:39] guys, I need to run to buy some food [14:39] I'll be back in one hour [14:39] we always said we dont give any guarantee for them to be there [14:39] zyga: any reason why we don't build-depends on shellcheck? [14:41] ogra_: is ubuntu-app-platform only in --edge? [14:42] jdstrand, i tried all channels and with/without --devmode [14:42] jdstrand: 14.04 [14:43] zyga, huh ? [14:43] jdstrand: and immense pain on gentoo :) [14:43] shellcheck is in ubuntu since ages ... [14:43] ogra_: it wasn't available last time I looked [14:43] it definitely is [14:43] https://launchpad.net/ubuntu/+source/shellcheck [14:43] hmm [14:44] backports ... thats weird ... i knwo i used it in code in 10.04 [14:44] zyga: I'm talking about Ubuntu's debian/ directory [14:44] zyga: there is no reason Ubuntu's snapd couldn't BuildDepends on shellcheck. am I missing something? [14:45] jdstrand, well, it isnt in 14.04 [14:45] jdstrand: yeah, now it can; it was hard before [14:45] jdstrand: I'll make that so [14:45] as zyga just proved to me ... [14:45] * ogra_ is still baffled [14:45] ogra_: oh, I took your 'ages' comment to include 14.04 :) [14:45] jdstrand, well, as i said above, i'm sure i used shellcheck in 10.04 projects [14:46] well, whatever, I have a note now for it [14:46] so thats super confusing [14:46] but LP doesnt lie [14:46] (i assume) [14:48] jdstrand: can you please approve https://github.com/snapcore/snapd/pull/2811 [14:48] PR snapd#2811: cmd: add sc_is_debug_enabled [14:48] PR snapd#2811 opened: cmd: add sc_is_debug_enabled [14:48] jdstrand: trivial and I plan to use it to avoid debugging-only code in new stuff [14:48] jdstrand: feel free to request name changes, I will follow up if you want that [14:49] * zyga -> shopping [14:50] PR snapcraft#1119 opened: tests: skip the tests that can't be run in arm64 [15:04] sergiusens, hey did you manage to take a crack at refactoring the build/stage-packages backend? [15:30] didrocks: thanks for quick merge on the desktop helper :) [15:31] mterry: yw! :-) [15:32] Hi guys === Flint is now known as Guest45206 [15:32] Quick question, is there a snap packages offering maas-region controller and maas-rack controller or even a maas meta snap package? === Guest45206 is now known as Fl1nt [15:35] cls [15:35] lol [15:36] ok, so: Here I'm back: Quick question, is there a snap packages offering maas-region controller and maas-rack controller or even a maas meta snap package? === chihchun is now known as chihchun_afk [15:39] Is there any way I can provide a mirror for snaps? Basically, a rsync endpoint I could download all the snaps for, then configure snap to fetch the packages from my endpoint instead? [15:55] re [16:01] snap is all unhappy if you try to remove the same thing twice :D [16:02] http://paste.ubuntu.com/23955037/ [16:02] and the spinner stays there foreeeeeeeeeeeever [16:03] PR snapd#2811 closed: cmd: add sc_is_debug_enabled [16:05] ah. not forever [16:05] finished eventaully [16:07] PR snapd#2809 closed: cmd/snap-confine-tests: reformat test to pass shellcheck [16:08] PR snapd#2680 closed: interfaces: shutdown: also allow shutdown/reboot/suspend via logind [16:11] ogra_: even with the modules and firmware directory in /, a freshly created image stops at "Running /scripts/local-premount ..." [16:12] ppisati, squashfs compiled in or as module in the initrd ? [16:13] ogra_: module, but part of initrd (at least if i trust snapcraft haven't manually checked though) [16:13] hmm [16:13] ... [16:13] - CONFIG_SQUASHFS=m [16:13] kernel-initrd-modules: [16:13] - squashfs [16:13] and you have a proper label on the writable partition ? [16:13] Chipaca: http://paste.ubuntu.com/23955092/ [16:13] thats the only two things i could imagine making it stop there [16:13] ogra_: i dd the image, let me check [16:14] oh, also dont forget we have two console= args nowadays [16:14] might be the output switches to tty (in case you are watching serial) [16:14] Chipaca: note, with that I can get command tab completion to work and then argument completion to try to work. but things aren't going to be great. eg, [16:14] $ . /etc/bash_completion [16:14] bash-4.3$ fdisk bash: /bin/lsblk: Permission denied [16:14] ogra_: i was watching serial and the lcd screen [16:14] ah, k [16:15] ogra_: indeed the "Running local-premount" only shows on lcd [16:15] Chipaca: (where after 'fdisk ' I pressed [16:15] ... [16:15] /dev/sdc8: LABEL="system-boot" UUID="2638-BE3F" TYPE="vfat" PARTLABEL="system-boot" PARTUUID="67822573-51a0-4e57-af2a-7f675ff35f0e" [16:15] /dev/sdc9: LABEL="writable" UUID="e0364375-0ae8-4459-8462-2745dfe933a0" TYPE="ext4" PARTLABEL="writable" PARTUUID="fdaaa4cd-7a8e-4f1f-a0f1-4bbb0ea622a8" [16:15] and it appears the correct partition label is there [16:15] looks fine [16:15] well, thats the only thing i could imagie apart from missing kernel config [16:16] though i wouldnt know what could be missing [16:16] Chipaca: but it works fine for things that are allowed in teh policy. eg: [16:16] bash-4.3$ dmesg -- [16:16] --buffer-size --ctime --human --read-clear [16:16] ... [16:16] ogra_: let me do some more debugging [16:16] if you boot with break=premount, does /proc/filesystems have squashfs ? [16:16] perhaps there is more broken in the kernel plugin [16:16] jdstrand, this is for tab completing of snap apps [16:16] * ppisati tries [16:17] jdstrand, so the completion script itself would be shipped in the snap (hypothetically; i'm still at the proof-of-concept step) [16:18] jdstrand, that's why it was only bash-completion (which granted does ship a lot of completers itself; maybe i need to cut that down and ship our own version of it for this?) [16:18] ogra_: ah, i can't stop it at boot prompt [16:18] lovely [16:18] oh [16:18] ppisati: did you enable the correct compression options for squashfs? [16:18] Chipaca: I know tyhicks represented the concerns regarding this since something the snap ships is running outside of confinement (unless we do something to confine it, which I gather is what you are working on) [16:18] ppisati, even with break=top ? [16:19] (that should kick in before *anything runs) [16:19] jdstrand, exactly, what i'm working on is having the completion itself running confined [16:19] zyga: http://pastebin.ubuntu.com/23955117/ [16:19] anyone willing to take a look at my amd64 build log for rust: https://launchpadlibrarian.net/305573480/buildlog_snap_ubuntu_xenial_arm64_ceph-safe-disk_BUILDING.txt.gz ? It's failing but I'm not entirely sure why [16:20] Chipaca: so, there is a choice. I just demonstrated tab completion can work for commands on the system. I think there will be issues with different cores and on classic with host /etc mounted in the snap, but it works in principle [16:20] ppisati: yes, looks good; though you may want to check how this compares to ubuntu kernel on amd64, we changed some things after realizing the settings we used consume gobs of ram [16:20] ogra_: i can't break to the uboot prompt (counter is 0), so i need to regenerate uboot.env with tha option appended [16:20] ppisati: there was a bug about that on the kernel package [16:20] zyga: yeah, that was the parallel decompressor [16:20] zyga, ppisati http://paste.ubuntu.com/23955121/ ... from the current pi2 [16:21] yeah, i'll do some debugging [16:21] ppisati, you dont need to break at the uboot prompt [16:21] just edit cmdline.txt [16:21] * zyga -> some quick food and back to PRs [16:21] ogra_: dragonboard unfortunately [16:21] and ? [16:21] SD is SD [16:21] just plug it over to your lpatop/PC [16:22] ogra_: there's no cmdline.txt there, does it load automagically? [16:22] Chipaca: I think to make this work for /snap/bin commands to only the user on the system (not in snaps), you could probably extend what is there [16:22] oh [16:22] crap, yeah [16:22] sorry [16:22] jdstrand, I'm possibly missing something, you mind if we PM for a bit? [16:22] commandline is indeed in uboot.env only there [16:22] yep [16:22] Chipaca: to makes shells in snaps use it (eg, make it work with what I pasted), might have to think about that a bit more [16:22] and there's no text versiobn of that uboot.env [16:23] ogra_: do you know where i can find the text version of it? [16:23] ppisati, https://github.com/snapcore/dragonboard-gadget/tree/master/prebuilt [16:23] ogra_: nice, ta [16:25] elopio, so lool has to sign the CLA to use non-canonical addresses for signing on github ? could we fix that so that people in core-dev on LP are automatically included ? [16:26] that seems a bit strange to demand from people that have full commit rights to all of ubuntu already [16:31] ogra_: it's copyright assignment to Canonical, so perhaps people in some ~canonical team should be exempt [16:31] lool, yeah, that then ... [16:32] i just find it silly that people already being covered have to sign it again [16:32] and i'm personally reluctant to use my @canonical address for anything else than business mail (i.e. on something like github) [16:32] PR snapd#2812 opened: tests: fix "snap managed" output check and supress output from expect in the authenticated login tests [16:37] mvo, uuuh ... i'm hitting the "hsearch_r failed" on my laptop ! i thought that happened only during upgrades [16:37] ogra@styx:~/Devel/branches/snapd/interfaces/builtin$ telegram-sergiusens.telegram [16:37] hsearch_r failed: No such process [16:37] * ogra_ blames sergiusens [16:38] (running the edge core here though) [16:44] ogra_: from travis, there is no way to check who is in the canonical team in launchpad. [16:45] elopio, well, then this check should be postponed until there is [16:45] ogra_: the script is only an aid. If it fails, we have to check manually [16:45] it's not a blocker for merging the pr. [16:45] or it should not make commits fail [16:45] ah, the conversation looked like it was [16:46] ogra_: that's because sergiusens says that all contributions from canonical employees should be made with the canonical address. I think he read it in some guidelines, but not sure. [16:46] kgunn: did you get my email? [16:47] well [16:47] agaik we are free to use our ubuntu.com address ... unless we commit to external projects [16:47] *afaik [16:47] where it is indeed important that you use cnonical.com when doing commits in your work time [16:47] canonical.com [16:48] for our own projects thats moot [16:48] I don't know, I had my personal address as the main one configured everywhere. [16:48] also being an employee means you have signed the CLA with your contract :) [16:48] PR snapd#2813 opened: tests: filter ubuntu-core systems for authenticated find-private test [16:51] ogra_: I started a thread in canonical-snapcraft about how to check the CLA in a nicer way. Feel free to vent all your frustration there, maybe we get something done. [16:51] heh, no frustration here ... [16:52] just slight disconcert [16:56] ogra_: :) we need an agry mob [16:56] ogra_: sorry, its a general problem with edge, #2810 has a fix [16:57] ogra_: but still some work required before that can land :/ [16:57] elopio, http://i.imgur.com/GX5tSki.jpg [16:57] mvo, i noticed i was not on the latest ... a snap refresh fixed it ... [16:57] * ogra_ unblames sergiusens [16:57] ogra_: interessting [16:58] well, in fact a snap refresh core --beta ... which failed complaining about teh configure bits ... then a snap refresh core ... which just got me updated fine [16:58] so i tried to roll back first [16:59] perhaps that was the bit making it behave [17:05] Bug #1662962 opened: 'snap find' does not allow channel specification [17:05] PR snapcraft#1120 opened: Update rustup link. Bug: 1662960 [17:08] woudl someone have an example of a gadget.yaml with interface autoconnection handy? [17:08] lool, morphis perhaps (but he just said goodbye for the day in another channel) === DanChapman_ is now known as DanChapman === linuxhiker2 is now known as linuxhiker [17:32] PR snapcraft#1112 closed: core: setup core to support classic confinement [17:35] Bug #1662899 opened: Snap packages install but can't be run [17:35] jdstrand: https://github.com/snapcore/snapd/pull/2814 [17:35] PR snapd#2814: cmd: add helpers for working with mount/umount commands [17:35] jdstrand: the mount/umount command helpers, with better buffer handling and with past issues fixed [17:36] PR snapd#2814 opened: cmd: add helpers for working with mount/umount commands [17:36] jdstrand: if you can review that today I'll propose the actual useful cleanup of snap-confine that uses sc_mount/sc_umount and doesn't log manually [17:36] jdstrand: I was also wondering how to progress on the big update-ns branch, I think that the mount entry helpers PR is the first one to land there [17:37] jdstrand: namely this branch: https://github.com/snapcore/snapd/pull/2775 [17:37] PR snapd#2775: cmd: add functions to load/save fstab-like files [17:37] how would something like an /etc/ file be handled with snappy packaged programs? i want a config file that can be edited by someone outside the snap [17:37] oky: store it in $SNAP_DATA or $SNAP_USER_DATA [17:37] oky: or use snappy configuration system (using the configure hook) [17:37] oky: and snap get/set commands [17:38] oky: normal /etc is off-limits [17:38] oky: and is mostly read only [17:39] zyga: alright, i understand. i was hoping there'd be another option available (like readwrite mounts into the snap) [17:40] zyga: or like a particular dir in the snap that is exposed as RW (where i can place configs) [17:40] oky: you just described $SNAP_DATA [17:40] oky: as for mounts, that may come but not in the next few releases [17:40] oky: and it would still be a poor UX for users [17:40] oky: that mount would be visible only to the snap, at runtime [17:40] oky: (to that particular snap) [17:40] oky: and users would still have to edit $SNAP_DATA/$SNAP_USER_DATA [17:41] zyga: sure. i'll need to look to see how i can pre-populate the SNAP_DATA dir with my configs [17:42] oky: you should use a wrapper around your real app [17:43] oky: I think this is the only reliable way today [17:43] oky: configure hook runs after services start [17:43] oky: (or doens't always run before) [17:43] i've already made several (maybe 5 or more) changes to my program to work with snap (specifically around using SNAP_DATA and SNAP_USER_DATA), now realizing that i need a configurable /etc/ system, it seems like i need to make some more [17:44] thanks for the guidance, zyga - i'll be exploring the options you outlined [17:46] oky: good luck [17:49] guys, is there someone working on maas snaps? [17:51] Fl1nt: I bet but I think you should ask on the maas mailing list or ping the maas developers directly [17:52] ok, thanks a lot zyga [17:52] * ogra_ bets someone like stokachu would know [17:52] (or at leats be able to point in the right direction) [18:02] zyga: got my answer \o/ They made my day :D [18:04] see ya guys, thanks a lot for your support. [18:06] call for participation in #beagle-gsoc: http://bbb.io/gsoc [18:16] zyga: I'll try [18:24] just checking: if I want my snap to have some configuration options, is this the mechanism I should use? https://developer.ubuntu.com/en/snappy/guides/config/ [18:27] also, how is that related to https://github.com/snapcore/snapd/wiki/Configuration ? [18:28] niemeyer: ^ === rogpeppe1 is now known as rogpeppe [18:28] niemeyer: (hiya BTW!) [18:29] rogpeppe: Heya [18:29] rogpeppe: The former is completely out of date.. the "snappy" command doesn't even exist anymore [18:30] niemeyer: ok - that's the first result that google gives me when googling for "ubuntu snap configuration" [18:30] rogpeppe: The latter is the current mechanism [18:30] rogpeppe: We should kill it [18:30] niemeyer: ok, great [18:30] niemeyer: i'm glad i asked :) [18:31] niemeyer: BTW my snappy-based domestic power control system has been coming along a lot in the last week. [18:31] niemeyer: lots of "things" on the net here [18:31] @rogpeppe Sweet, that's great to hear! [18:31] niemeyer: No such command! [18:31] @nothal sshh! [18:31] niemeyer: No such command! [18:32] lol [18:32] niemeyer: one stumbling block has been lack of rtc integration [18:32] niemeyer: but i managed to work around it by making a systemd unit to set the time before the snap unit starts === Skuggen_ is now known as Skuggen [18:35] rogpeppe, well, did you try to follow the raspbian howto and try to hack the things they use to get it working into a core image ? [18:35] rtc integration is fine ... just third-party rtc isnt :) [18:35] ogra_: i added the usual dtoverlay to the boot config, if that's what you mean [18:35] ogra_: it even worked once [18:36] well, there is more to it than the dtoverlay i guess [18:36] ogra_: but not ever again [18:36] ogra_: i don't really understand the kernel internals of how /dev/rtc is provided tbh [18:36] ogra_: s/really understand/understand a thing about/ :) [18:37] https://www.abelectronics.co.uk/kb/article/22/rtc-pi-on-a-raspberry-pi [18:37] i fear we still have a bug with i2c not being enabled in config.txt ... [18:37] that would be your first step [18:38] we dont blacklist the i2c modules so you can skip that bit [18:39] but i guess you will definitely need step 4 from the tutorial [18:39] ogra_: almost none of those instructions work as is in snappy [18:40] ogra_: no i2cdetect [18:40] yeah skip that [18:40] but make sure to have i2c enabled in config.txt [18:40] ogra_: the device works ok [18:40] ogra_: i have a program that talks to it fine [18:41] on snappy ? [18:41] ogra_: yeah [18:41] ogra_: https://github.com/rogpeppe/misc/blob/master/cmd/pirtc/rtc.go [18:41] hmm, so whats the exact issue now [18:41] ogra_: /dev/rtc doesn't exist [18:42] ogra_: so timedatectl can't use it [18:42] well, the device should be created when the module is loaded [18:42] ogra_: the rtc module? [18:42] does lsmod show rtc-ds1307 ? [18:42] ogra_: no [18:43] aha [18:43] well, so modprobe it ;) [18:43] then check dmesg [18:44] ogra_: ok. i've not used modprobe before. [18:44] sudo modprobe rtc-ds1307 [18:44] ;) [18:45] then check the end of dmesg and see if it created some device [18:45] ogra_: lsmod now shows the module [18:45] good [18:45] rogpeppe: see, I told you to talk to ogran :) [18:45] well, ogra even [18:45] ogra[n] [18:45] :) [18:45] ogra_: no device though [18:45] one of my many personalities [18:45] ogra_: and nothing in /var/log/dmesg [18:46] rogpeppe, ok ... [18:46] ogra_: is modprobe persistent? [18:46] not over reboots ... [18:46] rogpeppe, so now ... sudo -s [18:46] echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device [18:46] then check dmesg again [18:47] Hmmmm no package snapcraft on trusty? [18:47] ogra_: still nothing in dmesg [18:47] any /dev/rtc now ? [18:47] ogra_: yup! === JanC is now known as Guest64203 === JanC_ is now known as JanC [18:47] aha [18:49] ogra_: my pirtc command now no longer works (2017/02/08 18:48:36 cannot open: error opening the address (104) on the bus (/dev/i2c-1): device or resource busy) - that's probably healthy though. [18:49] rogpeppe, so as a quick hack: create a file /etc/modules-load.d/modules-rtc.conf ... and add rtc-ds1307 to it [18:50] PR snapcraft#1059 closed: pluginhandler: support more complex stage-packages [18:50] ogra_: just "rtc-ds1307" as a single word on its own line? [18:50] long term this requires the new snappy config setup for core which does not knwo about modules yet though [18:50] yeah [18:50] only that [18:51] i'm not sure how we can add the "echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device" though ... [18:51] normally you woould do that through a line in /etc/rc.local but we do not make that writable on purpose [18:51] ogra_: ok, done [18:51] ogra_: so should that have fixed my issue? [18:52] well, you need that echo line before it works apparently [18:52] ogra_: if so, i'll reboot and check [18:52] the module is only half the solution, the other half is the "echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device" [18:54] after that hwclock -s and -r should just work [18:54] err [18:54] hwclock -r and -w [18:54] ogra_: ok, so to get things straight, on a new device, to get rtc working, i add "dtoverlay=i2c-rtc,ds1307" to /boot/uboot/config.txt; i run "modprobe rtc-ds1307; echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device" [18:54] ogra_: sound about right? [18:54] ogra_: i'm thinking that timedatectl should just use it when it's there, right? [18:54] yeah, that is how i read the vendor page :) [18:55] right [18:55] * rogpeppe reboots [18:55] but it wont work on boot since you will have to manually do the echo bit still [18:56] and without rc.local being writable that will be a bit tricky to get going [18:56] ogra_: oh [18:57] ogra_: right, so it actually doesn't solve my issue, unfortunately, 'cos it must be done on boot [18:57] (and i also suspect rc.local might be a bit late, the hwclock start job runs before that i fear) [18:57] ogra_: i guess at least now i can dispense with my pirtc command) [18:57] rogpeppe, we need to find a solution for that though :) please file a bug [18:58] * ogra_ wonders how we can solve that ... thats really a bit tricky [18:58] ogra_: where's the right place to file this kind of bug? [18:58] see the channel topic [18:58] image realted bugs are fine on the snappy project [18:59] ogra_: in fact, i think you might be better to file the bug because i don't actually know what the underlying issue is here but you do [18:59] PR snapd#2815 opened: release: don't force devmode on LinuxMint "serena" [19:00] ogra_: i.e. is the problem because the device isn't being created or because the module's not being detected or... [19:00] rogpeppe, because the addon board needs the echo line for initialization [19:00] ogra_: or i could just file a bug that says "h/w RTC doesn't work on raspberry Pi" [19:00] the module loads obviously and we also have the devicetree file but you can do the last step [19:01] no, rtc works ... generically ... thats specific to the addon board initialization [19:01] i'm filing one [19:01] ogra_: thanks [19:01] ogra_: that's why it's better you file it :) [19:02] Bug #1662899 changed: Snap packages install but can't be run [19:06] Bug #1663001 opened: rc.local not writable, but i2c addon board needs special treatment [19:06] rogpeppe, ^^ [19:06] would be nice if you could "me too" that one :) [19:06] i might have further questions and since you are the only one owning that HW .... [19:07] ogra_: done [19:07] thx [19:07] and sorry for not getting back to you on the ML yet [19:07] (and thanks for hunting me down here now) [19:07] ogra_: FWIW that seems like the most obvious h/w for anyone that might use an RTC on a pi [19:08] ogra_: np, thanks for helping out now [19:09] ogra_: one difficulty i have with using snappy is that it's not clear how much in the system is snappy-specific and how much is generic linux stuff. [19:10] just forget about generic linux stuff and assume its all new :) [19:10] i.e. all the above we just did are hacks in the light of snappy ... [19:21] this is a silly question but how do i unit test just the rust plugin and not the entire world? I've tried a bunch of different patterns and I can't seem to hit the right one [19:23] cholcombe, python3 -m unittest snapcraft.tests.plugins.test_rust [19:23] kyrofa, thanks :) [19:23] so it's the python path not the directory [19:23] cholcombe, nothing magical there. The ./runtests.sh essentially just does that plus the discover module [19:24] cholcombe, right [19:27] kyrofa, does sources.Script default to setting the name of the file it downloads to the same name as the link? [19:27] cholcombe, I'm not sure off the top of my head [19:28] ok [19:28] cholcombe, but you can look, it's in snapcraft/internal/sources/ [19:29] kyrofa, is there a way to reinitialize my state.json on a device [19:30] pmcgowan, I've never tried. Did you try stopping snapd and renaming that file? [19:31] kyrofa, not yet [19:31] pmcgowan, that's really my only idea :P [19:31] I saw an old post that said to restart the firstboot service, but thats not there any mre [19:31] pmcgowan, zyga would probably know better [19:31] pmcgowan, or ogra_ perhaps? [19:31] pmcgowan: hmm, on a device [19:32] pmcgowan: why do you want to do that? [19:32] zyga, yeah, still playing around with my stuck dragonboard [19:32] pmcgowan: the store was just fixed [19:32] pmcgowan: can you try to refresh now? [19:32] zyga, oh? [19:32] one sec [19:33] zyga, its working on the first snap I tried [19:34] pmcgowan: sounds promising, try to refresh core [19:34] zyga, it started to refresh automagically [19:35] its working woot [19:35] woot :) [19:35] zyga, what was the issue? [19:36] pmcgowan: store-side bug, according to pedronis the store was asking to refresh the wrong macaroon so the client refreshed but was back to square one [19:37] great glad its fixed [19:39] pmcgowan, whee ! here too ! [19:41] * zyga EODs [19:41] ttyl [19:41] pmcgowan: ogra_: great [19:42] pedronis, why only certain devices? [19:42] matter of them having been off for a while [19:42] pmcgowan: first it needed to be core (it doesn't affect classic), 2nd it depends when the last time the macarron was created/refreshed [19:42] zyga saw it on a pi today ...so it wasnt actually drafgonboard specific [19:42] ok [19:42] pmcgowan: the bug was introduced unoticed in the store a little bit ago [19:43] pmcgowan: but it triggered only once the macaroon were starting to expire and need refreshing [19:43] gotcha [19:44] pedronis, is there a bug # for that? I can close the snapd one [19:44] we are also looking how to tests these paths a bit more (it's a bit complicated because of the expiry side of this, normally it's relatively long) [19:45] pmcgowan: not yet, we'll do some bug gardening tomorrow [19:45] ok [19:49] woah [19:49] 2017-02-08T19:46:49Z ERROR cannot remove snap file "core", will retry in 3 mins: [--root / disable snap-core-533.mount] failed with exit status 1: Failed to execute operation: Structure needs cleaning [19:49] whered ya see that [19:49] after the snap refresh core [19:50] smells a bit like my SD is borked [19:50] ogra@dragon:~$ sudo reboot [19:50] sudo: error in /etc/sudo.conf, line 0 while loading plugin `sudoers_policy' [19:50] sudo: unable to load /usr/lib/sudo/sudoers.so: /usr/lib/sudo/sudoers.so: cannot read file data: Input/output error [19:50] sudo: fatal error, unable to load plugins [19:50] oops [19:50] pmcgowan: I moved this one to store [19:50] pedronis, perfect [19:50] now there's snapstore project for those [19:52] pmcgowan: the other strange message about needing to buy core, is that after removing creds the stuck download got a 401 and there's a bit of lack of details there atm, so snapd assumed is a non-free snap [19:52] that one needs a bit of work both in store and snapd [19:52] pedronis, right I saw that commentary [19:53] yay [19:53] ogra@dragon:~$ snap refresh [19:53] All snaps up to date. [19:53] so after reboot it is back in order [19:53] nice [19:53] it's a cosmetic/UX issue though, nothing fundametally broken, but bad error reporting [19:53] right [19:53] ogra@dragon:~$ snap info core|grep installed [19:53] installed: 16.04.1 (1133) 67MB - [19:55] now to remember what I was doing [20:05] PR snapcraft#1121 opened: cleanbuild: allow talking to a remote [20:10] PR snapd#2802 closed: snap-confine: make sc_map_search/read_number take const const char * arguments [20:13] PR snapd#2816 opened: interfaces/builtin/core-support: Allow modifying logind configuration from the core snap [20:20] PR snapcraft#1108 closed: store: add support for tracks in channels [20:34] jdstrand: re, regarding strncmp I thin we ought to compare strlen()+1 characters [20:34] jdstrand: otherwise this happens: [20:35] printf("%d\n", strncmp("noneofyourbusiness", "none", 5)); [20:35] jdstrand: comparing 4 characters means they are equal [20:35] jdstrand: we should compare 5, [20:35] jdstrand: do you agree? [20:35] zyga: using 5 is fine. note my comments mentioned that [20:35] jdstrand: right (start with) [20:35] not 5 specificially, but that nothing should be noneofyourbusiness [20:35] jdstrand: I just wanted to be on the safe side [20:36] that's fine [20:36] jdstrand: thanks === victorbjelkholm_ is now known as victorbjelkholm [20:39] jdstrand: hmm, thinking about it some more, I think that strncmp and strcmp with one constant string is identical [20:40] jdstrand: I already made the change but we will compare at most 5 characters in both cases [20:44] zyga: that would be implementation-specific. strcmp may use a strlen() on a non-terminated string [20:44] Is there any way I can provide a mirror for snaps? Basically, a rsync endpoint I could download all the snaps for, then configure snap to fetch the packages from my endpoint instead? [20:49] jdstrand: hmm, indeed, thanks for the insight! [20:49] victorbjelkholm: not at present [20:50] zyga: thanks. "not at present" referring to a rsync endpoint? There is some other way I could have my own mirror? [20:54] victorbjelkholm: no [20:54] victorbjelkholm: you may try to write a proxy for the snap store [20:54] victorbjelkholm: that should be doable today [20:54] ooh... I see... So where are the snaps hosted today? [20:54] victorbjelkholm: you can then point snapd at your proxy and have it mirror or cache stuff [20:54] victorbjelkholm: in a CDN, I don't know the details [20:54] yeah, that makes sense [20:55] ah, so I guess it's a CDN hosted by/owned by Canonical? [20:55] jdstrand: can you re-review the sc_u?mount_cmd branch please [20:55] hm, maybe the snaps will never be mirrorable if so... [20:55] jdstrand: minimal changes as instructed [20:55] victorbjelkholm: I believe someone will come up with a proxy [20:56] victorbjelkholm: as for mirroring it is not clear as snaps don't have to be FOSS [20:56] victorbjelkholm: and may require license [20:56] victorbjelkholm: the free snaps should be possible to mirror but I don't know if anyone works on this [20:56] ah, yeah, wouldn't be too hard, I'm just afraid of installing things from a central repository I have no idea where it comes from or where it's hosted [20:56] victorbjelkholm: as the API stands today snapd asks the store for the URL [20:56] victorbjelkholm: why? [20:57] so in the end snaps would be the same as .deb packages today, multiple repositories with different requirements and uses [20:57] I'm not sure I can trust it, might be a CDN running on some randoms computer, I have no information at this point and I'm having troubles finding it as well [20:57] victorbjelkholm: because each snap is signed and there is a root of trust there's a different approach to repositories [20:57] victorbjelkholm: one store can aggregate other stores [20:57] ah, where can I see this chain of trust? [20:57] victorbjelkholm: but you cannot use multiple stores [20:58] victorbjelkholm: in github.com/snapcore/snapd look at the asserts package [20:58] victorbjelkholm: and the overlord/assertstate package [20:59] victorbjelkholm: one store design solves many issues in a natural way (name authority for instance) [20:59] * zyga gets back to his family [20:59] jdstrand: if you +1 it I'll get a 2nd +1 from the rest of the team tomorrow [20:59] hm, not sure I understand. But yeah, have dinner here as well so maybe we'll speak later [20:59] jdstrand: thank you for the detailed review, I need to stamp strNfoo on my screen [21:00] :-) [21:00] heh [21:00] well, strNfoo aren't always the answer, but they can be helpful in certain situations [21:00] yeah but I rarely think about them [21:03] PR snapd#2817 opened: many: switch channels on refresh if needed === verterok` is now known as verterok [21:14] zyga: I think I am being dense: http://paste.ubuntu.com/23956602/ [21:15] zyga: I couldn't reconcile your comment to what I was thinking. can you enlighten me? [21:20] PR snapcraft#1122 opened: repo: cache stage packages for faster future use [21:47] PR snapcraft#1119 closed: tests: skip the tests that can't be run in arm64 [21:48] PR snapd#2812 closed: tests: fix "snap managed" output check and supress output from expect in the authenticated login tests [21:50] elopio, that PR i put in should fix my build problems on arm64 and ppc64 i hope :) [21:53] PR snapcraft#1123 opened: Adding Fish she'll source and IDEA IDE to gitignore [21:53] jdstrand: hey [21:53] jdstrand: you are currect, it is just the case that MS_REC has no meaning alone [21:54] jdstrand: so your code is closer to ideal but the difference does not matter here [21:54] zyga: right. in the 'what I expected' code, it never would be [21:54] jdstrand: the goal of that variable is to collect flags we've used so that we don't repeat them [21:54] jdstrand: since they use special syntax [21:54] zyga: well, but isn't it with the current code at least possible for MS_REC to be set when it should not? [21:55] jdstrand: yes but that is harmless, we use that as a mask to filter out stuff not to show again [21:55] jdstrand: yes, you can call mount (..., MS_REC) [21:55] jdstrand: and that will show [21:55] jdstrand: if you couple that with MS_PRIVATE it won't show again but you will see --make-rprivate [21:55] jdstrand: it's subtle [21:55] jdstrand: because we don't filter invalid arguments [21:55] jdstrand: if you want I can be precise there [21:56] jdstrand: but I don't think it matters (in this specific case) [21:56] sergiusens, i don't get why it's still looking for rustup.sh. I changed the unit tests. Maybe there's some test i missed? [21:57] zyga: I think either being precise or adding a comment as to why you don't need to be precise would be good, cause the way it reads (at least a quick reading) is that MS_BIND alone will set MS_REC and you'll get --rbind [21:57] jdstrand: wait, that shoud not be the case [21:57] jdstrand: you will get --bind [21:58] https://github.com/snapcore/snapd/pull/2814/files#diff-380b7bd2738396bc92ee5a2bd7f81d11R191 (I'm sure you know this now but just to be clear, we unset the bits seen in used_special_flags) [21:58] PR snapd#2814: cmd: add helpers for working with mount/umount commands [21:59] jdstrand: and this is tested: https://github.com/snapcore/snapd/pull/2814/files#diff-70758630224dcb7ba3963d1fa05bb69aR102 [21:59] PR snapd#2814: cmd: add helpers for working with mount/umount commands [22:00] actually, I missed the one's complement [22:14] zyga: ok, I responded. couple of small things but feel free to pass along [22:16] anyone want to take a quick peek at my pr and see where i goofed: https://github.com/snapcore/snapcraft/pull/1120 ? I looked at the download function and it uses os.path.basename for the link you give it. My change should work but the units are still failing [22:16] PR snapcraft#1120: Update rustup link. Bug: 1662960 [22:16] i deleted the pyc files just to see if that was it but it's not [22:17] i see it. thank you grep :D [22:23] PR snapcraft#1121 closed: cleanbuild: allow talking to a remote [22:35] PR snapcraft#1113 closed: repo: cache stage packages for faster future use === foli_ is now known as foli === plars is now known as plars-away [23:29] PR snapcraft#1124 opened: beta [23:53] PR snapcraft#1124 closed: beta