2023-10-02 14:32:27 |
Dave Jones |
bug |
|
|
added bug |
2023-10-02 14:32:42 |
Dave Jones |
ubiquity (Ubuntu): assignee |
|
Dave Jones (waveform) |
|
2023-10-02 14:34:35 |
Dave Jones |
merge proposal linked |
|
https://code.launchpad.net/~waveform/ubiquity/+git/ubiquity/+merge/452559 |
|
2023-10-02 14:35:31 |
Dave Jones |
bug task added |
|
livecd-rootfs (Ubuntu) |
|
2023-10-02 14:39:58 |
Dave Jones |
merge proposal linked |
|
https://code.launchpad.net/~waveform/ubuntu-images/+git/ubuntu-images/+merge/452560 |
|
2023-10-02 14:47:16 |
Dave Jones |
merge proposal linked |
|
https://code.launchpad.net/~waveform/livecd-rootfs/+git/livecd-rootfs/+merge/452563 |
|
2023-10-02 14:47:32 |
Dave Jones |
livecd-rootfs (Ubuntu): assignee |
|
Dave Jones (waveform) |
|
2023-10-02 14:48:17 |
Dave Jones |
tags |
|
foundations-todo raspi-image |
|
2023-10-02 14:48:38 |
Dave Jones |
description |
At present, in pre-installed images that rely on oem-config for their first-boot configuration (the Raspberry Pi Ubuntu desktop images are probably the most obvious of these), it is not enough to simply include oem-config (and an appropriate front-end) in the image. The oem-config-prepare script must also be run, and the appropriate oem user (with the correct UID) must also be created.
Currently this is handled by a series of hacks in either livecd-rootfs or ubuntu-image (whichever is being used to build the image). In the case of livecd-rootfs [1]:
# Create the oem user account only if it doesn't already exist
if ! id "oem" &>/dev/null; then
/usr/sbin/useradd -d /home/oem -G adm,sudo -m -N -u 29999 oem
/usr/sbin/oem-config-prepare --quiet
touch "/var/lib/oem-config/run"
fi
In the case of ubuntu-image [2]:
# FIXME: Temporarily, we also need to make sure that for desktop pi images
# we actually run oem-config-prepare before first boot. Otherwise we won't
# be able to boot into oem-config properly.
# This should be done via a package postinst ideally, so this manual
# customization should be only temporary.
manual:
execute:
- path: "/usr/sbin/oem-config-prepare"
(this is also wrong since it misses the creation of the user out).
It would be much cleaner in both cases to have an extra package (appropriately named "oem-config-prepare") that simply depends on the "oem-config" package, which contains the oem-config-prepare script, but carries out these steps in its postinst. Thus the ubuntu-image yaml can simply include this package under "extra-packages" and the livecd-rootfs hook lines can disappear in favour of a simple "add_package oem-config-prepare".
Obviously it's too late in the mantic cycle to look at this, but it should be considered for the 24.04 cycle (assuming we're still intending to use ubiquity / oem-config for that cycle).
[1]: https://git.launchpad.net/livecd-rootfs/tree/live-build/ubuntu/hooks/099-ubuntu-image-customization.chroot#n14
[2]: https://git.launchpad.net/ubuntu-images/tree/ubuntu-pi-arm64.yaml#n68 |
At present, in pre-installed images that rely on oem-config for their first-boot configuration (the Raspberry Pi Ubuntu desktop images are probably the most obvious of these), it is not enough to simply include oem-config (and an appropriate front-end) in the image. The oem-config-prepare script must also be run, and the appropriate oem user (with the correct UID) must also be created.
Currently this is handled by a series of hacks in either livecd-rootfs or ubuntu-image (whichever is being used to build the image). In the case of livecd-rootfs [1]:
# Create the oem user account only if it doesn't already exist
if ! id "oem" &>/dev/null; then
/usr/sbin/useradd -d /home/oem -G adm,sudo -m -N -u 29999 oem
/usr/sbin/oem-config-prepare --quiet
touch "/var/lib/oem-config/run"
fi
In the case of ubuntu-image [2]:
# FIXME: Temporarily, we also need to make sure that for desktop pi images
# we actually run oem-config-prepare before first boot. Otherwise we won't
# be able to boot into oem-config properly.
# This should be done via a package postinst ideally, so this manual
# customization should be only temporary.
manual:
execute:
- path: "/usr/sbin/oem-config-prepare"
(this is also wrong since it misses the creation of the oem user).
It would be much cleaner in both cases to have an extra package (appropriately named "oem-config-prepare") that simply depends on the "oem-config" package, which contains the oem-config-prepare script, but carries out these steps in its postinst. Thus the ubuntu-image yaml can simply include this package under "extra-packages" and the livecd-rootfs hook lines can disappear in favour of a simple "add_package oem-config-prepare".
Obviously it's too late in the mantic cycle to look at this, but it should be considered for the 24.04 cycle (assuming we're still intending to use ubiquity / oem-config for that cycle).
[1]: https://git.launchpad.net/livecd-rootfs/tree/live-build/ubuntu/hooks/099-ubuntu-image-customization.chroot#n14
[2]: https://git.launchpad.net/ubuntu-images/tree/ubuntu-pi-arm64.yaml#n68 |
|
2023-11-28 15:32:09 |
Dave Jones |
merge proposal linked |
|
https://code.launchpad.net/~waveform/ubuntu-images/+git/ubuntu-images/+merge/456459 |
|
2023-11-28 15:33:18 |
Dave Jones |
bug |
|
|
added subscriber Ubuntu Sponsors |
2023-11-28 16:05:17 |
Dave Jones |
description |
At present, in pre-installed images that rely on oem-config for their first-boot configuration (the Raspberry Pi Ubuntu desktop images are probably the most obvious of these), it is not enough to simply include oem-config (and an appropriate front-end) in the image. The oem-config-prepare script must also be run, and the appropriate oem user (with the correct UID) must also be created.
Currently this is handled by a series of hacks in either livecd-rootfs or ubuntu-image (whichever is being used to build the image). In the case of livecd-rootfs [1]:
# Create the oem user account only if it doesn't already exist
if ! id "oem" &>/dev/null; then
/usr/sbin/useradd -d /home/oem -G adm,sudo -m -N -u 29999 oem
/usr/sbin/oem-config-prepare --quiet
touch "/var/lib/oem-config/run"
fi
In the case of ubuntu-image [2]:
# FIXME: Temporarily, we also need to make sure that for desktop pi images
# we actually run oem-config-prepare before first boot. Otherwise we won't
# be able to boot into oem-config properly.
# This should be done via a package postinst ideally, so this manual
# customization should be only temporary.
manual:
execute:
- path: "/usr/sbin/oem-config-prepare"
(this is also wrong since it misses the creation of the oem user).
It would be much cleaner in both cases to have an extra package (appropriately named "oem-config-prepare") that simply depends on the "oem-config" package, which contains the oem-config-prepare script, but carries out these steps in its postinst. Thus the ubuntu-image yaml can simply include this package under "extra-packages" and the livecd-rootfs hook lines can disappear in favour of a simple "add_package oem-config-prepare".
Obviously it's too late in the mantic cycle to look at this, but it should be considered for the 24.04 cycle (assuming we're still intending to use ubiquity / oem-config for that cycle).
[1]: https://git.launchpad.net/livecd-rootfs/tree/live-build/ubuntu/hooks/099-ubuntu-image-customization.chroot#n14
[2]: https://git.launchpad.net/ubuntu-images/tree/ubuntu-pi-arm64.yaml#n68 |
At present, in pre-installed images that rely on oem-config for their first-boot configuration (the Raspberry Pi Ubuntu desktop images are probably the most obvious of these), it is not enough to simply include oem-config (and an appropriate front-end) in the image. The oem-config-prepare script must also be run, and the appropriate oem user (with the correct UID) must also be created.
Currently this is handled by a series of hacks in either livecd-rootfs or ubuntu-image (whichever is being used to build the image). In the case of livecd-rootfs [1]:
# Create the oem user account only if it doesn't already exist
if ! id "oem" &>/dev/null; then
/usr/sbin/useradd -d /home/oem -G adm,sudo -m -N -u 29999 oem
/usr/sbin/oem-config-prepare --quiet
touch "/var/lib/oem-config/run"
fi
This is doubly pointless since now we use ubuntu-image rather than livecd-rootfs for building these images anyway. Speaking of ubuntu-image, other there we do this [2]:
# FIXME: Temporarily, we also need to make sure that for desktop pi images
# we actually run oem-config-prepare before first boot. Otherwise we won't
# be able to boot into oem-config properly.
# This should be done via a package postinst ideally, so this manual
# customization should be only temporary.
manual:
execute:
- path: "/usr/sbin/oem-config-prepare"
(this is also wrong since it misses the creation of the oem user).
It would be much cleaner in both cases to have an extra package (appropriately named "oem-config-prepare") that simply depends on the "oem-config" package, which contains the oem-config-prepare script, but carries out these steps in its postinst. Thus the ubuntu-image yaml can simply include this package under "extra-packages" and the livecd-rootfs hook lines can disappear in favour of a simple "add_package oem-config-prepare".
[1]: https://git.launchpad.net/livecd-rootfs/tree/live-build/ubuntu/hooks/099-ubuntu-image-customization.chroot#n14
[2]: https://git.launchpad.net/ubuntu-images/tree/ubuntu-pi-arm64.yaml#n68 |
|
2023-11-28 16:06:17 |
Dave Jones |
merge proposal linked |
|
https://code.launchpad.net/~waveform/livecd-rootfs/+git/livecd-rootfs/+merge/456463 |
|
2023-11-28 16:06:30 |
Dave Jones |
livecd-rootfs (Ubuntu): assignee |
Dave Jones (waveform) |
|
|
2023-11-28 16:06:32 |
Dave Jones |
ubiquity (Ubuntu): assignee |
Dave Jones (waveform) |
|
|
2023-11-28 16:07:45 |
Dave Jones |
description |
At present, in pre-installed images that rely on oem-config for their first-boot configuration (the Raspberry Pi Ubuntu desktop images are probably the most obvious of these), it is not enough to simply include oem-config (and an appropriate front-end) in the image. The oem-config-prepare script must also be run, and the appropriate oem user (with the correct UID) must also be created.
Currently this is handled by a series of hacks in either livecd-rootfs or ubuntu-image (whichever is being used to build the image). In the case of livecd-rootfs [1]:
# Create the oem user account only if it doesn't already exist
if ! id "oem" &>/dev/null; then
/usr/sbin/useradd -d /home/oem -G adm,sudo -m -N -u 29999 oem
/usr/sbin/oem-config-prepare --quiet
touch "/var/lib/oem-config/run"
fi
This is doubly pointless since now we use ubuntu-image rather than livecd-rootfs for building these images anyway. Speaking of ubuntu-image, other there we do this [2]:
# FIXME: Temporarily, we also need to make sure that for desktop pi images
# we actually run oem-config-prepare before first boot. Otherwise we won't
# be able to boot into oem-config properly.
# This should be done via a package postinst ideally, so this manual
# customization should be only temporary.
manual:
execute:
- path: "/usr/sbin/oem-config-prepare"
(this is also wrong since it misses the creation of the oem user).
It would be much cleaner in both cases to have an extra package (appropriately named "oem-config-prepare") that simply depends on the "oem-config" package, which contains the oem-config-prepare script, but carries out these steps in its postinst. Thus the ubuntu-image yaml can simply include this package under "extra-packages" and the livecd-rootfs hook lines can disappear in favour of a simple "add_package oem-config-prepare".
[1]: https://git.launchpad.net/livecd-rootfs/tree/live-build/ubuntu/hooks/099-ubuntu-image-customization.chroot#n14
[2]: https://git.launchpad.net/ubuntu-images/tree/ubuntu-pi-arm64.yaml#n68 |
At present, in pre-installed images that rely on oem-config for their first-boot configuration (the Raspberry Pi Ubuntu desktop images are probably the most obvious of these), it is not enough to simply include oem-config (and an appropriate front-end) in the image. The oem-config-prepare script must also be run, and the appropriate oem user (with the correct UID) must also be created.
Currently this is handled by a series of hacks in either livecd-rootfs or ubuntu-image (whichever is being used to build the image). In the case of livecd-rootfs [1]:
# Create the oem user account only if it doesn't already exist
if ! id "oem" &>/dev/null; then
/usr/sbin/useradd -d /home/oem -G adm,sudo -m -N -u 29999 oem
/usr/sbin/oem-config-prepare --quiet
touch "/var/lib/oem-config/run"
fi
This is doubly pointless since now we use ubuntu-image rather than livecd-rootfs for building these images anyway. Speaking of ubuntu-image, other there we do this [2]:
# FIXME: Temporarily, we also need to make sure that for desktop pi images
# we actually run oem-config-prepare before first boot. Otherwise we won't
# be able to boot into oem-config properly.
# This should be done via a package postinst ideally, so this manual
# customization should be only temporary.
manual:
execute:
- path: "/usr/sbin/oem-config-prepare"
(this is also wrong since it misses the creation of the oem user).
It would be much cleaner in both cases to have an extra package (appropriately named "oem-config-prepare") that simply depends on the "oem-config" package, which contains the oem-config-prepare script, but carries out these steps in its postinst. Thus the ubuntu-image yaml can simply include this package under "extra-packages" and the livecd-rootfs hook lines can disappear (in fact the entire hook can disappear as it's for pre-installed desktops which we don't make with livecd-rootfs at all).
[1]: https://git.launchpad.net/livecd-rootfs/tree/live-build/ubuntu/hooks/099-ubuntu-image-customization.chroot#n14
[2]: https://git.launchpad.net/ubuntu-images/tree/ubuntu-pi-arm64.yaml#n68 |
|
2023-11-28 16:26:45 |
Dave Jones |
merge proposal linked |
|
https://code.launchpad.net/~waveform/ubuntu-images/+git/ubuntu-images/+merge/456465 |
|
2023-11-28 16:28:13 |
Dave Jones |
merge proposal unlinked |
https://code.launchpad.net/~waveform/ubuntu-images/+git/ubuntu-images/+merge/456459 |
|
|
2023-12-07 22:06:11 |
Launchpad Janitor |
livecd-rootfs (Ubuntu): status |
New |
Fix Released |
|
2023-12-14 10:50:33 |
Simon Quigley |
removed subscriber Ubuntu Sponsors |
|
|
|