From 196d92554a9d104c41f59127efe93dd498dc6f8c1aacbec0e1a2963eea5c58ba Mon Sep 17 00:00:00 2001 From: Lubos Kocman Date: Wed, 3 Jul 2024 15:19:07 +0200 Subject: [PATCH] drop agama-live in favor of agama-installer-openSUSE --- agama-live/README.md | 35 ------ agama-live/_constraints | 7 -- agama-live/_multibuild | 4 - agama-live/agama-live.changes | 183 -------------------------------- agama-live/agama-live.kiwi | 138 ------------------------ agama-live/config-cdroot.tar.xz | Bin 2588 -> 0 bytes agama-live/config.sh | 172 ------------------------------ agama-live/fix_bootconfig | 89 ---------------- agama-live/images.sh | 19 ---- agama-live/root.tar.xz | Bin 10212 -> 0 bytes 10 files changed, 647 deletions(-) delete mode 100644 agama-live/README.md delete mode 100644 agama-live/_constraints delete mode 100644 agama-live/_multibuild delete mode 100644 agama-live/agama-live.changes delete mode 100644 agama-live/agama-live.kiwi delete mode 100644 agama-live/config-cdroot.tar.xz delete mode 100644 agama-live/config.sh delete mode 100644 agama-live/fix_bootconfig delete mode 100644 agama-live/images.sh delete mode 100644 agama-live/root.tar.xz diff --git a/agama-live/README.md b/agama-live/README.md deleted file mode 100644 index 4922bbc..0000000 --- a/agama-live/README.md +++ /dev/null @@ -1,35 +0,0 @@ -# Live ISO - -This directory contains a set of files that are used to build the Agama Live ISO -image. - -## Sources - -The sources are maintained in the [Agama Git -repository](https://github.com/openSUSE/agama/tree/master/live) repository. - -## Building the ISO - -To build the ISO locally run the - -```shell -osc build -M images -``` - -command. See the [_multibuild](_multibuild) file for the list of configured -build flavors. To build for example the openSUSE flavor run this command: - -```shell -osc build -M openSUSE images -``` - -Note: For building an ISO image you need a lot of free space at the `/var` -partition. Make sure there is at least 25GiB free space otherwise the build -might fail. - -## Changes - -Please *do not* change any file in the OBS repository. The files are -automatically uploaded from the [Agama Git -repository](https://github.com/openSUSE/agama/tree/master/live), your manual -changes will be lost at the next update. diff --git a/agama-live/_constraints b/agama-live/_constraints deleted file mode 100644 index 7e25096..0000000 --- a/agama-live/_constraints +++ /dev/null @@ -1,7 +0,0 @@ - - - - 25 - - - diff --git a/agama-live/_multibuild b/agama-live/_multibuild deleted file mode 100644 index ca62bbc..0000000 --- a/agama-live/_multibuild +++ /dev/null @@ -1,4 +0,0 @@ - - openSUSE - - diff --git a/agama-live/agama-live.changes b/agama-live/agama-live.changes deleted file mode 100644 index d971b05..0000000 --- a/agama-live/agama-live.changes +++ /dev/null @@ -1,183 +0,0 @@ -------------------------------------------------------------------- -Fri Jun 14 10:36:52 UTC 2024 - Ladislav Slezák - -- Experimental Agama self-update (gh#openSUSE/agama#1341) - -------------------------------------------------------------------- -Thu Jun 13 16:07:08 UTC 2024 - Ladislav Slezák - -- Added Tumbleweed OSS and Agama Staging repositories to the Live - system itself (gh#openSUSE/agama#1332) - -------------------------------------------------------------------- -Tue Jun 11 21:39:51 UTC 2024 - Imobach Gonzalez Sosa - -- Add the jq package to the image (gh#openSUSE/agama#1314). - -------------------------------------------------------------------- -Thu Jun 6 14:30:19 UTC 2024 - Ladislav Slezák - -- Automatically generate the root password (gh#openSUSE/agama#1292) -- Allow setting the default root password in ISO metadata - (gh#openSUSE/agama#1290) -- Alloe setting teh root password from boot command line or set - it interactively during boot (gh#openSUSE/agama#1288) - -------------------------------------------------------------------- -Wed Jun 5 15:40:43 UTC 2024 - Knut Anderssen - -- Fix the cd.ikr content for booting the s390x iso - (gh#openSUSE/agama#1289). - -------------------------------------------------------------------- -Tue May 21 10:38:39 UTC 2024 - Imobach Gonzalez Sosa - -- Add the procps4 package to the image (gh#openSUSE/agama#1245). - -------------------------------------------------------------------- -Fri May 17 09:52:27 UTC 2024 - Imobach Gonzalez Sosa - -- Version 8 - -------------------------------------------------------------------- -Fri Feb 9 16:16:29 UTC 2024 - Ladislav Slezák - -- Image size reduced: - - Removed translations and locale definitions for unsupported - languages, removed translations for unused tools - - Removed sound card and TV card drivers (not needed for the installer) - - Removed alsa packages - - Removed unused firmware files -- Require 25GB disk space for build (PXE build might fail with - just 20GB) - -------------------------------------------------------------------- -Thu Feb 1 08:27:29 UTC 2024 - Josef Reidinger - -- Improve multipath experience: preload kernel module and set probing - to smart option (bsc#1215598) - -------------------------------------------------------------------- -Thu Dec 21 15:43:06 UTC 2023 - Imobach Gonzalez Sosa - -- Version 7 - -------------------------------------------------------------------- -Mon Dec 4 16:03:08 UTC 2023 - José Iván López González - -- Remove dependencies included by Agama packages (related to - gh#openSUSE/agama#911). - -------------------------------------------------------------------- -Fri Dec 1 14:23:09 UTC 2023 - Imobach Gonzalez Sosa - -- Version 6 - -------------------------------------------------------------------- -Mon Nov 13 18:02:39 UTC 2023 - Josef Reidinger - -- Use by default zram to allow having 2GiB memory requirements - (jsc#PED-7303) - -------------------------------------------------------------------- -Mon Nov 6 08:30:01 UTC 2023 - Marcus Schäfer - -- Fix s390 PXE build by using 'custom' bootloader for s390 target - There is an error inside grub2-zipl-setup which calls zipl that - then complains with "Unable to create temporary device node: No such device or address". - We don't see this issue with zipl in the kiwi integration test from here: - https://build.opensuse.org/project/show/Virtualization:Appliances:Images:Testing_s390:tumbleweed - Thus I don't think it's an issue with kiwi but most probably a conflict - between the zipl setup and the raw btrfs filesystem usage in this case. - Long story short, the zipl issue needs extra inspection and the fix - here is simple because we actually don't need a bootloader to be installed - into the disk image because it is expected to be deployed via a remote - boot infrastructure. Therefore this change disables the bootloader - install for s390 by setting the attribute: bootloader="custom" - -------------------------------------------------------------------- -Tue Oct 24 08:04:07 UTC 2023 - Marcus Schäfer - -- Add new profile ALP-PXE which builds a variant of the agama - installer that is an oem disk image which can be remote deployed - into a ramdisk to boot into the agama installation. The size constraints - are similar to the live-iso size. For more details please refer - to README.pxe - ----------------------------------------------------------------------------- -Mon Oct 23 12:03:55 UTC 2023 - Imobach González Sosa - -- Add adobe-sourcehansans-jp-fonts -- Version 5 - ----------------------------------------------------------------------------- -Thu Oct 19 20:19:11 UTC 2023 - Imobach González Sosa - -- Add libstorage-ng translations - ----------------------------------------------------------------------------- -Wed Sep 27 08:45:26 UTC 2023 - Imobach González Sosa - -- Version 4 - ----------------------------------------------------------------------------- -Tue Sep 26 07:55:34 UTC 2023 - Imobach González Sosa - -- Clean-up zypper logs - ----------------------------------------------------------------------------- -Tue Sep 26 05:28:35 UTC 2023 - Imobach González Sosa - -- Added nvme-cli requested by https://bugzilla.suse.com/show_bug.cgi?id=1215572 - ----------------------------------------------------------------------------- -Wed Aug 30 09:44:04 UTC 2023 - Imobach González Sosa - -- Add microos-tools package and enable proxy setup services. - ----------------------------------------------------------------------------- -Tue Aug 29 09:19:26 UTC 2023 - Imobach González Sosa - -- Enable ppc64le images - ----------------------------------------------------------------------------- -Thu Aug 03 10:23:49 UTC 2023 - Imobach González Sosa - -- Disable building the ALP image for ppc64le - ----------------------------------------------------------------------------- -Wed Aug 02 10:37:21 UTC 2023 - Imobach González Sosa - -- Version 3 - ----------------------------------------------------------------------------- -Tue Aug 01 09:56:42 UTC 2023 - Imobach González Sosa - -- Replace "default" flavor with a new "openSUSE" flavor that only includes - openSUSE-based products. -- Replace ALP-build-key with suse-build-key. - ----------------------------------------------------------------------------- -Mon Jul 31 11:34:26 UTC 2023 - Imobach González Sosa - -- Replace ALP-build-key with suse-build-key - ----------------------------------------------------------------------------- -Tue Jul 25 14:43:39 UTC 2023 - José Iván López González - -- Update filtering - ----------------------------------------------------------------------------- -Wed Jul 05 08:27:33 UTC 2023 - Imobach González Sosa - -- Bump version to match Agama - ----------------------------------------------------------------------------- -Thu Jun 08 14:12:15 UTC 2023 - Josef Reidinger - -- add to live image also dbus services written in rust - ----------------------------------------------------------------------------- -Thu Jun 01 14:05:13 UTC 2023 - Ladislav Slezák - -- osc copypac from project:YaST:Head:Agama package:agama-live revision:13 diff --git a/agama-live/agama-live.kiwi b/agama-live/agama-live.kiwi deleted file mode 100644 index 217ff50..0000000 --- a/agama-live/agama-live.kiwi +++ /dev/null @@ -1,138 +0,0 @@ - - - - - - - YaST Team - yast2-maintainers@suse.de - Agama Live ISO - - - - - - - 8.0.0 - zypper - en_US - us - Europe/Berlin - true - false - bgrt - openSUSE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/agama-live/config-cdroot.tar.xz b/agama-live/config-cdroot.tar.xz deleted file mode 100644 index 93f851aa16d8c691b4abc6635b05d70c007a8ccbe7f91d47553d419056e1e901..0000000000000000000000000000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2588 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 diff --git a/agama-live/config.sh b/agama-live/config.sh deleted file mode 100644 index d83b48b..0000000 --- a/agama-live/config.sh +++ /dev/null @@ -1,172 +0,0 @@ -#! /bin/bash - -set -ex - -# KIWI functions -test -f /.kconfig && . /.kconfig -test -f /.profile && . /.profile - -# greeting -echo "Configure image: [$kiwi_iname]..." - -# setup baseproduct link -suseSetupProduct - -# configure the repositories in the Live system -# import the OBS key for the systemsmanagement OBS project -rpm --import /tmp/systemsmanagement_key.gpg -rm /tmp/systemsmanagement_key.gpg -# import the openSUSE keys -rpm --import /usr/lib/rpm/gnupg/keys/*.asc - -# activate services -systemctl enable sshd.service -systemctl enable NetworkManager.service -systemctl enable avahi-daemon.service -systemctl enable agama.service -systemctl enable agama-web-server.service -systemctl enable agama-auto.service -systemctl enable agama-hostname.service -systemctl enable agama-proxy-setup.service -systemctl enable agama-certificate-issue.path -systemctl enable agama-certificate-wait.service -systemctl enable agama-welcome-issue.service -systemctl enable agama-avahi-issue.service -systemctl enable agama-ssh-issue.service -systemctl enable agama-self-update.service -systemctl enable live-password-cmdline.service -systemctl enable live-password-dialog.service -systemctl enable live-password-iso.service -systemctl enable live-password-random.service -systemctl enable live-password-systemd.service -systemctl enable setup-systemd-proxy-env.path -systemctl enable x11-autologin.service -systemctl enable spice-vdagentd.service -systemctl enable zramswap - -# default target -systemctl set-default graphical.target - -# disable snapshot cleanup -systemctl disable snapper-cleanup.timer -systemctl disable snapper-timeline.timer - -# disable unused services -systemctl disable YaST2-Firstboot.service -systemctl disable YaST2-Second-Stage.service - -### setup dracut for live system -label=${kiwi_install_volid:-$kiwi_iname} -arch=$(uname -m) - -echo "Setting default live root: live:LABEL=$label" -mkdir /etc/cmdline.d -echo "root=live:LABEL=$label" >/etc/cmdline.d/10-liveroot.conf -echo "root_disk=live:LABEL=$label" >>/etc/cmdline.d/10-liveroot.conf -# if there's a default network location, add it here -# echo "root_net=" >> /etc/cmdline.d/10-liveroot.conf -echo 'install_items+=" /etc/cmdline.d/10-liveroot.conf "' >/etc/dracut.conf.d/10-liveroot-file.conf -echo 'add_dracutmodules+=" dracut-menu "' >>/etc/dracut.conf.d/10-liveroot-file.conf - -if [ "${arch}" = "s390x" ];then - # workaround for custom bootloader setting - touch /config.bootoptions -fi - -# replace the @@LIVE_MEDIUM_LABEL@@ with the real Live partition label name from KIWI -sed -i -e "s/@@LIVE_MEDIUM_LABEL@@/$label/g" /usr/bin/live-password - -################################################################################ -# Reducing the used space - -# Clean-up logs -rm /var/log/zypper.log /var/log/zypp/history - -du -h -s /usr/{share,lib}/locale/ - -# Agama expects that the same locales available in the installation system can -# be also used later in the installed system and offers them in the web UI to -# select. But to make the Live ISO smaller it makes sense to delete the locales -# not supported by Agama itself. To solve this problem the list of available -# locales is saved to a file before deleting the locales not supported by Agama. -# Agama then reads this file instead of running the "localectl list-locales" -# command. -mkdir -p /etc/agama.d -# emulate "localectl list-locales" call, it cannot be used here because it -# insists on running systemd as PID 1 :-/ -ls -1 -d /usr/lib/locale/*.utf8 | sed -e "s#/usr/lib/locale/##" -e "s#utf8#UTF-8#" > /etc/agama.d/locales - -# delete translations and unusupported languages (makes ISO about 22MiB smaller) -# build list of ignore options for "ls" with supported languages like "-I cs* -I de* -I es* ..." -readarray -t IGNORE_OPTS < <(ls /usr/share/agama/web_ui/po.*.js.gz | sed -e "s#/usr/share/agama/web_ui/po\.\(.*\)\.js\.gz#-I\n\\1*#") -# additionally keep the en_US translations -ls -1 "${IGNORE_OPTS[@]}" -I en_US /usr/share/locale/ | xargs -I% sh -c "echo 'Removing translations %...' && rm -rf /usr/share/locale/%" - -# delete locale definitions for unsupported languages (explicitly keep the C and en_US locales) -ls -1 "${IGNORE_OPTS[@]}" -I "en_US*" -I "C.*" /usr/lib/locale/ | xargs -I% sh -c "echo 'Removing locale %...' && rm -rf /usr/lib/locale/%" - -# delete unused translations (MO files) -for t in zypper gettext-runtime p11-kit; do - rm /usr/share/locale/*/LC_MESSAGES/$t.mo -done -du -h -s /usr/{share,lib}/locale/ - -# remove documentation -du -h -s /usr/share/doc/packages/ -rm -rf /usr/share/doc/packages/* -# remove man pages -du -h -s /usr/share/man -rm -rf /usr/share/man/* - -## removing drivers and firmware makes the Live ISO about 370MiB smaller -# -# Agama does not use sound, added by icewm dependencies -rpm -e --nodeps alsa alsa-utils alsa-ucm-conf || true - -# driver and firmware cleanup -# Note: openSUSE Tumbleweed Live completely removes firmware for some server -# network cars, because you very likely won't run TW KDE Live on a server. -# But for Agama installer it makes more sense to run on server. So we keep it -# and remove the drivers for sound cards and TV cards instead. Those do not -# make sense on a server. -du -h -s /lib/modules /lib/firmware -# delete sound drivers -rm -rfv /lib/modules/*/kernel/sound -# delete TV cards and radio cards -rm -rfv /lib/modules/*/kernel/drivers/media/ - -# remove the unused firmware (not referenced by kernel drivers) -/tmp/fw_cleanup.rb --delete -# remove the script, not needed anymore -rm /tmp/fw_cleanup.rb -du -h -s /lib/modules /lib/firmware - -################################################################################ -# The rest of the file was copied from the openSUSE Tumbleweed Live ISO -# https://build.opensuse.org/package/view_file/openSUSE:Factory:Live/livecd-tumbleweed-kde/config.sh?expand=1 -# - -# disable the services included by dependencies -for s in purge-kernels; do - systemctl -f disable $s || true -done - -# Only used for OpenCL and X11 acceleration on vmwgfx (?), saves ~50MiB -rpm -e --nodeps Mesa-gallium || true -# Too big and will have to be dropped anyway (unmaintained, known security issues) -rm -rf /usr/lib*/libmfxhw*.so.* /usr/lib*/mfx/ - -# the new, optional nvidia gsp firmware blobs are huge - ~ 70MB -du -h -s /lib/firmware/nvidia -find /lib/firmware/nvidia -name gsp | xargs -r rm -rf -du -h -s /lib/firmware/nvidia -# The gems are unpackaged already, no need to store them twice -du -h -s /usr/lib*/ruby/gems/*/cache/ -rm -rf /usr/lib*/ruby/gems/*/cache/ - -# Not needed, boo#1166406 -rm -f /boot/vmlinux*.[gx]z -rm -f /lib/modules/*/vmlinux*.[gx]z - -# Remove generated files (boo#1098535) -rm -rf /var/cache/zypp/* /var/lib/zypp/AnonymousUniqueId /var/lib/systemd/random-seed diff --git a/agama-live/fix_bootconfig b/agama-live/fix_bootconfig deleted file mode 100644 index 1482824..0000000 --- a/agama-live/fix_bootconfig +++ /dev/null @@ -1,89 +0,0 @@ -#! /bin/bash - -# This script uses the KIWI 'editbootconfig' hook to modify the Live layout -# and ISO generation. -# -# Note that the 'editbootconfig' hook runs before the initrd is generated - -# this is too early for our purposes. So we have to do some gray area -# trickery: -# -# 1. Inject our modification scripts via config-cdroot.tar.xz into the Live tree. -# 2. Inject a 'xorriso' wrapper script into /usr/local/bin to hook into the ISO -# creation directly. -# This script (a) adjusts the boot config, (b) runs xorriso, and (c) makes -# it zIPL bootable on s390x. -# - -# KIWI config -test -f .profile && . .profile - -dst=${1#iso:} - -arch=`uname -m` - -# removing live root setting from command line - it's in /etc/cmdline.d instead -if [ -f $dst/boot/grub2/grub.cfg ] ; then - sed -i -E -e 's/\s+root=\S+//' -e 's/\s+rd.live\.image//' $dst/boot/grub2/grub.cfg -fi - -bootfix=$dst/fix_bootconfig.$arch -if [ -f $bootfix ] ; then - echo "bootconfig script found: \"$bootfix\"" -fi - -if [ $arch = ppc64le ] ; then - mkdir -p $dst/boot/grub2 - cp -r usr/share/grub2/powerpc-ieee1275 $dst/boot/grub2 - mv $dst/boot/grub2/powerpc-ieee1275/grub.elf $dst/boot/grub2 -fi - -cat </usr/local/bin/xorriso -#! /bin/bash - -set -x - -# get ISO file name and ISO volume id from xorriso parameters -for i in "\$@" ; do - if [ -n "\$iso_opt" ] ; then - iso_opt= - export iso="\$i" - continue - fi - if [ -n "\$volid_opt" ] ; then - volid_opt= - export volid="\$i" - continue - fi - if [ "\$i" = "-outdev" ] ; then - iso_opt=1 - continue - fi - if [ "\$i" = "-volid" ] ; then - volid_opt=1 - continue - fi -done - -volid=${kiwi_install_volid:-$kiwi_iname} - -[ -x $bootfix ] && $bootfix $dst -rm -f $dst/fix_bootconfig.* - -case $arch in - s390x) - /usr/bin/xorriso "\$@" -volid "\$volid" -boot_image any bin_path=boot/s390x/cd.ikr -boot_image any boot_info_table=off -boot_image any load_size=512 - err=\$? - [ -x /usr/bin/isozipl ] && isozipl "\$iso" - ;; - ppc64le) - /usr/bin/xorriso "\$@" -volid "\$volid" -boot_image any chrp_boot_part=on - err=\$? - ;; - *) - /usr/bin/xorriso "\$@" -volid "\$volid" -esac - -exit \$err -XXX - -chmod +x /usr/local/bin/xorriso diff --git a/agama-live/images.sh b/agama-live/images.sh deleted file mode 100644 index e5c5c7c..0000000 --- a/agama-live/images.sh +++ /dev/null @@ -1,19 +0,0 @@ -#! /bin/bash - -echo 'add memory size check for livenetroot installation' - -[[ -f /usr/lib/dracut/modules.d/90livenet/livenetroot.sh ]] || exit 1 - -echo 'let memsize=$(($(sed -n "s/MemTotal: *\([[:digit:]]*\).*/\1/p" /proc/meminfo) / 1024))' > /tmp/livenetroot-mod -echo 'let imgsize=$(($(curl -sI "$liveurl" | sed -n "s/Content-Length: *\([[:digit:]]*\).*/\1/p") / (1024 * 1024)))' >> /tmp/livenetroot-mod -echo '' >> /tmp/livenetroot-mod -echo 'if [ $((memsize - imgsize)) -lt 1024 ]; then' >> /tmp/livenetroot-mod -echo " sed -i 'N;/echo \"\$RDSOSREPORT\"/s/echo$/echo\\" >> /tmp/livenetroot-mod -echo ' echo Warning!!!\' >> /tmp/livenetroot-mod -echo ' echo The memory size of your system is too small for this live image.\' >> /tmp/livenetroot-mod -echo ' echo Expect killed processes due to out of memory conditions.\' >> /tmp/livenetroot-mod -echo " echo /' usr/bin/dracut-emergency" >> /tmp/livenetroot-mod -echo ' emergency_shell' >> /tmp/livenetroot-mod -echo 'fi' >> /tmp/livenetroot-mod - -sed -i '/info "fetching $liveurl"$/ r /tmp/livenetroot-mod' /usr/lib/dracut/modules.d/90livenet/livenetroot.sh diff --git a/agama-live/root.tar.xz b/agama-live/root.tar.xz deleted file mode 100644 index d8da63ffce647679a23fb3e1374b6081799adced021eab313408a5f496f57722..0000000000000000000000000000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10212 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 ~DVg4oAa%Mg@YLJLClBY90*vuex1|Ei1 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