Purpose of .iso
The .iso has value in providing an advanced base on which to install nvidia-304xx drivers for a
Rocky-8 installation requiring them. From it, the only additional procedural steps are related
to the RPMFusion-related modules required, as described in the post,
Installation of nvidia-304xx drivers on Rocky8.5
Development Platform
The test machine was a HP Pavilion Media Center m8247C with SATA disk controllers and
nvidia graphics card.
The development installation was a rocky-8-xfce-elrepo.iso produced by livecd-creator using nasunalika’s file, rocky-8-xfce-elrepo.ks, as described in the post,
The freshly-installed .iso requires the following
initial post-installation steps:
-login as root → into the root directory, sudo cp -p /etc/os-release ./ then reboot
and login as ordinary user.
-local install Fedora-RPM-GPG-KEYS.fc29.noarch.rpm, and then in /etc/pki/rpm-gpg,
rpm --import the fc29 and fc27 x86_64 keys.
-sudo yum group install ‘RPM Development Tools’.
-sudo yum install livecd-tools.
-sudo yum install brasero (xfburn is not available; use brasero instead).
Creation of local repos
The local repos were installed on a mountable CD. They were initially configured in individual
sub-directories on the hard drive. Into a subdirectory Fedora29, the fc29 kernel modules were
entered, and the sudo createrepo ~/Fedora29 command was run to produce the repodata directory
in Fedora29. Similarly, into a subdirectory Fedora27, the fc27 graphics modules were entered, and
the sudo createrepo ~/Fedora27 command was run to produce the repodata directory in Fedora27.
To place these subdirectories on a CD, the new data composition option of brasero was used.
NB: The default label used by brasero contains blanks which is not acceptable in a repo
baseurl. The contiguous label, Fedora29+27 was used.
The contents of the Fedora29 repo are:
kernel-4.18.16-300.fc29.x86_64.rpm
kernel-core-4.18.16-300.fc29.x86_64.rpm
kernel-cross-headers-4.18.16-300.fc29.x86_64.rpm
kernel-devel-4.18.16-300.fc29.x86_64.rpm
kernel-headers-4.18.16-300.fc29.x86_64.rpm
kernel-modules-4.18.16-300.fc29.x86_64.rpm
kernel-modules-extra-4.18.16-300.fc29.x86_64.rpm
kernel-tools-4.18.10-300.fc29.x86_64.rpm
kernel-tools-libs-4.18.10-300.fc29.x86_64.rpm
kernel-tools-libs-devel-4.18.10-300.fc29.x86_64.rpm
repodata
The contents of the Fedora27 repo are:
repodata
xorg-x11-drv-ati-7.9.0-3.fc27.x86_64.rpm
xorg-x11-drv-evdev-2.10.5-4.fc27.x86_64.rpm
xorg-x11-drv-fbdev-0.4.3-28.fc27.x86_64.rpm
xorg-x11-drv-intel-2.99.917-30.20160929.fc27.x86_64.rpm
xorg-x11-drv-libinput-0.26.0-1.fc27.x86_64.rpm
xorg-x11-drv-nouveau-1.0.15-3.fc27.x86_64.rpm
xorg-x11-drv-qxl-0.1.5-5.fc27.x86_64.rpm
xorg-x11-drv-vesa-2.3.2-28.fc27.x86_64.rpm
xorg-x11-drv-vmware-13.2.1-4.fc27.x86_64.rpm
xorg-x11-drv-wacom-0.35.0-3.fc27.x86_64.rpm
xorg-x11-server-common-1.19.6-7.fc27.x86_64.rpm
xorg-x11-server-Xorg-1.19.6-7.fc27.x86_64.rpm
Local .repo files added to /etc/yum.repos.d directory on development system:
-Fedora29-media.repo with the contents:
[Fedora29-media]
name=Fedora29-media repo
baseurl=file:///run/media/user/Fedora29+27/Fedora29
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-29-x86_64
-Fedora27-media.repo with the contents:
[Fedora27-media]
name=Fedora27-media repo
baseurl=file:///run/media/user/Fedora29+27/Fedora27
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-27-x86_64
Modifications/additions to rocky-8-xfce-elrepo.ks to create
rocky-8-xfce-fc+elrepo.ks:
The repo definition section at the start of the .ks shows the adjustments:
Use network installation
url --url https://download.rockylinux.org/stg/rocky/8/BaseOS/$basearch/os/
repo --name=“BaseOS” --baseurl=http://dl.rockylinux.org/pub/rocky/8.7/BaseOS/$basearch/os/ --excludepkgs=kernel-cross-headers --cost=200
repo --name=“AppStream” --baseurl=http://dl.rockylinux.org/pub/rocky/8.7/AppStream/$basearch/os/ --excludepkgs=xorg-x11-drv*,xorg-x11-server-Xorg,xorg-x11-server-common --cost=200
repo --name=“PowerTools” --baseurl=http://dl.rockylinux.org/pub/rocky/8.7/PowerTools/$basearch/os/ --excludepkgs=kernel-tools-libs-devel --cost=200
repo --name=“extras” --baseurl=http://dl.rockylinux.org/pub/rocky/8.7/extras/$basearch/os --cost=200
repo --name=“epel” --baseurl=https://dl.fedoraproject.org/pub/epel/8/Everything/$basearch/ --cost=200
repo --name=“epel-modular” --baseurl=https://dl.fedoraproject.org/pub/epel/8/Modular/$basearch/ --cost=200
elrepo repository - required for kmods
repo --name=“elrepo” --baseurl=https://elrepo.org/linux/elrepo/el8/$basearch/ --cost=200
Fedora29-media repository - provides fc29 kernel packages
repo --name=“Fedora29-media” --baseurl=file:///run/media/user/Fedora29+27/Fedora29/ --cost=200
Fedora27-media repository - provides fc27 graphics packages
repo --name=“Fedora27-media” --baseurl=file:///run/media/user/Fedora29+27/Fedora27/ --cost=200
In this excerpt from the %packages section of the .ks, changes are bracketed by a
comment # line before and after the package change:
anaconda-live
xfburn not available; use brasero instead
brasero
chkconfig
dracut-live
epel-release
f32-backgrounds-extras-xfce
f32-backgrounds-xfce
firefox
firewall-config
geany
glibc-all-langpacks
gparted
2 additional packages to base-x
initial-setup-gui
spice-vdagent
initscripts
kernel
kernel-modules
kernel-modules-extra
explicitly include optional packages
kernel-devel
kernel-cross-headers
memtest86+
mousepad
A %post section was added at the end of the .ks file:
-xsane-gimp
elrepo packages
elrepo-release
kmod-sata_nv
kmod-forcedeth
%end
%post
yum install -y file:///run/media/user/Fedora29+27/Fedora29/kernel*.rpm
yum install -y file:///run/media/user/Fedora29+27/Fedora27/xorg-x11-*.rpm
%end
With the local repo CD mounted, and the .ks file in place in /usr/share/doc/livecd-tools,
sudo livecd-creator --config=/usr/share/doc/livecd-tools/rocky-8-xfce-fc+elrepo.ks
started the process, which ran for 54 minutes.
The resultant .iso was installed on a Compaq Presario with SATA disk controllers and
nvidia graphics card, and the required additions to install nvidia-304xx drivers were
successful.
Len E.