#version=DEVEL # System authorization information authselect --useshadow --passalgo sha512 # Install Parameters #install text reboot cdrom repo --name=epel --baseurl=https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/ repo --name=crb --baseurl=http://dl.rockylinux.org/pub/rocky/9.5/CRB/x86_64/os/ # Run the Setup Agent on first boot firstboot --enable eula --agreed # Keyboard layouts keyboard --vckeymap=us --xlayouts='us' # System language lang en_US.UTF-8 # Network information network --bootproto=dhcp --noipv6 --activate --onboot=true firewall --enable selinux --disabled # Root password is password change it manually rootpw --plaintext password # Create Local Accounts user --name=support --gecos="Support Account" --uid=5000 --plaintext --password changeme --groups=wheel # System services services --disabled="chronyd" # System timezone timezone --utc America/Los_Angeles # Disk Partition from PRE %include /tmp/partition.ks %packages @^server-gui @console-internet @headless-management @system-tools # Following groups needed for vitualization @virtualization-hypervisor @^virtualization-host-environment @workstation kexec-tools kexec-tools bacula-client oddjob sgpio mod_dav_svn jpackage-utils certmonger nscd sendmail sendmail-cf nmap rrdtool tree certmonger mutt logwatch autoconf automake dwz gettext-common-devel gettext-devel gnutls-dane gnutls-utils intltool libksba libmicrohttpd perl-Authen-SASL perl-CGI perl-Compress-Raw-Bzip2 perl-Compress-Raw-Zlib perl-Convert-ASN1 perl-Digest perl-Digest-HMAC perl-Digest-MD5 perl-Digest-SHA perl-Encode-Detect perl-Encode-Locale perl-Error perl-FCGI perl-File-Listing perl-GSSAPI perl-HTML-Parser perl-HTML-Tagset perl-HTTP-Cookies perl-HTTP-Date perl-HTTP-Message perl-HTTP-Negotiate perl-IO-Compress perl-IO-HTML perl-IO-Socket-IP perl-IO-Socket-SSL perl-JSON perl-JSON-PP perl-LDAP perl-LWP-MediaTypes perl-MailTools perl-Mozilla-CA perl-Net-HTTP perl-Net-SMTP-SSL perl-Net-SSLeay perl-TermReadKey perl-Test-Harness perl-Text-Soundex perl-Text-Unidecode perl-Thread-Queue perl-TimeDate perl-URI perl-WWW-RobotRules perl-XML-NamespaceSupport perl-XML-Parser perl-XML-SAX-Base perl-libwww-perl perl-srpm-macros redhat-rpm-config rpm-build texlive-algorithms texlive-amsfonts texlive-amsmath texlive-attachfile texlive-babel texlive-babelbib texlive-base texlive-bera texlive-booktabs texlive-breakurl texlive-caption texlive-carlisle texlive-chngcntr texlive-colortbl texlive-csquotes texlive-currfile texlive-enumitem texlive-eso-pic texlive-etex-pkg texlive-etoolbox texlive-fancyvrb texlive-filecontents texlive-filehook texlive-float texlive-fontspec texlive-footmisc texlive-fp texlive-geometry texlive-graphics texlive-hyperref texlive-hyphen-base texlive-ifetex texlive-ifxetex texlive-index texlive-kastrup texlive-koma-script texlive-kpathsea texlive-kpathsea-bin texlive-kpathsea-lib texlive-l3kernel texlive-l3packages texlive-latex texlive-latex-bin texlive-latex-bin-bin texlive-latex-fonts texlive-latexconfig texlive-listings texlive-lm texlive-lualatex-math texlive-luaotfload texlive-luaotfload-bin texlive-luatex texlive-luatex-bin texlive-luatexbase texlive-marginnote texlive-memoir texlive-mparhack texlive-ms texlive-multido texlive-oberdiek texlive-paralist texlive-parallel texlive-pdftex texlive-pdftex-bin texlive-pgf texlive-psnfss texlive-pst-3d texlive-pst-coil texlive-pst-eps texlive-pst-fill texlive-pst-grad texlive-pst-math texlive-pst-node texlive-pst-plot texlive-pst-text texlive-pst-tree texlive-pstricks texlive-pstricks-add texlive-qstest texlive-sauerj texlive-setspace texlive-showexpl texlive-soul texlive-subfig texlive-tetex texlive-tetex-bin texlive-thumbpdf texlive-thumbpdf-bin texlive-tipa texlive-tools texlive-underscore texlive-unicode-math texlive-url texlive-varwidth texlive-xcolor texlive-xkeyval texlive-xunicode unbound-libs zziplib openldap-clients adcli oddjob-mkhomedir realmd samba-common samba-common-tools sssd uuid wget rsync at bash-completion bc dosfstools dstat ed fprintd giflib git gpm-libs gtk2 http-parser hunspell iw iwl6000g2b-firmware java kpatch krb5-workstation langtable langtable-data ledmon lsof make man-pages man-pages-overrides mdadm mlocate mtr mt-st mtx nano neon net-tools ntsysv pcsc-lite-libs perl pinfo psacct pykickstart rfkill rng-tools satyr scl-utils slf4j systemd-sysv systemtap-runtime tcpdump tcsh time ttmkfdir usb_modeswitch usb_modeswitch-data usbutils usermode vdo vim-common vim-enhanced vim-filesystem words wpa_supplicant xdg-utils xfsdump yum-utils dos2unix # Packages after here needed by GUI NetworkManager-adsl NetworkManager-bluetooth NetworkManager-libreswan-gnome NetworkManager-ovs NetworkManager-ppp NetworkManager-wifi NetworkManager-wwan adwaita-gtk2-theme alsa-plugins-pulseaudio dconf-editor firewall-config gnome-disk-utility gnome-tweaks gstreamer1-plugins-ugly-free gvfs-fuse gvfs-gphoto2 gvfs-mtp gvfs-smb initial-setup-gui libsecret network-manager-applet nm-connection-editor seahorse xdg-user-dirs-gtk LibRaw ModemManager accountsservice accountsservice-libs alsa-ucm alsa-utils anaconda-core anaconda-gui anaconda-tui anaconda-user-help anaconda-widgets atkmm blivet-data bluez-obexd bolt cairomm cheese-libs clutter clutter-gst3 clutter-gtk cogl color-filesystem colord colord-gtk cups-pk-helper dbus-daemon dbus-glib dbus-x11 enchant enchant2 evolution-data-server evolution-data-server-langpacks flatpak-libs gcr gcr-base gdm geoclue2-libs geocode-glib gjs glibmm24 gnome-autoar gnome-bluetooth gnome-bluetooth-libs gnome-control-center gnome-control-center-filesystem gnome-desktop3 gnome-keyring gnome-keyring-pam gnome-menus gnome-online-accounts gnome-session gnome-session-wayland-session gnome-settings-daemon gnome-shell gnome-shell-extension-common gnome-shell-extension-user-theme gnome-themes-extra google-noto-fonts-common google-noto-sans-fonts graphviz gsound gstreamer1-plugins-bad-free gstreamer1-plugins-good gstreamer1-plugins-good-gtk gtk4 gtkmm30 gtksourceview4 gvfs gvfs-client harfbuzz-icu highcontrast-icon-theme hyphen ibus ibus-gtk2 ibus-gtk3 ibus-libs ibus-setup iio-sensor-proxy imath initial-setup jasper-libs keybinder3 lame-libs libXScrnSaver libXaw libXdmcp libXfont2 libXmu libXres libXt liba52 libcdio libcdio-paranoia libdvdnav libdvdread libgdata libglvnd-gles libgnomekbd libgphoto2 libgtop2 libgweather libhandy libical libical-glib libmbim libmbim-utils libmpeg2 libmtp libnma libpeas libpeas-gtk libpeas-loader-python3 libqmi libqmi-utils libqrtr-glib libreport libreport-anaconda libreport-cli libreport-gtk libreport-plugin-reportuploader libreport-web libsamplerate libshout libsigc++20 libspectre libsrtp libtimezonemap libv4l libvpx libwmf-lite libwnck3 libwpe libxcvt libxkbfile libxklavier lockdev mesa-vulkan-drivers mobile-broadband-provider-info mpg123-libs mutter ndctl openexr-libs openldap-compat pangomm pinentry pinentry-gnome3 pipewire-gstreamer power-profiles-daemon ppp pulseaudio-libs-glib2 python3-blivet python3-blockdev python3-bytesize python3-cairo python3-gobject python3-libreport python3-meh python3-meh-gui python3-pid python3-productmd python3-pwquality python3-pyparted python3-pytz python3-requests-file python3-requests-ftp python3-simpleline rest rocky-backgrounds setxkbmap soundtouch speex startup-notification switcheroo-control taglib tigervnc-server-minimal twolame-libs vte-profile vte291 vulkan-loader wavpack web-assets-filesystem webkit2gtk3 wireless-regdb woff2 wpebackend-fdo xdg-desktop-portal-gnome xdg-user-dirs xkbcomp xmlrpc-c xmlrpc-c-client xorg-x11-drv-libinput xorg-x11-fonts-ISO8859-1-100dpi xorg-x11-server-Xorg xorg-x11-server-Xwayland xorg-x11-server-common xorg-x11-server-utils xorg-x11-xauth xorg-x11-xinit yelp yelp-libs yelp-xsl zenity evolution-data-server-ui gnome-color-manager gnome-remote-desktop gnome-session-xsession gnome-shell-extension-background-logo gnome-tour libblockdev-dm libblockdev-kbd libblockdev-mpath libblockdev-nvdimm mod_ldap apr-util-ldap gnome-software # Needed for virtualization qemu-kvm libvirt virt-install virt-manager virt-viewer edk2-ovmf swtpm qemu-img guestfs-tools libosinfo tuned cockpit-machines cockpit-pcp # Needed for MATE NetworkManager-adsl NetworkManager-bluetooth NetworkManager-libreswan-gnome NetworkManager-openvpn-gnome NetworkManager-ovs NetworkManager-ppp NetworkManager-team NetworkManager-wifi NetworkManager-wwan adwaita-gtk2-theme alsa-plugins-pulseaudio atril atril-caja atril-thumbnailer caja caja-actions caja-image-converter caja-open-terminal caja-sendto caja-wallpaper caja-xattr-tags dconf-editor engrampa eom firewall-config gnome-disk-utility gnome-epub-thumbnailer gstreamer1-plugins-ugly-free gtk2-engines gucharmap gvfs-fuse gvfs-gphoto2 gvfs-mtp gvfs-smb initial-setup-gui libmatekbd libmatemixer libmateweather libsecret lm_sensors marco mate-applets mate-backgrounds mate-calc mate-control-center mate-desktop mate-dictionary mate-disk-usage-analyzer mate-icon-theme mate-media mate-menus mate-menus-preferences-category-menu mate-notification-daemon mate-panel mate-polkit mate-power-manager mate-screensaver mate-screenshot mate-search-tool mate-session-manager mate-settings-daemon mate-system-log mate-system-monitor mate-terminal mate-themes mate-user-admin mate-user-guide mozo network-manager-applet nm-connection-editor p7zip p7zip-plugins pluma seahorse seahorse-caja xdg-user-dirs-gtk lightdm-settings lightdm gnome-tweaks xrdp %end %addon com_redhat_kdump --disable --reserve-mb='auto' %end %pre # This script mkdir /test # The priority is reverse on this list for DEV in hde hdd hdc hdb hda sde sdd sdc sdb sda vda nvme0n1; do if [ -b /dev/$DEV ] then mount /dev/${DEV}1 /test if [ ! -d /test/isolinux ] then DISK=${DEV} fi umount /test fi done rmdir /test echo "ignoredisk --only-use=$DISK" >> /tmp/partition.ks echo "# System bootloader configuration" >> /tmp/partition.ks echo "bootloader --location=mbr --boot-drive=$DISK" >> /tmp/partition.ks echo " " >> /tmp/partition.ks echo "# Partition clearing information" >> /tmp/partition.ks echo "clearpart --all --initlabel --initlabel" >> /tmp/partition.ks echo " " >> /tmp/partition.ks echo "# Disk partitioning information" >> /tmp/partition.ks echo "part /boot --fstype="ext4" --ondisk=$DISK --asprimary --size=1024 --label=/boot" >> /tmp/partition.ks echo "part /boot/efi --ondisk=$DISK --fstype=efi --size=200" >> /tmp/partition.ks echo "part pv.155 --fstype="lvmpv" --ondisk=$DISK --asprimary --grow" >> /tmp/partition.ks echo "volgroup VG0 --pesize=4096 pv.155" >> /tmp/partition.ks echo "logvol /tmp --fstype="ext4" --size=1024 --name=tmp --vgname=VG0" >> /tmp/partition.ks echo "logvol swap --fstype="swap" --size=2048 --name=swap --vgname=VG0" >> /tmp/partition.ks echo "logvol /usr --fstype="ext4" --size=20480 --label="/usr" --name=usr --vgname=VG0" >> /tmp/partition.ks echo "logvol /home --fstype="ext4" --size=2048 --label="/home" --name=home --vgname=VG0" >> /tmp/partition.ks echo "logvol / --fstype="ext4" --size=4096 --label="/" --name=root --vgname=VG0" >> /tmp/partition.ks echo "logvol /var --fstype="ext4" --size=102400 --label="/var" --name=var --vgname=VG0" >> /tmp/partition.ks echo " " >> /tmp/partition.ks echo "# System bootloader configuration" >> /tmp/partition.ks echo "bootloader --append=\" crashkernel=auto\" --location=mbr --boot-drive=$DISK" >> /tmp/partition.ks %end %post --interpreter=/usr/bin/bash cd / cd root cat > /etc/sysctl.d/01-forward.conf <<'ENDOFFILE' # sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 1 ENDOFFILE cat /etc/yum.repos.d/virtio-win.repo <<'ENDOFFILE' # virtio-win yum repo # Details: https://fedoraproject.org/wiki/Windows_Virtio_Drivers [virtio-win-stable] name=virtio-win builds roughly matching what was shipped in latest RHEL baseurl=https://fedorapeople.org/groups/virt/virtio-win/repo/stable enabled=1 skip_if_unavailable=1 gpgcheck=0 [virtio-win-latest] name=Latest virtio-win builds baseurl=https://fedorapeople.org/groups/virt/virtio-win/repo/latest enabled=0 skip_if_unavailable=1 gpgcheck=0 [virtio-win-source] name=virtio-win source RPMs baseurl=https://fedorapeople.org/groups/virt/virtio-win/repo/srpms enabled=0 skip_if_unavailable=1 gpgcheck=0 ENDOFFILE cat > /etc/default/grub <<'ENDOFFILE' GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="resume=/dev/mapper/VG0-swap rd.lvm.lv=VG0/root rd.lvm.lv=VG0/swap rd.lvm.lv=VG0/usr rhgb quiet selinux=0 iommu=pt" GRUB_DISABLE_RECOVERY="true" GRUB_ENABLE_BLSCFG=true ENDOFFILE cat > /tmp/nwbridge.xml <<'ENDOFFILE' nwbridge ENDOFFILE /usr/bin/virsh net-define /tmp/nwbridge.xml /usr/bin/virsh net-start nwbridge /usr/bin/virsh net-autostart nwbridge echo "mate-session" > /etc/skel/.Xclients chmod 0755 /etc/skel/.Xclients echo "mate-session" > /home/support/.Xclients chmod 0755 /home/support/.Xclients update-ca-trust /usr/bin/firewall-offline-cmd --add-service={http,https,cockpit,samba,nfs,mountd,rpc-bind,rdp} /usr/bin/firewall-offline-cmd --add-port=22/tcp /usr/bin/firewall-offline-cmd --add-port=80/tcp /usr/bin/firewall-offline-cmd --add-port=443/tcp /usr/bin/firewall-offline-cmd --add-port=10000/tcp /usr/bin/firewall-offline-cmd --reload systemctl enable virtqemud.service systemctl enable virtqemud.socket virtqemud-ro.socket virtqemud-admin.socket systemctl enable virtinterfaced.service systemctl enable virtinterfaced.socket virtinterfaced-ro.socket virtinterfaced-admin.socket systemctl enable virtnetworkd.service systemctl enable virtnetworkd.socket virtnetworkd-ro.socket virtnetworkd-admin.socket systemctl enable virtnodedevd.service systemctl enable virtnodedevd.socket virtnodedevd-ro.socket virtnodedevd-admin.socket systemctl enable virtnwfilterd.service systemctl enable virtnwfilterd.socket virtnwfilterd-ro.socket virtnwfilterd-admin.socket systemctl enable virtsecretd.service systemctl enable virtsecretd.socket virtsecretd-ro.socket virtsecretd-admin.socket systemctl enable virtstoraged.service systemctl enable virtstoraged.socket virtstoraged-ro.socket virtstoraged-admin.socket systemctl enable tuned systemctl enable libvirtd systemctl enable xrdp systemctl enable cockpit.socket echo "===================" > root/stat.log echo -n "Born on " >> root/stat.log date >> root/stat.log echo "===================" >> root/stat.log echo "Using 9.5/vmhost-uefi.cfg" >> root/stat.log echo "From the Internet Kickstart" >> root/stat.log echo "===================" >> root/stat.log ip addr show >> root/stat.log echo "===================" >> root/stat.log %end