2188 Commits

Author SHA1 Message Date
Dan Bungert
76ee7808ea lb_chroot_layered: omit kernel-meta-package file 2024-10-16 12:40:44 -06:00
Dan Bungert
2096eccd67 lb_binary_layered: use kernel.yaml 2024-10-16 12:40:44 -06:00
Dan Bungert
2f103f886c config: output kernel.yaml fragment 2024-10-16 12:40:44 -06:00
Dan Bungert
9b42f898bf update-source-catalog: support version 2 scheme
Version 1 of install-sources.yaml is a top-level list of the sources to
be offered.
Version 2 extends this by placing the list under a top-level key
`sources`, adding a `version` field, and adding a `kernel` field which
supplants the current kernel-meta-package file.  `kernel.default` is
read to know which kernel to use - unless we need to fallback to the
bridge kernel.
2024-10-14 17:13:39 -06:00
Łukasz 'sil2100' Zemczak
9b1ea66dc8 Add comment re: the cohort key in prepare-image 2024-10-08 13:30:36 +01:00
Łukasz 'sil2100' Zemczak
293ec25aba Use cohort key for prepare-image. 2024-10-08 13:08:14 +01:00
Heinrich Schuchardt
e5977a2e2b riscv: use generic kernel flavor for Nezha D1 and LicheeRV Dock
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-10-04 12:11:47 +02:00
Michael Hudson-Doyle
3f44a55392 Update the model used for TPM FDE installs, yet again. 2024-10-04 11:53:16 +13:00
Dan Bungert
5e990020e5 desktop: remove references to subiquity snap
No subiquity snap is present on Desktop isos, these are cruft.
2024-10-02 08:20:34 -06:00
Michael Hudson-Doyle
e5ef431598 Update the model used for TPM FDE installs, again, hopefully working this time. 2024-10-02 19:05:26 +13:00
Utkarsh Gupta
e8d5fde9e2 Revert "Update the model used for TPM FDE installs."
This reverts commit c4e69348aed2e89bdef0187afe79da18d855eb8c as
the more debugging is needed for autopkgtest failures and is
therefore blocking apparmor fixes for cloud images.
2024-09-30 16:15:08 +05:30
Utkarsh Gupta
b5d00fae13 Add 6.11 kernel apparmor features' preseeds 2024-09-25 13:41:12 +05:30
Michael Hudson-Doyle
c4e69348ae Update the model used for TPM FDE installs. 2024-09-25 13:51:08 +12:00
Chad Smith
c567b71239 fix(functions): cloud-init.service renamed cloud-init-network.service
In cloud-init version 24.3, single process mode where a shared python
systemd service cloud-init-main. In that release, cloud-init.service was
renamed cloud-init-network.service to better clarify cloud-init's
systemd unit names relative to the cloud-init boot stages.

This rename only applies to Oracular and newer releases.

See: https://discourse.ubuntu.com/t/announcement-cloud-init-perfomance-optimization-single-process/47505

functions drops in a complete override for cloud-init.service. That
override in /etc/systemd/system needs to be renamed and refreshed to
latest single process configuration.

