No-Compromises-ISO/include/ws9_post_fixes.ks

74 lines
2.4 KiB
Plaintext

# Fixes and tweaks to make things easier for end-users
%post
# Need DNS available, so we'll hack it up real quick:
echo "nameserver 1.1.1.1" > /etc/resolv.conf
# switch default kernel package to the -lt variant:
echo -e "DEFAULTKERNEL=kernel-lt-core\nUPDATEDEFAULT=yes" > /etc/sysconfig/kernel
# Enable crb and extras by default
dnf config-manager --enable crb
dnf config-manager --enable extras
dnf config-manager --enable elrepo-kernel
# Filthy hack alert: Had DNS resolution issues when building in mock. This is the "solution", for now:
echo "nameserver 1.1.1.1" > /etc/resolv.conf
curl -o /etc/yum.repos.d/nvidia.repo https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/cuda-rhel9.repo
cat > /etc/sysctl.d/80-i915-fix.conf <<EOF
# fix performance for newer integrated Intel i915 gfx:
dev.i915.perf_stream_paranoid = 0
EOF
# Add flathub so Gnome Software shows all kinds of great apps:
mkdir -p /etc/flatpak/remotes.d
curl -o /etc/flatpak/remotes.d/flathub.flatpakrepo https://dl.flathub.org/repo/flathub.flatpakrepo
# Install Google Chrome:
dnf -y install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
# Initialize flathub + dnf metadata (attempt to make Software app faster first-boot):
flatpak remote-ls &> /dev/null
flatpak update
dnf -y makecache
# Enable dkms service:
systemctl enable dkms
# Visible char. marks for sudo:
echo "Defaults pwfeedback" > /etc/sudoers.d/50_feedback
# Make Anaconda install-to-disk icon visible in live environment:
sed -i 's/NoDisplay=true/#NoDisplay=true/' /usr/share/applications/anaconda.desktop
sed -i 's/NoDisplay=true/#NoDisplay=true/' /usr/share/applications/liveinst.desktop
# Inside-the-ISO postinstall script
# Anything put in /usr/shar/anaconda/post-scripts/*.ks will be run as a %post
# after the user installs on their system from the booted live ISO. We need to do grub boot modification
# only after Anaconda has run and installed on their system, not when this ISO is built:
# Need to turn %post and %end into variables, or kickstart gets confused:
export post="%post"
export end="%end"
cat > /usr/share/anaconda/post-scripts/95-kernel-gfx-args.ks <<EOF
${post}
# Add Intel + Nvidia tweaks to permanent boot options automatically:
sed -i 's/quiet"/quiet i915.force_probe=* rd.driver.blacklist=nouveau"/' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
${end}
EOF
# Clean up some space at the end:
dnf -y clean all
%end