fedora install from container tarball

 

https://mirrormanager.fedoraproject.org/

https://mirrors.tuna.tsinghua.edu.cn/fedora/releases/41/

https://mirrors.tuna.tsinghua.edu.cn/fedora/releases/41/Container/x86_64/images/Fedora-Container-Base-Generic-Minimal-41-1.4.x86_64.oci.tar.xz

tar xf Fedora-Container-Base-Generic-Minimal-41-1.4.x86_64.oci.tar.xz

 tar tvf Fedora-Container-Base-Generic-Minimal-41-1.4.x86_64.oci.tar.xz
drwxr-xr-x 0/0               0 2024-10-24 20:31 blobs/
drwxr-xr-x 0/0               0 2024-10-24 20:31 blobs/sha256/
-rw-r--r-- 0/0             504 2024-10-24 20:31 blobs/sha256/28e20d822db81517f4fbb67292bf23e1b17131d8b51605c262a02b9b898b24a4
-rw-r--r-- 0/0        50701616 2024-10-24 20:31 blobs/sha256/32b07b9a22d03d120489b279e0d0764e2945a00b566e1de536fb232e718c4dc4
-rw-r--r-- 0/0             858 2024-10-24 20:31 blobs/sha256/856c6718e99185c1e9d7d1ff9eac557283e0e49ecbfe362adfc5efa958550368
-rw-r--r-- 0/0             258 2024-10-24 20:31 index.json
-rw-r--r-- 0/0              30 2024-10-24 20:31 oci-layout

notice largest size image and extract it 

sudo tar xvpf blobs/sha256/32b07b9a22d03d120489b279e0d0764e2945a00b566e1de536fb232e718c4dc4 -C /mnt/

$ echo nameserver 1.1.1.1 | sudo tee /mnt/etc/resolv.conf

sudo  chroot.sh /mnt


Postextract

dnf update

dnf install nano bash-completion glibc-langpack-en glibc-langpack-en
. /etc/profile.d/bash_completion.sh

nano /etc/dnf/dnf.conf
[main]

tsflags=nodocs
install_weak_deps=False
fastestmirror=True
max_parallel_downloads=10
installonly_limit=3
clean_requirements_on_remove=True
skip_if_unavailable=True


dnf swap fedora-release-identity-container fedora-release-identity-kde  
dnf swap fedora-release-container fedora-release-kde
dnf update  

selinux relabel

touch /.autorelabel
or 
fixfiles -F onboot

disalbe selinux enforcig on /etc/selinux/config or kernel parameter enforcing=0 before relabel
/etc/selinux/config
SELINUX=permissive
make this enforcing after labeling complete / first boot
SELINUX=enforcing
reboot 
getenforce  
Enforcing

install kde by group

dnf install @core
dnf install @kde-desktop

this is huge metapackage 
dnf install @kde-desktop-environment

grub

mount esp as grub-common installs files to efi partition 
mount /dev/sda1 /boot/efi

dnf install grub2-efi-x64 shim-x64 grub2-efi-x64-modules grubby efibootmgr

if alterd files in esp reinstall
dnf reinstall shim-* grub2-efi-* grub2-common 


dnf install plymouth-system-theme plymouth-theme-breeze plymouth-kcm

plymouth-set-default-theme -R bgrt



sddm

systemctl set-default graphical.target
systemctl enable sddm
if xorg is not installed you need to edit sddm to use wayland 

cat /etc/sddm.conf.d/10-wayland.conf  
[General]
DisplayServer=wayland
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell

[Wayland]
CompositorCommand=kwin_wayland --drm --no-lockscreen --no-global-shortcuts --locale1

make sure plasma-workspace and kwin is installed 

firmware

dnf install wireless-regdb 
either 
dnf install atheros-firmware intel-gpu-firmware 

or 
cd /lib/firmware
mkdir i915 ; cd i915 curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/icl_dmc_ver1_09.bin curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/icl_guc_70.1.1.bin curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/icl_huc_9.0.0.bin
cd /lib/firmware
mkdir -p ath10k/QCA9377/hw1.0 ; cd  ath10k/QCA9377/hw1.0
curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/board-2.bin
curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/board.bin
curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/firmware-5.bin
curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/firmware-6.bin
curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/firmware-sdio-5.bin


cd /lib/firmware
mkdir qca ; cd qca
curl -O https://web.git.kernel.org/pub/scm/linux/kernel/git/ath/linux-firmware.git/plain/qca/rampatch_usb_00000302.bin

