Back to main index

Install RockyLinux-10

Time and Date: optional NTP servers in Germany.

0.de.pool.ntp.org
1.de.pool.ntp.org
2.de.pool.ntp.org
3.de.pool.ntp.org

I use dnf priority to isolate the core system from 3rd party software.
It means a 3rd party package cannot upgrade a baseos package.
Here is my /etc/yum.repos.d/rocky.repo

[baseos]
name=Rocky Linux $releasever - BaseOS
mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=BaseOS-$releasever$rltype
gpgcheck=1
enabled=1
countme=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Rocky-10
priority=10

The rule is that if a [repository] has "enabled=1" then add "priority=X" to establish it's hierarchy among other repos. A lower value has higher priority.
The hierarchy usually is:

priority=10 for [baseos]
priority=20 for [appstream]
priority=20 for [crb]
priority=30 for [extras]
priority=40 for [epel]
priority=50 for [google-chrome]
priority=90 for [fedora]

Install epel repo, the Fedora Special Interest Group (with priority=40).

dnf install epel-release

Install GNOME desktop

dnf group install "Server with GUI"

systemctl set-default graphical.target
systemctl enable gdm.service

# Optional: create $HOME template directories, e.g. Documents, Downloads, Music, Trash as $HOME/.local/share/Trash
# Run as regular user
cd $HOME
xdg-user-dirs-update
Configure desktop (no extensions required)
gsettings set org.gnome.desktop.wm.preferences button-layout 'appmenu:minimize,maximize,close'
gsettings set org.gnome.desktop.wm.preferences resize-with-right-button true
gsettings set org.gnome.desktop.interface clock-show-weekday true
gsettings set org.gnome.desktop.interface clock-show-seconds true

Install KDE desktop

dnf group install "KDE Plasma Workspaces"
Error:
 Problem: problem with installed package sddm-wayland-generic-0.21.0-9.el10_1.noarch
  - package sddm-wayland-generic-0.21.0-9.el10_1.noarch from @System conflicts with sddm-greeter-displayserver provided by sddm-wayland-plasma-6.6.4-1.el10_2.noarch from epel

dnf repoquery -l sddm-wayland-generic-0.21.0-9.el10_1.noarch
Package sddm-wayland-generic-0.21.0-9.el10_1.noarch contains no files

dnf repoquery -l sddm-wayland-plasma-6.6.4-1.el10_2.noarch
/usr/lib/sddm/sddm.conf.d/plasma-wayland.conf

dnf swap sddm-wayland-generic sddm-wayland-plasma

dnf group install "KDE Plasma Workspaces"

dnf install sddm

systemctl set-default graphical.target
systemctl enable sddm.service

# Optional: create $HOME template directories, e.g. Documents, Downloads, Music, Trash as $HOME/.local/share/Trash
# Run as regular user
cd $HOME
xdg-user-dirs-update

Install Xfce desktop

Add Fedora41 signing key

cd /tmp
wget https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/41/Everything/x86_64/os/Packages/f/fedora-gpg-keys-41-1.noarch.rpm
rpm2cpio fedora-gpg-keys-41-1.noarch.rpm | cpio -idmv
cp etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-41-primary .
rm -rfv etc
rm fedora-gpg-keys-41-1.noarch.rpm

# as root
cp RPM-GPG-KEY-fedora-41-primary /etc/pki/rpm-gpg
chown -v root:root  /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-41-primary
chmod 644 /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-41-primary
chcon -u system_u -t cert_t -v /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-41-primary
Create /etc/yum.repos.d/fedora41.repo
[fedora41]
name=Fedora-41 extras for RHEL-10
baseurl=http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/41/Everything/$basearch/os/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-41-primary
protect=0
priority=90

Install Xfce desktop

dnf --enablerepo=fedora41 install xorg-x11-server-Xorg
dnf --enablerepo=fedora41 install lightdm
dnf --enablerepo=fedora41 install xfdesktop \
                                  xfce4-xkb-plugin \
                                  xfce4-weather-plugin \
                                  xfce4-time-out-plugin \
                                  xfce4-terminal \
                                  xfce4-systemload-plugin \
                                  xfce4-smartbookmark-plugin \
                                  xfce4-settings \
                                  xfce4-session \
                                  xfce4-sensors-plugin \
                                  xfce4-screenshooter \
                                  xfce4-power-manager \
                                  xfce4-panel \
                                  xfce4-notifyd \
                                  xfce4-notes-plugin \
                                  xfce4-netload-plugin \
                                  xfce4-mount-plugin \
                                  xfce4-dict \
                                  xfce4-datetime-plugin \
                                  xfce4-cpugraph-plugin \
                                  xfce4-cpufreq-plugin \
                                  xfce4-appfinder \
                                  xfce4-about \
                                  xfwm4 \
                                  xarchiver \
                                  udisks2 \
                                  thunar-volman \
                                  thunar-archive-plugin \
                                  Thunar \
                                  ristretto \
                                  parole \
                                  orage \
                                  ntfs-3g \
                                  mousepad \
                                  gtk-xfce-engine \
                                  exo


