From patchwork Tue Oct 8 13:57:28 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ben Cownley X-Patchwork-Id: 50049 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1A42ECEF178 for ; Tue, 8 Oct 2024 13:57:52 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web11.9781.1728395870590918084 for ; Tue, 08 Oct 2024 06:57:50 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ben.cownley@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3806EDA7; Tue, 8 Oct 2024 06:58:19 -0700 (PDT) Received: from e125927.manchester.arm.com (e125927.arm.com [10.32.102.162]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 84F4C3F58B; Tue, 8 Oct 2024 06:57:48 -0700 (PDT) From: Ben To: meta-arm@lists.yoctoproject.org Cc: Ben Cownley Subject: [PATCH 1/3] arm-systemready/linux-distros: Implement unattended openSUSE Date: Tue, 8 Oct 2024 14:57:28 +0100 Message-Id: <20241008135730.58464-1-Ben.Cownley@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 08 Oct 2024 13:57:52 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/6183 Implement unattended installation for openSUSE Signed-off-by: Ben Cownley --- .../arm-systemready-linux-distros-opensuse.bb | 13 + .../openSUSE/autoinst.xml | 935 ++++++++++++++++++ 2 files changed, 948 insertions(+) create mode 100755 meta-arm-systemready/recipes-test/arm-systemready-linux-distros/unattended-boot-conf/openSUSE/autoinst.xml diff --git a/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/arm-systemready-linux-distros-opensuse.bb b/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/arm-systemready-linux-distros-opensuse.bb index 06135d15..7d02a258 100644 --- a/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/arm-systemready-linux-distros-opensuse.bb +++ b/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/arm-systemready-linux-distros-opensuse.bb @@ -72,3 +72,16 @@ ISO_TYPE = "DVD" BUILD_NO = "491.1" SRC_URI = "https://download.opensuse.org/distribution/leap/${PV}/iso/openSUSE-Leap-${PV}-${ISO_TYPE}-aarch64-Build${BUILD_NO}-Media.iso;unpack=0;downloadfilename=${ISO_IMAGE_NAME}.iso" SRC_URI[sha256sum] = "456cc4f99b044429d8a89bd302c06e9e382d6ac4dc590139a7096ebb54f5357b" + +ISO_LABEL = "${@oe.utils.vartrue("DISTRO_UNATTENDED_INST_TESTS", "OEMDRV", "", d)}" +BOOT_CATALOG = "${@oe.utils.vartrue("DISTRO_UNATTENDED_INST_TESTS", "boot.catalog", "", d)}" +BOOT_IMAGE = "${@oe.utils.vartrue("DISTRO_UNATTENDED_INST_TESTS", "EFI/BOOT/bootaa64.efi", "", d)}" +EFI_IMAGE = "${@oe.utils.vartrue("DISTRO_UNATTENDED_INST_TESTS", "boot/aarch64/efi", "", d)}" + +modifyiso() { + UNATTENDED_CONF_DIR="${THISDIR}/unattended-boot-conf/openSUSE" + + #create installation configuration files, remove grub timeout, setup network + cp "${UNATTENDED_CONF_DIR}/autoinst.xml" ${EXTRACTED_ISO_TEMP_DIR} + sed -i 's/timeout=60/timeout=0/g' "${EXTRACTED_ISO_TEMP_DIR}/EFI/BOOT/grub.cfg" +} \ No newline at end of file diff --git a/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/unattended-boot-conf/openSUSE/autoinst.xml b/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/unattended-boot-conf/openSUSE/autoinst.xml new file mode 100755 index 00000000..8da6e1cb --- /dev/null +++ b/meta-arm-systemready/recipes-test/arm-systemready-linux-distros/unattended-boot-conf/openSUSE/autoinst.xml @@ -0,0 +1,935 @@ + + + + + + splash=silent preempt=full mitigations=auto quiet security=apparmor + auto + auto + false + true + true + gfxterm + 8 + true + + grub2-efi + + + public + true + off + true + + + Unsolicited incoming network packets are rejected. Incoming packets that are related to outgoing network connections are accepted. Outgoing network connections are allowed. + + false + block + + + + Block + %%REJECT%% + + + For computers in your demilitarized zone that are publicly-accessible with limited access to your internal network. Only selected incoming connections are accepted. + + false + dmz + + + + ssh + + DMZ + default + + + All network connections are accepted. + + docker0 + + false + docker + + + + docker + ACCEPT + + + Unsolicited incoming network packets are dropped. Incoming packets that are related to outgoing network connections are accepted. Outgoing network connections are allowed. + + false + drop + + + + Drop + DROP + + + For use on external networks. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted. + + true + external + + + + ssh + + External + default + + + For use in home areas. You mostly trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted. + + false + home + + + + dhcpv6-client + mdns + samba-client + ssh + + Home + default + + + For use on internal networks. You mostly trust the other computers on the networks to not harm your computer. Only selected incoming connections are accepted. + + false + internal + + + + dhcpv6-client + mdns + samba-client + ssh + + Internal + default + + + For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted. + + eth0 + + false + public + + + + dhcpv6-client + ssh + + Public + default + + + All network connections are accepted. + + false + trusted + + + + Trusted + ACCEPT + + + For use in work areas. You mostly trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted. + + false + work + + + + dhcpv6-client + ssh + + Work + default + + + + + + false + + + + + 100 + users + + + + 499 + messagebus + + + + 1 + bin + daemon + + + 488 + input + + + + 495 + kmem + + + + 493 + utmp + + + + 62 + man + + + + 477 + polkitd + + + + 479 + systemd-timesync + + + + 2 + daemon + + + + 480 + systemd-network + + + + 71 + ntadmin + + + + 490 + dialout + + + + 59 + maildrop + postfix + + + 478 + nscd + + + + 51 + postfix + + + + 485 + tape + + + + 487 + render + + + + 476 + sshd + + + + 491 + cdrom + + + + 486 + sgx + + + + 0 + root + + + + 489 + disk + + + + 15 + shadow + + + + 484 + video + + + + 496 + wheel + + + + 483 + audit + + + + 498 + mail + postfix + + + 5 + tty + + + + 65533 + nogroup + + + + 65534 + nobody + + + + 497 + lp + + + + 482 + chrony + + + + 492 + audio + + + + 494 + lock + + + + 36 + kvm + + + + 42 + trusted + + + + 481 + systemd-journal + + + + + + + 127.0.0.1 + + localhost + + + + ::1 + + localhost ipv6-localhost ipv6-loopback + + + + fe00::0 + + ipv6-localnet + + + + ff00::0 + + ipv6-mcastprefix + + + + ff02::1 + + ipv6-allnodes + + + + ff02::2 + + ipv6-allrouters + + + + ff02::3 + + ipv6-allhosts + + + + + + en_GB + en_GB + + + + + AUTO + + + true + localhost + auto + + + + dhcp + eth0 + auto + public + + + true + true + false + + false + false + + + + auto + + systemd + + + + /dev/vda + gpt + false + + + true + vfat + true + utf8 + /boot/efi + uuid + 259 + 1 + false + 134217728 + + + true + true + btrfs + true + / + uuid + 131 + 2 + false + false + 6307167744 + + + false + var + + + true + usr/local + + + true + tmp + + + true + srv + + + true + root + + + true + opt + + + true + home + + + true + boot/grub2/arm64-efi + + + @ + + + CT_DISK + all + + + + false + + + multi-user + + + YaST2-Firstboot + YaST2-Second-Stage + apparmor + auditd + klog + chronyd + cron + cups + firewalld + wickedd-auto4 + wickedd-dhcp4 + wickedd-dhcp6 + wickedd-nanny + irqbalance + issue-generator + kbdsettings + wicked + nscd + postfix + purge-kernels + rsyslog + smartd + sshd + systemd-pstore + systemd-remount-fs + + + + + true + + + wicked + shim + os-prober + openssh + openSUSE-release + mokutil + kexec-tools + grub2-arm64-efi + glibc + firewalld + e2fsprogs + dosfstools + chrony + btrfsprogs + autoyast2 + + + apparmor + base + documentation + enhanced_base + minimal_base + sw_management + yast2_basis + + + Leap + + + + false + false + + + + 100 + /home + -1 + /bin/bash + 022 + + + + + true + user + 100 + /home/user + false + + + + + 99999 + 0 + 7 + + /bin/bash + 1000 + $6$WV8CB/c6j0zhAi5S$4euhbt4alH7WNfaatS9IJgPiiKDJ48d5Ru1zCZCA0N9GiyOPuefN2PAUWlyYeTgqAInpyvPh1frdp4fFVjvEn0 + user + + + true + User for nscd + 478 + /run/nscd + false + + + + + + + + + /sbin/nologin + 478 + ! + nscd + + + true + systemd Network Management + 480 + / + false + + + + + + + + + /usr/sbin/nologin + 480 + !* + systemd-network + + + true + Daemon + 2 + /sbin + false + + + + + + + + + /usr/sbin/nologin + 2 + ! + daemon + + + true + systemd Time Synchronization + 479 + / + false + + + + + + + + + /usr/sbin/nologin + 479 + !* + systemd-timesync + + + true + user for rpcbind + 65534 + /var/lib/empty + false + + + + + + + + + /sbin/nologin + 475 + ! + rpc + + + true + SSH daemon + 476 + /var/lib/sshd + false + + + + + + + + + /usr/sbin/nologin + 476 + ! + sshd + + + true + Postfix Daemon + 51 + /var/spool/postfix + false + + + + + + + + + /usr/sbin/nologin + 51 + ! + postfix + + + true + NFS statd daemon + 65533 + /var/lib/nfs + false + + + + + + + + + /sbin/nologin + 474 + ! + statd + + + true + bin + 1 + /bin + false + + + + + + + + + /usr/sbin/nologin + 1 + ! + bin + + + + true + root + 0 + /root + false + + + + + + + + + /bin/bash + 0 + $6$zAe5W7gw/kja9aKy$mM.BWtNyjalXrDNig4CUfN3bgfmehUIs8.zvBwWn1XroK104G.rY3lyup3OH8TujieUmgO4J74Df.LktV4A1K1 + root + + + true + User for D-Bus + 499 + /run/dbus + false + + + + + + + + + /usr/bin/false + 499 + ! + messagebus + + + true + Manual pages viewer + 62 + /var/lib/empty + false + + + + + + + + + /usr/sbin/nologin + 13 + ! + man + + + true + Printing daemon + 497 + /var/spool/lpd + false + + + + + + + + + /usr/sbin/nologin + 497 + ! + lp + + + true + User for polkitd + 477 + /var/lib/polkit + false + + + + + + + + + /usr/sbin/nologin + 477 + ! + polkitd + + + true + Chrony Daemon + 482 + /var/lib/chrony + false + + + + + + + + + /usr/sbin/nologin + 496 + ! + chrony + + + true + nobody + 65534 + /var/lib/nobody + false + + + + + + + + + /bin/bash + 65534 + ! + nobody + + + true + Mailer daemon + 498 + /var/spool/clientmqueue + false + + + + + + + + + /usr/sbin/nologin + 498 + ! + mail + + +