| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| linux:distros:fedora_workstation_gnome [2025/02/10 06:23] – Sean Rhone | linux:distros:fedora_workstation_gnome [2025/12/05 23:57] (current) – [Dracut] Sean Rhone |
|---|
| |
| * Fedora Workstation | * Fedora Workstation |
| * 41 | * 43 |
| * https://fedoraproject.org/workstation/ | * https://www.fedoraproject.org/workstation/ |
| |
| ===== TODOs ===== | Fedora Linux 43 (Workstation Edition) |
| |
| * 2025/02/10 | ====== Download ====== |
| |
| * Xorg notes (pkgs, GDM) | * https://www.fedoraproject.org/workstation/download |
| * XFS defrag | |
| |
| ====== Download ====== | Fedora-Workstation-Live-43-1.6.x86_64.iso |
| | |
| * https://fedoraproject.org/workstation/download | |
| |
| ====== Installation Notes ====== | ====== Installation Notes ====== |
| ===== Partitioning ===== | ===== Partitioning ===== |
| |
| ==== Spinesnap ==== | * ''64 MB'' EFI partition ''/boot/efi'' ((usage is ''20M'', but installer minimal to pass a check seems to be ''64M'')) |
| | * XFS ''/'' |
| * SD card ''/boot'' + NVMe ''/'' ((workaround Dell UEFI-only on internal/NVMe restriction, which [[https://discussion.fedoraproject.org/t/gnome-does-not-allow-login/118415/40|seems to fix GNOME log-in]])) | |
| |
| <code> | <code> |
| NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS |
| mmcblk0 179:0 0 1.9G 0 disk | zram0 251:0 0 8G 0 disk [SWAP] |
| ├─mmcblk0p1 179:1 0 1M 0 part | |
| └─mmcblk0p2 179:2 0 1.9G 0 part /boot | |
| zram0 252:0 0 8G 0 disk [SWAP] | |
| nvme0n1 259:0 0 953.9G 0 disk | nvme0n1 259:0 0 953.9G 0 disk |
| └─nvme0n1p1 259:1 0 953.9G 0 part / | ├─nvme0n1p1 259:1 0 61M 0 part /boot/efi |
| | └─nvme0n1p2 259:2 0 953.8G 0 part / |
| </code> | </code> |
| |
| **** | **** |
| |
| sudo dnf autoremove -y && sudo dnf update -y && sync | sudo dnf clean 'all' && sudo dnf autoremove -y && sudo dnf update -y && sync |
| |
| ==== Firmware ==== | ==== Firmware ==== |
| ===== Remove ===== | ===== Remove ===== |
| |
| * [[https://gitlab.gnome.org/GNOME/gnome-weather/-/issues/247|#247]], GNOME Weather lacks location data since 2022 and leaves a notification shade without choosing a location | **** |
| |
| sudo dnf remove gnome-weather gnome-software gnome-clocks mediawrite* | sudo dnf remove gnome-weather gnome-software gnome-clocks mediawrite* plymouth |
| | |
| | ==== Test ==== |
| | |
| | **** |
| | |
| | sudo dnf remove libvirt-client anaconda-* |
| | |
| | ==== Firmware ==== |
| | |
| | **** |
| | |
| | sudo dnf remove 'amd-gpu-firmware' 'nvidia-gpu-firmware' 'atheros-firmware' 'mt7xxx-firmware' |
| |
| ===== General ===== | ===== General ===== |
| **** | **** |
| |
| sudo dnf install evolution file-roller filezilla foliate gbrainy gimp gnome-backgrounds-extras gnome-extensions-app gnome-menus keepassxc mpv obs-studio transmission-gtk vlc android-tools aria2 binutils gdk-pixbuf2-modules-extra hdparm htop icoutils kernel-tools libva-utils lm_sensors gstreamer1-plugin-openh264 openh264 mozilla-openh264 p7zip p7zip-plugins sysfsutils unar wget xrandr yt-dlp | sudo dnf install file-roller filezilla foliate gbrainy gimp gnome-extensions-app keepassxc obs-studio thunderbird transmission-gtk vlc android-tools aria2 htop lm_sensors unar yt-dlp |
| |
| ===== Intel ===== | ===== Intel ===== |
| |
| * ''igt-gpu-tools'' provides ''intel_gpu_top'' | libva-intel-media-driver igt-gpu-tools |
| | |
| igt-gpu-tools | |
| |
| libva-intel-media-driver | libva-utils |
| |
| ===== Games ===== | ==== intel_gpu_top ==== |
| |
| **** | **** |
| |
| FlightGear neverball-neverball neverball-neverputt xonotic | sudo intel_gpu_top -s '500' -p -m |
| |
| ===== Wine ===== | ===== Wine ===== |
| **** | **** |
| |
| wine winetricks | wine winetricks mesa-vulkan-drivers icoutils |
| |
| ====== Settings ====== | ====== Settings ====== |
| |
| ===== Keyboard Shortcuts ===== | ===== Printer ===== |
| |
| <code>ptyxis --standalone</code> | * http://localhost:631/admin |
| | * Log-in as regular user (not ''root'') |
| |
| <code>bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"</code> | * Internet Printing Protocol (ipp) -> HP -> IPP Everywhere ™ |
| | * Color Mode: Device Gray |
| | * Administration -> Set As Server Default |
| |
| <code>ptyxis --standalone --title='Fedora Updater — ' -- bash -c "sudo dnf clean 'all' && sudo dnf update -y && sync && sudo flatpak update && flatpak update && sync && tracker3 reset --filesystem --rss && rm -Rf ~/'.cache/mesa_shader_cache'*'/'* && sudo restorecon -F -I -R ~ && sudo fstrim --all --verbose && sync && read -n '1' -s -r -p 'Done. Press any key to exit.' && sleep '1'"</code> | ipp://192.168.1.164/ipp/print |
| |
| ==== Keys ==== | ===== Network ===== |
| |
| * Listed respectively to above | ==== DNS ==== |
| |
| * Ctrl + Alt + T | * [[servers:upstream_dns_servers|More DNS Servers]] |
| * Ctrl + Alt + Z | |
| * Menu or F6 | |
| |
| ===== Printer ===== | <code>9.9.9.9,149.112.112.112</code> |
| |
| * http://localhost:631/admin | <code>2620:fe::fe,2620:fe::9</code> |
| * Log-in as regular user (not ''root'') | |
| |
| * Internet Printing Protocol (ipp) | ===== Kernel Options ===== |
| * HP | |
| * IPP Everywhere ™ | |
| * Color Mode: Device Gray | |
| * 2-Sided Printing: Long-Edge (Portrait) | |
| |
| ipp://192.168.1.164/ipp/print | ==== BPF Disable ==== |
| |
| Kole | * https://docs.kernel.org/admin-guide/sysctl/kernel.html#unprivileged-bpf-disabled |
| |
| ===== Network ===== | * ''kernel.unprivileged_bpf_disabled = 0'' |
| |
| ==== systemd-resolved ==== | echo 'kernel.unprivileged_bpf_disabled=0' | sudo tee '/etc/sysctl.d/99-bpf-disable.conf' > '/dev/null' && sudo restorecon -F -I '/etc/sysctl.d/99-bpf-disable.conf' && cat '/etc/sysctl.d/99-bpf-disable.conf' |
| |
| * systemd-resolved caches DNS | sysctl 'kernel.unprivileged_bpf_disabled' |
| * See [[servers;upstream_dns_servers|DNS Servers]] for other addresses | |
| |
| sudo mkdir -p '/etc/systemd/resolved.conf.d' && sudo -e '/etc/systemd/resolved.conf.d/99-dns-over-tls.conf' && sudo restorecon -F -I '/etc/systemd/resolved.conf.d/99-dns-over-tls.conf' | ==== Legacy MMap ==== |
| |
| <code> | * https://man7.org/linux/man-pages/man5/proc_sys_vm.5.html |
| [Resolve] | |
| DNS=1.1.1.2#security.cloudflare-dns.com 1.0.0.2#security.cloudflare-dns.com 2606:4700:4700::1112#security.cloudflare-dns.com 2606:4700:4700::1002#security.cloudflare-dns.com | |
| DNSOverTLS=yes</code> | |
| |
| === Verify === | * ''vm.legacy_va_layout = 1'' |
| |
| resolvectl status | echo 'vm.legacy_va_layout=1' | sudo tee '/etc/sysctl.d/99-vm-legacy-va.conf' > '/dev/null' && sudo restorecon -F -I '/etc/sysctl.d/99-vm-legacy-va.conf' && cat '/etc/sysctl.d/99-vm-legacy-va.conf' |
| |
| resolvectl status | grep '+DNSOverTLS' | sysctl 'vm.legacy_va_layout' |
| |
| ===== Rhythmbox ===== | ==== Intel Perf Counters ==== |
| |
| * See [[personal;internet_radio#rhythmbox|Internet Radio]] | * https://wiki.archlinux.org/title/intel_graphics#Enable_performance_support |
| |
| ===== Kernel Options ===== | * ''dev.i915.perf_stream_paranoid = 0'' |
| | |
| | echo 'dev.i915.perf_stream_paranoid=0' | sudo tee '/etc/sysctl.d/99-i915-perf.conf' > '/dev/null' && sudo restorecon -F -I '/etc/sysctl.d/99-i915-perf.conf' && cat '/etc/sysctl.d/99-i915-perf.conf' |
| | |
| | sysctl 'dev.i915.perf_stream_paranoid' |
| |
| ==== Magic SysRq key ==== | ==== Magic SysRq key ==== |
| |
| * https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html | * https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html |
| * Ideal: ''kernel.sysrq = 1'' | * Allows ''REISUB'' |
| | |
| | * ''kernel.sysrq = 1'' |
| |
| echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && sudo restorecon -F -I '/etc/sysctl.d/99-sysrq.conf' && cat '/etc/sysctl.d/99-sysrq.conf' | echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && sudo restorecon -F -I '/etc/sysctl.d/99-sysrq.conf' && cat '/etc/sysctl.d/99-sysrq.conf' |
| sysctl 'kernel.sysrq' | sysctl 'kernel.sysrq' |
| |
| ===== Bootloader ===== | ==== Swappiness ==== |
| |
| ==== Boot Options ==== | * ''vm.swappiness = 0'' |
| |
| * [[linux;notes;kernel_parameters|More Kernel Parameters]] | echo 'vm.swappiness = 0' | sudo tee '/etc/sysctl.d/99-swappiness.conf' > '/dev/null' && sudo restorecon -F -I '/etc/sysctl.d/99-swappiness.conf' && cat '/etc/sysctl.d/99-swappiness.conf' |
| * Add commands within ''args'' | |
| |
| sudo grubby --update-kernel='ALL' --args='' | sysctl 'vm.swappiness' |
| |
| sudo grubby --update-kernel='ALL' --remove-args='' | ===== GNOME ===== |
| |
| sudo -e '/etc/default/grub' && sudo restorecon -F -I '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg' && sudo restorecon -F -I '/boot/grub2/grub.cfg' | ==== Background ==== |
| |
| === Defaults === | **** |
| |
| <code>GRUB_TIMEOUT=5</code> | gsettings set 'org.gnome.desktop.background' 'picture-uri' '/usr/share/backgrounds/f'*'/default/f'*'.xml' |
| |
| <code>GRUB_CMDLINE_LINUX="rhgb quiet"</code> | ==== External Monitor Settings ==== |
| |
| === Spinesnap === | * Full RGB + 12-bit color |
| | * Also applies disabled monitors at log-in (docked laptop) |
| | * [[linux:notes:gnome_hdmi_full_rgb|Notes]] |
| |
| * :!: Dell Power Thermal mode to ''Performance'' from [[linux;notes;drive_wipe#information|LiveUSB]] | * Between ''</mode>'' and ''</monitor>'' ((generating ''monitors.xml'' requires changing a setting under GNOME Settings -> Displays)) |
| |
| <code>acpi_osi='Linux' reboot='pci' nohz='off' preempt='full' pci='nocrs,pcie_bus_perf,realloc,pcie_scan_all,big_root_window' i915.enable_fbc='0' i915.enable_psr='0' i915.panel_use_ssc='0' i915.enable_guc='3' i915.guc_log_level='0' i915.nuclear_pageflip='1' i915.enable_hangcheck='0' mitigations='off' i915.mitigations='off' nvme.noacpi='1' nowatchdog modprobe.blacklist='iTCO_wdt' tsc='nowatchdog' ahci.mobile_lpm_policy='1' iwlmvm.power_scheme='1' nvme_core.default_ps_max_latency_us='0' pcie_aspm='off' pcie_port_pm='off' snd_hda_intel.power_save='0' usbcore.autosuspend='-1'</code> | nano ~/'.config/monitors.xml' && sudo cp -fv ~/'.config/monitors.xml' '/etc/xdg/monitors.xml' && sudo restorecon -F -I ~/'.config/monitors.xml' '/etc/xdg/monitors.xml' |
| |
| ===== GNOME ===== | <code> |
| | <rgbrange>full</rgbrange> |
| | <maxbpc>12</maxbpc> |
| | </code> |
| |
| ==== Default Apps ==== | ==== Extensions ==== |
| |
| * Music -> VLC media player | * https://extensions.gnome.org/extension/545/hide-top-bar/ |
| * Video -> mpv Media Player | |
| |
| ==== Extensions ==== | === Disable Unredirect === |
| |
| * [[https://extensions.gnome.org/extension/545/hide-top-bar/|Hide Top Bar]] | * https://github.com/Exeos/disable-unredirect |
| * [[https://extensions.gnome.org/extension/1873/disable-unredirect-fullscreen-windows/|Disable unredirect fullscreen windows]] | * Log out/in -> Manually enable from GNOME Extensions app |
| |
| ==== External Monitor Settings ==== | sudo dnf install 'git-core' |
| |
| * This copies the configured monitor settings from the current user to ''gdm'' and also applies it to the log-in screen | git clone --branch 'master' --depth '1' --recurse-submodules 'https://github.com/Exeos/disable-unredirect.git' '/tmp/disable-unredirect-exeos' |
| * Notably useful for setting a laptop's built-in screen as disabled for the log-in screen while used in a dock configuration | |
| |
| sudo cp --remove-destination ~/'.config/monitors.xml' ~gdm/'.config/monitors.xml' && sudo chown 'gdm':'gdm' ~gdm/'.config/monitors.xml' && sudo restorecon -F -I ~gdm/'.config/monitors.xml' | mv -f '/tmp/disable-unredirect-exeos/src' ~/'.local/share/gnome-shell/extensions/disable-unredirect@exeos' |
| |
| gnome-text-editor ~/'.config/monitors.xml' | rm -Rf '/tmp/disable-unredirect-exeos' |
| |
| === Remove === | ==== gsettings ==== |
| |
| sudo rm -v -f ~gdm/'.config/monitors.xml' | * [[linux;notes;gsettings|More gsettings]] |
| |
| rm -v -f ~/'.config/monitors.xml' | gsettings reset 'org.gnome.shell' 'app-picker-layout' && gsettings reset 'org.gnome.mutter' 'experimental-features' && gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false' && gsettings set 'org.gnome.desktop.interface' 'clock-show-date' 'true' && gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true' && gsettings set 'org.gnome.desktop.screen-time-limits' 'history-enabled' 'false' && gsettings set 'org.gnome.desktop.wm.preferences' 'focus-mode' 'click' && gsettings set 'org.gtk.gtk4.Settings.FileChooser' 'sort-directories-first' 'true' && gsettings set 'org.gnome.desktop.peripherals.mouse' 'accel-profile' 'flat' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'natural-scroll' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-to-click' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-and-drag' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'disable-while-typing' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'click-method' 'areas' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'enable-monitors' 'false' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'crawling-interval' '-2' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'index-on-battery' 'false' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'index-on-battery-first-time' 'false' && gsettings reset 'org.gnome.Settings' 'last-panel' |
| |
| ==== Tweaks ==== | ==== Keyboard Shortcuts ==== |
| |
| sudo -e '/etc/profile.d/99-tweaks.sh' | * [[#add_database_password_to_gnome_keyring|KeePassXC]] |
| | * [[#updater|Updater]] |
| |
| <code> | <code>'/usr/bin/ptyxis' --standalone</code> |
| # Clutter | |
| export CLUTTER_PAINT='disable-dynamic-max-render-time' | |
| export CLUTTER_VBLANK='none' | |
| |
| # Mutter | <code>'/usr/bin/bash' -c "'/usr/bin/secret-tool' lookup 'keepass' 'default' | '/usr/bin/keepassxc' --pw-stdin ~/'Documents/keepass.kdbx'"</code> |
| export MUTTER_DEBUG_FORCE_KMS_MODE='simple' | |
| |
| # GTK | <code>'/usr/bin/bash' -c "'/usr/bin/ptyxis' --standalone --title='Fedora Updater' -- ~/'.local/scripts/fedora-updater.sh'"</code> |
| export GSK_RENDERER='gl' | |
| |
| # Mesa | === Keys === |
| export mesa_glthread='false' | |
| |
| # End</code> | * Listed respectively to above |
| | |
| | * Ctrl + Alt + T |
| | * Ctrl + Alt + Z |
| | * F6 |
| | |
| | ===== Firefox ===== |
| | |
| | * See [[programs;firefox|Firefox]] |
| | * Also for Thunderbird |
| | |
| | ===== Hostname ===== |
| | |
| | **** |
| | |
| | hostnamectl set-hostname 'x' |
| | |
| | ===== KeePassXC ===== |
| |
| ==== Settings ==== | ==== Settings ==== |
| |
| === gdm === | * General -> [ ] Load previous databases on startup |
| | * Security -> [x] Use DuckDuckGo service to download website icons |
| |
| sudo -u 'gdm' dbus-launch gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false' | ==== Add Database Password to GNOME Keyring ==== |
| |
| sudo -u 'gdm' dbus-launch gsettings set 'org.gnome.mutter' 'experimental-features' '[]' | * [[#keyboard_shortcuts|Keyboard shortcut]] |
| |
| === Background === | '/usr/bin/secret-tool' store --label='KeePass' 'keepass' 'default' |
| |
| **** | ===== Laptop Power ===== |
| |
| gsettings set 'org.gnome.desktop.background' 'picture-uri' '/usr/share/backgrounds/f'*'/default/f'*'.xml' | * [[linux:notes:x86_energy_perf_policy|x86_energy_perf_policy udev Rule]] |
| |
| === All-in-one === | ===== lm_sensors ===== |
| |
| **** | sudo sensors-detect --auto |
| |
| gsettings reset 'org.gnome.shell' 'app-picker-layout' && gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false' && gsettings set 'org.gnome.desktop.peripherals.mouse' 'accel-profile' 'flat' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'send-events' 'disabled-on-external-mouse' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'natural-scroll' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-to-click' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-and-drag' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'disable-while-typing' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'click-method' 'areas' && gsettings set 'org.gnome.desktop.interface' 'clock-show-date' 'true' && gsettings set 'org.gnome.desktop.wm.preferences' 'focus-mode' 'click' && gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true' && gsettings set 'org.gnome.mutter' 'experimental-features' '[]' && gsettings set 'org.gnome.software' 'download-updates' 'false' | sudo -e '/etc/sysconfig/lm_sensors' |
| |
| === Individual === | ===== Ptyxis ===== |
| |
| gsettings reset 'org.gnome.shell' 'app-picker-layout' | * ''0.95'' Transparency |
| |
| gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false' | gsettings set 'org.gnome.Ptyxis' 'enable-a11y' 'false' && gsettings set 'org.gnome.Ptyxis' 'restore-session' 'false' && gsettings set 'org.gnome.Ptyxis' 'restore-window-size' 'false' && gsettings set 'org.gnome.Ptyxis.Profile:/org/gnome/Ptyxis/Profiles/'$PTYXIS_PROFILE'/' 'opacity' '0.95' |
| |
| gsettings set 'org.gnome.desktop.peripherals.mouse' 'accel-profile' 'flat' | ===== Time ===== |
| |
| gsettings set 'org.gnome.desktop.peripherals.touchpad' 'send-events' 'disabled-on-external-mouse' | **** |
| |
| gsettings set 'org.gnome.desktop.peripherals.touchpad' 'natural-scroll' 'false' | timedatectl 'set-ntp' 'true' && sudo hwclock --systohc && timedatectl status |
| |
| gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-to-click' 'false' | ====== Boot Loader ====== |
| |
| gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-and-drag' 'false' | * [[linux:notes:kernel_parameters|More Kernel Parameters]] |
| |
| gsettings set 'org.gnome.desktop.peripherals.touchpad' 'disable-while-typing' 'false' | ===== Spinesnap ===== |
| |
| gsettings set 'org.gnome.desktop.peripherals.touchpad' 'click-method' 'areas' | * [[devices;dell_latitude_5591_spinesnap#bios_settings|fwupdmgr BIOS Settings]] |
| |
| gsettings set 'org.gnome.desktop.interface' 'clock-show-date' 'true' | * Last updated: 2025/12/05 |
| |
| gsettings set 'org.gnome.desktop.wm.preferences' 'focus-mode' 'click' | sudo -e '/etc/default/grub' && sudo restorecon -F -I '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg' && sudo restorecon -F -I '/boot/grub2/grub.cfg' |
| |
| gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true' | GRUB_TIMEOUT=0 |
| |
| gsettings set 'org.gnome.mutter' 'experimental-features' '[]' | #GRUB_CMDLINE_LINUX="rhgb quiet" |
| |
| gsettings set 'org.gnome.software' 'download-updates' 'false' | GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi='!!' acpi_osi='Linux' reboot='pci' hibernate='no' idle='halt' nohz='off' mitigations='off' preempt='full' iommu='pt' pci='nocrs,pcie_bus_perf,realloc,pcie_scan_all,big_root_window' module_blacklist='iTCO_wdt,intel_oc_wdt' nowatchdog tsc='nowatchdog' drm_kms_helper.poll='0' drm_kms_helper.fbdev_emulation='0'" |
| |
| ===== Hostname ===== | ==== modprobe.d ==== |
| |
| * Change ''x'' to computer name | * [[linux;notes;modprobe.d_tweaks#spinesnap|Notes]] |
| |
| hostnamectl set-hostname 'x' | ==== Dracut ==== |
| |
| ===== KeePassXC ===== | sudo -e '/etc/dracut.conf.d/99-spinesnap.conf' && sudo restorecon -F -I '/etc/dracut.conf.d/99-spinesnap.conf' && sudo dracut --force --regenerate-all |
| |
| ==== Settings ==== | <code> |
| | early_microcode="no" |
| | nofscks="yes" |
| |
| * General -> [ ] Load previous databases on startup | kernel_cmdline="rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0" |
| * Security -> [x] Use DuckDuckGo service to download website icons | |
| |
| ==== Add Database Password to GNOME Keyring ==== | force_drivers+=" i915 " |
| | |
| | omit_drivers+=" intel_oc_wdt iTCO_wdt iTCO_vendor_support fuse thunderbolt " |
| | omit_dracutmodules+=" fips-crypto-policies systemd-pcrphase tpm2-tss memstrack i18n systemd-battery-check nss-softokn " |
| | |
| | # End</code> |
| | |
| | ==== Dell Fan Speed ==== |
| |
| **** | **** |
| |
| secret-tool store --label='KeePass' 'keepass' 'default' | cat '/sys/firmware/acpi/platform_profile' && echo 'performance' | sudo tee '/sys/firmware/acpi/platform_profile' > '/dev/null' && cat '/sys/firmware/acpi/platform_profile' |
| |
| ===== Laptop Power Management ===== | ==== systemd-analyze ==== |
| |
| * See [[linux:notes:x86_energy_perf_policy#scripts|x86_energy_perf_policy udev]] | * 2025/12/05 |
| |
| ===== lm_sensors ===== | <code> |
| | Startup finished in 4.211s (firmware) + 695ms (loader) + 480ms (kernel) + 1.737s (initrd) + 7.100s (userspace) = 14.224s |
| | graphical.target reached after 7.100s in userspace.</code> |
| |
| sudo sensors-detect --auto | systemd-analyze |
| |
| sudo -e '/etc/sysconfig/lm_sensors' | ==== lsinitrd ==== |
| |
| ===== mpv ===== | * 2025/12/04 |
| |
| mkdir -p ~/'.config/mpv' && nano ~/'.config/mpv/mpv.conf' | Image: /boot/initramfs-6.17.9-300.fc43.x86_64.img: 38M |
| |
| <code> | lsinitrd |
| save-position-on-quit | |
| sub-auto=fuzzy | |
| force-window=yes | |
| profile=gpu-hq | |
| scale=ewa_lanczossharp | |
| cscale=ewa_lanczossharp | |
| video-sync=display-resample | |
| interpolation | |
| tscale=oversample | |
| hwdec=vaapi | |
| hwdec-codecs=all | |
| |
| #vo=dmabuf-wayland | ===== Remove Shim ===== |
| |
| # End</code> | sudo dnf remove --setopt 'protected_packages'='' 'shim'* |
| |
| ===== Ptyxis ===== | sudo efibootmgr |
| |
| **** | sudo efibootmgr --delete-bootnum --bootnum '0000' |
| |
| gsettings set 'org.gnome.Ptyxis' 'enable-a11y' 'false' && gsettings set 'org.gnome.Ptyxis' 'restore-session' 'false' && gsettings set 'org.gnome.Ptyxis' 'restore-window-size' 'false' && gsettings set 'org.gnome.Ptyxis.Profile:/org/gnome/Ptyxis/Profiles/'$PTYXIS_PROFILE'/' 'opacity' '0.95' | sudo efibootmgr --create --disk '/dev/nvme0n1p1' --file-dev-path --gpt --loader '\EFI\fedora\grubx64.efi' --label 'Fedora-GRUB' --timeout '0' |
| |
| ===== Secure Shell ===== | ===== Boot Options ===== |
| |
| * See [[programs;linux;openssh_client|OpenSSH Client]] notes to generate/restore public key | * Add commands within ''args'' |
| | * TODO: Move to misc |
| |
| ===== Drive Maintenance ===== | sudo grubby --update-kernel='ALL' --args='' |
| |
| ==== Trim ==== | sudo grubby --update-kernel='ALL' --remove-args='' |
| |
| **** | <code>GRUB_TIMEOUT=5</code> |
| |
| sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l | ====== Drive Maintenance ====== |
| |
| ===== UTC ===== | ===== Trim ===== |
| |
| * [[https://wiki.archlinux.org/index.php/System_time#Time_standard|System time - ArchWiki]] | sudo systemctl enable 'fstrim.timer' --now |
| * Set RTC to UTC | |
| * :!: Likely needed if Windows was installed first for dual-boot | |
| * :!: Windows should also be set to UTC | |
| |
| sudo timedatectl set-local-rtc '0' | sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l |
| |
| ==== Verify ==== | sudo fstrim -v -a |
| |
| **** | ===== EFI ===== |
| |
| timedatectl | grep 'local' | * ''nvme0n1p1'' type ''vfat'' |
| |
| ===== Wine ===== | sudo umount '/boot/efi' && sudo dosfsck -a -t -w -v '/dev/nvme0n1p1' && sudo mount '/boot/efi' |
| |
| * See [[linux:notes:wine#global|Wine]] | ===== XFS ===== |
| |
| ===== Display ===== | * [[linux;notes;xfs|Notes]] |
| |
| ==== Full RGB HDMI ==== | sudo xfs_fsr -v '/' |
| |
| === Xorg === | ===== SELinux Relabel ===== |
| |
| * Last tested: 2025/02/10 | **** |
| | |
| | sudo touch '/.autorelabel' && sudo restorecon -F -I '/.autorelabel' |
| | |
| | ====== Tweaks ====== |
| | |
| | ===== General ===== |
| |
| mkdir -p ~/'.bashrc.d' && nano ~/'.bashrc.d/HDMI.bashrc' | sudo -e '/etc/profile.d/general-tweaks.sh' && sudo restorecon -F -I '/etc/profile.d/general-tweaks.sh' |
| |
| <code> | <code> |
| xrandr --output 'HDMI-1' --set 'Broadcast RGB' 'Full' | # General |
| xrandr --output 'HDMI-1' --set 'content type' 'Game'</code> | export LD_BIND_NOW='1' |
| | export LD_PREFER_MAP_32BIT_EXEC='1' |
| |
| === Verify === | # GTK |
| | export GSK_RENDERER='vulkan' |
| | export GTK_A11Y='none' |
| |
| **** | # GNOME |
| | export CLUTTER_PAINT='disable-dynamic-max-render-time' |
| |
| xrandr --verbose | # Intel |
| | #export ANV_NO_GPL='1' |
| | export force_guc_low_latency='true' |
| | export allow_compressed_fallback='true' |
| |
| === Wayland === | # Mesa |
| | export MESA_NO_ERROR='1' |
| | export mesa_glthread='false' |
| | export MESA_DISK_CACHE_DATABASE='0' |
| | export MESA_DISK_CACHE_SINGLE_FILE='0' |
| |
| * https://gitlab.gnome.org/GNOME/mutter/-/issues/1871#note_2090262 | # Test |
| * Goes between ''</mode>'' and ''</monitor>'' | export allow_higher_compat_version='true' |
| * [[#external_monitor_settings|Copy to ~gdm]] | export vk_xwayland_wait_ready='false' |
| | export vk_x11_ignore_suboptimal='true' |
| | export vk_wsi_force_bgra8_unorm_first='true' |
| | export block_on_depleted_buffers='true' |
| | export disable_throttling='true' |
| | export force_integer_tex_nearest='true' |
| |
| gnome-text-editor ~/'.config/monitors.xml' | # End</code> |
| | |
| | ===== journald ===== |
| |
| <code> <rgbrange>full</rgbrange></code> | sudo -e '/etc/systemd/journald.conf.d/99-tweaks.conf' && sudo restorecon -F -I '/etc/systemd/journald.conf.d/99-tweaks.conf' && sudo journalctl --vacuum-time='1s' --rotate |
| |
| <code> | <code> |
| <rate>60.000</rate> | [Journal] |
| </mode> | Storage=none |
| <rgbrange>full</rgbrange> | Compress=false |
| </monitor> | MaxLevelStore=0 |
| </logicalmonitor> | MaxLevelSyslog=0 |
| </code> | MaxLevelKMsg=0 |
| | MaxLevelConsole=0 |
| | MaxLevelWall=0 |
| | MaxLevelSocket=0 |
| |
| === Verify === | # End</code> |
| |
| sudo dnf install 'drm-utils' | ===== PackageKit ===== |
| |
| proptest | * ''packagekitd'' to on-demand ((allows ''PackageKit-command-not-found'' to function)) |
| |
| ====== Firefox ====== | sudo mkdir -p '/etc/systemd/system/packagekit.service.d' && sudo -e '/etc/systemd/system/packagekit.service.d/on-demand.conf' && sudo restorecon -F -I -R '/etc/systemd/system/packagekit.service.d' && sudo systemctl daemon-reload |
| |
| * See [[programs;firefox|Firefox]] | <code> |
| | [Service] |
| | RuntimeMaxSec=5 |
| |
| ====== Server ====== | # End</code> |
| |
| * For workstations that run servers as a secondary directive | ===== Dracut ===== |
| * For headless servers, see [[linux;distros;server;fedora_server|Fedora Server]] | |
| | sudo -e '/etc/dracut.conf.d/99-tweaks.conf' && sudo restorecon -F -I '/etc/dracut.conf.d/99-tweaks.conf' && sudo dracut --force --regenerate-all |
| | |
| | <code> |
| | # Compression |
| | compress="cat" |
| | |
| | # Strip |
| | do_strip="yes" |
| | aggressive_strip="yes" |
| | hostonly="yes" |
| | hostonly_mode="strict" |
| | reproducible="no" |
| | enhanced_cpio="no" |
| | i18n_install_all="no" |
| | |
| | # End</code> |
| |
| ===== Enable SSH ===== | ===== fstab ===== |
| |
| **** | **** |
| |
| sudo systemctl enable --now 'sshd' | sudo -e '/etc/fstab' && sudo restorecon -F -I '/etc/fstab' |
| |
| ===== Automatic Updates ===== | ==== EFI ==== |
| |
| ==== Service ==== | * ''/boot/efi type vfat'' |
| |
| sudo -e '/etc/systemd/system/fedora-up.service' | ,discard,tz=UTC |
| | |
| | ==== XFS ==== |
| | |
| | * ''/ type xfs'' |
| | |
| | ,nodiscard,noatime |
| | |
| | ===== Wine ===== |
| | |
| | * [[linux;notes;wine|Notes]] |
| | |
| | sudo -e '/etc/profile.d/wine-tweaks.sh' && sudo restorecon -F -I '/etc/profile.d/wine-tweaks.sh' |
| |
| <code> | <code> |
| [Service] | # Staging |
| Type=oneshot | export STAGING_SHARED_MEMORY='1' |
| ExecStartPre='/usr/bin/dnf' clean 'all' | export STAGING_WRITECOPY='1' |
| ExecStart='/usr/bin/dnf' update -y | export WINE_LARGE_ADDRESS_AWARE='1' |
| ExecStart='/usr/bin/dnf' autoremove -y | |
| ExecStartPost='/usr/bin/sync' | |
| ExecStartPost='/usr/bin/systemctl' reboot</code> | |
| |
| ===== Timer ===== | # Logging |
| | export WINEDEBUG='-all' |
| | export VKD3D_DEBUG='none' |
| | export VKD3D_SHADER_DEBUG='none' |
| | export DXVK_LOG_LEVEL='none' |
| |
| * 03:00 Oak | # End</code> |
| |
| sudo -e '/etc/systemd/system/fedora-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'fedora-up.timer' --now | ====== Scripts ====== |
| | |
| | ===== Updater ===== |
| | |
| | * [[#keyboard_shortcuts|Keyboard shortcut]] |
| | |
| | mkdir -p ~/'.local/scripts' && nano ~/'.local/scripts/fedora-updater.sh' && chmod +x ~/'.local/scripts/fedora-updater.sh' |
| |
| <code> | <code> |
| [Unit] | #!/bin/bash |
| Description=Software Package Maintenance and Updater | |
| After=network-online.target | |
| Wants=network-online.target | |
| |
| [Timer] | sudo '/usr/bin/dnf' autoremove -y |
| OnCalendar=*-*-* 03:00:00 | sudo '/usr/bin/dnf' clean 'all' |
| Persistent=true | sudo '/usr/bin/dnf' update -y |
| | |
| | sudo '/usr/bin/fwupdmgr' refresh --force |
| | sudo '/usr/bin/fwupdmgr' update |
| | |
| | '/usr/bin/flatpak' update |
| | sudo '/usr/bin/flatpak' update |
| | |
| | rm -Rf ~/'.cache/mesa_shader_cache'* |
| | rm -Rf ~/'.cache/thumbnails/'*'/'* |
| | localsearch reset --filesystem |
| | |
| | rm -Rf ~/'.cache/mozilla/firefox'* |
| | rm -Rf ~/'.cache/thunderbird'* |
| | |
| | sudo '/usr/bin/fstrim' --all --verbose |
| | |
| | sync |
| | read -n '1' -s -r -p 'Done. Press any key to exit.' |
| | |
| | # End</code> |
| |
| [Install] | ~/'.local/scripts/fedora-updater.sh' |
| WantedBy=timers.target</code> | |
| |
| ====== Notable Folders and Commands ====== | ====== Notable Folders and Commands ====== |