User Tools

Site Tools


linux:distros:fedora_workstation_gnome

This is an old revision of the document!


Information

  • Fedora Workstation 1)
  • 40

Download

Workstation

Updated Live Images

Installation Notes

Partitioning

  1. :!: Delete /home
  2. :!: Delete /
  3. Set /boot to XFS 2)
  4. Re-create / without specifying a size 3)
  5. Set / to XFS
  • :!: See Software RAID notes if software RAID across multiple drives is wanted

Repositories

RPM Fusion

WineHQ

sudo rpm --import 'https://dl.winehq.org/wine-builds/winehq.key' && sudo dnf config-manager --add-repo 'https://dl.winehq.org/wine-builds/fedora/40/winehq.repo'

Software

Update

System

sudo dnf autoremove -y && sudo dnf distro-sync -y && sync

Firmware

sudo fwupdmgr refresh --force && sudo fwupdmgr update --verbose

Flatpaks

flatpak update && sudo flatpak update

GNU nano

  • Installs nano
  • Sets VISUAL and EDITOR to nano via environment variable
  • Sets nowrap for current user
sudo dnf install 'nano' -y && export 'VISUAL=nano' && export 'EDITOR=nano' && echo -e 'export VISUAL=nano\nexport EDITOR=nano' | sudo tee '/etc/profile.d/editor-nano.sh' > '/dev/null' && cat '/etc/profile.d/editor-nano.sh' && mkdir -p ~/'.config/nano' && echo 'set nowrap' | tee ~/'.config/nano/nanorc' > '/dev/null' && cat ~/'.config/nano/nanorc'

Remove

  • :!: #247, GNOME Weather lacks location data since 2022 and leaves a notification shade without choosing a location
sudo dnf remove 'gnome-weather'

General

sudo dnf install evolution file-roller filezilla foliate gbrainy gimp gnome-extensions-app keepassxc mpv obs-studio transmission-gtk android-tools aria2 binutils hdparm htop icoutils kernel-tools lm_sensors gstreamer1-plugin-openh264 openh264 mozilla-openh264 p7zip p7zip-plugins sysfsutils unar wget xrandr yt-dlp 

F41 Beta

gdk-pixbuf2-modules-extra

Intel

libva-utils libva-intel-media-driver

Games

  • kernel-modules-extra info (extra game controllers)
FlightGear neverball-neverball neverball-neverputt xonotic
kernel-modules-extra

Wine

winehq-staging

Settings

Keyboard Shortcuts

gnome-terminal
bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"
gnome-terminal --title='Fedora Updater' -- bash -c "sudo dnf clean 'all' && sudo dnf distro-sync -y && sync && sudo flatpak update && flatpak update && sync && sudo fstrim --all --verbose && sync && read -n '1' -s -r -p 'Done' && sleep '2'"

Keys

  • Listed respectively to above
  • Ctrl + Alt + T
  • Ctrl + Alt + Z
  • Menu or F6

Printer

  • Internet Printing Protocol (ipp)
  • HP
  • IPP Everywhere ™
  • Color Mode: Device Gray
  • 2-Sided Printing: Long-Edge (Portrait)
ipp://192.168.1.164/ipp/print
Kole

Network

systemd-resolved

resolvectl status
sudo mkdir -p '/etc/systemd/resolved.conf.d' && sudo -e '/etc/systemd/resolved.conf.d/99-dns-over-tls.conf'
[Resolve]
DNS=9.9.9.11#dns11.quad9.net 149.112.112.11#dns11.quad9.net 2620:fe::11#dns11.quad9.net 2620:fe::fe:11#dns11.quad9.net
DNSOverTLS=yes

Nautilus

  • Sort Folders Before Files

Rhythmbox

Fan Profile

sudo dnf install 'smbios-utils-python' -y && sudo smbios-thermal-ctl --set-thermal-mode='performance' && sudo dnf remove 'smbios-utils-python' -y

Kernel Options

Magic SysRq key

echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && cat '/etc/sysctl.d/99-sysrq.conf'
sysctl 'kernel.sysrq'

Intel Perf Counters

echo 'dev.i915.perf_stream_paranoid=0' | sudo tee '/etc/sysctl.d/99-i915-perf.conf' > '/dev/null' && cat '/etc/sysctl.d/99-i915-perf.conf'
sysctl 'dev.i915.perf_stream_paranoid'

Bootloader

Dracut

  • System-specific boot optimization
  • :!: Expects GRUB
  • :!: Be sure to undo this if planning on booting the same disk install on different hardware, notably for servers
sudo -e '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
compress="cat"
do_strip="yes"
aggressive_strip="yes"
hostonly="yes"
hostonly_mode="strict"
fileloglvl="0"
sysloglvl="0"
stdloglvl="0"

Undo

sudo rm -v -f '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all && sync

Boot Options

sudo grubby --update-kernel='ALL' --args=''
sudo grubby --update-kernel='ALL' --remove-args=''
sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'

Spinesnap

  • GRUB_TIMEOUT=1
  • GRUB_CMDLINE_LINUX=
sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'
rhgb quiet
acpi_osi='Linux' reboot='pci' nohz='off' enable_mtrr_cleanup iomem='relaxed' pcie_ports='native' 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' nowatchdog modprobe.blacklist='iTCO_wdt' tsc='nowatchdog' ahci.mobile_lpm_policy='1' iwlmvm.power_scheme='1' pcie_aspm='off' pcie_port_pm='off' snd_hda_intel.power_save='0' usbcore.autosuspend='-1' acpi_enforce_resources='no' accept_memory='eager' clocksource='tsc' pd_ignore_unused clk_ignore_unused

GNOME

Extensions

Disable Wayland

sudo dnf install 'gnome-session-xsession'
cat '/etc/gdm/custom.conf' | grep '#WaylandEnable' > '/dev/null' && sudo sed -i 's/'#WaylandEnable=false'/'WaylandEnable=false'/g' '/etc/gdm/custom.conf' && cat '/etc/gdm/custom.conf' | grep 'WaylandEnable=false'
sudo -e '/etc/gdm/custom.conf'

External Monitor Settings

  • This copies the configured monitor settings from the current user to gdm and also applies it to the log-in screen
  • 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 -R ~gdm/'.config/monitors.xml'
gnome-text-editor ~/'.config/monitors.xml'
sudo -e ~gdm/'.config/monitors.xml'

Undo

sudo rm -v -f ~gdm/'.config/monitors.xml'
rm -v -f ~/'.config/monitors.xml'

Tweaks

sudo -e '/etc/profile.d/99-tweaks.sh'
# Clutter
export CLUTTER_PAINT='disable-dynamic-max-render-time'

# GTK
export GSK_RENDERER='vulkan'

# Mesa
export MESA_DISK_CACHE_SINGLE_FILE='1'
export MESA_DISK_CACHE_DATABASE='1'
export MESA_DISK_CACHE_COMBINE_RW_WITH_RO_FOZ='1'
export VAAPI_MPEG4_ENABLED='1'
export mesa_glthread='true'
export MESA_NO_ERROR='1'

# End

Settings

All-in-one

gsettings reset 'org.gnome.shell' 'app-picker-layout' && gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false' && 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.mouse' 'accel-profile' 'flat' && 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.software' 'download-updates' 'false'

Individual

gsettings reset 'org.gnome.shell' 'app-picker-layout'
gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false'
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.mouse' 'accel-profile' 'flat'
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.software' 'download-updates' 'false'

F41 Beta

  • :!: set removes the two experimental fractional-scaling settings
  • reset re-adds the two experimental fractional-scaling settings
  • Hide Top Bar extension doesn't support GNOME 47 and needs extension version validation disabled
gsettings get 'org.gnome.mutter' 'experimental-features'
gsettings set 'org.gnome.mutter' 'experimental-features' '[]'
gsettings reset 'org.gnome.mutter' 'experimental-features'
gsettings set 'org.gnome.shell' 'disable-extension-version-validation' 'true'

Hostname

  • Change x to computer name
hostnamectl set-hostname 'x'

KeePassXC

Settings

  • General → [ ] Load previous databases on startup
  • Security → [x] Use DuckDuckGo service to download website icons

Add Database Password to GNOME Keyring

secret-tool store --label='KeePass' 'keepass' 'default'

lm_sensors

sudo sensors-detect --auto
sudo -e '/etc/sysconfig/lm_sensors'

mpv

mkdir -p ~/'.config/mpv' && nano ~/'.config/mpv/mpv.conf'
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

Secure Shell

Drive Maintenance

Trim

sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l

UTC

  • 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'

Verify

timedatectl | grep local

Wine

Display

Full RGB HDMI

gnome-text-editor ~/'.config/monitors.xml'
        <rgbrange>full</rgbrange>
          <rate>60.000</rate>
        </mode>
        <rgbrange>full</rgbrange>
      </monitor>
    </logicalmonitor>

Firefox

Server

  • For workstations that run servers as a secondary directive
  • For headless servers, see Fedora Server

Enable SSH

sudo systemctl enable --now 'sshd'

Automatic Updates

Service

sudo -e '/etc/systemd/system/fedora-up.service'
[Service]
Type=oneshot
ExecStartPre='/usr/bin/dnf' clean 'all'
ExecStart='/usr/bin/dnf' distro-sync -y
ExecStart='/usr/bin/dnf' autoremove -y
ExecStartPost='/usr/bin/sync'
ExecStartPost='/usr/bin/systemctl' reboot

Timer

  • 03:00 Oak
sudo -e '/etc/systemd/system/fedora-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'fedora-up.timer' --now
[Unit]
Description=Software Package Maintenance and Updater
After=network-online.target
Wants=network-online.target

[Timer]
OnCalendar=*-*-* 03:00:00
Persistent=true

[Install]
WantedBy=timers.target

Notable Folders and Commands

2)
Fedora Server and RHEL do XFS /boot and root /
3)
this uses all available remaining space
/usr/local/www/wiki/data/attic/linux/distros/fedora_workstation_gnome.1728522461.txt.gz · Last modified: by Sean Rhone