Files
ps5-linux-image/distros/ubuntu2604/image.yaml
2026-04-28 20:57:45 +02:00

144 lines
3.5 KiB
YAML

image:
name: ps5-ubuntu2604
distribution: ubuntu
release: resolute
description: Ubuntu Resolute desktop
architecture: x86_64
source:
downloader: debootstrap
url: http://archive.ubuntu.com/ubuntu
variant: minbase
keyserver: keyserver.ubuntu.com
keys:
- 0x790BC7277767219C42C86F933B4FE6ACC0B21F32
- 0xf6ecb3762474eda9d21b7022871920d1991bc93c
packages:
manager: apt
update: true
cleanup: true
repositories:
- name: sources.list
url: |-
deb http://archive.ubuntu.com/ubuntu {{ image.release }} main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu {{ image.release }}-updates main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu {{ image.release }}-security main restricted universe multiverse
architectures:
- amd64
sets:
- packages:
- ubuntu-desktop
- firefox
- openssh-server
- build-essential
- network-manager
- linux-firmware
- initramfs-tools
- kmod
- sudo
- nano
- cloud-guest-utils
- kexec-tools
- fonts-ubuntu
- fonts-liberation
- fonts-dejavu
- fontconfig
- systemd-zram-generator
- git
- flex
- gawk
- bison
- dwarves
- libelf-dev
- libssl-dev
- libncurses-dev
action: install
files:
- path: /etc/hostname
generator: hostname
- path: /etc/hosts
generator: hosts
- path: /etc/machine-id
generator: dump
- path: /etc/NetworkManager/conf.d/dns.conf
generator: copy
source: /tmp/build-staging/nm-dns.conf
- path: /etc/kernel/postinst.d/zz-update-boot
generator: copy
source: /tmp/build-staging/zz-update-boot
mode: "0755"
- path: /etc/fstab
generator: copy
source: /tmp/build-staging/fstab
- path: /usr/local/sbin/grow-rootfs
generator: copy
source: /tmp/build-staging/grow-rootfs
mode: "0755"
- path: /etc/systemd/system/grow-rootfs.service
generator: copy
source: /tmp/build-staging/grow-rootfs.service
- path: /opt/debs/
generator: copy
source: /tmp/build-staging/debs
actions:
- trigger: post-unpack
action: |-
#!/bin/bash
set -eux
# Clear stale apt lists to avoid InRelease split errors after debootstrap
rm -f /var/lib/apt/lists/*InRelease /var/lib/apt/lists/*Release /var/lib/apt/lists/*Packages* || true
# Retry up to 10 times on transient 429/network errors
echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80retry
apt-get update
- trigger: post-update
action: |-
#!/bin/bash
set -eux
passwd -l root
- trigger: post-packages
action: |-
#!/bin/bash
set -eux
fc-cache -f -v
# SSH — password auth only, root login via sudo
sed -i 's/^#*PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
systemctl enable ssh
# zram swap: half of RAM, zstd compressed
printf '[zram0]\nzram-size = ram / 2\ncompression-algorithm = zstd\n' > /etc/systemd/zram-generator.conf
- trigger: post-files
action: |-
#!/bin/bash
set -eux
systemctl enable grow-rootfs.service
systemctl enable systemd-resolved
mkdir -p /boot/efi
# Disable kdump postinst hook — it fails in chroot (can't resolve root device)
rm -f /etc/kernel/postinst.d/kdump-tools
dpkg -i /opt/debs/*.deb
rm -rf /opt/debs
KVER=$(ls -1t /lib/modules | head -1)
update-initramfs -c -k "$KVER"
/etc/kernel/postinst.d/zz-update-boot "$KVER"
mappings:
architecture_map: debian