dnf swap ffmpeg-free ffmpeg --allowerasing 

dnf install @multimedia 

dnf install intel-media-driver flatpak breeze-gtk  bottles htop falkon okular mpv plasma-discover-packagekit upower 


netowrk

dnf install NetworkManager-wifi NetworkManager-config-connectivity-fedora bluedevil

cat /etc/NetworkManager/conf.d/wifi_backend.conf
[device]
wifi.backend=iwd

initramfs

basename /lib/modules/*

6.13.9-200.fc41.x86_64


UKI

sudo dnf install zstd binutils

nano /etc/dracut.conf

hostonly="yes"
uefi="yes"
compress="zstd"
strip_all="yes"
kernel_cmdline="root=PARTUUID=be57edf4-255d-d542-ad39-9a5b3574ae5f  rootfstype=ext4 rootflags=rw,noatime"

machine_id="no"


for uki 
<EFI>/EFI/Linux/linux-$kernel$-<MACHINE_ID>-<BUILD_ID>.efi.


dracut -fv --kver 6.13.9-200.fc41.x86_64 -o /boot/initramfs-6.13.9-200.fc41.x86_64.img


cat /etc/fstab

# <file system> <dir>   <type>  <options>               <dump>  <pass>
PARTUUID=be57edf4-255d-d542-ad39-9a5b3574ae5f / ext4 rw,noatime 1 1  
PARTUUID=a7e73101-0c1c-7d46-964b-eb7977ae3586 /home ext4 rw,noatime 0 1

systemd-boot

kernel-install list
VERSION                 HAS KERNEL PATH                                    
6.10.11-200.fc40.x86_64          ✓ /usr/lib/modules/6.10.11-200.fc40.x86_64
mount /dev/nvme0n1p1 /boot/efi
boot loader
kernel-install add 6.10.11-200.fc40.x86_64  /boot/vmlinuz-6.10.11-200.fc40.x86_64.img  /boot/initramfs-6.10.11-200.fc40.x86_64.img 

Keyboard

cat .profile
export XKB_DEFAULT_OPTIONS=caps:backspace,grp:alt_shift_toggle
export XKB_DEFAULT_LAYOUT=us,np

manual kde install

for minimal install on dnf.conf
exclude=dhcp-client,dracut-config-rescue,man-db,openssh-server,sssd-common,plymouth,parted,NetworkManager,firewalld,sssd-kcm

sudo dnf5 install NetworkManager-wifi mesa-dri-drivers kde-settings-pulseaudio xorg-x11-server-Xorg xorg-x11-drv-libinput plasma-nm selinux-policy wireless-regdb dnf5 swap fedora-release-identity-container fedora-release-identity-kde dnf5 install kernel kernel-core kernel-modules dnf5 install plasma-desktop-wayland kwin-wayland sddm dolphin konsole PackageKit-command-not-found colord-kde kde-gtk-config kdialog bash-completion bluedevil kdeplasma-addons plasma-discover plasma-discover-packagekit dnf5 install fastfetch okular gwenview pipewire plasma-pa kinfocenter pciutils usbutils kscreen zram-generator systemd-oomd-defaults fwupd fwupd-efi fwupd-plugin-uefi-capsule-data polkit-kde firewall-config kate dnf5 install ark kcalc kcharselect spectacle kcm_systemd nss sddm-kcm sddm-wayland-plasma lifeograph htop nnn sddm-breeze plasma-systemmonitor upower powerdevil dosfstools power-profiles-daemon libva-utils dnf5 install intel-media-driver zram-generator-defaults rpmfusion-free-appstream-data rpmfusion-nonfree-appstream-data sudo dnf5 install @multimedia @sound-and-video ffmpeg-libs gstreamer1-plugins-{bad-*,good-*,base} gstreamer1-plugin-openh264 gstreamer1-libav --allowerasing dnf5 install ffmpeg-libs --allowerasing dnf5 install @sound-and-video dnf install libselinux-utils selinux-policy selinux-policy-targeted policycoreutils audit sssd-kcm
systemctl set-default graphical.target

sudo dnf group list --hidden --contains-pkgs basesystem


https://github.com/Zer0CoolX/Fedora-KDE-Minimal-Install-Guide

Comments

Popular posts from this blog

xdm linux merge incomplete download parts

kde on debian