User Tools

Site Tools


distros:fedora_workstation_gnome

Information

  • Fedora Workstation 1)
  • 40

Download

Fedora Media Writer

Workstation

Updated Live Images

Installation Notes

ISO Image Write

  • :!: 2024/04/29: Rufus from Windows 10 wrote F40's Workstation ISO in DD mode to an external HDD and caused media check to fail around 4%
  • :!: Fedora Image Writer 5.0.9 win64 also had failed media checks in the past (comment), but this version 2) was consistently fine
  • 2024/04/29: dd images from Linux or a LiveUSB session of it, or balena's Etcher portable on Windows

Partitioning

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

HOSTS

Initial

  • Only run once
ls '/etc/hosts~' || wget -O '/tmp/hosts-tmp' 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts' && sudo cp --backup '/tmp/hosts-tmp' '/etc/hosts' && sudo restorecon -F -I -R '/etc/hosts' && sync

Update

ls '/etc/hosts~' && wget -O '/tmp/hosts-tmp' 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts' && sudo mv --force '/tmp/hosts-tmp' '/etc/hosts' && sudo restorecon -F -I -R '/etc/hosts' && sync

Restore Backup

ls '/etc/hosts~' && sudo restorecon -F -I -R '/etc/hosts~' && sudo mv --force '/etc/hosts~' '/etc/hosts' && sync

DNF

  • Disables Delta RPMs with deltarpm=false
echo 'deltarpm=false' | sudo tee --append '/etc/dnf/dnf.conf' > '/dev/null' && cat '/etc/dnf/dnf.conf' | grep 'deltarpm=false'
sudo -e '/etc/dnf/dnf.conf'

Repositories

Keybase

sudo rpm --import 'https://keybase.io/docs/server_security/code_signing_key.asc' && sudo dnf config-manager --add-repo 'http://prerelease.keybase.io/rpm/$basearch'

RPM Fusion

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'

Multimedia

sudo dnf groupupdate 'core' 'multimedia' 'sound-and-video' --setop='install_weak_deps=False' --exclude='PackageKit-gstreamer-plugin' --allowerasing && sync

General

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

Google Chrome

google-chrome-stable

Keybase

keybase

OBS Studio

  • obs-studio is in Fedora repos and works fine by itself, but pulls in interesting dependencies from RPM Fusion's free repo
obs-studio

Wine

wine winetricks
mesa-libd3d mesa-libd3d.i686

Settings

Keyboard Shortcuts

gnome-terminal
bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"
gnome-terminal --command "sudo sh -c 'dnf clean 'all' && dnf distro-sync -y && sync && flatpak update && wget -O '/tmp/sb-hosts' 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts' && mv --force '/tmp/sb-hosts' '/etc/hosts' && restorecon -F -I -R '/etc/hosts' && sync && 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

  • Printer name can be Ctrl + F'd
  • :!: AppSocket/HP JetDirect → HP → HP Officejet Pro 8710, hpcups (en) 6)
  • Color Mode: Device Gray
  • Administration → Set As Server Default
socket://192.168.1.164:9100
HP Officejet Pro 8710

Info

  • HP Officejet Pro 8710, hpcups 3.23.5 has two options, (en) and (en), (en)
  • With Firefox, do Inspect
  • (en) is drv
  • (en), (en) is lsb
  • https://access.redhat.com/solutions/6971890 implies the drv path is the modern choice
  • :!: The IPP option sometimes(?) prints blurry documents; CUPS says old non-IPP drivers will be deprecated eventually

Network

systemd-resolved

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.9#dns.quad9.net 149.112.112.112#dns.quad9.net 2620:fe::fe#dns.quad9.net 2620:fe::9#dns.quad9.net
DNSOverTLS=yes

NetworkManager

127.0.0.1
::1

Nautilus

  • Sort Folders Before Files

Rhythmbox

Terminal

  • 10-notch Transparency

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'

GRUB

Config

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

  • Last updated: 2024/04/29
  • GRUB_CMDLINE_LINUX=
sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'
preempt='full' threadirqs nohz='off' acpi_osi='Linux' pci='pcie_bus_perf,realloc,pcie_scan_all,big_root_window' video='HDMI-A-1:1920x1080MR@75' reboot='pci'