systemctl set-default graphical.target
systemctl enable lightdm.service

# Optional: create $HOME template directories, e.g. Documents, Downloads, Music, Trash as $HOME/.local/share/Trash
# Run as regular user
cd $HOME
xdg-user-dirs-update

Other packages

Create /etc/yum.repos.d/google-chrome.repo

[google-chrome]
name=google-chrome
baseurl=https://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
priority=50

Install software

dnf install emacs emacs-lucid thunderbird google-chrome-stable ImageMagick meld filezilla
dnf group install "Development Tools"

Install from flathub as root:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

flatpak remote-ls flathub | grep ristretto

flatpak install flathub org.xfce.ristretto \
                        org.gimp.GIMP \
                        org.gnome.Evince \
                        org.gnome.FileRoller \
                        org.libreoffice.LibreOffice \
                        org.videolan.VLC \
                        nl.openoffice.bluefish

flathub uninstall org.xfce.ristretto

Install KVM.
For setting up KVM with a Bridge Interface read kvm-centos
For setting up KVM with NAT forwarding (aka "virtual networks") read libvirt networking
For setting up KVM in general on rockylinux-10 read kvm-on-rocky-linux-10
virt-manager is deprecated in RHEL 10 in favor of Cockpit 10.0 Release Notes
virt-manager has no virtio-gpu, virtgl and 3D acceleration support.

dnf groupinstall "Virtualization Host"
dnf install virt-install virt-top virt-viewer virt-manager libguestfs-tools net-tools bridge-utils wget curl

# virt-manager is available in [crb]

usermod -aG libvirt $USER
usermod -aG kvm $USER

systemctl start libvirtd
systemctl enable libvirtd

lsmod | grep kvm

virsh net-list --all

brctl show

# Setup host NAT forwarding
vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
If you prefer the virt-manager from flatpak
flatpak install flathub org.virt_manager.virt-manager

# if virt-manager cannot read ISO or import qcow2 images then fix the permissions
chmod +x $HOME
setfacl -m user:qemu:--x $HOME 
flatpak override --user --filesystem=host org.virt_manager.virt_manager

Install VirtualBox-7.2

dnf install kernel-devel kernel-headers gcc gcc-c++ glibc make bzip2 \
            dkms perl elfutils-libelf-devel libX11-devel libXt libXmu

curl http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo -o /etc/yum.repos.d/virtualbox.repo

vi /etc/yum.repos.d/virtualbox.repo
# add priority=50

dnf search VirtualBox
# if dnf is complaining about not getting the signature key do the following:

cd /etc/pki/rpm-gpg
wget https://www.virtualbox.org/download/oracle_vbox_2016.asc
chown -v root:root oracle_vbox_2016.asc
chcon -u system_u -t cert_t -v oracle_vbox_2016.asc

vi /etc/yum.repos.d/virtualbox.repo
# replace gpg key:
gpgkey=file:///etc/pki/rpm-gpg/oracle_vbox_2016.asc

dnf install VirtualBox-7.2
VBoxManage -v

cd /tmp
curl -O ttp://download.virtualbox.org/virtualbox/7.2.4/Oracle_VirtualBox_Extension_Pack-7.2.4.vbox-extpack
VBoxManage extpack install Oracle_VirtualBox_Extension_Pack-7.2.4.vbox-extpack

# agree the license terms
Do you agree to these license terms and conditions (y/n)? y

VBoxManage list extpacks

# if the modules need to be rebuilt, then usually run
/sbin/vboxconfig

# VirtualBox is in conflict with QEMU/KVM and both cannot run at the same time.
# Remove kvm modules before starting a VM image.
lsmod | grep kvm
rmmod kvm_intel
rmmod kvm

To install VSCode on rocky-10 read this page

My own repository
Create /etc/yum.repos.d/vasilian.repo

[vasilian]
name=Vasilian packages for RHEL
baseurl=ftp://vasilian.net/RHEL/$releasever/extras/$basearch/
enabled=1
gpgcheck=1
gpgkey=ftp://vasilian.net/RHEL/$releasever/RPM-GPG-KEY-vasilian
protect=0
priority=90

Install some popular fonts.

dnf install win10-fonts mac-fonts



Back to main index