User Tools

Site Tools


distros:fedora_workstation_gnome

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

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

Repositories

RPM Fusion

free

sudo rpm --import 'https://rpmfusion.org/keys?action=AttachFile&do=get&target=RPM-GPG-KEY-rpmfusion-free-fedora-2020' && sync && sudo dnf install 'https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-'$(rpm -E %fedora)'.noarch.rpm' -y && sync

nonfree

sudo rpm --import 'https://rpmfusion.org/keys?action=AttachFile&do=get&target=RPM-GPG-KEY-rpmfusion-nonfree-fedora-2020' && sync && sudo dnf install 'https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-'$(rpm -E %fedora)'.noarch.rpm' -y && sync

Software

Remove

sudo dnf remove gnome-weather

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 swap 'ffmpeg-free' 'ffmpeg' --allowerasing
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 obs-studio 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 

RPM Fusion

Tainted Repos

  • Provides interesting firmware files
'rpmfusion-free-release-tainted' 'rpmfusion-nonfree-release-tainted'

free

ffmpeg-libs

nonfree

steam
intel-media-driver

Tainted

libdvdcss
sudo dnf --repo='rpmfusion-nonfree-tainted' install *'-firmware'

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) 4)
  • 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/07/01
  • GRUB_CMDLINE_LINUX=
sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'
nohz='off' acpi_osi='Linux' pci='pcie_bus_perf,realloc,pcie_scan_all,big_root_window' pcie_aspm='off' video='HDMI-A-1:1920x1080MR@75' reboot='pci' nvme_core.default_ps_max_latency_us='0' i915.enable_guc='3' usbhid.quirks='0x1b1c:0x1b75:0x20000408' usbcore.quirks='1b1c:1b75:gn'

GNOME

Dynamic Wallpaper

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

Extensions

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

Tweaks

sudo -e '/etc/profile.d/99-tweaks.sh'
# Mutter
export MUTTER_DEBUG_FORCE_KMS_MODE='simple'
export MUTTER_DEBUG_KMS_THREAD_TYPE='user'

# Clutter
export CLUTTER_PAINT='disable-dynamic-max-render-time'

# End

Settings

All-in-one

  • Last updated: 2024/07/01
gsettings reset 'org.gnome.shell' 'app-picker-layout' && gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'true' && 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' 'true'
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'

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

  • 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 5)
  • Last updated: 2024/07/01
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'

# End

Firefox

about:config

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

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)
Fedora Server and RHEL do it
3)
this uses all available remaining space
4)
single en not en, en
5)
the current values are specific to a Dell Latitude 5591 and its onboard HDMI port
6)
check Target Frame Rate in about:support
/var/www/wiki/data/pages/distros/fedora_workstation_gnome.txt · Last modified: 2024/07/01 18:24 by 127.0.0.1