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