LP: #2081325
2024-09-20 10:41:57 -06:00
Chris Peterson
ed1844eda1 live-{server,desktop}: USE_KDUMP=0 only live layer
kdump-tools uses ucf for config file management and naively
modifying the config file meant for the target system directly
will cause the file hash to not get updated in the ucf database.
This will then cause later modifications to fail because
"there's nothing to do". Although actually doing the modification
to the ucf database is messy. Let's just modify the file in the live
layer to get the behavior we want there.
2024-09-17 21:01:36 -07:00
Chris Peterson
7f1c726441 ubuntu: disable kdump-tools by default
We install the kdump-tools package to minimal layer via inclusion in the
desktop-minimal seed, but it is enabled by default. Include a new chroot
hook to set USE_KDUMP=0 to make sure it's disabled by default and let
the installer decide to enable it or not.
2024-09-16 09:48:27 -07:00
Chris Peterson
67df97f099 ubuntu-server: disable kdump-tools by default
We install the kdump-tools package to minimal layer via inclusion in the
server-minimal seed, but it is enabled by default. Include a new chroot
hook to set USE_KDUMP=0 to make sure it's disabled by default and let
the installer decide to enable it or not.
2024-09-16 09:46:33 -07:00
Dan Bungert
db0a0f0462 desktop & many flavors: kernel in minimal layer 2024-09-12 14:24:33 -06:00
Dan Bungert
c9df34c340 live-server: fix looking for ga variant 2024-09-11 12:29:35 -06:00
Dan Bungert
8acf29a786 live-server: place kernel in the minimal layer
By placing the kernel in minimal, we can achieve the following
improvements:

1. Space savings - there are redundant packages present in the ship-live
   pool and in the live layer.  Adding the kernel to minimal means that
   the kernel is already in the live layer, and we don't then also need
   it in the pool.
2. Time savings - informal vm testing suggests more than a minute
   improvement to have the kernel preinstalled over installing it at
   runtime.

As always, there is a cost tradeoff:

1. If a different kernel is desired, we need to be able to remove this
   preinstalled kernel.  Relevant curtin and subiquity changes are
   already landed.
2. When installing that other kernel, it'll take longer than today due
   to still needing to install a kernel at runtime + the time cost of
   removing the preinstalled kernel.
2024-09-10 17:00:56 -06:00
Sergio Costas Rodriguez
d8fa3db5dc
Integrate Core Desktop 24 as a Core subproject
This patch updates Core Desktop to version 24, and also makes
it a subproject of Core, so it shares nearly the whole project
files and simplifies maintenance. It is based on a proposal from
Michael Hudson-Doyle. https://git.launchpad.net/~mwhudson/livecd-rootfs/+git/livecd-rootfs/commit/?id=94cb68d47530a564060155f985f963f59786809f
2024-09-05 13:06:32 +02:00
Chris Peterson
7f25e9cad5 Refresh ubuntu-classic-2404-amd64 model
Update the ubuntu-classic-2404-amd64.model definition in the
ubuntu hooks after changes in [1] to update snap tracks.