GNOME

Disable Wayland

  • :!: 2023/07/23: It's been the cause of far too many issues and solving nothing while doing it
  • Last tested: 2024/04/29
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'

Force evdev

Dynamic Wallpaper

gsettings set 'org.gnome.desktop.background' 'picture-uri' '/usr/share/backgrounds/f'*'/default/f'*'.xml'

Extensions

Disable unredirect fullscreen windows

Hide Top Bar

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'

Undo

sudo rm ~gdm/'.config/monitors.xml' && sync

Settings

All-in-one

  • Last updated: 2024/04/01
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.software' 'download-updates' 'false' && gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'

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.software' 'download-updates' 'false'
gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'

Weather

Location Fork

  • Last tested: 2024/03/31
wget -O ~/'Downloads/add-location-to-gnome-weather.sh' 'https://gitlab.com/Espionage724/scripts/-/raw/main/add-location-to-gnome-weather.sh?ref_type=heads' && chmod +x ~/'Downloads/add-location-to-gnome-weather.sh' && sh ~/'Downloads/add-location-to-gnome-weather.sh'

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'

Keybase

run_keybase && sudo rm -f '/etc/yum.repos.d/prerelease.keybase.io_rpm_basearch.repo'

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

  • See Client notes to generate/restore public key

Drive Maintenance

XFS Scrub

sudo dnf install 'xfsprogs-xfs_scrub' -y && sync
sudo systemctl enable 'xfs_scrub_all.timer' --now && sudo systemctl start 'xfs_scrub_all' && sync && sudo systemctl status 'xfs_scrub_all' -l

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

Xorg/Wayland

Display Settings

  • This sets Full RGB and other options for a connected display (HDMI)
  • See proptest_full_rgb for more ports and examples
  • This works on Wayland as well as GNOME on Xorg even with Wayland globally-disabled from custom.conf
  • :!: The numbers 103 and after the connector change depending on the hardware and need checked from proptest on a Wayland session 8)
  • Last updated: 2024/04/29
sudo dnf install 'drm-utils' -y && sudo -e '/etc/gdm/PostLogin/Default' && sudo restorecon -F -I -R '/etc/gdm/PostLogin/Default' && sudo chmod +x '/etc/gdm/PostLogin/Default' && sync
#!/bin/bash

# Broadcast RGB (99) to Full (1)
proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '99' '1'

# content type (107) to Game (4)
proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '107' '4'

# Colorspace (106) to opRGB (7)
proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '106' '7'

# max bpc (108) to 8
proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '108' '8'

# End

Firefox

about:config

  • See about:config for more info
  • :!: layout.frame_rate ideally needs set if using Wayland and above 60Hz 9)
layout.frame_rate
extensions.screenshots.disabled
extensions.pocket.enabled

Test

  • :!: 2024/05/01: gfx.x11-egl.force-disabled sounds ideal on Xorg sessions, but EGL is likely required for Wayland
gfx.x11-egl.force-disabled

Extensions

uBlock Origin

Filters list

https://www.fanboy.co.nz/fanboy-problematic-sites.txt
https://www.fanboy.co.nz/r/fanboy-ultimate.txt
https://www.fanboy.co.nz/fanboy-cookiemonster_ubo.txt
https://www.fanboy.co.nz/enhancedstats.txt

My filters

! Hide RuneScape Wiki clocks
! 2023/12/13
oldschool.runescape.wiki###utcdate > [href="#"]
oldschool.runescape.wiki###footer-info-lastmod
runescape.wiki##[href="/w/Clock_(interface)"]
runescape.wiki###footer-info-lastmod

! End

DNS over HTTPS

https://dns.quad9.net/dns-query

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)
Oct 25, 2023, 43acd55
3)
Fedora Server and RHEL do it
4)
this uses all available remaining space
5)
If F2FS isn't an option, install f2fs-tools on F38 and older before starting Anaconda
6)
single en not en, en
7)
seemingly not required for GNOME on Wayland
8)
the current values are specific to a Dell Latitude 5591 and its onboard HDMI port
9)
check Target Frame Rate in about:support
/var/www/wiki/data/pages/distros/fedora_workstation_gnome.txt · Last modified: 2024/05/02 03:13 by Sean Rhone