From 7f2f150fd2b23fd67884b86058a1d493d68fd645 Mon Sep 17 00:00:00 2001 From: Lukas Greve Date: Thu, 26 Mar 2026 14:04:52 +0100 Subject: [PATCH] Automate flattening: convert %ksappend to %include for ksflatten compatibility --- bin/ksflatten-relative | 92 +++++ dishes/desktop-hypervisor-amdcpu.cfg | 307 --------------- dishes/desktop-hypervisor-amdcpu_rawhide.cfg | 270 ------------- .../desktop-hypervisor-intelcpu-intelgpu.cfg | 317 ---------------- ...p-hypervisor-intelcpu-intelgpu_rawhide.cfg | 192 ---------- dishes/desktop-hypervisor-intelcpu.cfg | 307 --------------- .../desktop-hypervisor-intelcpu_rawhide.cfg | 270 ------------- dishes/desktop-hypervisor.cfg | 299 --------------- dishes/desktop-hypervisor_rawhide.cfg | 262 ------------- dishes/desktop.cfg | 188 ---------- ...op_43_devel.cfg => install_desktop_43.cfg} | 29 +- dishes/install_desktop_43_encrypted.cfg | 141 +++++++ dishes/install_desktop_43_encrypted_ga.cfg | 141 +++++++ dishes/install_desktop_43_encrypted_hw.cfg | 141 +++++++ dishes/install_desktop_43_encrypted_hw_ga.cfg | 141 +++++++ dishes/install_desktop_43_ga.cfg | 138 +++++++ dishes/install_desktop_43_hw.cfg | 138 +++++++ dishes/install_desktop_43_hw_ga.cfg | 138 +++++++ ...top_43.cfg => install_desktop_rawhide.cfg} | 16 +- ... => install_desktop_rawhide_encrypted.cfg} | 32 +- ... install_desktop_rawhide_encrypted_ga.cfg} | 32 +- ... install_desktop_rawhide_encrypted_hw.cfg} | 32 +- ...nstall_desktop_rawhide_encrypted_hw_ga.cfg | 140 +++++++ dishes/install_desktop_rawhide_ga.cfg | 137 +++++++ dishes/install_desktop_rawhide_hw.cfg | 137 +++++++ dishes/install_desktop_rawhide_hw_ga.cfg | 137 +++++++ ...stall_hypervisor-desktop_amdcpu_43_ga.cfg} | 99 +++-- ...tall_hypervisor-desktop_intelcpu_43_ga.cfg | 198 ++++++++++ dishes/install_hypervisor_amdcpu_43_hw.cfg | 106 ++++++ ... => install_hypervisor_intelcpu_43_hw.cfg} | 100 +---- ..._devel_43.cfg => install_server_43_ga.cfg} | 21 +- ...hide.cfg => install_server_rawhide_ga.cfg} | 21 +- dishes/live-desktop-hypervisor.cfg | 355 ------------------ dishes/live-desktop-hypervisor_rawhide.cfg | 318 ---------------- dishes/live-desktop.cfg | 252 ------------- dishes/live-desktop_rawhide.cfg | 215 ----------- dishes/live-server-hypervisor.cfg | 217 ----------- ...ver_rawhide.cfg => live_desktop_43_hw.cfg} | 56 +-- ...{live-server.cfg => live_server_43_hw.cfg} | 56 +-- dishes/virtual-desktop_labwc_43.cfg | 71 ---- dishes/virtual-server_43.cfg | 65 ---- dishes/virtual-server_rawhide.cfg | 64 ---- fragments/bootloader/grub.ks | 2 +- recipe-generator/Makefile | 20 +- .../generate_recipe.cpython-314.pyc | Bin 37372 -> 41809 bytes recipe-generator/generate_recipe.py | 100 +++-- recipes/install_desktop_43.cfg | 30 +- recipes/install_desktop_43_encrypted.cfg | 32 +- recipes/install_desktop_43_encrypted_ga.cfg | 32 +- recipes/install_desktop_43_encrypted_hw.cfg | 32 +- .../install_desktop_43_encrypted_hw_ga.cfg | 32 +- recipes/install_desktop_43_ga.cfg | 30 +- recipes/install_desktop_43_hw.cfg | 30 +- recipes/install_desktop_43_hw_ga.cfg | 30 +- recipes/install_desktop_rawhide.cfg | 30 +- recipes/install_desktop_rawhide_encrypted.cfg | 32 +- .../install_desktop_rawhide_encrypted_ga.cfg | 32 +- .../install_desktop_rawhide_encrypted_hw.cfg | 32 +- ...nstall_desktop_rawhide_encrypted_hw_ga.cfg | 32 +- recipes/install_desktop_rawhide_ga.cfg | 30 +- recipes/install_desktop_rawhide_hw.cfg | 30 +- recipes/install_desktop_rawhide_hw_ga.cfg | 30 +- ...nstall_hypervisor-desktop_amdcpu_43_ga.cfg | 34 +- ...tall_hypervisor-desktop_intelcpu_43_ga.cfg | 34 +- recipes/install_hypervisor_amdcpu_43_hw.cfg | 30 +- recipes/install_hypervisor_intelcpu_43_hw.cfg | 30 +- recipes/install_server_43_ga.cfg | 24 +- recipes/install_server_rawhide_ga.cfg | 24 +- recipes/live_desktop_43_hw.cfg | 20 +- recipes/live_server_43_hw.cfg | 20 +- ...ipe_generator.cpython-314-pytest-8.4.2.pyc | Bin 42523 -> 42509 bytes .../desktop-hypervisor-intelcpu-rawhide.cfg | 30 +- .../desktop-hypervisor-intelgpu-rawhide.cfg | 30 +- .../desktop-hypervisor_rawhide.cfg | 30 +- .../expected_recipes/live-desktop_rawhide.cfg | 28 +- .../expected_recipes/live-server_rawhide.cfg | 22 +- .../expected_recipes/virtual-desktop_43.cfg | 22 +- .../virtual-server_rawhide.cfg | 22 +- ...t_integration.cpython-314-pytest-8.4.2.pyc | Bin 14827 -> 14825 bytes tests/integration/test_integration.py | 2 +- tests/test_recipe_generator.py | 34 +- 81 files changed, 2682 insertions(+), 4760 deletions(-) create mode 100755 bin/ksflatten-relative delete mode 100644 dishes/desktop-hypervisor-amdcpu.cfg delete mode 100644 dishes/desktop-hypervisor-amdcpu_rawhide.cfg delete mode 100644 dishes/desktop-hypervisor-intelcpu-intelgpu.cfg delete mode 100644 dishes/desktop-hypervisor-intelcpu-intelgpu_rawhide.cfg delete mode 100644 dishes/desktop-hypervisor-intelcpu.cfg delete mode 100644 dishes/desktop-hypervisor-intelcpu_rawhide.cfg delete mode 100644 dishes/desktop-hypervisor.cfg delete mode 100644 dishes/desktop-hypervisor_rawhide.cfg delete mode 100644 dishes/desktop.cfg rename dishes/{virtual-desktop_43_devel.cfg => install_desktop_43.cfg} (84%) create mode 100644 dishes/install_desktop_43_encrypted.cfg create mode 100644 dishes/install_desktop_43_encrypted_ga.cfg create mode 100644 dishes/install_desktop_43_encrypted_hw.cfg create mode 100644 dishes/install_desktop_43_encrypted_hw_ga.cfg create mode 100644 dishes/install_desktop_43_ga.cfg create mode 100644 dishes/install_desktop_43_hw.cfg create mode 100644 dishes/install_desktop_43_hw_ga.cfg rename dishes/{virtual-desktop_43.cfg => install_desktop_rawhide.cfg} (90%) rename dishes/{virtual-desktop_devel_rawhide.cfg => install_desktop_rawhide_encrypted.cfg} (83%) rename dishes/{virtual-desktop_rawhide.cfg => install_desktop_rawhide_encrypted_ga.cfg} (81%) rename dishes/{virtual-desktop_rawhide-encrypted.cfg => install_desktop_rawhide_encrypted_hw.cfg} (81%) create mode 100644 dishes/install_desktop_rawhide_encrypted_hw_ga.cfg create mode 100644 dishes/install_desktop_rawhide_ga.cfg create mode 100644 dishes/install_desktop_rawhide_hw.cfg create mode 100644 dishes/install_desktop_rawhide_hw_ga.cfg rename dishes/{desktop_rawhide.cfg => install_hypervisor-desktop_amdcpu_43_ga.cfg} (62%) create mode 100644 dishes/install_hypervisor-desktop_intelcpu_43_ga.cfg create mode 100644 dishes/install_hypervisor_amdcpu_43_hw.cfg rename dishes/{live-server-hypervisor_rawhide.cfg => install_hypervisor_intelcpu_43_hw.cfg} (54%) rename dishes/{virtual-server_devel_43.cfg => install_server_43_ga.cfg} (78%) rename dishes/{virtual-server_devel_rawhide.cfg => install_server_rawhide_ga.cfg} (76%) delete mode 100644 dishes/live-desktop-hypervisor.cfg delete mode 100644 dishes/live-desktop-hypervisor_rawhide.cfg delete mode 100644 dishes/live-desktop.cfg delete mode 100644 dishes/live-desktop_rawhide.cfg delete mode 100644 dishes/live-server-hypervisor.cfg rename dishes/{live-server_rawhide.cfg => live_desktop_43_hw.cfg} (64%) rename dishes/{live-server.cfg => live_server_43_hw.cfg} (64%) delete mode 100644 dishes/virtual-desktop_labwc_43.cfg delete mode 100644 dishes/virtual-server_43.cfg delete mode 100644 dishes/virtual-server_rawhide.cfg diff --git a/bin/ksflatten-relative b/bin/ksflatten-relative new file mode 100755 index 0000000..6775755 --- /dev/null +++ b/bin/ksflatten-relative @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 +""" +Flatten kickstart recipes with relative %include paths. +Converts %include fragments/... to %include ../fragments/... relative to recipes/ location. +""" + +import os +import sys +import subprocess +import tempfile + + +def flatten_recipe(recipe_path, output_path): + """Flatten a recipe file, converting relative paths.""" + project_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + + # Read the recipe + with open(recipe_path, 'r') as f: + content = f.read() + + # Convert %include paths to relative (from recipes/ perspective) + lines = [] + for line in content.split('\n'): + if line.startswith('%include '): + # Get the fragment path from %include path + parts = line.split(None, 1) + if len(parts) >= 2: + fragment_path = parts[1] + # Make it relative to recipes/ + if fragment_path.startswith('fragments/'): + # Keep as relative path - it's relative to the recipe file's location + # recipes/ contains recipes, fragments/ is at project root level + # So from recipes/, fragments/ is ../fragments/ + relative_path = '../' + fragment_path + lines.append('%include ' + relative_path) + else: + lines.append(line) + else: + lines.append(line) + else: + lines.append(line) + + # Write to temp file in recipes directory + temp_fd, temp_path = tempfile.mkstemp(suffix='.ks', dir=os.path.dirname(recipe_path)) + + try: + os.write(temp_fd, '\n'.join(lines).encode('utf-8')) + os.close(temp_fd) + + # Call ksflatten + cmd = ['ksflatten', '-c', temp_path, '-o', output_path] + result = subprocess.run(cmd, capture_output=True, text=True) + + if result.returncode != 0: + print(f"Error flattening {os.path.basename(recipe_path)}:", file=sys.stderr) + print(result.stderr, file=sys.stderr) + return False + return True + finally: + os.unlink(temp_path) + + +def main(): + if len(sys.argv) < 3: + print("Usage: ksflatten-relative RECIPE_DIR DISH_DIR", file=sys.stderr) + print("Example: ksflatten-relative recipes dishes", file=sys.stderr) + sys.exit(1) + + recipe_dir = sys.argv[1] + dish_dir = sys.argv[2] + + if not os.path.isdir(recipe_dir): + print(f"Error: {recipe_dir} is not a directory", file=sys.stderr) + sys.exit(1) + + os.makedirs(dish_dir, exist_ok=True) + + recipes = [f for f in os.listdir(recipe_dir) if f.endswith('.cfg')] + + for recipe_name in sorted(recipes): + recipe_path = os.path.join(recipe_dir, recipe_name) + dish_path = os.path.join(dish_dir, recipe_name) + + print(f" Processing: {recipe_name}") + if not flatten_recipe(recipe_path, dish_path): + sys.exit(1) + + print("✓ All recipes flattened to dishes") + + +if __name__ == '__main__': + main() diff --git a/dishes/desktop-hypervisor-amdcpu.cfg b/dishes/desktop-hypervisor-amdcpu.cfg deleted file mode 100644 index 24e3583..0000000 --- a/dishes/desktop-hypervisor-amdcpu.cfg +++ /dev/null @@ -1,307 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-amdcpu.log - -sed -i 's/\(quiet\)/\1 iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. - -echo "options kvm_amd nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@critical-path-gnome -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -libertas-firmware -libifp -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -liquidio-firmware -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -qemu-kvm -radeontop -realtek-firmware -tiwilink-firmware -usbutils -virt-install -virt-manager -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/desktop-hypervisor-amdcpu_rawhide.cfg b/dishes/desktop-hypervisor-amdcpu_rawhide.cfg deleted file mode 100644 index 2b30ba8..0000000 --- a/dishes/desktop-hypervisor-amdcpu_rawhide.cfg +++ /dev/null @@ -1,270 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --enable -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-amdcpu.log - -sed -i 's/\(quiet\)/\1 iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. - -echo "options kvm_amd nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@hardware-support -bash-color-prompt -curl -dconf -dejavu-sans-mono-fonts -fedora-remix-logos -firefox -gdm -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-control-center -gnome-initial-setup -gnome-session-wayland-session -gnome-shell -gnome-terminal -gvfs-fuse -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -mozilla-ublock-origin.noarch -nano -nautilus -pciutils -pipewire-alsa -pipewire-jack-audio-connection-kit -pipewire-pulseaudio -qemu-kvm -usbutils -virt-install -virt-manager -wget - -%end diff --git a/dishes/desktop-hypervisor-intelcpu-intelgpu.cfg b/dishes/desktop-hypervisor-intelcpu-intelgpu.cfg deleted file mode 100644 index 4094d9f..0000000 --- a/dishes/desktop-hypervisor-intelcpu-intelgpu.cfg +++ /dev/null @@ -1,317 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-intelcpu.log - -sed -i 's/\(quiet\)/\1 intel_iommu=on iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. - -echo "options kvm_intel nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization on Intel CPUs - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-intelgpu.log - -sed -i 's/\(vfio-pci\)/\1 i915.enable_gvt=1/i' /mnt/sysimage/etc/default/grub # Load kernel modules in grub. - -# Load extra kernel modules to enable vfio-mdev on selected hardware -echo "kvmgt" > /mnt/sysimage/etc/modules-load.d/kvmgt.conf # Load specific kernel modules kvmgt and vfio-mdev, for Intel (tm) GVT-g and Nvidia (tm) -echo "vfio-mdev" > /mnt/sysimage/etc/modules-load.d/vfio-mdev.conf # Load specific kernel modules kvmgt and vfio-mdev, for Intel (tm) GVT-g and Nvidia (tm) - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@critical-path-gnome -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -libertas-firmware -libifp -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -liquidio-firmware -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -qemu-kvm -radeontop -realtek-firmware -tiwilink-firmware -usbutils -virt-install -virt-manager -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/desktop-hypervisor-intelcpu-intelgpu_rawhide.cfg b/dishes/desktop-hypervisor-intelcpu-intelgpu_rawhide.cfg deleted file mode 100644 index 785cc71..0000000 --- a/dishes/desktop-hypervisor-intelcpu-intelgpu_rawhide.cfg +++ /dev/null @@ -1,192 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --enable -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-intelcpu.log - -sed -i 's/\(quiet\)/\1 intel_iommu=on iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. - -echo "options kvm_intel nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization on Intel CPUs - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-intelgpu.log - -sed -i 's/\(vfio-pci\)/\1 i915.enable_gvt=1/i' /mnt/sysimage/etc/default/grub # Load kernel modules in grub. - -# Load extra kernel modules to enable vfio-mdev on selected hardware -echo "kvmgt" > /mnt/sysimage/etc/modules-load.d/kvmgt.conf # Load specific kernel modules kvmgt and vfio-mdev, for Intel (tm) GVT-g and Nvidia (tm) -echo "vfio-mdev" > /mnt/sysimage/etc/modules-load.d/vfio-mdev.conf # Load specific kernel modules kvmgt and vfio-mdev, for Intel (tm) GVT-g and Nvidia (tm) - -%end - -%packages --exclude-weakdeps -@core -@hardware-support -curl -fedora-remix-logos -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-initial-setup -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -nano -pciutils -qemu-kvm -usbutils -virt-install -virt-manager -wget - -%end diff --git a/dishes/desktop-hypervisor-intelcpu.cfg b/dishes/desktop-hypervisor-intelcpu.cfg deleted file mode 100644 index fbcb6ab..0000000 --- a/dishes/desktop-hypervisor-intelcpu.cfg +++ /dev/null @@ -1,307 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-intelcpu.log - -sed -i 's/\(quiet\)/\1 intel_iommu=on iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. - -echo "options kvm_intel nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization on Intel CPUs - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@critical-path-gnome -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -libertas-firmware -libifp -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -liquidio-firmware -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -qemu-kvm -radeontop -realtek-firmware -tiwilink-firmware -usbutils -virt-install -virt-manager -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/desktop-hypervisor-intelcpu_rawhide.cfg b/dishes/desktop-hypervisor-intelcpu_rawhide.cfg deleted file mode 100644 index 45163d7..0000000 --- a/dishes/desktop-hypervisor-intelcpu_rawhide.cfg +++ /dev/null @@ -1,270 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --enable -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor-intelcpu.log - -sed -i 's/\(quiet\)/\1 intel_iommu=on iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. - -echo "options kvm_intel nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization on Intel CPUs - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@hardware-support -bash-color-prompt -curl -dconf -dejavu-sans-mono-fonts -fedora-remix-logos -firefox -gdm -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-control-center -gnome-initial-setup -gnome-session-wayland-session -gnome-shell -gnome-terminal -gvfs-fuse -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -mozilla-ublock-origin.noarch -nano -nautilus -pciutils -pipewire-alsa -pipewire-jack-audio-connection-kit -pipewire-pulseaudio -qemu-kvm -usbutils -virt-install -virt-manager -wget - -%end diff --git a/dishes/desktop-hypervisor.cfg b/dishes/desktop-hypervisor.cfg deleted file mode 100644 index 76b4653..0000000 --- a/dishes/desktop-hypervisor.cfg +++ /dev/null @@ -1,299 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@critical-path-gnome -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -libertas-firmware -libifp -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -liquidio-firmware -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -qemu-kvm -radeontop -realtek-firmware -tiwilink-firmware -usbutils -virt-install -virt-manager -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/desktop-hypervisor_rawhide.cfg b/dishes/desktop-hypervisor_rawhide.cfg deleted file mode 100644 index 3f54bbc..0000000 --- a/dishes/desktop-hypervisor_rawhide.cfg +++ /dev/null @@ -1,262 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --enable -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@hardware-support -bash-color-prompt -curl -dconf -dejavu-sans-mono-fonts -fedora-remix-logos -firefox -gdm -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-control-center -gnome-initial-setup -gnome-session-wayland-session -gnome-shell -gnome-terminal -gvfs-fuse -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -mozilla-ublock-origin.noarch -nano -nautilus -pciutils -pipewire-alsa -pipewire-jack-audio-connection-kit -pipewire-pulseaudio -qemu-kvm -usbutils -virt-install -virt-manager -wget - -%end diff --git a/dishes/desktop.cfg b/dishes/desktop.cfg deleted file mode 100644 index e294928..0000000 --- a/dishes/desktop.cfg +++ /dev/null @@ -1,188 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%packages -@base-graphical -@core -@critical-path-gnome -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -libertas-firmware -libifp -libusb -liquidio-firmware -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -radeontop -realtek-firmware -tiwilink-firmware -usbutils -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/virtual-desktop_43_devel.cfg b/dishes/install_desktop_43.cfg similarity index 84% rename from dishes/virtual-desktop_43_devel.cfg rename to dishes/install_desktop_43.cfg index 1ba9029..dbec6c6 100644 --- a/dishes/virtual-desktop_43_devel.cfg +++ b/dishes/install_desktop_43.cfg @@ -1,9 +1,9 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text # Firewall configuration -firewall --enabled --service=ssh +firewall --enabled # Run the Setup Agent on first boot firstboot --reconfig # Keyboard layouts @@ -16,10 +16,10 @@ network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate shutdown repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 -# Root password -rootpw --plaintext --allow-ssh 1234 +#Root password +rootpw --lock # SELinux configuration -selinux --disabled +selinux --enforcing # System services services --enabled="NetworkManager,systemd-resolved" # System timezone @@ -35,16 +35,11 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF [org.gnome.desktop.media-handling] @@ -56,7 +51,7 @@ cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.overr [org.gnome.Terminal.Legacy.Profile] font='DejaVu Sans Mono 12' use-system-font=false -audible-bell=false +auditable-bell=false EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF @@ -77,7 +72,7 @@ EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF [org.gnome.desktop.privacy] remove-old-temp-files=true -remember-recent-files=false +remember-recent-file=false remember-app-usage=false disable-camera=true disable-microphone=true @@ -137,8 +132,6 @@ pciutils pipewire-alsa pipewire-jack-audio-connection-kit pipewire-pulseaudio -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/install_desktop_43_encrypted.cfg b/dishes/install_desktop_43_encrypted.cfg new file mode 100644 index 0000000..c1c880b --- /dev/null +++ b/dishes/install_desktop_43_encrypted.cfg @@ -0,0 +1,141 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_43_encrypted_ga.cfg b/dishes/install_desktop_43_encrypted_ga.cfg new file mode 100644 index 0000000..c1c880b --- /dev/null +++ b/dishes/install_desktop_43_encrypted_ga.cfg @@ -0,0 +1,141 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_43_encrypted_hw.cfg b/dishes/install_desktop_43_encrypted_hw.cfg new file mode 100644 index 0000000..c1c880b --- /dev/null +++ b/dishes/install_desktop_43_encrypted_hw.cfg @@ -0,0 +1,141 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_43_encrypted_hw_ga.cfg b/dishes/install_desktop_43_encrypted_hw_ga.cfg new file mode 100644 index 0000000..c1c880b --- /dev/null +++ b/dishes/install_desktop_43_encrypted_hw_ga.cfg @@ -0,0 +1,141 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_43_ga.cfg b/dishes/install_desktop_43_ga.cfg new file mode 100644 index 0000000..dbec6c6 --- /dev/null +++ b/dishes/install_desktop_43_ga.cfg @@ -0,0 +1,138 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_43_hw.cfg b/dishes/install_desktop_43_hw.cfg new file mode 100644 index 0000000..dbec6c6 --- /dev/null +++ b/dishes/install_desktop_43_hw.cfg @@ -0,0 +1,138 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_43_hw_ga.cfg b/dishes/install_desktop_43_hw_ga.cfg new file mode 100644 index 0000000..dbec6c6 --- /dev/null +++ b/dishes/install_desktop_43_hw_ga.cfg @@ -0,0 +1,138 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 +repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/virtual-desktop_43.cfg b/dishes/install_desktop_rawhide.cfg similarity index 90% rename from dishes/virtual-desktop_43.cfg rename to dishes/install_desktop_rawhide.cfg index 2987699..a1967d1 100644 --- a/dishes/virtual-desktop_43.cfg +++ b/dishes/install_desktop_rawhide.cfg @@ -14,6 +14,7 @@ lang en_US.UTF-8 network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown +repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 #Root password rootpw --lock # SELinux configuration @@ -22,6 +23,8 @@ selinux --enforcing services --enabled="NetworkManager,systemd-resolved" # System timezone timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" # X Window System configuration information xconfig --defaultdesktop=GNOME --startxonboot # System bootloader configuration @@ -35,12 +38,7 @@ part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt part /boot --fstype="ext4" --size=2048 --label="boot" part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF [org.gnome.desktop.media-handling] @@ -52,7 +50,7 @@ cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.overr [org.gnome.Terminal.Legacy.Profile] font='DejaVu Sans Mono 12' use-system-font=false -audible-bell=false +auditable-bell=false EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF @@ -73,7 +71,7 @@ EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF [org.gnome.desktop.privacy] remove-old-temp-files=true -remember-recent-files=false +remember-recent-file=false remember-app-usage=false disable-camera=true disable-microphone=true @@ -133,8 +131,6 @@ pciutils pipewire-alsa pipewire-jack-audio-connection-kit pipewire-pulseaudio -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/virtual-desktop_devel_rawhide.cfg b/dishes/install_desktop_rawhide_encrypted.cfg similarity index 83% rename from dishes/virtual-desktop_devel_rawhide.cfg rename to dishes/install_desktop_rawhide_encrypted.cfg index b091304..c86a4c2 100644 --- a/dishes/virtual-desktop_devel_rawhide.cfg +++ b/dishes/install_desktop_rawhide_encrypted.cfg @@ -1,9 +1,9 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text # Firewall configuration -firewall --enabled --service=ssh +firewall --enabled # Run the Setup Agent on first boot firstboot --reconfig # Keyboard layouts @@ -15,10 +15,10 @@ network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -# Root password -rootpw --plaintext --allow-ssh 1234 +#Root password +rootpw --lock # SELinux configuration -selinux --disabled +selinux --enforcing # System services services --enabled="NetworkManager,systemd-resolved" # System timezone @@ -34,16 +34,14 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF [org.gnome.desktop.media-handling] @@ -55,7 +53,7 @@ cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.overr [org.gnome.Terminal.Legacy.Profile] font='DejaVu Sans Mono 12' use-system-font=false -audible-bell=false +auditable-bell=false EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF @@ -76,7 +74,7 @@ EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF [org.gnome.desktop.privacy] remove-old-temp-files=true -remember-recent-files=false +remember-recent-file=false remember-app-usage=false disable-camera=true disable-microphone=true @@ -136,8 +134,6 @@ pciutils pipewire-alsa pipewire-jack-audio-connection-kit pipewire-pulseaudio -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/virtual-desktop_rawhide.cfg b/dishes/install_desktop_rawhide_encrypted_ga.cfg similarity index 81% rename from dishes/virtual-desktop_rawhide.cfg rename to dishes/install_desktop_rawhide_encrypted_ga.cfg index b532c6a..c86a4c2 100644 --- a/dishes/virtual-desktop_rawhide.cfg +++ b/dishes/install_desktop_rawhide_encrypted_ga.cfg @@ -1,4 +1,4 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text @@ -34,24 +34,14 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF [org.gnome.desktop.media-handling] @@ -63,7 +53,7 @@ cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.overr [org.gnome.Terminal.Legacy.Profile] font='DejaVu Sans Mono 12' use-system-font=false -audible-bell=false +auditable-bell=false EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF @@ -84,7 +74,7 @@ EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF [org.gnome.desktop.privacy] remove-old-temp-files=true -remember-recent-files=false +remember-recent-file=false remember-app-usage=false disable-camera=true disable-microphone=true @@ -144,8 +134,6 @@ pciutils pipewire-alsa pipewire-jack-audio-connection-kit pipewire-pulseaudio -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/virtual-desktop_rawhide-encrypted.cfg b/dishes/install_desktop_rawhide_encrypted_hw.cfg similarity index 81% rename from dishes/virtual-desktop_rawhide-encrypted.cfg rename to dishes/install_desktop_rawhide_encrypted_hw.cfg index a32568d..c86a4c2 100644 --- a/dishes/virtual-desktop_rawhide-encrypted.cfg +++ b/dishes/install_desktop_rawhide_encrypted_hw.cfg @@ -1,4 +1,4 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text @@ -34,24 +34,14 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --encrypted --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF [org.gnome.desktop.media-handling] @@ -63,7 +53,7 @@ cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.overr [org.gnome.Terminal.Legacy.Profile] font='DejaVu Sans Mono 12' use-system-font=false -audible-bell=false +auditable-bell=false EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF @@ -84,7 +74,7 @@ EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF [org.gnome.desktop.privacy] remove-old-temp-files=true -remember-recent-files=false +remember-recent-file=false remember-app-usage=false disable-camera=true disable-microphone=true @@ -144,8 +134,6 @@ pciutils pipewire-alsa pipewire-jack-audio-connection-kit pipewire-pulseaudio -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/install_desktop_rawhide_encrypted_hw_ga.cfg b/dishes/install_desktop_rawhide_encrypted_hw_ga.cfg new file mode 100644 index 0000000..c86a4c2 --- /dev/null +++ b/dishes/install_desktop_rawhide_encrypted_hw_ga.cfg @@ -0,0 +1,140 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --encrypted --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_rawhide_ga.cfg b/dishes/install_desktop_rawhide_ga.cfg new file mode 100644 index 0000000..a1967d1 --- /dev/null +++ b/dishes/install_desktop_rawhide_ga.cfg @@ -0,0 +1,137 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_rawhide_hw.cfg b/dishes/install_desktop_rawhide_hw.cfg new file mode 100644 index 0000000..a1967d1 --- /dev/null +++ b/dishes/install_desktop_rawhide_hw.cfg @@ -0,0 +1,137 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/install_desktop_rawhide_hw_ga.cfg b/dishes/install_desktop_rawhide_hw_ga.cfg new file mode 100644 index 0000000..a1967d1 --- /dev/null +++ b/dishes/install_desktop_rawhide_hw_ga.cfg @@ -0,0 +1,137 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# Use network installation +url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +wget + +%end diff --git a/dishes/desktop_rawhide.cfg b/dishes/install_hypervisor-desktop_amdcpu_43_ga.cfg similarity index 62% rename from dishes/desktop_rawhide.cfg rename to dishes/install_hypervisor-desktop_amdcpu_43_ga.cfg index f4583e9..a45de62 100644 --- a/dishes/desktop_rawhide.cfg +++ b/dishes/install_hypervisor-desktop_amdcpu_43_ga.cfg @@ -1,11 +1,11 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text # Firewall configuration firewall --enabled # Run the Setup Agent on first boot -firstboot --enable +firstboot --reconfig # Keyboard layouts keyboard --xlayouts='ch (fr)' # System language @@ -14,7 +14,6 @@ lang en_US.UTF-8 network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 #Root password rootpw --lock # SELinux configuration @@ -23,8 +22,6 @@ selinux --enforcing services --enabled="NetworkManager,systemd-resolved" # System timezone timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" # X Window System configuration information xconfig --defaultdesktop=GNOME --startxonboot # System bootloader configuration @@ -34,24 +31,11 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF [org.gnome.desktop.media-handling] @@ -63,7 +47,7 @@ cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.overr [org.gnome.Terminal.Legacy.Profile] font='DejaVu Sans Mono 12' use-system-font=false -audible-bell=false +auditable-bell=false EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF @@ -84,7 +68,7 @@ EOF cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF [org.gnome.desktop.privacy] remove-old-temp-files=true -remember-recent-files=false +remember-recent-file=false remember-app-usage=false disable-camera=true disable-microphone=true @@ -115,10 +99,72 @@ glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ %end +%post --nochroot --logfile=/mnt/sysimage/root/vmm-post-scripts.log + +# Create a file to autostart virt-manager +cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF +[Desktop Entry] +Type=Application +Name=Virtual Machine Manager +Exec=virt-manager +EOF + +# Modify the default virt-manager behavior for misc. options +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF + +[org.virt-manager.virt-manager] +xmleditor-enabled=true +manager-window-height=600 +manager-window-width=200 + +[org.virt-manager.virt-manager.connections] +uris=['qemu:///system', 'qemu:///session'] +autoconnect=['qemu:///session'] + +[org.virt-manager.virt-manager.vmlist-fields] +cpu-usage=false + +[org.virt-manager.virt-manager.stats] +update-interval=3 +enable-disk-poll=true +enable-memory-poll=true +enable-net-poll=true + +[org.virt-manager.virt-manager.console] +scaling=2 +resize-guest=1 +autoconnect=false + +[org.virt-manager.virt-manager.details] +show-toolbar=false + +[org.virt-manager.virt-manager.new-vm] +storage-format='raw' +cpu-default='host-model' +graphics-type='spice' + +[org.virt-manager.virt-manager.confirm] +forcepoweroff=false +removedev=false +unapplied-dev=false + +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%post --nochroot --logfile=/mnt/sysimage/root/hypervisor-amdcpu-post.log + +sed -i 's/\(quiet\)/\1 iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. + +echo "options kvm_amd nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization + +%end + %packages --exclude-weakdeps @base-graphical @core -@hardware-support bash-color-prompt curl dconf @@ -132,11 +178,11 @@ generic-release-common generic-release-notes gnome-backgrounds.noarch gnome-control-center -gnome-initial-setup gnome-session-wayland-session gnome-shell gnome-terminal gvfs-fuse +initial-setup libusb mozilla-ublock-origin.noarch nano @@ -146,6 +192,7 @@ pipewire-alsa pipewire-jack-audio-connection-kit pipewire-pulseaudio usbutils +virt-manager wget %end diff --git a/dishes/install_hypervisor-desktop_intelcpu_43_ga.cfg b/dishes/install_hypervisor-desktop_intelcpu_43_ga.cfg new file mode 100644 index 0000000..71af38b --- /dev/null +++ b/dishes/install_hypervisor-desktop_intelcpu_43_ga.cfg @@ -0,0 +1,198 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved" +# System timezone +timezone Europe/Zurich --utc +# X Window System configuration information +xconfig --defaultdesktop=GNOME --startxonboot +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/gnome-desktop-post.log + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF +[org.gnome.desktop.media-handling] +automount-open=false +autorun-never=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF +[org.gnome.Terminal.Legacy.Profile] +font='DejaVu Sans Mono 12' +use-system-font=false +auditable-bell=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF +[org.gnome.desktop.wm.preferences] +button-layout=':minimize,maximize,close' +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF +[org.gnome.desktop.a11y] +always-show-universal-access-status=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF +[org.gnome.desktop.interface] +enable-animations=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF +[org.gnome.desktop.privacy] +remove-old-temp-files=true +remember-recent-file=false +remember-app-usage=false +disable-camera=true +disable-microphone=true +disable-sound-output=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF +[org.gnome.desktop.search-providers] +disable-external=true +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF +[org.gnome.desktop.notifications.application] +enable-sound-alerts=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF +[org.gnome.desktop.sound] +event-sounds=false +EOF + +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF +[org.gnome.desktop.thumbnailers] +disable-all=true +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%post --nochroot --logfile=/mnt/sysimage/root/vmm-post-scripts.log + +# Create a file to autostart virt-manager +cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF +[Desktop Entry] +Type=Application +Name=Virtual Machine Manager +Exec=virt-manager +EOF + +# Modify the default virt-manager behavior for misc. options +cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF + +[org.virt-manager.virt-manager] +xmleditor-enabled=true +manager-window-height=600 +manager-window-width=200 + +[org.virt-manager.virt-manager.connections] +uris=['qemu:///system', 'qemu:///session'] +autoconnect=['qemu:///session'] + +[org.virt-manager.virt-manager.vmlist-fields] +cpu-usage=false + +[org.virt-manager.virt-manager.stats] +update-interval=3 +enable-disk-poll=true +enable-memory-poll=true +enable-net-poll=true + +[org.virt-manager.virt-manager.console] +scaling=2 +resize-guest=1 +autoconnect=false + +[org.virt-manager.virt-manager.details] +show-toolbar=false + +[org.virt-manager.virt-manager.new-vm] +storage-format='raw' +cpu-default='host-model' +graphics-type='spice' + +[org.virt-manager.virt-manager.confirm] +forcepoweroff=false +removedev=false +unapplied-dev=false + +EOF + +glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ + +%end + +%post --nochroot --logfile=/mnt/sysimage/root/hypervisor-intelcpu-post.log + +sed -i 's/\(quiet\)/\1 intel_iommu=on iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. + +echo "options kvm_intel nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization on Intel CPUs + +%end + +%packages --exclude-weakdeps +@base-graphical +@core +bash-color-prompt +curl +dconf +dejavu-sans-mono-fonts +fedora-remix-logos +firefox +gdm +generic-logos +generic-release +generic-release-common +generic-release-notes +gnome-backgrounds.noarch +gnome-control-center +gnome-session-wayland-session +gnome-shell +gnome-terminal +gvfs-fuse +initial-setup +libusb +mozilla-ublock-origin.noarch +nano +nautilus +pciutils +pipewire-alsa +pipewire-jack-audio-connection-kit +pipewire-pulseaudio +usbutils +virt-manager +wget + +%end diff --git a/dishes/install_hypervisor_amdcpu_43_hw.cfg b/dishes/install_hypervisor_amdcpu_43_hw.cfg new file mode 100644 index 0000000..fc9a62c --- /dev/null +++ b/dishes/install_hypervisor_amdcpu_43_hw.cfg @@ -0,0 +1,106 @@ +# Generated by pykickstart v3.69 +#version=DEVEL +# Use text mode install +text +# Firewall configuration +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig +# Keyboard layouts +keyboard --xlayouts='ch (fr)' +# System language +lang en_US.UTF-8 +# Network information +network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate +# Shutdown after installation +shutdown +#Root password +rootpw --lock +# SELinux configuration +selinux --enforcing +# System services +services --enabled="NetworkManager,systemd-resolved,libvirtd" +# System timezone +timezone Europe/Zurich --utc +# System bootloader configuration +bootloader --location=mbr --timeout=1 +# Clear the Master Boot Record +zerombr +# Partition clearing information +clearpart --all --initlabel +# Disk partitioning information +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" + +%post --nochroot --logfile=/mnt/sysimage/root/hypervisor-base-post.log + +# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd +echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf +echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf +echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf +echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf + +mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. + +# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory + +# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit +# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. +# virsh pool-build isos # Build the pool +# virsh pool-start isos # Start it +# virsh pool-autostart isos # Set-it to autostart + +# fetch custom script and make it executable +# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ +# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh + +# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml +# virsh define linux.xml + +# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml +# virsh define windows.xml + +%end + +%post --nochroot --logfile=/mnt/sysimage/root/hypervisor-amdcpu-post.log + +sed -i 's/\(quiet\)/\1 iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. + +echo "options kvm_amd nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization + +%end + +%packages --exclude-weakdeps +@core +curl +fedora-remix-logos +generic-logos +generic-release +generic-release-common +generic-release-notes +initial-setup +libusb +libvirt +libvirt-client +libvirt-client-qemu +libvirt-daemon +libvirt-daemon-common +libvirt-daemon-config-network +libvirt-daemon-driver-ch +libvirt-daemon-driver-interface +libvirt-daemon-driver-network +libvirt-daemon-driver-qemu +libvirt-daemon-kvm +libvirt-daemon-log +libvirt-daemon-qemu +libvirt-dbus +libvirt-nss +nano +pciutils +qemu-kvm +usbutils +virt-install +wget + +%end diff --git a/dishes/live-server-hypervisor_rawhide.cfg b/dishes/install_hypervisor_intelcpu_43_hw.cfg similarity index 54% rename from dishes/live-server-hypervisor_rawhide.cfg rename to dishes/install_hypervisor_intelcpu_43_hw.cfg index c261ba8..3532a41 100644 --- a/dishes/live-server-hypervisor_rawhide.cfg +++ b/dishes/install_hypervisor_intelcpu_43_hw.cfg @@ -1,5 +1,7 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL +# Use text mode install +text # Firewall configuration firewall --enabled # Run the Setup Agent on first boot @@ -12,7 +14,6 @@ lang en_US.UTF-8 network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 #Root password rootpw --lock # SELinux configuration @@ -21,86 +22,18 @@ selinux --enforcing services --enabled="NetworkManager,systemd-resolved,libvirtd" # System timezone timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" # System bootloader configuration -bootloader --location=none --timeout=1 +bootloader --location=mbr --timeout=1 # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part / --fstype="ext4" --size=5120 -part / --size=8576 +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log - -# Enable livesys services -systemctl enable livesys.service -systemctl enable livesys-late.service - -# enable tmpfs for /tmp -systemctl enable tmp.mount - -# make it so that we don't do writing to the overlay for things which -# are just tmpdirs/caches -# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475 -cat >> /etc/fstab << EOF -vartmp /var/tmp tmpfs defaults 0 0 -EOF - -# work around for poor key import UI in PackageKit -rm -f /var/lib/rpm/__db* -echo "Packages within this LiveCD" -rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn -# Note that running rpm recreates the rpm db files which aren't needed or wanted -rm -f /var/lib/rpm/__db* - -# go ahead and pre-make the man -k cache (#455968) -/usr/bin/mandb - -# make sure there aren't core files lying around -rm -f /core* - -# remove random seed, the newly installed instance should make it's own -rm -f /var/lib/systemd/random-seed - -# convince readahead not to collect -# FIXME: for systemd - -echo 'File created by kickstart. See systemd-update-done.service(8).' \ - | tee /etc/.updated >/var/.updated - -# Drop the rescue kernel and initramfs, we don't need them on the live media itself. -# See bug 1317709 -rm -f /boot/*-rescue* - -# Disable network service here, as doing it in the services line -# fails due to RHBZ #1369794 -systemctl disable network - -# Remove machine-id on pre generated images -rm -f /etc/machine-id -touch /etc/machine-id - -%end - -%post --logfile=/mnt/sysimage/root/post-live-session.log - -# set livesys session type -sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log +%post --nochroot --logfile=/mnt/sysimage/root/hypervisor-base-post.log # Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf @@ -130,23 +63,23 @@ mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso image %end +%post --nochroot --logfile=/mnt/sysimage/root/hypervisor-intelcpu-post.log + +sed -i 's/\(quiet\)/\1 intel_iommu=on iommu=pt rd.driver.pre=vfio-pci/i' /mnt/sysimage/etc/default/grub # Load kernel modules in GRUB. + +echo "options kvm_intel nested=1" >> /mnt/sysimage/etc/modprobe.d/kvm.conf # Add support for nested virtualization on Intel CPUs + +%end + %packages --exclude-weakdeps -@anaconda-tools @core -@hardware-support -aajohan-comfortaa-fonts curl -dracut-live fedora-remix-logos generic-logos generic-release generic-release-common generic-release-notes -glibc-all-langpacks initial-setup -kernel -kernel-modules -kernel-modules-extra libusb libvirt libvirt-client @@ -163,7 +96,6 @@ libvirt-daemon-log libvirt-daemon-qemu libvirt-dbus libvirt-nss -livesys-scripts nano pciutils qemu-kvm diff --git a/dishes/virtual-server_devel_43.cfg b/dishes/install_server_43_ga.cfg similarity index 78% rename from dishes/virtual-server_devel_43.cfg rename to dishes/install_server_43_ga.cfg index 67760d2..32dc1f0 100644 --- a/dishes/virtual-server_devel_43.cfg +++ b/dishes/install_server_43_ga.cfg @@ -1,9 +1,11 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text # Firewall configuration -firewall --enabled --service=ssh +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig # Keyboard layouts keyboard --xlayouts='ch (fr)' # System language @@ -14,10 +16,10 @@ network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate shutdown repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 -# Root password -rootpw --plaintext --allow-ssh 1234 +#Root password +rootpw --lock # SELinux configuration -selinux --disabled +selinux --enforcing # System services services --enabled="NetworkManager,systemd-resolved" # System timezone @@ -31,9 +33,9 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" %packages --exclude-weakdeps @core @@ -43,11 +45,10 @@ generic-logos generic-release generic-release-common generic-release-notes +initial-setup libusb nano pciutils -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/virtual-server_devel_rawhide.cfg b/dishes/install_server_rawhide_ga.cfg similarity index 76% rename from dishes/virtual-server_devel_rawhide.cfg rename to dishes/install_server_rawhide_ga.cfg index 101895f..b715ec1 100644 --- a/dishes/virtual-server_devel_rawhide.cfg +++ b/dishes/install_server_rawhide_ga.cfg @@ -1,9 +1,11 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL # Use text mode install text # Firewall configuration -firewall --enabled --service=ssh +firewall --enabled +# Run the Setup Agent on first boot +firstboot --reconfig # Keyboard layouts keyboard --xlayouts='ch (fr)' # System language @@ -13,10 +15,10 @@ network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -# Root password -rootpw --plaintext --allow-ssh 1234 +#Root password +rootpw --lock # SELinux configuration -selinux --disabled +selinux --enforcing # System services services --enabled="NetworkManager,systemd-resolved" # System timezone @@ -30,9 +32,9 @@ zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" +part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label="efi" +part /boot --fstype="ext4" --size=2048 --label="boot" +part / --fstype="ext4" --grow --label="root" --mkfsoptions="-O encrypt,fast_commit" %packages --exclude-weakdeps @core @@ -42,11 +44,10 @@ generic-logos generic-release generic-release-common generic-release-notes +initial-setup libusb nano pciutils -qemu-guest-agent -spice-vdagent usbutils wget diff --git a/dishes/live-desktop-hypervisor.cfg b/dishes/live-desktop-hypervisor.cfg deleted file mode 100644 index 34755f2..0000000 --- a/dishes/live-desktop-hypervisor.cfg +++ /dev/null @@ -1,355 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=none --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part / --fstype="ext4" --size=5120 -part / --size=8576 - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log - -# Enable livesys services -systemctl enable livesys.service -systemctl enable livesys-late.service - -# enable tmpfs for /tmp -systemctl enable tmp.mount - -# make it so that we don't do writing to the overlay for things which -# are just tmpdirs/caches -# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475 -cat >> /etc/fstab << EOF -vartmp /var/tmp tmpfs defaults 0 0 -EOF - -# work around for poor key import UI in PackageKit -rm -f /var/lib/rpm/__db* -echo "Packages within this LiveCD" -rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn -# Note that running rpm recreates the rpm db files which aren't needed or wanted -rm -f /var/lib/rpm/__db* - -# go ahead and pre-make the man -k cache (#455968) -/usr/bin/mandb - -# make sure there aren't core files lying around -rm -f /core* - -# remove random seed, the newly installed instance should make it's own -rm -f /var/lib/systemd/random-seed - -# convince readahead not to collect -# FIXME: for systemd - -echo 'File created by kickstart. See systemd-update-done.service(8).' \ - | tee /etc/.updated >/var/.updated - -# Drop the rescue kernel and initramfs, we don't need them on the live media itself. -# See bug 1317709 -rm -f /boot/*-rescue* - -# Disable network service here, as doing it in the services line -# fails due to RHBZ #1369794 -systemctl disable network - -# Remove machine-id on pre generated images -rm -f /etc/machine-id -touch /etc/machine-id - -%end - -%post --logfile=/mnt/sysimage/root/post-live-session.log - -# set livesys session type -sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@critical-path-gnome -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -libertas-firmware -libifp -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -liquidio-firmware -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -qemu-kvm -radeontop -realtek-firmware -tiwilink-firmware -usbutils -virt-install -virt-manager -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/live-desktop-hypervisor_rawhide.cfg b/dishes/live-desktop-hypervisor_rawhide.cfg deleted file mode 100644 index 2275027..0000000 --- a/dishes/live-desktop-hypervisor_rawhide.cfg +++ /dev/null @@ -1,318 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --enable -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=none --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part / --fstype="ext4" --size=5120 -part / --size=8576 - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log - -# Enable livesys services -systemctl enable livesys.service -systemctl enable livesys-late.service - -# enable tmpfs for /tmp -systemctl enable tmp.mount - -# make it so that we don't do writing to the overlay for things which -# are just tmpdirs/caches -# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475 -cat >> /etc/fstab << EOF -vartmp /var/tmp tmpfs defaults 0 0 -EOF - -# work around for poor key import UI in PackageKit -rm -f /var/lib/rpm/__db* -echo "Packages within this LiveCD" -rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn -# Note that running rpm recreates the rpm db files which aren't needed or wanted -rm -f /var/lib/rpm/__db* - -# go ahead and pre-make the man -k cache (#455968) -/usr/bin/mandb - -# make sure there aren't core files lying around -rm -f /core* - -# remove random seed, the newly installed instance should make it's own -rm -f /var/lib/systemd/random-seed - -# convince readahead not to collect -# FIXME: for systemd - -echo 'File created by kickstart. See systemd-update-done.service(8).' \ - | tee /etc/.updated >/var/.updated - -# Drop the rescue kernel and initramfs, we don't need them on the live media itself. -# See bug 1317709 -rm -f /boot/*-rescue* - -# Disable network service here, as doing it in the services line -# fails due to RHBZ #1369794 -systemctl disable network - -# Remove machine-id on pre generated images -rm -f /etc/machine-id -touch /etc/machine-id - -%end - -%post --logfile=/mnt/sysimage/root/post-live-session.log - -# set livesys session type -sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome-virtual-machine-manager.log - -# Create a file to autostart virt-manager -cat > /mnt/sysimage/etc/xdg/autostart/virt-manager.desktop << EOF -[Desktop Entry] -Type=Application -Name=Virtual Machine Manager -Exec=virt-manager -EOF - -# Modify the default virt-manager behavior for misc. options -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.override<< EOF - -# Modify the default virt-manager behavior for misc. options -[org.virt-manager.virt-manager] -xmleditor-enabled=true -manager-window-height=600 -manager-window-width=200 - -# Libvirt URIs listed in the manager window -[org.virt-manager.virt-manager.connections] -uris=['qemu:///system', 'qemu:///session'] -autoconnect=['qemu:///session'] - -# Show usage in the domain list -[org.virt-manager.virt-manager.vmlist-fields] -cpu-usage=false - -# Settings related to statistics -[org.virt-manager.virt-manager.stats] -update-interval=3 -enable-disk-poll=true -enable-memory-poll=true -enable-net-poll=true - -# Default behavior for the console -[org.virt-manager.virt-manager.console] -scaling=2 -resize-guest=1 -autoconnect=false - -# Do not show toolbar -[org.virt-manager.virt-manager.details] -show-toolbar=false - -# Modify default values for new VMs -[org.virt-manager.virt-manager.new-vm] -storage-format='raw' -cpu-default='host-model' -graphics-type='spice' - -# Modify the default virt-manager behavior for confirmation dialogues -[org.virt-manager.virt-manager.confirm] -forcepoweroff=false -removedev=false -unapplied-dev=false - -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -@hardware-support -bash-color-prompt -curl -dconf -dejavu-sans-mono-fonts -fedora-remix-logos -firefox -gdm -generic-logos -generic-release -generic-release-common -generic-release-notes -gnome-backgrounds.noarch -gnome-control-center -gnome-initial-setup -gnome-session-wayland-session -gnome-shell -gnome-terminal -gvfs-fuse -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -mozilla-ublock-origin.noarch -nano -nautilus -pciutils -pipewire-alsa -pipewire-jack-audio-connection-kit -pipewire-pulseaudio -qemu-kvm -usbutils -virt-install -virt-manager -wget - -%end diff --git a/dishes/live-desktop.cfg b/dishes/live-desktop.cfg deleted file mode 100644 index 17a1fd6..0000000 --- a/dishes/live-desktop.cfg +++ /dev/null @@ -1,252 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=none --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part / --fstype="ext4" --size=5120 -part / --size=8576 - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log - -# Enable livesys services -systemctl enable livesys.service -systemctl enable livesys-late.service - -# enable tmpfs for /tmp -systemctl enable tmp.mount - -# make it so that we don't do writing to the overlay for things which -# are just tmpdirs/caches -# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475 -cat >> /etc/fstab << EOF -vartmp /var/tmp tmpfs defaults 0 0 -EOF - -# work around for poor key import UI in PackageKit -rm -f /var/lib/rpm/__db* -echo "Packages within this LiveCD" -rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn -# Note that running rpm recreates the rpm db files which aren't needed or wanted -rm -f /var/lib/rpm/__db* - -# go ahead and pre-make the man -k cache (#455968) -/usr/bin/mandb - -# make sure there aren't core files lying around -rm -f /core* - -# remove random seed, the newly installed instance should make it's own -rm -f /var/lib/systemd/random-seed - -# convince readahead not to collect -# FIXME: for systemd - -echo 'File created by kickstart. See systemd-update-done.service(8).' \ - | tee /etc/.updated >/var/.updated - -# Drop the rescue kernel and initramfs, we don't need them on the live media itself. -# See bug 1317709 -rm -f /boot/*-rescue* - -# Disable network service here, as doing it in the services line -# fails due to RHBZ #1369794 -systemctl disable network - -# Remove machine-id on pre generated images -rm -f /etc/machine-id -touch /etc/machine-id - -%end - -%post --logfile=/mnt/sysimage/root/post-live-session.log - -# set livesys session type -sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%packages -@anaconda-tools -@base-graphical -@core -@critical-path-gnome -aajohan-comfortaa-fonts -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dejavu-sans-mono-fonts -dracut-live -dvb-firmware -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -glibc-all-langpacks -gnome-backgrounds.noarch -gnome-initial-setup -gpsd -gpsd-clients -hddtemp -hdparm -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -kernel -kernel-modules -kernel-modules-extra -libertas-firmware -libifp -libusb -liquidio-firmware -livesys-scripts -lsscsi -mlxsw_spectrum-firmware -mozilla-ublock-origin.noarch -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -radeontop -realtek-firmware -tiwilink-firmware -usbutils -wget -wpan-tools -zd1211-firmware --NetworkManager-pptp --avahi --gnome-bluetooth --gnome-software --toolbox - -%end diff --git a/dishes/live-desktop_rawhide.cfg b/dishes/live-desktop_rawhide.cfg deleted file mode 100644 index b0b14e0..0000000 --- a/dishes/live-desktop_rawhide.cfg +++ /dev/null @@ -1,215 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --enable -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# X Window System configuration information -xconfig --defaultdesktop=GNOME --startxonboot -# System bootloader configuration -bootloader --location=none --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part / --fstype="ext4" --size=5120 -part / --size=8576 - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log - -# Enable livesys services -systemctl enable livesys.service -systemctl enable livesys-late.service - -# enable tmpfs for /tmp -systemctl enable tmp.mount - -# make it so that we don't do writing to the overlay for things which -# are just tmpdirs/caches -# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475 -cat >> /etc/fstab << EOF -vartmp /var/tmp tmpfs defaults 0 0 -EOF - -# work around for poor key import UI in PackageKit -rm -f /var/lib/rpm/__db* -echo "Packages within this LiveCD" -rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn -# Note that running rpm recreates the rpm db files which aren't needed or wanted -rm -f /var/lib/rpm/__db* - -# go ahead and pre-make the man -k cache (#455968) -/usr/bin/mandb - -# make sure there aren't core files lying around -rm -f /core* - -# remove random seed, the newly installed instance should make it's own -rm -f /var/lib/systemd/random-seed - -# convince readahead not to collect -# FIXME: for systemd - -echo 'File created by kickstart. See systemd-update-done.service(8).' \ - | tee /etc/.updated >/var/.updated - -# Drop the rescue kernel and initramfs, we don't need them on the live media itself. -# See bug 1317709 -rm -f /boot/*-rescue* - -# Disable network service here, as doing it in the services line -# fails due to RHBZ #1369794 -systemctl disable network - -# Remove machine-id on pre generated images -rm -f /etc/machine-id -touch /etc/machine-id - -%end - -%post --logfile=/mnt/sysimage/root/post-live-session.log - -# set livesys session type -sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-desktop-gnome.log - -# cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.override<< EOF -# [org.gnome.desktop.background] -# picture-uri='file:///usr/share/backgrounds/elementary/Morskie Oko.jpg' -# EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.override<< EOF -[org.gnome.desktop.media-handling] -automount-open=false -autorun-never=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.Terminal.gschema.override<< EOF -[org.gnome.Terminal.Legacy.Profile] -font='DejaVu Sans Mono 12' -use-system-font=false -audible-bell=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.override<< EOF -[org.gnome.desktop.wm.preferences] -button-layout=':minimize,maximize,close' -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.override<< EOF -[org.gnome.desktop.a11y] -always-show-universal-access-status=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.override<< EOF -[org.gnome.desktop.interface] -enable-animations=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.override<< EOF -[org.gnome.desktop.privacy] -remove-old-temp-files=true -remember-recent-files=false -remember-app-usage=false -disable-camera=true -disable-microphone=true -disable-sound-output=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.override<< EOF -[org.gnome.desktop.search-providers] -disable-external=true -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.override<< EOF -[org.gnome.desktop.notifications.application] -enable-sound-alerts=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.override<< EOF -[org.gnome.desktop.sound] -event-sounds=false -EOF - -cat >> /mnt/sysimage/usr/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.override<< EOF -[org.gnome.desktop.thumbnailers] -disable-all=true -EOF - -glib-compile-schemas /mnt/sysimage/usr/share/glib-2.0/schemas/ - -%end - -%packages --exclude-weakdeps -@anaconda-tools -@base-graphical -@core -@hardware-support -aajohan-comfortaa-fonts -bash-color-prompt -curl -dconf -dejavu-sans-mono-fonts -dracut-live -fedora-remix-logos -firefox -gdm -generic-logos -generic-release -generic-release-common -generic-release-notes -glibc-all-langpacks -gnome-backgrounds.noarch -gnome-control-center -gnome-initial-setup -gnome-session-wayland-session -gnome-shell -gnome-terminal -gvfs-fuse -kernel -kernel-modules -kernel-modules-extra -libusb -livesys-scripts -mozilla-ublock-origin.noarch -nano -nautilus -pciutils -pipewire-alsa -pipewire-jack-audio-connection-kit -pipewire-pulseaudio -usbutils -wget - -%end diff --git a/dishes/live-server-hypervisor.cfg b/dishes/live-server-hypervisor.cfg deleted file mode 100644 index cbe2a1e..0000000 --- a/dishes/live-server-hypervisor.cfg +++ /dev/null @@ -1,217 +0,0 @@ -# Generated by pykickstart v3.62 -#version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved,libvirtd" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# System bootloader configuration -bootloader --location=none --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part / --fstype="ext4" --size=5120 -part / --size=8576 - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log - -# Enable livesys services -systemctl enable livesys.service -systemctl enable livesys-late.service - -# enable tmpfs for /tmp -systemctl enable tmp.mount - -# make it so that we don't do writing to the overlay for things which -# are just tmpdirs/caches -# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475 -cat >> /etc/fstab << EOF -vartmp /var/tmp tmpfs defaults 0 0 -EOF - -# work around for poor key import UI in PackageKit -rm -f /var/lib/rpm/__db* -echo "Packages within this LiveCD" -rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn -# Note that running rpm recreates the rpm db files which aren't needed or wanted -rm -f /var/lib/rpm/__db* - -# go ahead and pre-make the man -k cache (#455968) -/usr/bin/mandb - -# make sure there aren't core files lying around -rm -f /core* - -# remove random seed, the newly installed instance should make it's own -rm -f /var/lib/systemd/random-seed - -# convince readahead not to collect -# FIXME: for systemd - -echo 'File created by kickstart. See systemd-update-done.service(8).' \ - | tee /etc/.updated >/var/.updated - -# Drop the rescue kernel and initramfs, we don't need them on the live media itself. -# See bug 1317709 -rm -f /boot/*-rescue* - -# Disable network service here, as doing it in the services line -# fails due to RHBZ #1369794 -systemctl disable network - -# Remove machine-id on pre generated images -rm -f /etc/machine-id -touch /etc/machine-id - -%end - -%post --logfile=/mnt/sysimage/root/post-live-session.log - -# set livesys session type -sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys - -%end - -%post --nochroot --logfile=/mnt/sysimage/root/base-hypervisor.log - -# Load kernel modules by adding vfio, vfio_pci, vfio_iommu_type1, vfio_virqfd -echo "vfio" > /mnt/sysimage/etc/modules-load.d/vfio.conf -echo "vfio-pci" > /mnt/sysimage/etc/modules-load.d/vfio-pci.conf -echo "vfio_iommu_type1" > /mnt/sysimage/etc/modules-load.d/vfio_iommu_type1.conf -echo "vfio_virqfd" > /mnt/sysimage/etc/modules-load.d/vfio_virqfd.conf - -mkdir /mnt/sysimage/var/lib/libvirt/isos # Create a directory to store iso images. SELinux is already taking this one into account. - -# wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /mnt/sysimage/var/lib/libvirt/isos/ # fetch netboot.xyz iso and store it to the newly created iso directory - -# # virsh commands fail in a kickstart environment (chroot or not it seems). would need to fetch a script and execute post-launch with a delay, for example using a systemd unit -# virsh pool-define-as isos dir - - - - /mnt/sysimage/var/lib/libvirt/isos/ # Make libvirt aware of this new directory by creating a so-called 'pool'. -# virsh pool-build isos # Build the pool -# virsh pool-start isos # Start it -# virsh pool-autostart isos # Set-it to autostart - -# fetch custom script and make it executable -# wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/post-first-startup-scripts/virtualization-tweaks-root-needed.sh -P /mnt/sysimage/usr/local/bin/ -# chmod +x /mnt/sysimage/usr/local/bin/virtualization-tweaks-root-needed.sh - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/linux.xml -# virsh define linux.xml - -# wget https://raw.githubusercontent.com/PhyllomeOS/xml-definition-for-domains/main/xml/system/windows.xml -# virsh define windows.xml - -%end - -%packages --exclude-weakdeps -@anaconda-tools -@core -aajohan-comfortaa-fonts -acpi -acpitool -alsa-firmware -alsa-sof-firmware -amd-gpu-firmware -atheros-firmware -atmel-firmware -b43-fwcutter -b43-openfwwf -brcmfmac-firmware -cirrus-audio-firmware -cmospwd -curl -dracut-live -dvb-firmware -fedora-remix-logos -generic-logos -generic-release -generic-release-common -generic-release-notes -glibc-all-langpacks -gpsd -gpsd-clients -hddtemp -hdparm -initial-setup -intel-audio-firmware -intel-gpu-firmware -intel-vsc-firmware -iscan-firmware -iwlegacy-firmware -iwlwifi-dvm-firmware -iwlwifi-mvm-firmware -kernel -kernel-modules -kernel-modules-extra -libertas-firmware -libifp -libusb -libvirt -libvirt-client -libvirt-client-qemu -libvirt-daemon -libvirt-daemon-common -libvirt-daemon-config-network -libvirt-daemon-driver-ch -libvirt-daemon-driver-interface -libvirt-daemon-driver-network -libvirt-daemon-driver-qemu -libvirt-daemon-kvm -libvirt-daemon-log -libvirt-daemon-qemu -libvirt-dbus -libvirt-nss -liquidio-firmware -livesys-scripts -lsscsi -mlxsw_spectrum-firmware -mrvlprestera-firmware -mt7xxx-firmware -nano -netronome-firmware -nvidia-gpu-firmware -nxpwireless-firmware -opensc -pciutils -pcsc-lite -pcsc-lite-ccid -qcom-accel-firmware -qed-firmware -qemu-kvm -radeontop -realtek-firmware -tiwilink-firmware -usbutils -virt-install -wget -wpan-tools -zd1211-firmware - -%end diff --git a/dishes/live-server_rawhide.cfg b/dishes/live_desktop_43_hw.cfg similarity index 64% rename from dishes/live-server_rawhide.cfg rename to dishes/live_desktop_43_hw.cfg index bbf388f..c65f013 100644 --- a/dishes/live-server_rawhide.cfg +++ b/dishes/live_desktop_43_hw.cfg @@ -1,9 +1,5 @@ -# Generated by pykickstart v3.66 +# Generated by pykickstart v3.69 #version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig # Keyboard layouts keyboard --xlayouts='ch (fr)' # System language @@ -12,19 +8,14 @@ lang en_US.UTF-8 network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing +repo --name="rpmfusion-nonfree" --mirrorlist=https://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-$releasever&arch=$basearch --includepkgs="rpmfusion-nonfree-release" +repo --name="rpmfusion-nonfree-updates" --mirrorlist=https://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-updates-released-$releasever&arch=$basearch --includepkgs="rpmfusion-nonfree-release" # System services services --enabled="NetworkManager,systemd-resolved" # System timezone timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" # System bootloader configuration -bootloader --location=none --timeout=1 +bootloader --location=mbr --timeout=1 # Clear the Master Boot Record zerombr # Partition clearing information @@ -33,15 +24,7 @@ clearpart --all --initlabel part / --fstype="ext4" --size=5120 part / --size=8576 -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log +%post --logfile=/mnt/sysimage/root/live-core-post.log # Enable livesys services systemctl enable livesys.service @@ -100,27 +83,28 @@ sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys %end -%packages --exclude-weakdeps +%post + +# Import RPM Fusion PGP Key. Courtesy of https://github.com/rpmfusion/rpmfusion-nonfree-remix-kickstarts/blob/master/rpmfusion-nonfree-live-base.ks +echo "== RPM Fusion Nonfree: Base section ==" +echo "Importing RPM Fusion keys" +rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-*-primary +echo "List of packages from RPM Fusion Nonfree:" +rpm -qa --qf '%{NAME} %{SIGGPG:pgpsig} %{SIGPGP:pgpsig} \n' | grep -e 3DE8C682E38EE9BC0FDFEA47FCAE2EA87F858107 | awk ' { print $1 } ' | sort +echo "List of incuded RPM Fusion packages with their size:" +rpm -q --qf '%{SIZE} %{NAME}\n' $(rpm -qa --qf '%{NAME} %{SIGGPG:pgpsig} %{SIGPGP:pgpsig} \n' | grep -e 3DE8C682E38EE9BC0FDFEA47FCAE2EA87F858107 | awk ' { print $1 } ') | sort -n +echo + +%end + +%packages @anaconda-tools -@core aajohan-comfortaa-fonts -curl dracut-live -fedora-remix-logos -generic-logos -generic-release -generic-release-common -generic-release-notes glibc-all-langpacks -initial-setup kernel kernel-modules kernel-modules-extra -libusb livesys-scripts -nano -pciutils -usbutils -wget %end diff --git a/dishes/live-server.cfg b/dishes/live_server_43_hw.cfg similarity index 64% rename from dishes/live-server.cfg rename to dishes/live_server_43_hw.cfg index 151783d..c65f013 100644 --- a/dishes/live-server.cfg +++ b/dishes/live_server_43_hw.cfg @@ -1,9 +1,5 @@ -# Generated by pykickstart v3.62 +# Generated by pykickstart v3.69 #version=DEVEL -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig # Keyboard layouts keyboard --xlayouts='ch (fr)' # System language @@ -12,19 +8,14 @@ lang en_US.UTF-8 network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate # Shutdown after installation shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing +repo --name="rpmfusion-nonfree" --mirrorlist=https://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-$releasever&arch=$basearch --includepkgs="rpmfusion-nonfree-release" +repo --name="rpmfusion-nonfree-updates" --mirrorlist=https://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-updates-released-$releasever&arch=$basearch --includepkgs="rpmfusion-nonfree-release" # System services services --enabled="NetworkManager,systemd-resolved" # System timezone timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" # System bootloader configuration -bootloader --location=none --timeout=1 +bootloader --location=mbr --timeout=1 # Clear the Master Boot Record zerombr # Partition clearing information @@ -33,15 +24,7 @@ clearpart --all --initlabel part / --fstype="ext4" --size=5120 part / --size=8576 -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%post --logfile=/mnt/sysimage/root/post-live-core.log +%post --logfile=/mnt/sysimage/root/live-core-post.log # Enable livesys services systemctl enable livesys.service @@ -100,27 +83,28 @@ sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys %end -%packages --exclude-weakdeps +%post + +# Import RPM Fusion PGP Key. Courtesy of https://github.com/rpmfusion/rpmfusion-nonfree-remix-kickstarts/blob/master/rpmfusion-nonfree-live-base.ks +echo "== RPM Fusion Nonfree: Base section ==" +echo "Importing RPM Fusion keys" +rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-*-primary +echo "List of packages from RPM Fusion Nonfree:" +rpm -qa --qf '%{NAME} %{SIGGPG:pgpsig} %{SIGPGP:pgpsig} \n' | grep -e 3DE8C682E38EE9BC0FDFEA47FCAE2EA87F858107 | awk ' { print $1 } ' | sort +echo "List of incuded RPM Fusion packages with their size:" +rpm -q --qf '%{SIZE} %{NAME}\n' $(rpm -qa --qf '%{NAME} %{SIGGPG:pgpsig} %{SIGPGP:pgpsig} \n' | grep -e 3DE8C682E38EE9BC0FDFEA47FCAE2EA87F858107 | awk ' { print $1 } ') | sort -n +echo + +%end + +%packages @anaconda-tools -@core aajohan-comfortaa-fonts -curl dracut-live -fedora-remix-logos -generic-logos -generic-release -generic-release-common -generic-release-notes glibc-all-langpacks -initial-setup kernel kernel-modules kernel-modules-extra -libusb livesys-scripts -nano -pciutils -usbutils -wget %end diff --git a/dishes/virtual-desktop_labwc_43.cfg b/dishes/virtual-desktop_labwc_43.cfg deleted file mode 100644 index fd00ae6..0000000 --- a/dishes/virtual-desktop_labwc_43.cfg +++ /dev/null @@ -1,71 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 -repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" -# X Window System configuration information -xconfig --startxonboot -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%packages --exclude-weakdeps -@base-graphical -@core -curl -fedora-remix-logos -firefox -generic-logos -generic-release -generic-release-common -generic-release-notes -initial-setup -labwc -libusb -mozilla-ublock-origin.noarch -nano -pciutils -qemu-guest-agent -spice-vdagent -usbutils -wget - -%end diff --git a/dishes/virtual-server_43.cfg b/dishes/virtual-server_43.cfg deleted file mode 100644 index 1292cb0..0000000 --- a/dishes/virtual-server_43.cfg +++ /dev/null @@ -1,65 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="fedora" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64 -repo --name="updates" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f43&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-43&arch=x86_64" -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%packages --exclude-weakdeps -@core -curl -fedora-remix-logos -generic-logos -generic-release -generic-release-common -generic-release-notes -initial-setup -libusb -nano -pciutils -qemu-guest-agent -spice-vdagent -usbutils -wget - -%end diff --git a/dishes/virtual-server_rawhide.cfg b/dishes/virtual-server_rawhide.cfg deleted file mode 100644 index 53ce797..0000000 --- a/dishes/virtual-server_rawhide.cfg +++ /dev/null @@ -1,64 +0,0 @@ -# Generated by pykickstart v3.66 -#version=DEVEL -# Use text mode install -text -# Firewall configuration -firewall --enabled -# Run the Setup Agent on first boot -firstboot --reconfig -# Keyboard layouts -keyboard --xlayouts='ch (fr)' -# System language -lang en_US.UTF-8 -# Network information -network --bootproto=dhcp --device=link --hostname=phyllome-alpha --activate -# Shutdown after installation -shutdown -repo --name="rawhide" --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64 -#Root password -rootpw --lock -# SELinux configuration -selinux --enforcing -# System services -services --enabled="NetworkManager,systemd-resolved" -# System timezone -timezone Europe/Zurich --utc -# Use network installation -url --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64" -# System bootloader configuration -bootloader --location=mbr --timeout=1 -# Clear the Master Boot Record -zerombr -# Partition clearing information -clearpart --all --initlabel -# Disk partitioning information -part /boot/efi --fstype="efi" --size=512 --fsoptions="umask=0077,shortname=winnt" --label=efi -part /boot --fstype="ext4" --size=2048 --label=boot -part / --fstype="ext4" --grow --label=root --mkfsoptions="-O encrypt,fast_commit" - -%post --logfile=/mnt/sysimage/root/post.log - -localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked. -dnf update -y # Update the system -grub2-mkconfig -o /boot/grub2/grub.cfg # Unsure it is actually useful - -%end - -%packages --exclude-weakdeps -@core -curl -fedora-remix-logos -generic-logos -generic-release -generic-release-common -generic-release-notes -initial-setup -libusb -nano -pciutils -qemu-guest-agent -spice-vdagent -usbutils -wget - -%end diff --git a/fragments/bootloader/grub.ks b/fragments/bootloader/grub.ks index e51efb2..48c0cdd 100644 --- a/fragments/bootloader/grub.ks +++ b/fragments/bootloader/grub.ks @@ -1,3 +1,3 @@ # GRUB bootloader configuration -bootsupport --timeout=1 # Set the GNU GRUB bootloader timeout to 1 +bootloader --timeout=1 # Set the GNU GRUB bootloader timeout to 1 diff --git a/recipe-generator/Makefile b/recipe-generator/Makefile index f5c721e..4a957cb 100644 --- a/recipe-generator/Makefile +++ b/recipe-generator/Makefile @@ -1,4 +1,4 @@ -.PHONY: help generate-recipes validate-recipes test test-integration test-container clean install-deps +.PHONY: help generate-recipes validate-recipes test test-integration test-container clean clean-dishes install-deps flatten-dishes all help: @echo "Phyllome OS Recipe Generator" @@ -9,9 +9,15 @@ help: @echo " test - Run pytest test suite (unit + integration)" @echo " test-integration - Run integration tests only" @echo " test-container - Run all tests in container" + @echo " all - Generate, validate, and flatten all recipes (default)" + @echo " flatten-dishes - Flatten all recipes to dishes" + @echo " clean-dishes - Remove flattened dishes" @echo " clean - Remove generated recipes" @echo " install-deps - Install Python dependencies" +all: generate-recipes validate-recipes flatten-dishes + @echo "✓ All recipes generated, validated, and flattened to dishes" + install-deps: pip install -r requirements.txt @@ -35,6 +41,16 @@ test-container: podman build -t phyllo/test-runner ../tests/container/ podman run --rm -v .:/phyllomeos:ro phyllo/test-runner +flatten-dishes: + @echo "Flattening recipes to dishes..." + @python ../bin/ksflatten-relative ../recipes ../dishes + +clean-dishes: + rm -f ../dishes/*.cfg + @echo "✓ Flattened dishes removed. Run 'make flatten-dishes' to regenerate." + clean: rm -f ../recipes/*.cfg - @echo "Generated recipes removed. Edit recipes_manifest.yaml and run 'make generate-recipes' to regenerate." + @echo "Generated recipes removed. Edit recipes_manifest.yaml and run 'make generate-recipes' to regenerate. Run 'make clean-dishes' to remove flattened dishes." + + diff --git a/recipe-generator/__pycache__/generate_recipe.cpython-314.pyc b/recipe-generator/__pycache__/generate_recipe.cpython-314.pyc index 99a09472532b47f271fafd903afc6ed39d7868e3..a4a84ccbf2764dccd4ddad0be7a18f24aba0029b 100644 GIT binary patch delta 16101 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 OAKP(L%t*|1$p0HEs7sCj delta 12563 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 ZQc9#cv~NO~^0r9!WaDiiB}(P^{coe_@;3kg diff --git a/recipe-generator/generate_recipe.py b/recipe-generator/generate_recipe.py index 06df999..c6cc158 100755 --- a/recipe-generator/generate_recipe.py +++ b/recipe-generator/generate_recipe.py @@ -235,7 +235,7 @@ class RecipeGenerator: return header def build_includes(self, template: Dict, version: str, modifiers: Dict) -> List[str]: - """Build %ksappend lines from template and modifiers.""" + """Build %include lines from template and modifiers.""" includes = [] seen = set() # Track to prevent duplicates # Add version to modifiers for template processing @@ -256,7 +256,7 @@ class RecipeGenerator: continue if fragment_path not in seen: - includes.append(f"%ksappend {fragment_path}") + includes.append(f"%include {fragment_path}") seen.add(fragment_path) # Add optional includes based on modifiers @@ -272,10 +272,10 @@ class RecipeGenerator: if isinstance(fragment_path, list): for fp in fragment_path: if fp is not None and fp not in seen: - includes.append(f"%ksappend {fp}") + includes.append(f"%include {fp}") seen.add(fp) elif fragment_path and fragment_path not in seen: - includes.append(f"%ksappend {fragment_path}") + includes.append(f"%include {fragment_path}") seen.add(fragment_path) # Case 2: opt_config is nested dict (e.g., virtualization) @@ -287,10 +287,10 @@ class RecipeGenerator: if isinstance(nested_value, list): for fp in nested_value: if fp is not None and fp not in seen: - includes.append(f"%ksappend {fp}") + includes.append(f"%include {fp}") seen.add(fp) elif nested_value is not None and nested_value not in seen: - includes.append(f"%ksappend {nested_value}") + includes.append(f"%include {nested_value}") seen.add(nested_value) # Case 3: opt_config is nested dict, value is boolean (additive) @@ -299,17 +299,17 @@ class RecipeGenerator: if isinstance(nested_value, list): for fp in nested_value: if fp is not None and fp not in seen: - includes.append(f"%ksappend {fp}") + includes.append(f"%include {fp}") seen.add(fp) elif nested_value is not None and nested_value not in seen: - includes.append(f"%ksappend {nested_value}") + includes.append(f"%include {nested_value}") seen.add(nested_value) # Case 4: opt_config is list, value is boolean (boolean flag) elif isinstance(opt_config, list) and value is True: for fragment_path in opt_config: if fragment_path is not None and fragment_path not in seen: - includes.append(f"%ksappend {fragment_path}") + includes.append(f"%include {fragment_path}") seen.add(fragment_path) # Handle modifiers section @@ -331,10 +331,10 @@ class RecipeGenerator: if isinstance(fragment_path, list): for fp in fragment_path: if fp is not None and fp not in seen: - includes.append(f"%ksappend {fp}") + includes.append(f"%include {fp}") seen.add(fp) elif fragment_path and fragment_path not in seen: - includes.append(f"%ksappend {fragment_path}") + includes.append(f"%include {fragment_path}") seen.add(fragment_path) # Handle list modifiers @@ -345,10 +345,10 @@ class RecipeGenerator: if isinstance(fragment_path, list): for fp in fragment_path: if fp is not None and fp not in seen: - includes.append(f"%ksappend {fp}") + includes.append(f"%include {fp}") seen.add(fp) elif fragment_path and fragment_path not in seen: - includes.append(f"%ksappend {fragment_path}") + includes.append(f"%include {fragment_path}") seen.add(fragment_path) return includes @@ -356,7 +356,7 @@ class RecipeGenerator: def validate_recipe(self, content: str) -> List[str]: """Validate recipe content, return list of warnings/errors.""" issues = [] - includes = [line for line in content.split('\n') if line.startswith('%ksappend')] + includes = [line for line in content.split('\n') if line.startswith('%include')] # Check for duplicate includes seen = set() @@ -381,8 +381,24 @@ class RecipeGenerator: return issues + def validate_recipe_semantic_from_file(self, recipe_path: str, version: str) -> List[str]: + """Validate recipe from file path using pykickstart.""" + try: + return self._validate_recipe_semantic_internal(recipe_path, version) + except FileNotFoundError: + return [f"Error: Recipe file not found: {recipe_path}"] + + def validate_recipe_content(self, recipe_path: str) -> List[str]: + """Validate recipe content from file path for include resolution.""" + content = Path(recipe_path).read_text(encoding='utf-8') + return self.validate_recipe(content) + def validate_recipe_semantic(self, content: str, version: str) -> List[str]: """Validate recipe using pykickstart parser with version-specific checks.""" + return self._validate_recipe_semantic_internal(content, version) + + def _validate_recipe_semantic_internal(self, source, version: str) -> List[str]: + """Internal validation method that handles both file paths and content.""" issues = [] modules = _import_pykickstart() @@ -403,17 +419,28 @@ class RecipeGenerator: try: parser = KickstartParser(ks_version) + # Determine if source is a file path or content + if isinstance(source, Path) or (isinstance(source, str) and (source.endswith('.ks') or source.endswith('.cfg')) or (Path(source).exists() and Path(source).is_file())): + # Source is a file path + content = Path(source).read_text(encoding='utf-8') + else: + # Source is content string + content = source parser.readKickstartFromString(content) except KickstartParseError as e: issues.append(f"Syntax error line {e.lineno}: {e.message}") except KickstartError as e: - issues.append(f"Validation error: {str(e)}") + # Only add if it's not an include-related error + err_str = str(e) + if 'Unable to open input kickstart file' not in err_str: + issues.append(f"Validation error: {err_str}") except Exception as e: # noqa: BLE001 - Catch all for unexpected parser errors issues.append(f"Unexpected error during parsing: {str(e)}") # Check for deprecated commands in the content - issues.extend(self._check_deprecated_commands(content)) - + if isinstance(source, str): + issues.extend(self._check_deprecated_commands(source)) + return issues def _check_deprecated_commands(self, content: str) -> List[str]: @@ -449,6 +476,15 @@ class RecipeGenerator: return issues def extract_version(self, content: str, filename: str) -> Optional[str]: + """Extract Fedora version from recipe content or filename.""" + return self._extract_version_internal(content, filename) + + def extract_version_from_file(self, recipe_path: str, filename: str) -> Optional[str]: + """Extract version from recipe file.""" + content = Path(recipe_path).read_text(encoding='utf-8') + return self._extract_version_internal(content, filename) + + def _extract_version_internal(self, content: str, filename: str) -> Optional[str]: """Extract Fedora version from recipe content or filename.""" filename_match = re.search(r'(?:_|-)(43|rawhide)(?:_|-|.cfg|.yaml|$)', filename) if filename_match: @@ -460,7 +496,7 @@ class RecipeGenerator: return '43' elif 'core-fedora-repo-rawhide' in line: return 'rawhide' - # Check for new %ksappend references + # Check for new %include references if 'generic-43/repo' in line: return '43' elif 'generic-rawhide/repo' in line: @@ -625,15 +661,14 @@ def main(): all_issues = [] for recipe_path in args.validate: try: - with open(recipe_path, encoding='utf-8') as f: - content = f.read() - issues = generator.validate_recipe(content) + # Validate with file path so includes can be resolved correctly + issues = generator.validate_recipe_content(recipe_path) # Extract version and perform semantic validation filename = Path(recipe_path).stem - version = generator.extract_version(content, filename) + version = generator.extract_version_from_file(recipe_path, filename) if version: - semantic_issues = generator.validate_recipe_semantic(content, version) + semantic_issues = generator.validate_recipe_semantic_from_file(recipe_path, version) issues.extend(semantic_issues) else: issues.append("Warning: Could not determine version, " @@ -646,20 +681,19 @@ def main(): sys.exit(2) if all_issues: - print("=== Recipe Validation Report ===", file=sys.stderr) for path, issues in all_issues: print(f"\n{path}:", file=sys.stderr) - error_count = sum(1 for i in issues if 'ERROR' in i) - warning_count = sum(1 for i in issues if 'Warning:' in i) + error_count = sum(1 for i in issues if 'ERROR' in i or 'error' in i.lower()) + warning_count = sum(1 for i in issues if 'Warning' in i or 'warning' in i.lower()) if error_count > 0: for issue in issues: - if 'ERROR' in issue: + if 'ERROR' in issue or 'error' in issue.lower(): print(f" {issue}", file=sys.stderr) if warning_count > 0: for issue in issues: - if 'Warning:' in issue: + if 'Warning' in issue or 'warning' in issue.lower(): print(f" {issue}", file=sys.stderr) if error_count == 0 and warning_count == 0: @@ -668,9 +702,9 @@ def main(): print(f"\nSummary:", file=sys.stderr) print(f" - {len(all_issues)} recipe(s) checked", file=sys.stderr) - total_errors = sum(len([i for i in issues if 'ERROR' in i]) + total_errors = sum(len([i for i in issues if 'ERROR' in i or 'error' in i.lower()]) for _, issues in all_issues) - total_warnings = sum(len([i for i in issues if 'Warning:' in i]) + total_warnings = sum(len([i for i in issues if 'Warning' in i or 'warning' in i.lower()]) for _, issues in all_issues) print(f" - {total_errors} error(s), {total_warnings} warning(s)", file=sys.stderr) @@ -679,8 +713,14 @@ def main(): print("\nStrict mode: Warnings treated as errors", file=sys.stderr) sys.exit(1) + # If there are errors, exit with error code if total_errors > 0: sys.exit(1) + # If there are issues but no counted errors/warnings, that means + # there are validation issues that don't match our pattern + # (e.g., pykickstart "Validation error:") - treat these as errors + if all_issues: + sys.exit(1) else: print("All recipes validated successfully") sys.exit(0) diff --git a/recipes/install_desktop_43.cfg b/recipes/install_desktop_43.cfg index e0d8bc4..3151b28 100644 --- a/recipes/install_desktop_43.cfg +++ b/recipes/install_desktop_43.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_encrypted.cfg b/recipes/install_desktop_43_encrypted.cfg index c0ca210..68174b2 100644 --- a/recipes/install_desktop_43_encrypted.cfg +++ b/recipes/install_desktop_43_encrypted.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_encrypted_ga.cfg b/recipes/install_desktop_43_encrypted_ga.cfg index c0ca210..68174b2 100644 --- a/recipes/install_desktop_43_encrypted_ga.cfg +++ b/recipes/install_desktop_43_encrypted_ga.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_encrypted_hw.cfg b/recipes/install_desktop_43_encrypted_hw.cfg index c0ca210..68174b2 100644 --- a/recipes/install_desktop_43_encrypted_hw.cfg +++ b/recipes/install_desktop_43_encrypted_hw.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_encrypted_hw_ga.cfg b/recipes/install_desktop_43_encrypted_hw_ga.cfg index c0ca210..68174b2 100644 --- a/recipes/install_desktop_43_encrypted_hw_ga.cfg +++ b/recipes/install_desktop_43_encrypted_hw_ga.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_ga.cfg b/recipes/install_desktop_43_ga.cfg index e0d8bc4..3151b28 100644 --- a/recipes/install_desktop_43_ga.cfg +++ b/recipes/install_desktop_43_ga.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_hw.cfg b/recipes/install_desktop_43_hw.cfg index e0d8bc4..3151b28 100644 --- a/recipes/install_desktop_43_hw.cfg +++ b/recipes/install_desktop_43_hw.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_43_hw_ga.cfg b/recipes/install_desktop_43_hw_ga.cfg index e0d8bc4..3151b28 100644 --- a/recipes/install_desktop_43_hw_ga.cfg +++ b/recipes/install_desktop_43_hw_ga.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide.cfg b/recipes/install_desktop_rawhide.cfg index 1bd120d..168184b 100644 --- a/recipes/install_desktop_rawhide.cfg +++ b/recipes/install_desktop_rawhide.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_encrypted.cfg b/recipes/install_desktop_rawhide_encrypted.cfg index 931421d..6fbd956 100644 --- a/recipes/install_desktop_rawhide_encrypted.cfg +++ b/recipes/install_desktop_rawhide_encrypted.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_encrypted_ga.cfg b/recipes/install_desktop_rawhide_encrypted_ga.cfg index 931421d..6fbd956 100644 --- a/recipes/install_desktop_rawhide_encrypted_ga.cfg +++ b/recipes/install_desktop_rawhide_encrypted_ga.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_encrypted_hw.cfg b/recipes/install_desktop_rawhide_encrypted_hw.cfg index 931421d..6fbd956 100644 --- a/recipes/install_desktop_rawhide_encrypted_hw.cfg +++ b/recipes/install_desktop_rawhide_encrypted_hw.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_encrypted_hw_ga.cfg b/recipes/install_desktop_rawhide_encrypted_hw_ga.cfg index 931421d..6fbd956 100644 --- a/recipes/install_desktop_rawhide_encrypted_hw_ga.cfg +++ b/recipes/install_desktop_rawhide_encrypted_hw_ga.cfg @@ -7,19 +7,19 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/storage/encrypted.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/storage/encrypted.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_ga.cfg b/recipes/install_desktop_rawhide_ga.cfg index 1bd120d..168184b 100644 --- a/recipes/install_desktop_rawhide_ga.cfg +++ b/recipes/install_desktop_rawhide_ga.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_hw.cfg b/recipes/install_desktop_rawhide_hw.cfg index 1bd120d..168184b 100644 --- a/recipes/install_desktop_rawhide_hw.cfg +++ b/recipes/install_desktop_rawhide_hw.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_desktop_rawhide_hw_ga.cfg b/recipes/install_desktop_rawhide_hw_ga.cfg index 1bd120d..168184b 100644 --- a/recipes/install_desktop_rawhide_hw_ga.cfg +++ b/recipes/install_desktop_rawhide_hw_ga.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/install_hypervisor-desktop_amdcpu_43_ga.cfg b/recipes/install_hypervisor-desktop_amdcpu_43_ga.cfg index b6062e8..8baeed7 100644 --- a/recipes/install_hypervisor-desktop_amdcpu_43_ga.cfg +++ b/recipes/install_hypervisor-desktop_amdcpu_43_ga.cfg @@ -7,20 +7,20 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/packages/virtual-machine-manager/packages.ks -%ksappend fragments/packages/virtual-machine-manager/post-scripts.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/hypervisor/amdcpu.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/packages/virtual-machine-manager/packages.ks +%include fragments/packages/virtual-machine-manager/post-scripts.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/hypervisor/amdcpu.ks \ No newline at end of file diff --git a/recipes/install_hypervisor-desktop_intelcpu_43_ga.cfg b/recipes/install_hypervisor-desktop_intelcpu_43_ga.cfg index 0a90ed2..9c32372 100644 --- a/recipes/install_hypervisor-desktop_intelcpu_43_ga.cfg +++ b/recipes/install_hypervisor-desktop_intelcpu_43_ga.cfg @@ -7,20 +7,20 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/desktop/gnome/config.ks -%ksappend fragments/desktop/gnome/packages.ks -%ksappend fragments/desktop/gnome/post-scripts.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/packages/virtual-machine-manager/packages.ks -%ksappend fragments/packages/virtual-machine-manager/post-scripts.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/hypervisor/intelcpu.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/desktop/gnome/config.ks +%include fragments/desktop/gnome/packages.ks +%include fragments/desktop/gnome/post-scripts.ks +%include fragments/bootloader/grub.ks +%include fragments/packages/virtual-machine-manager/packages.ks +%include fragments/packages/virtual-machine-manager/post-scripts.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/hypervisor/intelcpu.ks \ No newline at end of file diff --git a/recipes/install_hypervisor_amdcpu_43_hw.cfg b/recipes/install_hypervisor_amdcpu_43_hw.cfg index 88648ae..be6999e 100644 --- a/recipes/install_hypervisor_amdcpu_43_hw.cfg +++ b/recipes/install_hypervisor_amdcpu_43_hw.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/hypervisor/base/packages.ks -%ksappend fragments/hypervisor/base/services.ks -%ksappend fragments/hypervisor/base/post-scripts.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/hypervisor/amdcpu.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/bootloader/grub.ks +%include fragments/hypervisor/base/packages.ks +%include fragments/hypervisor/base/services.ks +%include fragments/hypervisor/base/post-scripts.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/hypervisor/amdcpu.ks \ No newline at end of file diff --git a/recipes/install_hypervisor_intelcpu_43_hw.cfg b/recipes/install_hypervisor_intelcpu_43_hw.cfg index 6b31346..a0413fd 100644 --- a/recipes/install_hypervisor_intelcpu_43_hw.cfg +++ b/recipes/install_hypervisor_intelcpu_43_hw.cfg @@ -7,18 +7,18 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/hypervisor/base/packages.ks -%ksappend fragments/hypervisor/base/services.ks -%ksappend fragments/hypervisor/base/post-scripts.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/hypervisor/intelcpu.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/bootloader/grub.ks +%include fragments/hypervisor/base/packages.ks +%include fragments/hypervisor/base/services.ks +%include fragments/hypervisor/base/post-scripts.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/hypervisor/intelcpu.ks \ No newline at end of file diff --git a/recipes/install_server_43_ga.cfg b/recipes/install_server_43_ga.cfg index ce1e57a..2247500 100644 --- a/recipes/install_server_43_ga.cfg +++ b/recipes/install_server_43_ga.cfg @@ -7,15 +7,15 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/fedora-43-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/fedora-43-mirrors.ks \ No newline at end of file diff --git a/recipes/install_server_rawhide_ga.cfg b/recipes/install_server_rawhide_ga.cfg index 22452cf..d87c5e3 100644 --- a/recipes/install_server_rawhide_ga.cfg +++ b/recipes/install_server_rawhide_ga.cfg @@ -7,15 +7,15 @@ # An install recipe for desktop, server, or hypervisor -%ksappend fragments/core/base.ks -%ksappend fragments/storage/standard.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/packages/core-group.ks -%ksappend fragments/packages/fedora-remix.ks -%ksappend fragments/packages/hand-picked.ks -%ksappend fragments/bootloader/grub.ks -%ksappend fragments/initial-setup/server/config.ks -%ksappend fragments/core/security/enabled.ks -%ksappend fragments/repo/rawhide-mirrors.ks \ No newline at end of file +%include fragments/core/base.ks +%include fragments/storage/standard.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/packages/core-group.ks +%include fragments/packages/fedora-remix.ks +%include fragments/packages/hand-picked.ks +%include fragments/bootloader/grub.ks +%include fragments/initial-setup/server/config.ks +%include fragments/core/security/enabled.ks +%include fragments/repo/rawhide-mirrors.ks \ No newline at end of file diff --git a/recipes/live_desktop_43_hw.cfg b/recipes/live_desktop_43_hw.cfg index 9da1f13..cbccb98 100644 --- a/recipes/live_desktop_43_hw.cfg +++ b/recipes/live_desktop_43_hw.cfg @@ -7,13 +7,13 @@ # A live recipe for live-desktop or live-server -%ksappend fragments/live/core/base.ks -%ksappend fragments/live/core/storage.ks -%ksappend fragments/live/core/bootloader/grub.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/live/core/packages.ks -%ksappend fragments/live/post/base.ks -%ksappend fragments/live/post/session.ks -%ksappend fragments/repo/rpmfusion-nonfree.ks \ No newline at end of file +%include fragments/live/core/base.ks +%include fragments/live/core/storage.ks +%include fragments/live/core/bootloader/grub.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/live/core/packages.ks +%include fragments/live/post/base.ks +%include fragments/live/post/session.ks +%include fragments/repo/rpmfusion-nonfree.ks \ No newline at end of file diff --git a/recipes/live_server_43_hw.cfg b/recipes/live_server_43_hw.cfg index 9da1f13..cbccb98 100644 --- a/recipes/live_server_43_hw.cfg +++ b/recipes/live_server_43_hw.cfg @@ -7,13 +7,13 @@ # A live recipe for live-desktop or live-server -%ksappend fragments/live/core/base.ks -%ksappend fragments/live/core/storage.ks -%ksappend fragments/live/core/bootloader/grub.ks -%ksappend fragments/core/locale.ks -%ksappend fragments/core/services.ks -%ksappend fragments/core/network.ks -%ksappend fragments/live/core/packages.ks -%ksappend fragments/live/post/base.ks -%ksappend fragments/live/post/session.ks -%ksappend fragments/repo/rpmfusion-nonfree.ks \ No newline at end of file +%include fragments/live/core/base.ks +%include fragments/live/core/storage.ks +%include fragments/live/core/bootloader/grub.ks +%include fragments/core/locale.ks +%include fragments/core/services.ks +%include fragments/core/network.ks +%include fragments/live/core/packages.ks +%include fragments/live/post/base.ks +%include fragments/live/post/session.ks +%include fragments/repo/rpmfusion-nonfree.ks \ No newline at end of file diff --git a/tests/__pycache__/test_recipe_generator.cpython-314-pytest-8.4.2.pyc b/tests/__pycache__/test_recipe_generator.cpython-314-pytest-8.4.2.pyc index 28e49e24cc89268b09807e189050e9c208c47f20..04fff7b08bec62163d60c9885b441714fe789d60 100644 GIT binary patch delta 1627 zcmcJN%TE(g6vi3qlrzRMhF0VeVo}jxkx~p$T9CF-9<@jX38+x4Pzef@r-_(=u0+L1 zxFnK*u?cL6k}(k%Mi-j6U@@IOrW=j^3pJXsAn}fEZ>AeJhRMmy_xsK{_ceEQC;jP8 zx=NR+I+%u^O!o7TdP`;3F~^FAM*D}S2fV09m&240n$;D_XcLo;EC zs~zo?8&PkKhTGIXp_tQTc{anYyPAjkZM?F25fTxEdY(1LF)Y)hAR=`T5>klRScIS+ zZ5_|&-jpvZm@~;)x%SEe3ROC;^$XA#WovnGe(VacP7x9j1Sikd#xX3@q#z=75E4>| z*jR+XiN;3;$nL)y=PB8*@|k{9=aIkExAc(VzM0=D7z0`3%Q^!^*$`iqt+I*GiX#lI zJZnQgtDKz0Dk@~BSZFsf#mP=oXwOFX?1E<>&lR6|lr^F6XR}o%5n6DBp@qlJBeN4( ztPI*4yMUIhMs$B1Q0=)x-20}x>25O*_U*v{YZoCAL9pYlIEH1K6hx#BLP81=8;cOw zk@iSF_sY>j>rW<+LVI((aNSa`M~j$xT51re!(kdQ*e#sX)etnuHsyzYOmxwLy@`}zU*K5irg7OuMM zfs%pb38PQF=3H%~Z+dh1TV&jn( z@efQ4gNu?Bk&QT)%wuz{LtZT-V&fq<)P(SmG9orE@^=!#MM=U_`19fkys4EwNf!T| zKL{?qG_g?9Nh)_^beiT0H|r5?Rn1f^M@ctOvBMd3D;3L9(k)mk>5KRcw1bLiGU!I^ VXGk?!G;O6~nGAi2TiAF;{Q*e#U`PM} delta 1660 zcmcJP-%C?r7{`5GXFe|U&0ipn%2G3%zah^5mBnRq9@pZcdw!~TddW3&&pp5FshM0@a@X8;dEC`= zo}X3BK_2PKGzxq}v68Lw5#26YtrNibZqSE~BFGT{qk!w;7*c3v2ul@={3*oJRM3?O zZV|xhE%#xo2yz6#D&UqlhPW7z&z+4Gez5-0&fMylyP1p|7Rb5jK7O=DM4HQNHqu;o z+^HA9d`L$#iy%h;%mQwTV@RQyAuLre@=HV<%LS?+n92S{E&sOul}e*y$MD?^XAx>9 z+ttIgeM_wU9`B3~_lO`z0D5B6N*Ic1^8I?Z-1AdJu)bIMi0*v33FM-UmKx7eS5y*ah4k$B;rZLs+U{twLmWd2 z%?x3wf{{OkSegpD62VO;zr^K#`4;mzeIHJZ{l}(*VB)I=pQtsN$-6rkH56UwTv(ys ztf`g7yR(z7Wq0yB#-AShg|tJyvTK_+K04kzzI2Jkn;YhJGtI1lkT*n1CN8Zy_wsfI zc8dgXZujpLZH-g0Iqt)iA~@p_1n1gAMoc{SFzE-Uf>@gFw0@NlH6@fGb_N(xQ-bIbJ4NvYI@IR4Br9U)2f!&*%k#2I<~)vaY5Bwa zqDyRRw4!LCn(IK(GZ~y6MRV1hjcPULp#Q*ip=f>vXQBBF$&<@*Z77pV=8CHnWJGQQ{(wkiKr{c+t@Df`QWo hr;rQkP-Ed*AdHI~p`Y0qBsMdNol|BEn|#qy0su?tODF&U diff --git a/tests/integration/test_integration.py b/tests/integration/test_integration.py index 6e8b8fa..b367d94 100644 --- a/tests/integration/test_integration.py +++ b/tests/integration/test_integration.py @@ -43,7 +43,7 @@ def test_validate_all_generated_recipes(): for recipe_file in RECIPE_DIR.glob('*.cfg'): content = recipe_file.read_text() assert len(content) > 0, f"Recipe {recipe_file.name} is empty" - assert '%ksappend' in content, f"Recipe {recipe_file.name} missing %ksappend" + assert '%include' in content, f"Recipe {recipe_file.name} missing %include" def test_make_targets(): diff --git a/tests/test_recipe_generator.py b/tests/test_recipe_generator.py index 8ad372e..1ff1302 100644 --- a/tests/test_recipe_generator.py +++ b/tests/test_recipe_generator.py @@ -60,10 +60,10 @@ class TestRecipeGenerator: storage='standard', security='secure') assert '# An install recipe for desktop, server, or hypervisor' in content - assert '%ksappend fragments/core/base.ks' in content - assert '%ksappend fragments/desktop/gnome/packages.ks' in content - assert '%ksappend fragments/repo/fedora-43-mirrors.ks' in content - assert '%ksappend fragments/core/security/enabled.ks' in content + assert '%include fragments/core/base.ks' in content + assert '%include fragments/desktop/gnome/packages.ks' in content + assert '%include fragments/repo/fedora-43-mirrors.ks' in content + assert '%include fragments/core/security/enabled.ks' in content def test_generate_virtual_desktop_encrypted(self): """Test generating encrypted desktop recipe.""" @@ -71,7 +71,7 @@ class TestRecipeGenerator: desktop='gnome', storage='encrypted', security='secure') - assert '%ksappend fragments/storage/encrypted.ks' in content + assert '%include fragments/storage/encrypted.ks' in content def test_generate_virtual_desktop_labwc(self): """Test generating LabWC desktop recipe.""" @@ -79,8 +79,8 @@ class TestRecipeGenerator: desktop='labwc', storage='standard', security='secure') - assert '%ksappend fragments/desktop/labwc/config.ks' in content - assert '%ksappend fragments/desktop/gnome/packages.ks' not in content + assert '%include fragments/desktop/labwc/config.ks' in content + assert '%include fragments/desktop/gnome/packages.ks' not in content def test_generate_virtual_desktop_devel(self): """Test generating development mode desktop recipe.""" @@ -88,7 +88,7 @@ class TestRecipeGenerator: desktop='gnome', storage='standard', security='off') - assert '%ksappend fragments/core/security/disabled.ks' in content + assert '%include fragments/core/security/disabled.ks' in content def test_generate_virtual_server(self): """Test generating server recipe.""" @@ -96,7 +96,7 @@ class TestRecipeGenerator: initial_setup='server', security='secure') assert '# An install recipe for desktop, server, or hypervisor' in content - assert '%ksappend fragments/initial-setup/server/config.ks' in content + assert '%include fragments/initial-setup/server/config.ks' in content def test_generate_desktop_hypervisor_amd(self): """Test generating AMD CPU hypervisor recipe.""" @@ -105,8 +105,8 @@ class TestRecipeGenerator: hypervisor='base', hypervisor_type='amdcpu', security='secure') - assert '%ksappend fragments/hypervisor/amdcpu.ks' in content - assert '%ksappend fragments/hypervisor/intelcpu.ks' not in content + assert '%include fragments/hypervisor/amdcpu.ks' in content + assert '%include fragments/hypervisor/intelcpu.ks' not in content def test_generate_desktop_hypervisor_intel_gpu(self): """Test generating Intel CPU+GPU hypervisor recipe.""" @@ -115,7 +115,7 @@ class TestRecipeGenerator: hypervisor='base', hypervisor_type='intelcpu', security='secure') - assert '%ksappend fragments/hypervisor/intelcpu.ks' in content + assert '%include fragments/hypervisor/intelcpu.ks' in content def test_generate_live_desktop(self): """Test generating live desktop recipe.""" @@ -123,15 +123,15 @@ class TestRecipeGenerator: desktop='gnome', security='secure') assert '# A live recipe for live-desktop or live-server' in content - assert '%ksappend fragments/live/core/base.ks' in content - assert '%ksappend fragments/live/core/storage.ks' in content + assert '%include fragments/live/core/base.ks' in content + assert '%include fragments/live/core/storage.ks' in content def test_generate_live_server(self): """Test generating live server recipe.""" content = self.generator.generate_recipe('live', 'rawhide', security='secure') assert '# A live recipe for live-desktop or live-server' in content - assert '%ksappend fragments/live/core/base.ks' in content + assert '%include fragments/live/core/base.ks' in content def test_no_duplicate_includes(self): """Test that duplicate includes are prevented.""" @@ -140,9 +140,9 @@ class TestRecipeGenerator: hypervisor='base', hypervisor_type='intelcpu', security='secure') - includes = [line for line in content.split('\n') if line.startswith('%ksappend')] + includes = [line for line in content.split('\n') if line.startswith('%include')] paths = [line.split()[1] for line in includes] - assert len(paths) == len(set(paths)), "Found duplicate %ksappend entries" + assert len(paths) == len(set(paths)), "Found duplicate %include entries" def test_missing_ingredient_detection(self): """Test that missing fragments are detected."""