From 7dbbb501b26333f0862a5b9b320507c5ab650e7b Mon Sep 17 00:00:00 2001 From: Olivier Date: Sun, 13 Oct 2024 15:34:41 +0200 Subject: [PATCH] Ubuntu autoinstall.yaml --- autoinstall.yaml | 142 +++++++++++++---------------------------------- 1 file changed, 39 insertions(+), 103 deletions(-) diff --git a/autoinstall.yaml b/autoinstall.yaml index 73f5cb2..0d2adbd 100644 --- a/autoinstall.yaml +++ b/autoinstall.yaml @@ -13,35 +13,30 @@ autoinstall: keyboard: layout: "fr" - variant: "latin" + variant: "latin9" + + ssh: + install-server: true + + # install codecs, which currently means installing the + # ubuntu-restricted-addons package + codecs: + install: true + + # install drivers as suggested by `ubuntu-drivers`. + drivers: + install: true + + # default behaviour + oem: + install: auto # This adds the default ubuntu-desktop packages to the system. # Any desired additional packages may also be listed here. packages: - ubuntu-desktop - - # This adds the default snaps found on a 22.04 Ubuntu Desktop system. - # Any desired additional snaps may also be listed here. - snaps: - - name: firefox - - name: gnome-3-38-2004 - - name: gtk-common-themes - - name: snap-store - - name: snapd-desktop-integration - - # User creation can occur in one of 3 ways: - # 1. Create a user using this `identity` section. - # 2. Create users as documented in cloud-init inside the user-data section, - # which means this single-user identity section may be removed. - # 3. Prompt for user configuration on first boot. Remove this identity - # section and see the "Installation without a default user" section. - identity: - realname: '' - username: ubuntu - # A password hash is needed. `mkpasswd --method=SHA-512` can help. - # mkpasswd can be found in the package 'whois' - password: '$6$f4PIJ90vUAym03vR$whABDyawYCLkP.bsbnF6Zv.twohtxP8aa1p/ClLaNyI2U75NSOj.XE5OqicsXfwgKhSUBaxazuNcB7IHckPw01' - hostname: ubuntu-desktop + - python3-poetry + - git # Subiquity will, by default, configure a partition layout using LVM. # The 'direct' layout method shown here will produce a non-LVM result. @@ -49,6 +44,12 @@ autoinstall: layout: name: direct + # Updates from both the security and updates pockets are installed. + updates: all + + # Reboot après l'installation + shutdown: reboot + # Ubuntu Desktop uses the hwe flavor kernel by default. early-commands: - echo 'linux-generic-hwe-22.04' > /run/kernel-meta-package @@ -72,94 +73,29 @@ autoinstall: printf "network:\n version: 2\n renderer: NetworkManager" > /target/etc/netplan/01-network-manager-all.yaml - # Remove default filesystem and related tools not used with the suggested - # 'direct' storage layout. These may yet be required if different - # partitioning schemes are used. - - >- - curtin in-target -- apt-get remove -y - btrfs-progs cryptsetup* lvm2 xfsprogs - # Remove other packages present by default in Ubuntu Server but not # normally present in Ubuntu Desktop. - - >- - curtin in-target -- apt-get remove -y - ubuntu-server ubuntu-server-minimal - binutils byobu curl dmeventd finalrd gawk - kpartx mdadm ncurses-term needrestart open-iscsi openssh-server - sg3-utils ssh-import-id sssd thin-provisioning-tools vim tmux - sosreport screen open-vm-tools motd-news-config lxd-agent-loader - landscape-common htop git fonts-ubuntu-console ethtool + # - >- + # curtin in-target -- apt-get remove -y + # ubuntu-server ubuntu-server-minimal + # binutils byobu curl dmeventd finalrd gawk + # kpartx mdadm ncurses-term needrestart open-iscsi openssh-server + # sg3-utils ssh-import-id sssd thin-provisioning-tools vim tmux + # sosreport screen open-vm-tools motd-news-config lxd-agent-loader + # landscape-common htop git fonts-ubuntu-console ethtool - # Keep cloud-init, as it performs some of the installation on first boot. - - curtin in-target -- apt-get install -y cloud-init + # # Keep cloud-init, as it performs some of the installation on first boot. + # - curtin in-target -- apt-get install -y cloud-init # Finally, remove things only installed as dependencies of other things # we have already removed. - - curtin in-target -- apt-get autoremove -y - + # - curtin in-target -- apt-get autoremove -y + # A postinstall script may optionally be used for further install # customization. Deploy this postinstall.sh script on the webserver. # - wget -O /target/postinstall.sh http://192.168.0.2/postinstall.sh # - curtin in-target -- bash /postinstall.sh # - rm /target/postinstall.sh - # Additional cloud-init configuration affecting the target - # system can be supplied underneath a user-data section inside of - # autoinstall. - # user-data: - # … - - -# autoinstall: -# version: 1 -# interactive-sections: -# - network -# - proxy -# - identity - -# # En français -# locale: "fr_FR.UTF-8" -# timezone: "Europe/Paris" - -# refresh-installer: -# update: true - -# keyboard: -# layout: "fr" -# variant: "latin" - -# storage: -# layout: -# name: lvm -# sizing-policy: all - -# ssh: -# install-server: true - -# # install codecs, which currently means installing the -# # ubuntu-restricted-addons package -# codecs: -# install: true - -# # install drivers as suggested by `ubuntu-drivers`. -# drivers: -# install: true - -# # default behaviour -# oem: -# install: auto - -# packages: -# - python3-poetry -# - git - -# # Updates from both the security and updates pockets are installed. -# updates: all - -# # Reboot après l'installation -# shutdown: reboot - -# # Commandes passées dans le système installé -# late-commands: -# - curtin in-target -- git clone https://git.libretic.fr/libretic/libreticmenu.git /opt/ -# - curtin in-target -- /opt/libreticmenu/libreticmenu.sh --firstboot + - curtin in-target -- git clone https://git.libretic.fr/libretic/libreticmenu.git /opt/ + - curtin in-target -- /opt/libreticmenu/libreticmenu.sh --firstboot