[1] d864558b66
2024-08-26 12:39:51 -07:00
Simon Poirier
df4017bf10 disk-image-uefi: Fix regression with partition sizing on arm
The sgdisk arguments for arm got mistakenly reordered, with the second
partition starting at offset 0.
2024-08-21 18:44:30 -04:00
Simon Poirier
61f1b20a5a disk-image-uefi.binary: shift down boot number to 13
Support some systems which don't handle partition numbers
higher than 15. (LP: #2072929)
Partition 16 was added for /boot to enable cloud FDE (commit a8b2a9b01)
2024-08-20 18:57:07 -04:00
Cody Shepherd
eecd0191ec
fix: remove ec2-version hook for cpc images 2024-08-09 13:25:06 -07:00
Steve Langasek
776d9c18c3 Merge remote-tracking branch 'ubuntustudio-dev/ubuntu/master' into ubuntu/master 2024-07-25 11:12:45 -07:00
Heinrich Schuchardt
5fda764262 riscv64: preinstalled image for Microchip PIC64GX Curiosity Kit
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-07-22 15:24:21 +02:00
Erich Eickmeyer
8f33879432 Add a minimal installation for Ubuntu Studio
Ubuntu Studio wants to add a minimal installation. The individual tasks
are metapackages that can be installed by the ubuntustudio-desktop task.

With that in mind, we would like to reintroduce
ubuntustudio-desktop-core as a minimal installation. This is made much
easier with the layered images compared to the package removal format
used by ubiquity. This also means ubuntustudio-desktop-core becomes the
base seed.

If I'm missing anything, please advise.
2024-07-19 12:21:16 -07:00
Chad Smith
97dd81183b functions: proper cloud-init.service full unit override in etc
System override drop-ins cannot redact dependencies (Before or After) and
thus require a full unit override. Avoid writing the unit file delivered
by cloud-init deb package in /lib/systemd/system/cloud-init.service because
it will generate warnings fron debsums -c about modified files.

The correct place to provide a full unit override is in
/etc/systemd/system/cloud-init.service in order to drop
Before=sysinit.target from the packaged cloud-init.service file.

Note vigilance will be needed across cloud-init SRU boundaries to ensure
we sync any cloud-init.service unit changes that are introduced to
stable releases because livecd-rootfs is overriding the whole file.

LP: #2069391
2024-07-16 10:58:09 -06:00
Łukasz 'sil2100' Zemczak
c9fc7f390d Add changelog, fix typo. 2024-07-11 13:01:44 +02:00
Łukasz 'sil2100' Zemczak
b6135788ba Build qcow2 images for non-SUBARCH core images for lxd purposes. 2024-07-05 11:36:42 +02:00
Zhai Zhaoxuan
f189a4e680
support specify sector size in ubuntu-image
Signed-off-by: Zhai Zhaoxuan <zhai.zhaoxuan@canonical.com>
2024-06-27 09:58:59 +08:00
Erich Eickmeyer
adcbbe388d Switch ubuntustudio to generic kernel
The lowlatency kernel will eventually undergo deprecation. Rather than
wait for such a time to happen and be reactive, Ubuntu Studio would
rather be proactive about this now that the generic kernel can act as a
lowlatency kernel with certain command line parameters as outlined by
https://discourse.ubuntu.com/t/fine-tuning-the-ubuntu-24-04-kernel-for-low-latency-throughput-and-power-efficiency/44834.

As such, we have modified our `ubuntustudio-lowlatency-settings`
package, which installs `/etc/default/grub.d/ubuntustudio.cfg` with the
following line:

-GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT threadirqs"
+GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT preempt=full
nohz_full=all threadirqs"

Additionally, that same file used to set "GRUB_FLAVOUR_ORDER" which is
no longer needed.
2024-06-19 15:53:52 -07:00
Utkarsh Gupta
a8991217d3 Merge branch 'drop-unminimize' into ubuntu/master
* drop-unminimize:
  Drop unminimize spit out by livecd-rootfs
2024-06-19 22:02:17 +05:30
Utkarsh Gupta
34482819f0 Drop unminimize spit out by livecd-rootfs
And prefer the one that is packaged separately as
src:unminimize, which installs the package in
/usr/bin/unminimize
2024-06-19 21:59:31 +05:30
Utkarsh Gupta
7535bf7bc7 Use packaged unminimize in the ubuntu-server images
unminimize is currently present at /usr/local/sbin/unminimize,
which is spit out by livecd-rootfs currently. We'd like to switch
that to use the packaged unminimize, which will be at
/usr/bin/unminimize instead.
2024-06-19 21:51:50 +05:30
Philip Roche
f574fc8200
fix: Revert removal of unminimize call in server builds (LP: #2069828)
There was a change made by me in https://code.launchpad.net/~philroche/livecd-rootfs/+git/livecd-rootfs/+merge/466388
as part of LP: #2066905 to remove references to LXD in the unminimize scripts
but I also removed the calls to `unminimize` in error.

This still needs to run but without any references to LXD which no longer
needs to be `unminimized` via snap installation.
2024-06-19 15:47:18 +01:00
Michael Hudson-Doyle
d6484f4de0 add a comment explaining what the ubuntu-core-installer project is 2024-06-07 19:38:41 +12:00
Michael Hudson-Doyle
abe1dec82f simplifications suggested in review 2024-06-07 19:38:41 +12:00
Michael Hudson-Doyle
61427da03f Add 'ubuntu-core-installer' project.
The ubuntu-core-installer image is an installer that installs ubuntu
core. The environment the installer runs in is similar to the server
installer but it has a source catalog entry that points to the model
created in ubuntu-core-installer/hooks/05-prepare-image.binary, which
subiquity knows how to install.
2024-06-07 19:38:16 +12:00
Heinrich Schuchardt
6b3e2b5a97 riscv64: use earlycon=sbi on command line
With current kernel we need to specify the SBI driver
for the early console to work.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-06-06 16:19:24 +02:00
Philip Roche
46c19dfa91 fix: No longer install LXD snap in unminimize script (LP: #2066905)
The LXD snap is no longer seeded in any images since Noble+ so the LXD related unminimize logic in
./live-build/auto/build?h=ubuntu/noble and ./live-build/ubuntu-server/hooks/01-unminimize.chroot_early
 is no longer required.

lxd-installer can remain installed.
2024-05-23 14:13:30 +01:00
Michael Hudson-Doyle
626dced7a2 Replace 'ubuntustudio-dvd' project with an almost identical 'ubuntustudio' project. 2024-05-12 11:23:46 +02:00
Philip Roche
0945c40fb2 fix(Hyperv Desktop): remove redundant case statement match ubuntu
`ubuntu` will never match `${PROJECT:-}:${SUBPROJECT:-}` cases statement and can be safely removed.
2024-05-02 10:23:35 +01:00
Philip Roche
8fe26586cc fix(Hyperv Desktop): as we are using oem-config we do not need ubiquity-slideshow-ubuntu
As we are only using oem-config, oem-config-slideshow-ubuntu will suffice
2024-05-02 10:21:50 +01:00
Philip Roche
dc2d1318d2 fix(Hyperv Desktop): ubiquity-frontend-gtk is a dependency of the oem-config-gtk package so does not need to be added explicitly 2024-05-02 10:21:50 +01:00
Philip Roche
ff47664d8c feat(Hyperv Desktop): Disable cloud-init for Hyperv Desktop images (LP: #2064280)
For Ubuntu 24.04 and later cloud-init is included in desktop images. This is not applicable for Hyperv images so
we can disable cloud-init. This leaves the cloud-init package installed but disabled so users can still
use it if they want.

This is a documented way to disable cloud-init. See https://cloudinit.readthedocs.io/en/latest/howto/disable_cloud_init.html
2024-05-02 10:21:50 +01:00
Phil Roche
c459e5e5af fix(HyperV desktop): Ensure removed hyperv dependencies are present in HyperV builds (LP: #2064280)
A change in 8fb21808 also removed many of the dependencies that the hyperv images require.
This removal has been restored in this commit by adding them expliciltly in the hyperv hook.
2024-04-30 18:00:14 +01:00
Phil Roche
48aed40194 fix(HyperV desktop): Re-enable ability to build HyperV desktop images (LP: #2064280)
We have not built Hyperv desktop images since Jammy and with the re-introduction of HyperV for Noble we have encountered build issues caused by refactoring and removals of code assumed to be redundant but the HyperV desktop images were actually using these code paths.

In bbedffe6 we split the building of cloud images and non cloud to using an ddisk-image-uefi.binary and disk-image-uefi-non-cloud.binary respectively. In e38264ca there was a change which meant that any attempt to build hyperv images would result in incorrect disk size and incorrect disk label.

This has been fixed by ensuring that the ubuntu:desktop-preinstalled $PROJECT:$SUBPROJECT matches and sets the correct disk size and correct disk label.

A change in 76d79466 changed the logic of how the image size for amd64 images were being set. This overrode the sizes set for the desktop images incorrectly.

This commit ensures that any desktop image being created uses the correct image size.
2024-04-30 18:00:07 +01:00
Łukasz 'sil2100' Zemczak
5e27db4e69 Merge branch 'ubuntu/master' of git+ssh://git.launchpad.net/livecd-rootfs into ubuntu-core-desktop-noble 2024-04-24 10:51:45 +01:00