Compare commits

...

97 Commits

Author SHA1 Message Date
Philip Roche
0687a14b91 Fix d/ch formatting for 2.765.29 2023-10-27 12:01:43 +01:00
Philip Roche
d1edbd804e Merge bugfix/ubuntu-cpc-LP-2036195-auto-installed-packages-jammy into ubuntu/jammy [a=philroche] [r=andrew-cloke,vorlon]
The chroot tmpfs mount should only be /var/lib/apt/lists, not /var/lib/apt; the latter breaks changes to /var/lib/apt/extended_states. LP: #2036195.

(cherry picked from commit 1deccc2edd7f139b84a6cb3d0a4dfe5ebaff50c7)

MP: https://code.launchpad.net/~philroche/livecd-rootfs/+git/livecd-rootfs/+merge/454065
2023-10-26 17:29:18 +01:00
Steve Langasek
40a3b73b5e The chroot tmpfs mount should only be /var/lib/apt/lists, not /var/lib/apt; the latter breaks changes to /var/lib/apt/extended_states. LP: #2036195.
(cherry picked from commit 1deccc2edd7f139b84a6cb3d0a4dfe5ebaff50c7)

# Conflicts:
#	debian/changelog
2023-10-26 16:42:22 +01:00
Philip Roche
cb9db40176 Merge utkarsh-jammy-sru-1996489 into ubuntu/jammy [a=utkarsh] [r=philroche]
Fix unminimize to correctly list packages (LP: #1996489)

    Prior to dpkg/1.21.0, there was a bug where dpkg -V/--verify
    couldn't list all the correct packages correctly but with
    that being fix and in archive since Jammy, this works perfectly
    but the syntax to report the missing files have changed. It
    just prints 'missing' now. With that new format, we can now
    fix the regex to simply list the packages.

    With this patch, the unminimize script works flawlessly
    on a minimized image.

    (cherry picked from commit 78a98c683573a1f7983afae54e2f187eeae127c7)

    ---

    fix: install LXD snap from stable/ubuntu-<version> channel (LP: #2036725)

    In the past, we'd directly snap install lxd which defaults to
    the latest/stable channel. However, whilst working on enhancing
    unminimize, it was observed that we install this snap from
    the stable/ubuntu-<version> channel instead.

    This was also noted as a failure when running the CTF tests:
    `lxd installed from latest/stable, not stable/ubuntu-23.10`

    (cherry picked from commit 12a2109c223e261214747d5f98d4b8d7ee9625e3)

MP: https://code.launchpad.net/~utkarsh/livecd-rootfs/+git/livecd-rootfs/+merge/452742
2023-10-26 15:17:01 +01:00
Utkarsh Gupta
0d57b51e61 Update d/ch for 2.765.28 release 2023-10-04 13:50:19 +05:30
Utkarsh Gupta
4ba66ac0d1 fix: install LXD snap from stable/ubuntu-<version> channel (LP: #2036725)
In the past, we'd directly snap install lxd which defaults to
the latest/stable channel. However, whilst working on enhancing
unminimize, it was observed that we install this snap from
the stable/ubuntu-<version> channel instead.

This was also noted as a failure when running the CTF tests:
`lxd installed from latest/stable, not stable/ubuntu-23.10`

(cherry picked from commit 12a2109c223e261214747d5f98d4b8d7ee9625e3)
2023-10-04 13:48:50 +05:30
Utkarsh Gupta
67dd334c25 Fix unminimize to correctly list packages (LP: #1996489)
Prior to dpkg/1.21.0, there was a bug where dpkg -V/--verify
couldn't list all the correct packages correctly but with
that being fix and in archive since Jammy, this works perfectly
but the syntax to report the missing files have changed. It
just prints 'missing' now. With that new format, we can now
fix the regex to simply list the packages.

With this patch, the unminimize script works flawlessly
on a minimized image.

(cherry picked from commit 78a98c683573a1f7983afae54e2f187eeae127c7)
2023-10-04 13:48:40 +05:30
Steve Langasek
26b87e3cfb releasing package livecd-rootfs version 2.765.27 2023-09-27 22:59:08 -07:00
Thomas Bechtold
185a22afe5 Add debian/changelog 2023-09-19 13:56:43 +02:00
Thomas Bechtold
3b2eeb0171 fix: don't modify ssh_config for ubuntu-cpc projects (LP:1968873)
Modifying directly /etc/ssh/sshd_config creates "problems" when
upgrading eg. from Focal to Jammy because the upgrade will ask the
user what to do with the modified config. To avoid that, put the
custom configuration into /etc/ssh/sshd_config.d/ so the upgrade of
openssh-server can just replace /etc/ssh/sshd_config without asking
the user.

(cherry picked from commit b54d24ff3310f7ace00ab08e0dacfdc89e026f1c)
2023-09-19 13:55:30 +02:00
Steve Langasek
0d2e6a7675 releasing package livecd-rootfs version 2.765.26 2023-09-07 13:01:56 -07:00
John Chittum
9b40297ccc
doc: open release 2023-09-07 14:40:33 -05:00
John Chittum
1184af06b0
fix: GRUB_DISTRIBUTION for buildd
LP: #2034253 Grub is found to use lsb_release or default to Debian.
buildd does not have lsb_release, so Debian was the GRUB_DISTRIBUTION.
that ends up with issues with the EFI path
2023-09-07 14:40:28 -05:00
Michael Hudson-Doyle
59732bc789 Remove additional dependencies from subiquity units as they are now interfering with the boot process. (LP: #2028862)
(cherry picked from commit 4f6f63dd6b53cc9eb44dfa09b2507e9406c8c923)
2023-08-28 14:15:58 -06:00
Dan Bungert
95c6b911f8 changelog 2023-08-28 14:14:33 -06:00
Utkarsh Gupta
280eed7ddd Add # for the tooling to pick up the bug 2023-08-21 15:20:50 +05:30
Utkarsh Gupta
2cb1124d3f Update d/ch for 2.765.24 release 2023-08-19 03:26:33 +05:30
Utkarsh Gupta
9ff66d60d9 Merge remote-tracking branch 'jessica-youjeong/062223-jammy-snap-preseeding' into ubuntu/jammy
* jessica-youjeong/062223-jammy-snap-preseeding:
  fix: bind correct apparmor feature for validating snap seed
2023-08-19 03:24:28 +05:30
John Chittum
41df4f5c92
fix: 6.2 kernel missing feature
LP: 2031943

Same issue as affected 5.19. 6.2 apparmor featureset differs from 5.15.
Identified the same feature as 5.19, so copied over.

populated 6.2 with all of generic directory as well. Compatibility mode for
possible future change
2023-08-18 14:04:34 -05:00
Jess Jang
6b54faa6be fix: bind correct apparmor feature for validating snap seed
During Realtime kernel image build, there was an error during
validating snap seed which derivative images copied 5.19
apparmor feature and can't validate when Realtime kernel (5.15)
installed [0].

To prevent this, bind correct apparmor feature with kernel
version.

[0] https://bugs.launchpad.net/ubuntu/+source/livecd-rootfs/+bug/2024639
2023-08-02 22:37:22 -05:00
Łukasz 'sil2100' Zemczak
aec2395457 Add changelog entry. 2023-05-23 16:41:33 +02:00
Łukasz 'sil2100' Zemczak
32d9a1b82e Merge branch 'jammy-add-tegra-live-server' of git+ssh://git.launchpad.net/~lool/livecd-rootfs/+git/jammy-add-tegra-live-server into ubuntu/jammy 2023-05-23 16:37:15 +02:00
Steve Langasek
423a4936f6 releasing package livecd-rootfs version 2.765.22 2023-05-18 15:19:44 -07:00
Steve Langasek
4e2f279f9c Fix up changelog to have proper LP bug ref 2023-05-18 15:19:33 -07:00
Steve Langasek
5ac4df3a1a Drop use of --removable flag to grub-install from buildd/hooks
This now matches the cloud images (7c760864fdcb278ca37396f06f5e3f297428d63d)
fixing bootloader updates in the buildd images, but also fixing
compatibility with using devtmpfs for losetup.
2023-05-18 15:16:29 -07:00
Steve Langasek
9e370c2ce4 releasing package livecd-rootfs version 2.765.21 2023-04-10 08:05:41 -07:00
Loïc Minier
35fef6becf Initial support for NVIDIA Tegra
live-build/auto/config:
- for Ubuntu Server live images and the arm64+tegra full arch, build a
  tegra variant with linux-nvidia-tegra as the flavor and
  linux-nvidia-tegra as the kernel meta-package
- default to nvidia-$SUBARCH as the kernel flavor and enable all
  components for all images using arm64+tegra as full arch

hooks/03-kernel-metapkg.chroot_early:
- use linux-nvidia-tegra as kernel meta-package for the nvidia-tegra
  flavor
2023-04-08 18:23:38 +00:00
John Chittum
85c6eb1535
open 2.765.21 in changelog 2023-04-07 14:51:59 -05:00
John Chittum
e1fca53deb
feat: add 5.19 kernel apparmor features
the 5.19 kernel added ipc posix_mqueue apparmor features. the generic
set of apparmor features for the 5.15 LTS jammy kernel does not have
this feature. Along with the commit "support kernel with different
apparmor feats", this ensures that the HWE kernel for 5.19 has a
matching set.

note that on the next HWE roll, another directory will need to be added.
For each new HWE kernel roll, checking capabilities, creating the
directory, and adding the correct features will be required.
2023-04-07 09:36:30 -05:00
John Chittum
bd1690bd16
feat: support kernel with different apparmor feats
Jammy HWE is rolling to 5.19. the 5.19 kernel introduced more apparmor
features, specifically ipc. due to the roll, we now must support builds
with 2 different feature sets.

This specifically affects snap-preseeding, where if a snap_preseed is
run with a mismatched apparmor feature set, snap will require a restart
to match the running kernel's feature set. in the clouds, this can add
somehwere between 5-10s (as of checks on 20230404). This is a large boot
time performance hit.

Implementation is done at the `snap_validate_seed` function level. This
function is called in snap scenarios. It checks for an installed kernel
in the chroot, gets the major.min version, and checks for
apparmor/$KERN. If found, it will do a copy of the directory, providing
a naive override mechanism.

For CPC builds, we are adding a call to `snap_validate_seed` at the end
of affected hooks as well. This is a safe procedure to call, as it
reruns the snap_preseed for all snaps. By running at the end of build
processes, it ensures that any kernel changes done during the build are
taken into account.
2023-04-07 09:30:38 -05:00
Łukasz 'sil2100' Zemczak
3effc18b69 releasing package livecd-rootfs version 2.765.20 2023-03-17 12:37:35 +01:00
Łukasz 'sil2100' Zemczak
2075062139 Enable building intel-iot live-server images. 2023-03-17 12:34:42 +01:00
Dimitri John Ledkov
54f134a9c7
releasing package livecd-rootfs version 2.765.19 2023-03-02 18:21:46 +00:00
Dimitri John Ledkov
632753aa7c
auto/config: Add support for ubuntu core arm64 generic images
LP: #2009067

Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@canonical.com>
2023-03-02 18:14:12 +00:00
Łukasz 'sil2100' Zemczak
be40105056 releasing package livecd-rootfs version 2.765.18 2023-02-23 00:33:00 +01:00
Łukasz 'sil2100' Zemczak
5bd8a465a6 Typo fix. 2023-02-23 00:30:40 +01:00
Łukasz 'sil2100' Zemczak
cccc04e0c1 Fix path. 2023-02-23 00:27:02 +01:00
Łukasz 'sil2100' Zemczak
5b99af28d0 Terrible workaround 2023-02-22 23:59:40 +01:00
Łukasz 'sil2100' Zemczak
19fdc77c2f releasing package livecd-rootfs version 2.765.17 2023-02-20 17:30:31 +01:00
Łukasz 'sil2100' Zemczak
87dcf0de62 Do not offer the hwe kernel for RISC-V server-live images 2023-02-20 17:30:01 +01:00
Łukasz 'sil2100' Zemczak
69b372ced7 releasing package livecd-rootfs version 2.765.16 2023-02-16 14:25:07 +01:00
Łukasz 'sil2100' Zemczak
cc849656bf Add changelog. 2023-02-16 14:24:51 +01:00
Łukasz 'sil2100' Zemczak
06fd5dacc3 Missed one place for handling lowlatency kernels flavours. 2023-02-16 14:23:53 +01:00
Łukasz 'sil2100' Zemczak
eceece62a6 releasing package livecd-rootfs version 2.765.15 2023-02-08 09:59:16 +01:00
Łukasz 'sil2100' Zemczak
949f53cd4e Typo fix. 2023-02-08 09:58:13 +01:00
Łukasz 'sil2100' Zemczak
e5e4051ff4 ...piggyback flavor changes as well. 2023-02-07 16:08:54 +01:00
Łukasz 'sil2100' Zemczak
57fbcb4efd Enable the hwe kernel variant for 22.04.2. 2023-02-07 15:39:32 +01:00
Utkarsh Gupta
7205e76b79 Update d/ch for 2.765.14 release 2022-12-12 15:32:01 +05:30
Utkarsh Gupta
1278ff9231 Clean up whitespaces 2022-12-12 15:31:52 +05:30
Samir Akarioh
06dff46b6b feat: Add metadata on ubuntu-oci image
Add a file build.info on etc/cloud
with the serial information

Signed-off-by: Samir Akarioh <samir.akarioh@canonical.com>
(cherry picked from commit 105acdebc783291f740294b5c317f3e6d2da9de4)
2022-11-22 12:20:31 +01:00
Łukasz 'sil2100' Zemczak
f90114c966 releasing package livecd-rootfs version 2.765.13 2022-11-21 13:24:04 +01:00
Łukasz 'sil2100' Zemczak
1b50e4284c Prepare changelog entry. 2022-11-21 13:23:38 +01:00
Łukasz 'sil2100' Zemczak
7cbd320b6c Merge branch 'jammy-riscv64' of git+ssh://git.launchpad.net/~xypron/livecd-rootfs into ubuntu/jammy 2022-11-21 11:18:04 +01:00
Steve Langasek
a1872718fa releasing package livecd-rootfs version 2.765.12 2022-11-18 14:52:54 -08:00
Steve Langasek
50dd546606 Update changelog to document full list of removed packages. 2022-11-18 14:52:31 -08:00
Steve Langasek
481920f28b Remove modemmanager and udisks2 from cloud images in addition to fwupd. The use of tasks at install means all packages are marked manually installed in the apt database, so removing fwupd does not remove its dependencies. LP: #1981109. 2022-11-18 14:51:49 -08:00
Steve Langasek
3fe7a19c52 Remove fwupd from the cloud images. LP: #1981109. 2022-11-18 14:51:18 -08:00
Heinrich Schuchardt
591b0a3432 riscv64: use efi=debug earlycon
RISC-V boards tend to boot slowly.
We should provide progress information when booting.

Use 'efi=debug earlycon' on the Linux command line via new file
/etc/default/grub.d/cmdline.cfg.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-11-17 11:21:59 +01:00
Łukasz 'sil2100' Zemczak
0fa7ab23ed Add an additional subdir. 2022-11-17 11:21:59 +01:00
Heinrich Schuchardt
0016cada16 riscv: reduce initrd size for Nezha and LicheeRV boards
The Nezha and the LicheeRV boards do not have enough memory for an initrd
with most modules. Therefore the number of included modules has to be
reduced.

Create file /etc/initramfs-tools/conf.d/modules_list.conf
to set MODULES=list.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-11-17 11:21:59 +01:00
Heinrich Schuchardt
c4dc7bce4c riscv: remove invalid redirections
Remove redirections of type

    command &1>2

Executing the command in the background and creating and empty file '2'
was never intended.

As the messages are information only redirecting to stderr would not make
sense either.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-11-17 11:21:59 +01:00
Alexandre Ghiti
8ba2493a80 riscv: LicheeRV must use u-boot-nezha package
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-11-17 11:21:59 +01:00
Alexandre Ghiti
0940dd3cd8 riscv: Add support to build Microchip Icicle Kit image
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>

Replace FK_FORCE_CONTAINER by FK_FORCE (LP: #1989194)
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-11-17 11:21:59 +01:00
Alexandre Ghiti
e9004e6273 riscv: Add support to build LicheeRV Dock images
The LicheeRV Dock board comes with only 512MB of DRAM so the only difference
with a Nezha image is the fact that we have to remove
cryptsetup-initramfs package which makes the initrd too big for the
board to boot.

Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-11-17 11:21:59 +01:00
William Wilson
6939cb42d5 Rename FK_FORCE_CONTAINER to FK_FORCE 2022-10-19 10:03:04 -05:00
Steve Langasek
bb502f1e8f releasing package livecd-rootfs version 2.765.10 2022-08-04 12:11:57 -07:00
Steve Langasek
9da86ba533 The ubuntustudio dkms hook is only created when we're building ubuntustudio, so only chmod it when it exists. LP: #1983521. 2022-08-04 12:11:50 -07:00
Łukasz 'sil2100' Zemczak
ed328b1c84 releasing package livecd-rootfs version 2.765.9 2022-08-04 17:24:35 +02:00
Łukasz 'sil2100' Zemczak
80cb6a4a1e Backport fix for cloud RISC-V images from kinetic. 2022-08-04 17:24:12 +02:00
ce9549372a Manually blacklist DKMS modules for Ubuntu Studio builds (LP: #1983521). 2022-08-03 19:15:15 -05:00
Łukasz 'sil2100' Zemczak
e7a198578b releasing package livecd-rootfs version 2.765.7 2022-07-28 14:21:36 +02:00
Łukasz 'sil2100' Zemczak
31ea439043 Pre-install wpasupplicant on all the RISC-V preinstalled images (besides cloud). 2022-07-28 14:18:33 +02:00
Łukasz 'sil2100' Zemczak
f2ccb4bb40 releasing package livecd-rootfs version 2.765.6 2022-07-25 10:25:42 +02:00
Łukasz 'sil2100' Zemczak
84e7e03bf2 Cherry pick fix for unmatched boot image build fix from kinetic. 2022-07-25 10:25:06 +02:00
Łukasz 'sil2100' Zemczak
9687f1d216 releasing package livecd-rootfs version 2.765.5 2022-07-14 15:32:42 +02:00
Łukasz 'sil2100' Zemczak
b2eae594d1 Add bug references. 2022-07-14 15:24:34 +02:00
Alexandre Ghiti
7e3e3281cb d/changelog: Add FK_FORCE_CONTAINER entry
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:04:21 +02:00
Alexandre Ghiti
bbcf3c5714 riscv: Use FK_FORCE_CONTAINER to force flash-kernel to run in a container
As explained in LP: #1980929, we need this in order to build RISC-V
images.

Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:04:21 +02:00
Alexandre Ghiti
6f9d5b7ff2 disk-image-uefi.binary: Fix wrong parenthesis
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:04:21 +02:00
Alexandre Ghiti
935867285c d/changelog: Add entry for the VisionFive and Nezha support 2022-07-13 16:04:21 +02:00
Alexandre Ghiti
81614c6992 riscv: Bump image size to 4.5G
3.5G is not enough for riscv64 preinstalled as the creation of the initrd fails
with the following error:

Creating config file /etc/default/grub with new version
Processing triggers for initramfs-tools (0.140ubuntu13) ...
update-initramfs: Generating /boot/initrd.img-5.15.0-1011-generic
zstd: error 25 : Write error : No space left on device (cannot write compressed block)
E: mkinitramfs failure zstd -q -1 -T0 25
update-initramfs: failed for /boot/initrd.img-5.15.0-1011-generic with 1.
dpkg: error processing package initramfs-tools (--configure):
 installed initramfs-tools package post-installation script subprocess returned error exit status 1

Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:03:26 +02:00
Alexandre Ghiti
b9873fbed5 riscv: Use UEFI bootflow for the Nezha Board
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:03:26 +02:00
Alexandre Ghiti
ce9f5cacca riscv: Add support for StarFive VisionFive
The image created uses a UEFI bootflow, so we install grub for this board
only. We also need flash-kernel to install the dtb where grub can find
it.

This image is specifically architectured so that it can be installed on
a "factory" board, meaning using the u-boot firmware which was
originally implemented for Fedora, so we need the p3 partition that
embeds a uEnv.txt file to tell u-boot what/where to load next stage.

Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:03:26 +02:00
Alexandre Ghiti
80c5ccd5c1 riscv: Fix nezha hardcoded password attempt
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
2022-07-13 16:03:26 +02:00
Alexandre Ghiti
1527ac2b4e RISC-V: enable building for Nezha board
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-07-13 16:03:26 +02:00
Heinrich Schuchardt
312d9221ee riscv: define partitioning scheme for Nezha board
Define the image layout for the Nezha board.

The U-Boot SPL based boot0 may be installed starting in sector 16 or 256.
As sector 16 is incompatible with GPT partitioning use sector 256.

The primary U-Boot image is expected to start at sector 32800 and its
backup in sector 24576.

Cf. https://linux-sunxi.org/index.php?title=Allwinner_Nezha&oldid=24469

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-07-13 16:03:26 +02:00
Robie Basak
3ca2ea37f9 Changelog for 2.765.4 release
Retaining attribution for Thomas.
2022-07-11 15:47:10 +01:00
Thomas Bechtold
be8c7aed7a Add debian/changelog 2022-07-11 14:16:15 +02:00
Thomas Bechtold
7ed77a5e64 Revert "fix: don't modify ssh_config for ubuntu-cpc projects (LP:1968873)"
This change triggered a bug in cloud-init (see LP:1968873). cloud-init
does not recongnize sshd options set in /etc/ssh/sshd_config.d/ and
cloud-init modifies directly /etc/ssh/sshd_config which gets then
overwritten by settings from /etc/ssh/sshd_config.d/ .

This reverts commit 9a8d7a6e4d7a0b50024df6b92e0711a2f42454a0.
2022-07-11 14:14:49 +02:00
Thomas Bechtold
d93cdfd8c5 add debian/changelog 2022-07-01 09:15:16 +02:00
Thomas Bechtold
9a8d7a6e4d fix: don't modify ssh_config for ubuntu-cpc projects (LP:1968873)
Modifying directly /etc/ssh/sshd_config creates "problems" when
upgrading eg. from Focal to Jammy because the upgrade will ask the
user what to do with the modified config. To avoid that, put the
custom configuration into /etc/ssh/sshd_config.d/ so the upgrade of
openssh-server can just replace /etc/ssh/sshd_config without asking
the user.

(cherry picked from commit b54d24ff3310f7ace00ab08e0dacfdc89e026f1c)
2022-07-01 09:13:53 +02:00
Łukasz 'sil2100' Zemczak
89a7e6a9ac releasing package livecd-rootfs version 2.765.2 2022-06-30 17:31:20 +02:00
Łukasz 'sil2100' Zemczak
71405af933 Merge branch 'jammy-iotg-bump' of git+ssh://git.launchpad.net/livecd-rootfs into ubuntu/jammy 2022-06-30 17:26:30 +02:00
Simon Poirier
8eb4f2d447 fix: VMware cdrom OVF import requires to be on IDE
This reverts part of a change causing regression with vmware import due to the
cdrom getting moved to SCSI while shifting controller IDs. (LP: #1970795)

(cherry picked from commit 3da8e81bf27f3770f3664a332d8767fa62fd4771)

Conflicts:
        debian/changelog

Conflict solved by copying the debian/changelog entry from the archive.
2022-06-29 12:53:27 +02:00
Łukasz 'sil2100' Zemczak
9261aec27a Add bug numbers 2022-06-28 10:42:12 +02:00
Łukasz 'sil2100' Zemczak
a894c4e85f Make sure the intel-iotg flavor is handled in auto/build 2022-06-13 10:09:31 +02:00
Łukasz 'sil2100' Zemczak
198a2f6faf Switch the intel-iot images to use the linux-intel-iotg kernel instead. 2022-06-10 11:16:19 +02:00
80 changed files with 711 additions and 95 deletions

225
debian/changelog vendored
View File

@ -1,3 +1,222 @@
livecd-rootfs (2.765.29) jammy; urgency=medium
[ Steve Langasek ]
* The chroot tmpfs mount should only be /var/lib/apt/lists, not
/var/lib/apt; the latter breaks changes to /var/lib/apt/extended_states.
(LP: #2036195).
-- Phil Roche <phil.roche@canonical.com> Thu, 19 Oct 2023 18:10:20 +0100
livecd-rootfs (2.765.28) jammy; urgency=medium
* Fix unminimize to correctly list packages. (LP: #1996489)
* Install LXD snap from stable/ubuntu-<version> channel. (LP: #2036725)
-- Utkarsh Gupta <utkarsh@ubuntu.com> Wed, 04 Oct 2023 13:48:53 +0530
livecd-rootfs (2.765.27) jammy; urgency=medium
[ Thomas Bechtold ]
* Do not modify /etc/ssh/sshd_config for ubuntu-cpc
project builds (LP: #1968873)
-- Steve Langasek <steve.langasek@ubuntu.com> Wed, 27 Sep 2023 22:58:35 -0700
livecd-rootfs (2.765.26) jammy; urgency=medium
* Set GRUB_DISTRIBUTION in 50-builddimg-settings.cfg to ensure
EFI is installed in the right place (LP: #2034253)
-- jchittum <john.chittum@canonical.com> Thu, 07 Sep 2023 13:51:33 -0500
livecd-rootfs (2.765.25) jammy; urgency=medium
[ Michael Hudson-Doyle ]
* Remove additional dependencies from subiquity units as they are now
interfering with the boot process. (LP: #2028862)
-- Dan Bungert <daniel.bungert@canonical.com> Mon, 28 Aug 2023 14:13:58 -0600
livecd-rootfs (2.765.24) jammy; urgency=medium
[ Jess Jang ]
* fix: bind correct apparmor feature for validating snap seed.
(LP: #2024639)
[ John Chittum ]
* fix: 6.2 kernel missing feature. (LP: #2031943)
-- Utkarsh Gupta <utkarsh@ubuntu.com> Sat, 19 Aug 2023 03:24:34 +0530
livecd-rootfs (2.765.23) jammy; urgency=medium
[ Loïc Minier ]
* Initial support for NVIDIA Tegra (LP: #2015644).
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Tue, 23 May 2023 16:40:34 +0200
livecd-rootfs (2.765.22) jammy; urgency=medium
* Drop use of --removable flag to grub-install from
live-build/buildd/hooks/02-disk-image-uefi.binary, to match the cloud
images (7c760864fdcb278ca37396f06f5e3f297428d63d). This fixes
bootloader updates in the buildd images, but also fixes compatibility
with using devtmpfs for losetup.
-- Steve Langasek <steve.langasek@ubuntu.com> Thu, 18 May 2023 15:19:38 -0700
livecd-rootfs (2.765.21) jammy; urgency=medium
[ jchittum ]
* add multiple kernel apparmor feature sets for snap preseeding
(LP: #2015596).
-- Steve Langasek <steve.langasek@ubuntu.com> Mon, 10 Apr 2023 08:05:35 -0700
livecd-rootfs (2.765.20) jammy; urgency=medium
* Enable building intel-iot live-server images (LP: #1980067).
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Fri, 17 Mar 2023 12:31:55 +0100
livecd-rootfs (2.765.19) jammy; urgency=medium
* auto/config: Add support for ubuntu core arm64 generic images (LP: #2009067)
-- Dimitri John Ledkov <dimitri.ledkov@canonical.com> Thu, 02 Mar 2023 18:21:06 +0000
livecd-rootfs (2.765.18) jammy; urgency=medium
* Terrible hack workaround for clearing out the non-offline apt cache for
desktop related images.
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Wed, 22 Feb 2023 23:57:38 +0100
livecd-rootfs (2.765.17) jammy; urgency=medium
* Do not offer the hwe kernel for RISC-V server-live images (LP: #2007863).
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Mon, 20 Feb 2023 17:18:37 +0100
livecd-rootfs (2.765.16) jammy; urgency=medium
* Properly handle the lowlatency hwe kernel flavour.
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Thu, 16 Feb 2023 14:24:19 +0100
livecd-rootfs (2.765.15) jammy; urgency=medium
* Enable the hwe kernel variant for 22.04.2 (LP: #2006481).
- Add it to the server images besides the ga kernel.
- Switch to hwe as default for all desktop flavors.
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Tue, 07 Feb 2023 14:57:00 +0100
livecd-rootfs (2.765.14) jammy; urgency=medium
[ Samir Akarioh ]
* feat: Add metadata on ubuntu-oci image. (LP: #1998229)
-- Utkarsh Gupta <utkarsh@ubuntu.com> Mon, 12 Dec 2022 15:30:56 +0530
livecd-rootfs (2.765.13) jammy; urgency=medium
[ Heinrich Schuchardt ]
* Backporting patches to support new RISC-V platforms (LP: #1997233)
* Add support for the LicheeRV board (SUBARCH=licheerv)
* Add support for the PolarFire Icicle Kit board (SUBARCH=icicle)
* Reduce initrd size for Nezha and LicheeRV boards
* Use efi=debug earlycon on kernel command line
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Mon, 21 Nov 2022 11:18:14 +0100
livecd-rootfs (2.765.12) jammy; urgency=medium
* Remove fwupd, modemmanager, and udisks2 from the cloud images.
LP: #1981109.
-- Steve Langasek <steve.langasek@ubuntu.com> Fri, 18 Nov 2022 14:52:49 -0800
livecd-rootfs (2.765.11) jammy; urgency=medium
* Rename FK_FORCE_CONTAINER into FK_FORCE as its role was extended to also
support chroot (LP: #1989194).
-- William 'jawn-smith' Wilson <jawn-smith@ubuntu.com> Fri, 07 Oct 2022 09:49:30 -0500
livecd-rootfs (2.765.10) jammy; urgency=medium
* The ubuntustudio dkms hook is only created when we're building
ubuntustudio, so only chmod it when it exists. LP: #1983521.
-- Steve Langasek <steve.langasek@ubuntu.com> Thu, 04 Aug 2022 12:11:52 -0700
livecd-rootfs (2.765.9) jammy; urgency=medium
* When adding the new RISC-V platforms, some of the generic non-SUBARCH code
went missing and some invalid assumptions have been made, causing cloud
images to fail building. This upload fixes these (LP: #1983599).
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Thu, 04 Aug 2022 17:15:03 +0200
livecd-rootfs (2.765.8) jammy; urgency=medium
* Manually blacklist DKMS modules for Ubuntu Studio builds (LP: #1983521).
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 03 Aug 2022 18:46:23 -0500
livecd-rootfs (2.765.7) jammy; urgency=medium
* Install wpasupplicant by default as for now, most of the RISC-V boards
embed a Wifi chipset (LP: #1983008)
-- Alexandre Ghiti <alexandre.ghiti@canonical.com> Thu, 28 Jul 2022 14:17:11 +0200
livecd-rootfs (2.765.6) jammy; urgency=medium
[ Alexandre Ghiti ]
* Fix SiFive Unmatched build. While merging the VisionFive support, we
removed the installation of u-boot-menu for the Unmatched by mistake
(LP: #1982735).
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Mon, 25 Jul 2022 10:24:08 +0200
livecd-rootfs (2.765.5) jammy; urgency=medium
* Add support for the VisionFive and the Nezha boards (LP: #1980935)
* Set FK_FORCE_CONTAINER for RISC-V images build to force flash-kernel
to run in a container (LP: #1980929).
-- Alexandre Ghiti <alexandre.ghiti@canonical.com> Tue, 05 Jul 2022 10:55:44 +0200
livecd-rootfs (2.765.4) jammy; urgency=medium
* Revert "don't modify ssh_config for ubuntu-cpc projects (LP:1968873)"
This change triggered a bug in cloud-init (see LP:1968873).
-- Thomas Bechtold <thomas.bechtold@canonical.com> Mon, 11 Jul 2022 14:15:36 +0200
livecd-rootfs (2.765.3) jammy; urgency=medium
* Do not modify /etc/ssh/sshd_config for ubuntu-cpc
project builds (LP: #1968873)
-- Thomas Bechtold <thomas.bechtold@canonical.com> Thu, 30 Jun 2022 19:26:04 +0200
livecd-rootfs (2.765.2) jammy; urgency=medium
* Switch the intel-iot images to use the linux-intel-iotg kernel instead.
(LP: #1980065)
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Thu, 30 Jun 2022 17:26:04 +0200
livecd-rootfs (2.764.1) jammy; urgency=medium
* live-build/ubuntu-cpc/hooks.d/base/ovf/ubuntu-ova-v1-vmdk.tmpl:
Revert OVF cd-rom controller to be IDE for VMWare (LP: #1970795)
-- Simon Poirier <simon.poirier@canonical.com> Thu, 16 Jun 2022 19:34:03 -0400
livecd-rootfs (2.764) jammy; urgency=medium
[ Michał Sawicz ]
@ -7585,7 +7804,7 @@ livecd-rootfs (0.30) gutsy; urgency=low
-- Adam Conrad <adconrad@ubuntu.com> Tue, 10 Jul 2007 10:48:04 +0100
livecd-rootfs (0.29) UNRELEASED; urgency=low
livecd-rootfs (0.29) jammy; urgency=low
* Update copyright to 2006, 9 months late is better than never, right?
* Update kernels for i386 and amd64 to reflect recent renaming.
@ -7595,7 +7814,7 @@ livecd-rootfs (0.29) UNRELEASED; urgency=low
-- Adam Conrad <adconrad@ubuntu.com> Thu, 21 Sep 2006 10:37:09 +1000
livecd-rootfs (0.28) UNRELEASED; urgency=low
livecd-rootfs (0.28) jammy; urgency=low
* Welcome to Edgy... Switch the default i386 kernel to -686, yay!
* And when I say "edgy", I really mean it (ie: change the suite too)
@ -7605,7 +7824,7 @@ livecd-rootfs (0.28) UNRELEASED; urgency=low
-- Adam Conrad <adconrad@ubuntu.com> Mon, 28 Aug 2006 03:40:28 +1000
livecd-rootfs (0.27) UNRELEASED; urgency=low
livecd-rootfs (0.27) jammy; urgency=low
[ Adam Conrad ]
* Copy the kernel out of the livefs as well, so we have one that matches.

View File

@ -0,0 +1 @@
0xffffff

View File

@ -0,0 +1 @@
chown dac_override dac_read_search fowner fsetid kill setgid setuid setpcap linux_immutable net_bind_service net_broadcast net_admin net_raw ipc_lock ipc_owner sys_module sys_rawio sys_chroot sys_ptrace sys_pacct sys_admin sys_boot sys_nice sys_resource sys_time sys_tty_config mknod lease audit_write audit_control setfcap mac_override mac_admin syslog wake_alarm block_suspend audit_read

View File

@ -0,0 +1 @@
acquire send receive

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
1.2

View File

@ -0,0 +1 @@
create read write exec append mmap_exec link lock

View File

@ -0,0 +1 @@
create read write open delete setattr getattr

View File

@ -0,0 +1 @@
mount umount pivot_root

View File

@ -0,0 +1 @@
no

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
read trace

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
allow deny audit quiet

View File

@ -0,0 +1 @@
cpu fsize data stack core rss nproc nofile memlock as locks sigpending msgqueue nice rtprio rttime

View File

@ -0,0 +1 @@
hup int quit ill trap abrt bus fpe kill usr1 segv usr2 pipe alrm term stkflt chld cont stop stp ttin ttou urg xcpu xfsz vtalrm prof winch io pwr sys emt lost

View File

@ -0,0 +1 @@
0xffffff

View File

@ -0,0 +1 @@
chown dac_override dac_read_search fowner fsetid kill setgid setuid setpcap linux_immutable net_bind_service net_broadcast net_admin net_raw ipc_lock ipc_owner sys_module sys_rawio sys_chroot sys_ptrace sys_pacct sys_admin sys_boot sys_nice sys_resource sys_time sys_tty_config mknod lease audit_write audit_control setfcap mac_override mac_admin syslog wake_alarm block_suspend audit_read

View File

@ -0,0 +1 @@
acquire send receive

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
1.2

View File

@ -0,0 +1 @@
create read write exec append mmap_exec link lock

View File

@ -0,0 +1 @@
create read write open delete setattr getattr

View File

@ -0,0 +1 @@
mount umount pivot_root

View File

@ -0,0 +1 @@
no

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
read trace

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
allow deny audit quiet

View File

@ -0,0 +1 @@
cpu fsize data stack core rss nproc nofile memlock as locks sigpending msgqueue nice rtprio rttime

View File

@ -0,0 +1 @@
hup int quit ill trap abrt bus fpe kill usr1 segv usr2 pipe alrm term stkflt chld cont stop stp ttin ttou urg xcpu xfsz vtalrm prof winch io pwr sys emt lost

View File

@ -241,18 +241,18 @@ if [ -f /etc/dpkg/dpkg.cfg.d/excludes ] || [ -f /etc/dpkg/dpkg.cfg.d/excludes.dp
dpkg -S /usr/share/man/ |sed 's|, |\n|g;s|: [^:]*$||' | DEBIAN_FRONTEND=noninteractive xargs apt-get install --reinstall -y
echo "Reinstalling packages with system documentation in /usr/share/doc/ .."
# This step processes the packages which still have missing documentation
dpkg --verify --verify-format rpm | awk '/..5...... \/usr\/share\/doc/ {print $2}' | sed 's|/[^/]*$||' | sort |uniq \
dpkg --verify --verify-format rpm | awk '$2 ~ /\/usr\/share\/doc/ {print $2}' | sed 's|/[^/]*$||' | sort | uniq \
| xargs dpkg -S | sed 's|, |\n|g;s|: [^:]*$||' | uniq | DEBIAN_FRONTEND=noninteractive xargs apt-get install --reinstall -y
echo "Restoring system translations..."
# This step processes the packages which still have missing translations
dpkg --verify --verify-format rpm | awk '/..5...... \/usr\/share\/locale/ {print $2}' | sed 's|/[^/]*$||' | sort |uniq \
dpkg --verify --verify-format rpm | awk '$2 ~ /\/usr\/share\/locale/ {print $2}' | sed 's|/[^/]*$||' | sort | uniq \
| xargs dpkg -S | sed 's|, |\n|g;s|: [^:]*$||' | uniq | DEBIAN_FRONTEND=noninteractive xargs apt-get install --reinstall -y
if dpkg --verify --verify-format rpm | awk '/..5...... \/usr\/share\/doc/ {exit 1}'; then
if dpkg --verify --verify-format rpm | awk '$2 ~ /\/usr\/share\/doc/ {exit 1}'; then
echo "Documentation has been restored successfully."
rm /etc/dpkg/dpkg.cfg.d/excludes.dpkg-tmp
else
echo "There are still files missing from /usr/share/doc/:"
dpkg --verify --verify-format rpm | awk '/..5...... \/usr\/share\/doc/ {print " " $2}'
dpkg --verify --verify-format rpm | awk '$2 ~ /\/usr\/share\/doc/ {print " " $2}'
echo "You may want to try running this script again or you can remove"
echo "/etc/dpkg/dpkg.cfg.d/excludes.dpkg-tmp and restore the files manually."
fi
@ -288,8 +288,9 @@ fi
echo "Removing lxd installer package..."
apt-get purge -y lxd-installer
echo "Installing lxd from snap..."
snap install lxd
. /etc/os-release
echo "Installing lxd from snap from stable/ubuntu-$VERSION_ID channel"
snap install --channel="stable/ubuntu-$VERSION_ID" lxd
EOF
fi
cat >> chroot/usr/local/sbin/unminimize <<'EOF'
@ -462,7 +463,12 @@ EOF
fi
if [ "$PROJECT" = "ubuntu-oci" ]; then
configure_oci chroot
if [ -n "$BUILDSTAMP" ]; then
configure_oci chroot "$BUILDSTAMP"
else
echo "The \$BUILDSTAMP variable is empty"
exit 1
fi
fi
configure_network_manager
@ -477,6 +483,18 @@ EOF
clean_debian_chroot
fi
# XXX: Terrible last-minute hack to work-around issue LP: #2008082 !
# This basically needs to be done better, we simply need to make sure
# that we don't update the cache after lb cleans up. Since identifying
# that might take a moment, for now, for flavors that are generally
# affected by this, we manually clear out the archive-related Packages
# files in the cache.
case $PROJECT in
ubuntu|xubuntu|kubuntu|ubuntu-budgie|ubuntukylin|ubuntu-mate)
rm -f chroot/var/lib/apt/lists/*ubuntu.com*_Packages
;;
esac
if [ -n "${PASSES}" ]; then
PATH="config/:$PATH" lb binary_layered "$@"
else
@ -574,12 +592,18 @@ for FLAVOUR in $LB_LINUX_FLAVOURS; do
virtual|generic-hwe-*)
FLAVOUR="generic"
;;
lowlatency-hwe-*)
FLAVOUR="lowlatency"
;;
oem-*)
FLAVOUR="oem"
;;
image-intel)
FLAVOUR="intel"
;;
intel-iotg*)
FLAVOUR="intel-iotg"
;;
esac
KVERS="$( (cd "binary/$INITFS"; ls vmlinu?-* 2>/dev/null || true) | (fgrep -v .efi || true) | sed -n "s/^vmlinu.-\\([^-]*-[^-]*-$FLAVOUR\\)$/\\1/p" )"
if [ -z "$KVERS" ]; then

View File

@ -345,7 +345,7 @@ fi
# one also must request disk1-img-xz image format
if [ "$IMAGEFORMAT" = "ext4" ] && [ "$PROJECT" = "ubuntu-cpc" ]; then
case $ARCH:$SUBARCH in
armhf:raspi2|riscv64:sifive_*|*:generic)
armhf:raspi2|riscv64:sifive_*|riscv64:nezha|riscv64:visionfive|riscv64:licheerv|riscv64:icicle|*:generic)
IMAGE_HAS_HARDCODED_PASSWORD=1
if [ -z "${IMAGE_TARGETS:-}" ]; then
export IMAGE_TARGETS="disk1-img-xz"
@ -400,6 +400,8 @@ case $IMAGEFORMAT in
MODEL=pi3-arm64 ;;
armhf+cm3)
MODEL=cm3 ;;
arm64+*)
MODEL=pc-arm64 ;;
*)
echo "Model $ARCH+${SUBARCH:-} unknown to livecd-rootfs" >&2
exit 1
@ -418,7 +420,7 @@ case $IMAGEFORMAT in
CHANNEL="${CHANNEL:-edge}"
case $MODEL in
pc-amd64|pc-i386)
pc-amd64|pc-i386|pc-arm64)
if [ -z "${SUBARCH:-}" ]; then
# This is to make sure there's enough writable space
UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS --image-size 3700M"
@ -704,7 +706,7 @@ case $PROJECT in
OPTS="${OPTS:+$OPTS }--ext-fudge-factor=15"
;;
intel-iot)
KERNEL_FLAVOURS='image-intel'
KERNEL_FLAVOURS='intel-iotg'
COMPONENTS='main restricted'
OPTS="${OPTS:+$OPTS }--initramfs=none"
OPTS="${OPTS:+$OPTS }--system=normal"
@ -723,7 +725,7 @@ case $PROJECT in
add_task live ubuntu-desktop-minimal-default-languages ubuntu-desktop-default-languages
KERNEL_FLAVOURS='generic-hwe-22.04'
if [ "$SUBARCH" = "intel-iot" ]; then
KERNEL_FLAVOURS='image-intel'
KERNEL_FLAVOURS='intel-iotg'
COMPONENTS='main restricted'
fi
;;
@ -736,6 +738,7 @@ case $PROJECT in
LIVE_TASK='kubuntu-live'
COMPONENTS='main restricted universe'
add_chroot_hook remove-gnome-icon-cache
KERNEL_FLAVOURS='generic-hwe-22.04'
;;
kubuntu-active)
@ -769,7 +772,7 @@ case $PROJECT in
LIVE_TASK='xubuntu-live'
COMPONENTS='main restricted universe multiverse'
case $ARCH in
amd64|i386) KERNEL_FLAVOURS=generic ;;
amd64|i386) KERNEL_FLAVOURS='generic-hwe-22.04' ;;
esac
;;
@ -789,7 +792,7 @@ case $PROJECT in
LIVE_TASK='lubuntu-live'
COMPONENTS='main restricted universe multiverse'
case $ARCH in
amd64|i386) KERNEL_FLAVOURS=generic ;;
amd64|i386) KERNEL_FLAVOURS='generic-hwe-22.04' ;;
esac
;;
@ -803,19 +806,21 @@ case $PROJECT in
add_task install minimal standard ubuntu-budgie-desktop
LIVE_TASK='ubuntu-budgie-live'
COMPONENTS='main restricted universe'
KERNEL_FLAVOURS='generic-hwe-22.04'
;;
ubuntu-mate)
add_task install minimal standard ubuntu-mate-core ubuntu-mate-desktop
LIVE_TASK='ubuntu-mate-live'
COMPONENTS='main restricted universe multiverse'
KERNEL_FLAVOURS='generic-hwe-22.04'
;;
ubuntustudio-dvd)
add_task install minimal standard ubuntustudio-desktop ubuntustudio-audio ubuntustudio-graphics ubuntustudio-video ubuntustudio-photography
COMPONENTS='main restricted universe multiverse'
case $ARCH in
amd64|i386) KERNEL_FLAVOURS=lowlatency ;;
amd64|i386) KERNEL_FLAVOURS='lowlatency-hwe-22.04' ;;
esac
;;
@ -824,6 +829,7 @@ case $PROJECT in
add_package install ubuntukylin-default-settings
LIVE_TASK='ubuntukylin-live'
COMPONENTS='main restricted universe'
KERNEL_FLAVOURS='generic-hwe-22.04'
;;
ubuntu-server)
@ -849,8 +855,21 @@ case $PROJECT in
# written generically to support both even though a lot of the
# time only one kernel is offered.
# variants='ga hwe'
case "$ARCH+${SUBARCH:-}" in
amd64+intel-iot)
variants='intel'
;;
arm64+tegra)
variants='tegra'
;;
riscv64*)
# However, for RISC-V we only offer one kernel
variants='ga'
;;
*)
variants='ga hwe'
;;
esac
for variant in $variants; do
if [ "$variant" = "ga" ]; then
@ -859,6 +878,12 @@ case $PROJECT in
elif [ "$variant" = "hwe" ]; then
kernel_metapkg=linux-generic-hwe-$(lsb_release -sr)
flavor=generic-hwe
elif [ "$variant" = "intel" ]; then
kernel_metapkg=linux-intel-iotg
flavor=intel-iotg
elif [ "$variant" = "tegra" ]; then
kernel_metapkg=linux-nvidia-tegra
flavor=nvidia-tegra
else
echo "bogus variant: $variant"
exit 1
@ -931,14 +956,24 @@ case $PROJECT in
if [ "${SUBARCH:-}" = "generic" ]; then
KERNEL_FLAVOURS=generic
elif [ "${SUBARCH:-}" = "intel-iot" ]; then
KERNEL_FLAVOURS=image-intel
KERNEL_FLAVOURS=intel-iotg
COMPONENTS='main restricted'
OPTS="${OPTS:+$OPTS }--initramfs=none"
fi
;;
riscv64*)
if [ -n "$SUBARCH" ]; then
case "${SUBARCH:-}" in
nezha|licheerv)
KERNEL_FLAVOURS=allwinner
;;
visionfive)
KERNEL_FLAVOURS=starfive
;;
*)
KERNEL_FLAVOURS=generic
;;
esac
fi
;;
esac
@ -1057,7 +1092,7 @@ case $PROJECT in
;;
esac
case "$ARCH+${SUBARCH:-}" in
case "$ARCH${SUBARCH:++$SUBARCH}" in
arm*+raspi)
# Common configuration for all Raspberry Pi image variants (server,
# desktop etc.)
@ -1068,6 +1103,16 @@ case "$ARCH+${SUBARCH:-}" in
add_package install linux-firmware-raspi2 pi-bluetooth u-boot-rpi u-boot-tools
BINARY_REMOVE_LINUX=false
;;
arm64+tegra)
# Common configuration for all NVIDIA Tegra image variants (server,
# desktop etc.)
KERNEL_FLAVOURS="nvidia-$SUBARCH"
COMPONENTS='main restricted universe multiverse'
;;
riscv*+*)
# We'll add wpasupplicant to the seeds when we work on RISC-V seeds.
add_package install wpasupplicant
;;
esac
case $PROJECT:${SUBPROJECT:-} in
@ -1095,7 +1140,7 @@ case $PROJECT in
case $SUBARCH in
intel-iot)
COMPONENTS='main restricted'
KERNEL_FLAVOURS='image-intel'
KERNEL_FLAVOURS='intel-iotg'
;;
esac
;;
@ -1283,6 +1328,18 @@ exit 0
EOF
fi
if [ "$PROJECT" = "ubuntustudio-dvd" ]; then
cat > config/hooks/100-ubuntustudio-dkms.chroot <<EOF
#!/bin/bash
set -e
env DEBIAN_FRONTEND=noninteractive \
apt-get -y autoremove --purge v4l2loopback-dkms v4l2loopback-utils
EOF
chmod +x config/hooks/100-ubuntustudio-dkms.chroot
fi
if $BINARY_REMOVE_LINUX; then
cat > config/binary_rootfs/excludes << EOF
boot/vmlinu?-*

View File

@ -97,30 +97,11 @@ install_grub() {
# not called here as it calls snap-seed-parse, resulting in duplicate
# snap listings)
chroot mountpoint dpkg-query -W > binary/boot/filesystem.packages
chroot mountpoint grub-install "${loop_device}" \
--boot-directory=/boot \
--efi-directory=/boot/efi \
--target=${efi_target} \
--removable \
--uefi-secure-boot \
--no-nvram
if [ -f mountpoint/boot/efi/EFI/BOOT/grub.cfg ]; then
sed -i "s| root| root hd0,gpt1|" mountpoint/boot/efi/EFI/BOOT/grub.cfg
sed -i "1i${IMAGE_STR}" mountpoint/boot/efi/EFI/BOOT/grub.cfg
# For some reason the grub disk is looking for /boot/grub/grub.cfg on
# part 15....
chroot mountpoint mkdir -p /boot/efi/boot/grub
chroot mountpoint cp /boot/efi/EFI/BOOT/grub.cfg /boot/efi/boot/grub
fi
if [ "$ARCH" = "amd64" ]; then
# Install the BIOS/GPT bits. Since GPT boots from the ESP partition,
# it means that we just run this simple command and we're done
chroot mountpoint grub-install --target=i386-pc "${loop_device}"
fi
# LP: 2034253
# awaiting grub updates, we need to set the Distributor _before_ running grub-install
# so that the EFI bits are in the correct place
# buildd doesn't have `lsb_release`
# so adding GRUB_DISTRIBUTOR, hardcoded to Ubuntu, for buildd for now
cat > mountpoint/etc/default/grub.d/50-builddimg-settings.cfg << EOF
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0.1
@ -129,7 +110,21 @@ GRUB_TIMEOUT=0.1
GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0"
GRUB_RECORDFAIL_TIMEOUT=0
GRUB_TERMINAL=console
GRUB_DISTRIBUTOR=Ubuntu
EOF
chroot mountpoint grub-install "${loop_device}" \
--boot-directory=/boot \
--efi-directory=/boot/efi \
--target=${efi_target} \
--uefi-secure-boot \
--no-nvram
if [ "$ARCH" = "amd64" ]; then
# Install the BIOS/GPT bits. Since GPT boots from the ESP partition,
# it means that we just run this simple command and we're done
chroot mountpoint grub-install --target=i386-pc "${loop_device}"
fi
divert_grub mountpoint
chroot mountpoint update-grub

View File

@ -141,7 +141,7 @@ setup_mountpoint() {
# cgroup2 mount for LP: 1944004
mount -t cgroup2 none "$mountpoint/sys/fs/cgroup"
mount -t tmpfs none "$mountpoint/tmp"
mount -t tmpfs none "$mountpoint/var/lib/apt"
mount -t tmpfs none "$mountpoint/var/lib/apt/lists"
mount -t tmpfs none "$mountpoint/var/cache/apt"
mv "$mountpoint/etc/resolv.conf" resolv.conf.tmp
cp /etc/resolv.conf "$mountpoint/etc/resolv.conf"
@ -760,12 +760,34 @@ snap_preseed() {
snap_validate_seed() {
local CHROOT_ROOT=$1
if [ -e ${CHROOT_ROOT}/boot/vmlinuz ]; then
local kern_major_min=$(readlink --canonicalize --no-newline ${CHROOT_ROOT}/boot/vmlinuz | grep --extended-regexp --only-matching --max-count 1 '[0-9]+\.[0-9]+')
if [ -d /usr/share/livecd-rootfs/live-build/apparmor/${kern_major_min} ]; then
# if an Ubuntu version has different kernel apparmor features between LTS and HWE kernels
# a snap pre-seeding issue can occur, where the incorrect apparmor features are reported
# basic copy of a directory structure overriding the "generic" feature set
# which is tied to the LTS kernel
# Bind kernel apparmor directory to feature directory for snap preseeding
umount "${CHROOT_ROOT}/sys/kernel/security/apparmor/features/"
mount --bind /usr/share/livecd-rootfs/live-build/apparmor/${kern_major_min} "${CHROOT_ROOT}/sys/kernel/security/apparmor/features/"
fi
fi
if [ -e "${CHROOT_ROOT}/var/lib/snapd/seed/seed.yaml" ]; then
snap debug validate-seed "${CHROOT_ROOT}/var/lib/snapd/seed/seed.yaml"
/usr/lib/snapd/snap-preseed --reset $(realpath "${CHROOT_ROOT}")
/usr/lib/snapd/snap-preseed $(realpath "${CHROOT_ROOT}")
chroot "${CHROOT_ROOT}" apparmor_parser --skip-read-cache --write-cache --skip-kernel-load --verbose -j `nproc` /etc/apparmor.d
fi
# Unmount kernel specific apparmor feature
# mount generic apparmor feature again (cleanup)
if [ -d /build/config/hooks.d/extra/apparmor/${kern_major_min} ]; then
umount "${CHROOT_ROOT}/sys/kernel/security/apparmor/features/"
mount -o bind /usr/share/livecd-rootfs/live-build/apparmor/generic "${CHROOT_ROOT}/sys/kernel/security/apparmor/features/"
fi
}
snap_from_seed() {
@ -922,6 +944,12 @@ configure_oci() {
# at https://github.com/tianon/docker-brew-ubuntu-core/blob/master/update.sh
local chroot=$1
local serial=$2
if [ ! -d "${chroot}" ]; then
echo "The chroot does not exist"
exit 1
fi
echo "==== Configuring OCI ===="
@ -930,6 +958,14 @@ configure_oci() {
echo 'exit 101' >> ${chroot}/usr/sbin/policy-rc.d
Chroot ${chroot} "chmod +x /usr/sbin/policy-rc.d"
# Inject a build stamp into the image
mkdir -p ${chroot}/etc/cloud
cat > ${chroot}/etc/cloud/build.info << EOF
serial: $serial
EOF
# https://github.com/docker/docker/blob/9a9fc01af8fb5d98b8eec0740716226fadb3735c/contrib/mkimage/debootstrap#L54-L56
Chroot ${chroot} "dpkg-divert --local --rename --add /sbin/initctl"
cp -a ${chroot}/usr/sbin/policy-rc.d ${chroot}/sbin/initctl

View File

@ -56,9 +56,12 @@ build_layered_squashfs () {
Echo_message "lb_binary_layered: treating pass $pass"
# Per convention, we include the subarch name next to the project
PROJECT_FULL=$PROJECT${SUBARCH:+-$SUBARCH}
# Building squashfs filesystem & manifest
local overlay_dir="overlay.${pass}"
base="${PWD}/livecd.${PROJECT}.${pass}"
base="${PWD}/livecd.${PROJECT_FULL}.${pass}"
squashfs_f="${base}.squashfs"
# We have already treated that pass
@ -113,7 +116,7 @@ build_layered_squashfs () {
create_manifest "chroot" "${squashfs_f_manifest}.full"
# Delta manifest
diff -NU0 ${PWD}/livecd.${PROJECT}.$(get_parent_pass $pass).manifest.full ${squashfs_f_manifest}.full|grep -v ^@ > $squashfs_f_manifest
diff -NU0 ${PWD}/livecd.${PROJECT_FULL}.$(get_parent_pass $pass).manifest.full ${squashfs_f_manifest}.full|grep -v ^@ > $squashfs_f_manifest
squashfs_f_size="${base}.size"
du -B 1 -s "overlay.${pass}/" | cut -f1 > "${squashfs_f_size}"
@ -121,7 +124,7 @@ build_layered_squashfs () {
# We take first live pass for "global" ISO properties (used by installers and checkers):
# Prepare initrd + kernel
# Main manifest and size files
prefix="livecd.$PROJECT${SUBARCH:+-$SUBARCH}"
prefix="livecd.$PROJECT_FULL"
if [ ! -e "${prefix}.manifest" ] && $(is_live_layer "$pass"); then
totalsize=$(cat ${squashfs_f_size})
curpass="$pass"
@ -130,7 +133,7 @@ build_layered_squashfs () {
# We climbed up the tree to the root layer, we are done
[ -z "$curpass" ] && break
totalsize=$(expr $totalsize + $(cat "${PWD}/livecd.${PROJECT}.${curpass}.size"))
totalsize=$(expr $totalsize + $(cat "${PWD}/livecd.${PROJECT_FULL}.${curpass}.size"))
done
echo ${totalsize} > "${prefix}.size"
@ -141,7 +144,7 @@ build_layered_squashfs () {
if [ -f config/$pass.catalog-in.yaml ]; then
echo "Expanding catalog entry template for $pass"
usc_opts="--output livecd.${PROJECT}.install-sources.yaml \
usc_opts="--output livecd.${PROJECT_FULL}.install-sources.yaml \
--template config/$pass.catalog-in.yaml \
--size $(du -B 1 -s chroot/ | cut -f1) --squashfs ${pass}.squashfs \
--translations config/catalog-translations"
@ -168,9 +171,9 @@ do
done
# Ubiquity-compatible removal manifest for ISO not using a layered-aware installer
if [ -n "$(ls livecd.${PROJECT}.*install.live.manifest.full 2>/dev/null)" ] && \
[ -n "$(ls livecd.${PROJECT}.*install.manifest.full 2>/dev/null)" ]; then
echo "$(diff livecd.${PROJECT}.*install.live.manifest.full livecd.${PROJECT}.*install.manifest.full | awk '/^< / { print $2 }')" > livecd.${PROJECT}-manifest-remove
if [ -n "$(ls livecd.${PROJECT_FULL}.*install.live.manifest.full 2>/dev/null)" ] && \
[ -n "$(ls livecd.${PROJECT_FULL}.*install.manifest.full 2>/dev/null)" ]; then
echo "$(diff livecd.${PROJECT_FULL}.*install.live.manifest.full livecd.${PROJECT_FULL}.*install.manifest.full | awk '/^< / { print $2 }')" > livecd.${PROJECT_FULL}-manifest-remove
fi
chmod 644 *.squashfs *.manifest* *.size

View File

@ -25,13 +25,17 @@ if [ "$ARCH" = "armhf" ]; then
IMAGE_SIZE=3758096384 # bump to 3.5G (3584*1024**2); Since Jammy armhf need more then the default 2.2G
fi
# Change image size for preinstalled generic images & all preinstalled riscv64 images
# Change image size for preinstalled generic images
if [ -n "${SUBARCH:-}" ]; then
if [ "${SUBARCH:-}" = "generic" ] || [ "$ARCH" = "riscv64" ]; then
if [ "${SUBARCH:-}" = "generic" ]; then
IMAGE_SIZE=3758096384 # bump to 3.5G (3584*1024**2), due to linux-generic instead of virtual
fi
fi
if [ "$ARCH" = "riscv64" ]; then
IMAGE_SIZE=4831838208 # bump to 4.5G (4608*1024**2); initrd creation fails with "No space left" with 3.5G
fi
. config/binary
. config/functions
@ -69,6 +73,53 @@ create_partitions() {
--typecode=15:ef00 \
--new=1:: \
--attributes=1:set:2
elif [ "${SUBARCH:-}" = "nezha" ] || [ "${SUBARCH:-}" = "licheerv" ]; then
# Nezha/LicheeRV D1 boards
sgdisk "${disk_image}" \
--set-alignment=2 \
--new=13:256:25575 \
--change-name=13:loader1 \
--typecode=13:B161E8AB-7D4B-4DB4-821C-4120A0554A35 \
--new=16:25576:32799 \
--change-name=16:loader2b \
--typecode=16:F79E76D9-AC98-418B-8F31-E17EA24FF07C \
--new=14:32800:43007 \
--change-name=14:loader2 \
--typecode=14:F4FA3898-3478-4941-887D-FCEC4E9E3C05 \
--new=15::+106M \
--typecode=15:ef00 \
--change-name=15:ESP \
--new=12::+4M \
--change-name=12:CIDATA \
--new=1:: \
--attributes=1:set:2
elif [ "${SUBARCH:-}" = "icicle" ]; then
# Microchip Icicle Kit
sgdisk "${disk_image}" \
--set-alignment=2 \
--new=13:256:25575 \
--change-name=13:loader \
--typecode=13:ef02 \
--new=15::+106M \
--typecode=15:ef00 \
--change-name=15:ESP \
--new=12::+4M \
--change-name=12:CIDATA \
--new=1:: \
--attributes=1:set:2
elif [ "${SUBARCH:-}" = "visionfive" ]; then
# VisionFive
sgdisk "${disk_image}" \
--set-alignment=2 \
--new=15::+106M \
--typecode=15:ef00 \
--change-name=15:ESP \
--new=12::+4M \
--change-name=12:CIDATA \
--new=3::+1M \
--change-name=3:uEnv \
--new=1:: \
--attributes=1:set:2
else
# preinstalled server, currently FU540
# FU740 too in the future
@ -182,13 +233,143 @@ install_grub() {
fi
;;
riscv64)
# TODO grub-efi-riscv64 does not exist yet on riscv64
chroot mountpoint apt-get install -qqy u-boot-menu #grub-efi-riscv64
# TODO grub-efi-riscv64 exists, but is not used by all the images yet
if [ -n "${SUBARCH:-}" ]; then
# Per-device images
local my_d=$(dirname $(readlink -f ${0}))
echo "Adjusting GRUB defaults for ${ARCH}"
mkdir -p mountpoint/etc/default/grub.d/
cp ${my_d}/riscv64/grub/cmdline.cfg mountpoint/etc/default/grub.d/
case "${SUBARCH}" in
"icicle")
echo "Installing GRUB for ${SUBARCH} board"
# flash-kernel is needed to install the dtb for update-grub: it uses the
# /proc/device-tree/model value to pick the correct dtb and as we are in a chroot,
# the model value is wrong and we need to use /etc/flash-kernel/machine instead.
# This explains why we install flash-kernel here.
chroot mountpoint mkdir -p /etc/flash-kernel/
chroot mountpoint bash -c "echo 'Microchip PolarFire-SoC Icicle Kit' > /etc/flash-kernel/machine"
chroot mountpoint bash -c 'FK_FORCE=yes apt-get install -qqy grub-efi-riscv64 flash-kernel'
efi_target=riscv64-efi
# The real U-Boot
chroot mountpoint apt-get install -qqy u-boot-microchip
loader="/dev/mapper${loop_device///dev/}p13"
dd if=mountpoint/usr/lib/u-boot/microchip_icicle/u-boot.payload of=$loader
# Provide end-user modifyable CIDATA
cidata_dev="/dev/mapper${loop_device///dev/}p12"
setup_cidata "${cidata_dev}"
# Provide stock nocloud datasource
# Allow interactive login on baremetal board,
# without a cloud datasource.
setup_cinocloud mountpoint
# u-boot-microchip will boot using UEFI if it does not find
# any extlinux.conf or boot.scr: but flash-kernel will
# install a boot.scr if it believes it did not boot in
# EFI mode, so make sure we don't leave a boot.scr
# behind.
chroot mountpoint rm -f /boot/boot.scr
;;
"nezha"|"licheerv")
echo "Reducing initramfs size for ${SUBARCH} board"
mkdir -p mountpoint/etc/initramfs-tools/conf.d/
cp ${my_d}/riscv64/initramfs-tools/modules_list.conf mountpoint/etc/initramfs-tools/conf.d/
chroot mountpoint update-initramfs -c -v -k all
echo "Installing U-Boot for ${SUBARCH} board"
# flash-kernel is needed to install the dtb for update-grub: it uses the
# /proc/device-tree/model value to pick the correct dtb and as we are in a chroot,
# the model value is wrong and we need to use /etc/flash-kernel/machine instead.
# This explains why we install flash-kernel here.
chroot mountpoint mkdir -p /etc/flash-kernel/
if [ "$SUBARCH" = "nezha" ]; then
chroot mountpoint bash -c "echo 'Allwinner D1 Nezha' > /etc/flash-kernel/machine"
elif [ "$SUBARCH" = "licheerv" ]; then
chroot mountpoint bash -c "echo 'Sipeed Lichee RV Dock' > /etc/flash-kernel/machine"
# cryptsetup-initramfs is a large contributor of the initrd size: we have to
# remove it for the LicheeRV board, otherwise it fails to boot. cryptsetup-initramfs
# needs to embed plymouth (and then the drm/gpu stuff) for interacting with the user
# to decrypt the rootfs (passphrase key).
chroot mountpoint bash -c "apt remove -qqy cryptsetup-initramfs"
fi
chroot mountpoint bash -c 'FK_FORCE=yes apt-get install -qqy grub-efi-riscv64 flash-kernel'
efi_target=riscv64-efi
chroot mountpoint u-boot-update
# nezha-boot0 is actually compatible with the LicheeRV boards (and probably other D1-based boards)
chroot mountpoint apt-get install -qqy nezha-boot0
# FSBL, which gets U-Boot SPL
loader1="/dev/mapper${loop_device///dev/}p13"
dd if=mountpoint/usr/lib/u-boot/nezha/boot0_sdcard_sun20iw1p1.bin of=$loader1
# The real U-Boot
# u-boot-nezha actually contains both the LicheeRV and the Nezha boards support
chroot mountpoint apt-get install -qqy u-boot-nezha
loader2="/dev/mapper${loop_device///dev/}p14"
dd if=mountpoint/usr/lib/u-boot/${SUBARCH}/u-boot.toc1 of=$loader2
# Provide end-user modifyable CIDATA
cidata_dev="/dev/mapper${loop_device///dev/}p12"
setup_cidata "${cidata_dev}"
# Provide stock nocloud datasource
# Allow interactive login on baremetal SiFive board,
# without a cloud datasource.
setup_cinocloud mountpoint
if [ -n "${SUBARCH:-}" ]; then
# u-boot-${SUBARCH} will boot using UEFI if it does not find
# any extlinux.conf or boot.scr: but flash-kernel will
# install a boot.scr if it believes it did not boot in
# EFI mode, so make sure we don't leave a boot.scr
# behind.
chroot mountpoint rm -f /boot/boot.scr
;;
"visionfive")
echo "Installing GRUB for VisionFive board"
# flash-kernel is needed to install the dtb for update-grub: it uses the
# /proc/device-tree/model value to pick the correct dtb and as we are in a chroot,
# the model value is wrong and we need to use /etc/flash-kernel/machine instead.
# This explains why we install flash-kernel here.
chroot mountpoint mkdir -p /etc/flash-kernel/
chroot mountpoint bash -c "echo 'StarFive VisionFive V1' > /etc/flash-kernel/machine"
chroot mountpoint bash -c 'FK_FORCE=yes apt-get install -qqy grub-efi-riscv64 flash-kernel'
efi_target=riscv64-efi
# factory u-boot requires a p3 partition with /boot/uEnv.txt file
uenv_dev="/dev/mapper${loop_device///dev/}p3"
mkfs.ext4 "${uenv_dev}"
uenv_mnt_dir=`mktemp -d uenvXXX`
mount "${uenv_dev}" "${uenv_mnt_dir}"
mkdir -p "${uenv_mnt_dir}"/boot
cat <<'EOF' >${uenv_mnt_dir}/boot/uEnv.txt
scriptaddr=0x88100000
script_offset_f=0x1fff000
script_size_f=0x1000
kernel_addr_r=0x84000000
kernel_comp_addr_r=0x90000000
kernel_comp_size=0x10000000
fdt_addr_r=0x88000000
ramdisk_addr_r=0x88300000
bootcmd=load mmc 0:f ${kernel_addr_r} /EFI/ubuntu/grubriscv64.efi; bootefi ${kernel_addr_r}
bootcmd_mmc0=devnum=0; run mmc_boot
ipaddr=192.168.120.200
netmask=255.255.255.0
EOF
umount "${uenv_mnt_dir}"
rmdir "${uenv_mnt_dir}"
# Provide end-user modifyable CIDATA
cidata_dev="/dev/mapper${loop_device///dev/}p12"
setup_cidata "${cidata_dev}"
# Provide stock nocloud datasource
# Allow interactive login on baremetal SiFive board,
# without a cloud datasource.
setup_cinocloud mountpoint
;;
*)
chroot mountpoint apt-get install -qqy u-boot-menu #grub-efi-riscv64
efi_target=riscv64-efi
chroot mountpoint u-boot-update
u_boot_arch="${SUBARCH}"
if [ "${u_boot_arch}" = "hifive" ]; then
u_boot_arch=sifive_fu540
@ -207,8 +388,18 @@ install_grub() {
# Allow interactive login on baremetal SiFive board,
# without a cloud datasource.
setup_cinocloud mountpoint
;;
esac
else
# Other images e.g. cloud images
chroot mountpoint apt-get install -qqy u-boot-menu #grub-efi-riscv64
efi_target=riscv64-efi
chroot mountpoint u-boot-update
fi
## TODO remove below once we have grub-efi-riscv64
if [ "${SUBARCH:-}" != "visionfive" ] && [ "${SUBARCH:-}" != "nezha" ] && [ "${SUBARCH:-}" != "licheerv" ] && [ "${SUBARCH:-}" != "icicle" ]; then
## TODO remove below once we have grub-efi-riscv64 for the platforms
rm mountpoint/tmp/device.map
umount mountpoint/boot/efi
mount
@ -216,6 +407,7 @@ install_grub() {
rmdir mountpoint
return
##
fi
;;
esac

View File

@ -130,7 +130,7 @@
<rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
<rasd:ElementName>CD-ROM 1</rasd:ElementName>
<rasd:InstanceID>9</rasd:InstanceID>
<rasd:Parent>3</rasd:Parent>
<rasd:Parent>5</rasd:Parent>
<rasd:ResourceSubType>vmware.cdrom.remotepassthrough</rasd:ResourceSubType>
<rasd:ResourceType>15</rasd:ResourceType>
<vmw:Config ovf:required="false" vmw:key="backing.exclusive" vmw:value="false"/>

View File

@ -0,0 +1,4 @@
# Booting on many riscv64 systems is slow. Let the user view progress.
# For minimum output use
# GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT="efi=debug earlycon"

View File

@ -0,0 +1,6 @@
# The Nezha and the LicheeRV boards do not have enough memory for an initrd with
# most modules. Therefore the number of included modules has to be reduced.
#
# If further modules are needed, add them to /etc/initramfs-tools/modules.
MODULES=list

View File

@ -1,3 +1,5 @@
#!/bin/bash
sed -i "s|#PasswordAuthentication yes|PasswordAuthentication no|g" /etc/ssh/sshd_config
cat << EOF >> "/etc/ssh/sshd_config.d/10-cloudimg-settings.conf"
PasswordAuthentication no
EOF

View File

@ -91,6 +91,16 @@ if [ -L "${rootd}/boot/initrd.img" ] && [ ! -e "${rootd}/boot/initrd.img" ]; the
rm "${rootd}/boot/initrd.img"
fi
# Recommends of ubuntu-server that should not be included in cloud images by
# default
# unfortunately because we are currently installing ubuntu-server as a task,
# all of the recursive dependencies are marked as manually installed and are
# not subject to autoremoval. There is discussion of us stopping the use of
# tasks in livecd-rootfs but in the meantime, we have to also explicitly
# remove the packages providing the services
_xchroot "$rootd" env DEBIAN_FRONTEND=noninteractive \
apt-get -y autoremove --purge fwupd modemmanager udisks2
if [ "${SUBPROJECT:-}" = minimized ]; then
# Remove various packages that we don't want in the minimized images.
# Some of these are tools that don't make sense by default

View File

@ -8,6 +8,10 @@ case $PASS in
kernel_metapkg=linux-generic
elif [ "$flavor" = "generic-hwe" ]; then
kernel_metapkg=linux-generic-hwe-$(lsb_release -sr)
elif [ "$flavor" = "intel-iotg" ]; then
kernel_metapkg=linux-intel-iotg
elif [ "$flavor" = "nvidia-tegra" ]; then
kernel_metapkg=linux-nvidia-tegra
else
echo "bogus flavor: $flavor"
exit 1

View File

@ -10,6 +10,8 @@ case $PASS in
;;
esac
PROJECT=$PROJECT${SUBARCH:+-$SUBARCH}
# Fish out generated kernel image and initrd
mv chroot/boot/initrd.img-* ${PWD}/livecd.${PROJECT}.initrd-$flavor
mv chroot/boot/vmlinu?-* ${PWD}/livecd.${PROJECT}.kernel-$flavor

View File

@ -1,6 +1,5 @@
[Unit]
Description=Subiquity, the installer for Ubuntu Server %I
After=snapd.seeded.service
StartLimitInterval=0
[Service]

View File

@ -1,6 +1,5 @@
[Unit]
IgnoreOnIsolate=yes
After=systemd-user-sessions.service plymouth-quit-wait.service snap.seeded.service
[Service]
Environment=SNAP_REEXEC=0