# __ ____ ____ _____ # ____ / /_ __ __/ / /___ ____ ___ ___ / __ \/ ___/ # / __ \/ __ \/ / / / / / __ \/ __ `__ \/ _ \ / / / /\__ \ # / /_/ / / / / /_/ / / / /_/ / / / / / / __/ / /_/ /___/ / # / .___/_/ /_/\__, /_/_/\____/_/ /_/ /_/\___/ \____//____/ # /_/ /____/ # WHAT ? This Kickstart file that bootstraps a desktop-oriented virtual machine. # 'v' for virtual machine, 'd' for desktop, 'p' for personalized, 'e' for efi, 'p' for production. # USAGE : Press the `tab` or 'e' key during POST and apend that after the 'quiet' string : # inst.ks=https://git.phyllo.me/home/kickstart/raw/branch/master/f34/vdpep.cfg # A shorter URL can also be used : # inst.ks=https://url.phyllo.me/vdpep # ATTENTION : this kickstart file will automatically DESTROY the main virtual disk 'vda' and all of its contents. # Bye bye! ## INSTALLATION SOURCE ## # Configure the cdrom as the installation method cdrom # Set URL url --url="http://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os" ## INSTALLATION TYPE ## # Perform Installation in text mode text ## REPOSITORIES ## # Add mirro and repo url --mirrorlist="https://mirrors.fedoraproject.org/metalink?repo=fedora-34&arch=x86_64" repo --name=fedora-updates --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f34&arch=x86_64" --cost=0 repo --name=rpmfusion-free --mirrorlist="https://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-34&arch=x86_64" --includepkgs=rpmfusion-free-release repo --name=rpmfusion-free-updates --mirrorlist="https://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-updates-released-34&arch=x86_64" --cost=0 repo --name=rpmfusion-nonfree --mirrorlist="https://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-34&arch=x86_64" --includepkgs=rpmfusion-nonfree-release repo --name=rpmfusion-nonfree-updates --mirrorlist="https://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-updates-released-34&arch=x86_64" --cost=0 ## USER RELATED ## # Keyboard layouts -> Doesn't seem to survive a reboot keyboard --xlayouts='ch (fr)' # Set the system language to American English lang en_US.UTF-8 # System timezone timezone Europe/Paris --utc # Pour Paris ! # Set root password and activate the account rootpw --iscrypted $6$1Qp09nFQWuKCIYbR$EtsMGR9btLcZqPzgdi56gNc4q00UYbWxV0TAWlE8gkjhdBK7tJ2QrabHXShDFPz.X5r7Ux1m3cUOJb3ZYQdhY/ # Create "test" user account user --name=lukas --password=$6$iSrkYfqhTgyyf8ND$mpc0D/C0S8WbrS2uG62Gf3kH8wjNAGUFUI3RMQFC9HGjM7HOy169blyhuRnzFSJUSjKQOoK0lfU353h//IpNg/ --iscrypted --gecos="lukas" ## NETWORK RELATED ## # Configure Firewall firewall --disabled # Configure Network Interfaces network --onboot=yes --bootproto=dhcp --hostname=vdpep # Run the Setup Agent on first boot firstboot --enable ## DISK RELATED ## # Only use disk labelled as vda ignoredisk --only-use=vda # System bootloader configuration bootloader --location=mbr # WARNING : Dangerous command ! Will clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel --drives=vda # Disk partitioning information. # Will create an efi partitition of 128 MiB, a boot partition of 350 MiB on disk vda using the ext4 filesystem. The remaining space will be used for root. part /boot/efi --fstype="efi" --ondisk=vda --size=128 --fsoptions="umask=0077,shortname=winnt" --label=efi part /boot --fstype="ext4" --ondisk=vda --size=350 --label=boot part pv.122 --fstype="lvmpv" --ondisk=vda --size=1 --grow --encrypted --luks-version=luks2 volgroup system pv.122 logvol / --fstype="ext4" --size=8192 --label="root" --name=root --vgname=system # System timezone timezone Europe/Paris --utc # Root password user account ## SOFTWARE ## # Install packages for the server environment. 'Core' and 'Base' are always selected %packages @core ## Desktop-related packages to create a minimal desktop environment. # Impossible to install dependencies, probably because the Fedora Server ISO doesnt' include them. # We may switch to the Workstation ISO as a workaround # We install packages after the installation # # gnome-shell # Minimal GNOME environement # libpulse-mainloop-glib.so.0 # gnome-shell dependency # libpulse.so.0 # gnome-shell dependency # geoclue2-libs # gnome-shell dependency # accountsservice-libs # gnome-shell dependency # bolt # gnome-shell dependency # control-center # gnome-shell dependency # gdm-libs # gnome-shell dependency # highcontrast-icon-theme # gnome-shell dependency # switcheroo-control # gnome-shell dependency # upower # gnome-shell dependency # xdg-user-dirs-gtk # gnome-shell dependency # libgweather # gnome-shell dependency # gnome-bluetooth # gnome-shell dependency # xdg-desktop-portal-gtk # gnome-shell dependency # # gnome-terminal # -gnome-tour # We don't want GNOME-tour to open at launch so we delete it # # nautilus # Default File explorer for Gnome # gnome-terminal-nautilus # Terminal integration for Nautilus # gsettings-desktop-schemas # Nautilus dependency # libtracker-sparql-3.0.so.0 # Nautilus dependency # tracker3-miners # Nautilus dependency # libgexiv2.so.2 # Nautilus dependency # # # firefox # Internet browser # libfdk-aac.so.2 # Firefox dependency # libdbus-glib-1.so.2 # Firefox dependency # mozilla-filesystem-1.9-25 # Firefox dependency # qemu-guest-agent # Install software to allow the host to better interact with the guest (can't find the spice-vdagent package) ## spice-vdagent -fedora-logos # To be removed if we want to redistribute as Fedora Remix. -fedora-release-notes # To be removed if we want to redistribute as Fedora Remix. %end ## POST-INSTALLATION SCRIPTS ## ## Start of the %post section with logging into /root/ks-post.log %post --log=/root/ks-post.log localectl set-keymap ch-fr # Set keymap to `ch-fr`. Alternatively, `us` can be picked # dnf update -y # Update the system systemctl set-default graphical.target # Set the desktop environment as the default booting target with systemd dnf install -y gnome-shell gnome-terminal nano # Minimal GNOME shell or desktop environment plus the text nano editor dnf install -y nautilus gnome-terminal-nautilus # Default File explorer for GNOME and its integration with gnome-shell dnf install -y gedit # The official gnome text editor dnf install -y firefox # Internet browser dnf install -y nextcloud-client nextcloud-client-nautilus # The Nextcloud client and its integration with gnome-shell dnf install -y libreoffice-writer # The rich and open text editor dnf install -y spice-vdagent # Try to install spice-vdagent after the installation is done dnf install -y dejavu-sans-mono-fonts # the gnome-shell package doesn't include much fonts by default, resulting in weird spacings in gnome-terminal. dnf install -y elementary-wallpapers-gnome.noarch # Gorgeous wallpapers dnf install -y wpa_supplicant # WPA Supplicant for Linux. Not integrated by default in gnome-shell, but necessary to configure wireless networks through the Network Manager. dnf remove -y gnome-tour # We don't want GNOME-tour to open at launch so we delete it sed -i 's/5/1/' /etc/default/grub # set the GRUB_TIMEOUT countdown to 1 instead of 5 seconds. grub2-mkconfig -o /boot/grub2/grub.cfg # Update grub reboot # Reboot the installer (doesn't work (tm)) %end # End of the %post section