Prebuilt boot image with https://code.launchpad.net/~vicamo/avila/+git/kernel-3.10/+merge/310849 applied.
** Merge proposal linked: https://code.launchpad.net/~vicamo/avila/+git/kernel-3.10/+merge/310849 ** Description changed: Several things to do here: * include lxd, lxd-client in default installation, * writable path for lxd: lxd resides at /var/lib/lxd and it takes write permission to fully function, * migrate lxc tmpfs-based rootfs to lxd image, lxc configs to lxd profiles, etc., * migrate systemd service definitions, etc. + + [Steps to reproduce current setup] + 0. rebuild avila kernel with additional patches from https://code.launchpad.net/~vicamo/avila/+git/kernel-3.10/+merge/310849 + 1. add /var/lib/lxd to writable paths + 2. install lxd, lxd-client and then reboot the device so that writable path may take effect. + 3. initialize lxd. This can take a while (2 minutes for me). + + $ lxd init --auto + + 4. run lxd image create script to create the android lxd image. + 5. edit lxd profile manually because it doesn't currently support setting multiple entries of "raw.lxc" config: + + $ lxc profile edit android + # This should bring up an editor, default nano. Use + # `update-alternatives --config editor` to choose the one you like. + # The result should be: + $ lxc profile show android + name: android + config: + raw.lxc: | + lxc.devttydir=lxc + lxc.tty=4 + lxc.cap.drop=mac_admin mac_override + lxc.aa_profile=unconfined + lxc.autodev=0 + lxc.init_cmd=/init + security.nesting: "true" + security.privileged: "true" + description: "" + devices: + dev_binder: + path: /dev/binder + type: unix-char + dev_socket: + path: /dev/socket + source: /dev/socket + type: disk + + 6. create an ephemeral container for debug: + + $ lxc init -e -p android android armhf + $ lxc start armhf ** Attachment added: "boot.img" https://bugs.launchpad.net/ubuntu/+source/lxc-android-config/+bug/1641549/+attachment/4777591/+files/boot.img ** Description changed: Several things to do here: * include lxd, lxd-client in default installation, * writable path for lxd: lxd resides at /var/lib/lxd and it takes write permission to fully function, * migrate lxc tmpfs-based rootfs to lxd image, lxc configs to lxd profiles, etc., * migrate systemd service definitions, etc. [Steps to reproduce current setup] - 0. rebuild avila kernel with additional patches from https://code.launchpad.net/~vicamo/avila/+git/kernel-3.10/+merge/310849 - 1. add /var/lib/lxd to writable paths - 2. install lxd, lxd-client and then reboot the device so that writable path may take effect. + + 0. rebuild avila kernel with additional patches from + https://code.launchpad.net/~vicamo/avila/+git/kernel-3.10/+merge/310849 + + 1. follow bug 1641505 and https://bugs.launchpad.net/canonical-devices- + system-image/+bug/1641505/comments/2 to enable adbd emergency mode and + disable current lxc-based android container. + + 2. add /var/lib/lxd to writable paths, install lxd and lxd-client, and + then reboot the device so that writable path may take effect. + 3. initialize lxd. This can take a while (2 minutes for me). - $ lxd init --auto + $ lxd init --auto 4. run lxd image create script to create the android lxd image. - 5. edit lxd profile manually because it doesn't currently support setting multiple entries of "raw.lxc" config: - $ lxc profile edit android - # This should bring up an editor, default nano. Use - # `update-alternatives --config editor` to choose the one you like. - # The result should be: - $ lxc profile show android - name: android - config: - raw.lxc: | - lxc.devttydir=lxc - lxc.tty=4 - lxc.cap.drop=mac_admin mac_override - lxc.aa_profile=unconfined - lxc.autodev=0 - lxc.init_cmd=/init - security.nesting: "true" - security.privileged: "true" - description: "" - devices: - dev_binder: - path: /dev/binder - type: unix-char - dev_socket: - path: /dev/socket - source: /dev/socket - type: disk + 5. edit lxd profile manually because it doesn't currently support + setting multiple entries of "raw.lxc" config: + + $ lxc profile edit android + # This should bring up an editor, default nano. Use + # `update-alternatives --config editor` to choose the one you like. + # The result should be: + $ lxc profile show android + name: android + config: + raw.lxc: | + lxc.devttydir=lxc + lxc.tty=4 + lxc.cap.drop=mac_admin mac_override + lxc.aa_profile=unconfined + lxc.autodev=0 + lxc.init_cmd=/init + security.nesting: "true" + security.privileged: "true" + description: "" + devices: + dev_binder: + path: /dev/binder + type: unix-char + dev_socket: + path: /dev/socket + source: /dev/socket + type: disk 6. create an ephemeral container for debug: - $ lxc init -e -p android android armhf - $ lxc start armhf + $ lxc init -e -p android android armhf + $ lxc start armhf ** Description changed: Several things to do here: * include lxd, lxd-client in default installation, * writable path for lxd: lxd resides at /var/lib/lxd and it takes write permission to fully function, * migrate lxc tmpfs-based rootfs to lxd image, lxc configs to lxd profiles, etc., * migrate systemd service definitions, etc. [Steps to reproduce current setup] 0. rebuild avila kernel with additional patches from https://code.launchpad.net/~vicamo/avila/+git/kernel-3.10/+merge/310849 + , or just use the prebuilt one in the attachments. 1. follow bug 1641505 and https://bugs.launchpad.net/canonical-devices- system-image/+bug/1641505/comments/2 to enable adbd emergency mode and disable current lxc-based android container. 2. add /var/lib/lxd to writable paths, install lxd and lxd-client, and then reboot the device so that writable path may take effect. 3. initialize lxd. This can take a while (2 minutes for me). $ lxd init --auto 4. run lxd image create script to create the android lxd image. 5. edit lxd profile manually because it doesn't currently support setting multiple entries of "raw.lxc" config: $ lxc profile edit android # This should bring up an editor, default nano. Use # `update-alternatives --config editor` to choose the one you like. # The result should be: $ lxc profile show android name: android config: raw.lxc: | lxc.devttydir=lxc lxc.tty=4 lxc.cap.drop=mac_admin mac_override lxc.aa_profile=unconfined lxc.autodev=0 lxc.init_cmd=/init security.nesting: "true" security.privileged: "true" description: "" devices: dev_binder: path: /dev/binder type: unix-char dev_socket: path: /dev/socket source: /dev/socket type: disk 6. create an ephemeral container for debug: $ lxc init -e -p android android armhf $ lxc start armhf -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1641549 Title: migrate lxc android container to lxd To manage notifications about this bug go to: https://bugs.launchpad.net/canonical-devices-system-image/+bug/1641549/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs