distros:fedora_workstation_gnome
Table of Contents
Information
- Fedora Workstation 1)
- 39
Download
Fedora Media Writer
Workstation
Updated Live Images
Installation Notes
- 2023/07/24: RPM Fusion doesn't seem necessary for media playback, but notably includes
intel-media-driver
andsteam
Partitioning
Delete
/home
Delete
/
- Set
/boot
to XFS - Re-create
/
without specifying a size - Set
/
to XFS
HOSTS
- Unified hosts + fakenews + gambling
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'
Google Chrome
sudo dnf config-manager --set-enabled 'google-chrome'
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
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
andEDITOR
tonano
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'
RPM Fusion
Tainted Repos
- Provides interesting firmware files
sudo dnf install 'rpmfusion-free-release-tainted' 'rpmfusion-nonfree-release-tainted'
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 irqbalance keepassxc mpv transmission-gtk android-tools aria2 binutils hdparm htop icoutils kernel-tools lm_sensors openssl1.1 gstreamer1-plugin-openh264 openh264 mozilla-openh264 p7zip p7zip-plugins unar wget xfsprogs-xfs_scrub xrandr yt-dlp
Fonts TODO
- Figure out what package(s) are needed to make that page render fonts
google-noto-*-vf-fonts
Google Chrome
google-chrome-stable
Keybase
keybase
OBS Studio
obs-studio
is in Fedora repos, but pulls in interesting dependencies from RPM Fusion's free repo
obs-studio
RPM Fusion
free
ffmpeg-libs
nonfree
steam
intel-media-driver
Tainted
libdvdcss *'-firmware'
Wine
wine winetricks openssl1.1.i686
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
Printer
- Printer name can be
Ctrl + F
'd AppSocket/HP JetDirect → HP → HP Officejet Pro 8710, hpcups (en) 2)
- Color Mode: Device Gray
- Administration → Set As Server Default
socket://192.168.1.164:9100
Kole
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)
isdrv
(en), (en)
islsb
- https://access.redhat.com/solutions/6971890 implies the
drv
path is the modern choice The IPP option sometimes print blurry documents; CUPS says old non-IPP drivers will be deprecated eventually
Network
- Use systemd-resolved for DNS as it caches
NetworkManager
127.0.0.1
::1
systemd-resolved
- See dns_servers for other servers
sudo mkdir -p '/etc/systemd/resolved.conf.d' && sudo -e '/etc/systemd/resolved.conf.d/99-dns-over-tls.conf'
[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
Nautilus
- Sort Folders Before Files
Rhythmbox
- See Internet Radio
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'
Swappiness
echo 'vm.swappiness = 0' | sudo tee '/etc/sysctl.d/99-swappiness.conf' > '/dev/null' && cat '/etc/sysctl.d/99-swappiness.conf'
Dracut
- System-specific boot optimization
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 -f '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all && sync
GRUB
Config
- Add commands within
args
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: 2023/12/02
GRUB_CMDLINE_LINUX=
sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'
acpi_osi='Linux' iommu='pt' pci='pcie_bus_perf,realloc,pcie_scan_all,big_root_window' reboot='pci' video='HDMI-A-1:1920x1080@74'
i915.enable_guc='3'
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 ~/'.config/monitors.xml' ~gdm/'.config/monitors.xml' && sudo chown 'gdm':'gdm' ~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_ENABLE_ATOMIC_KMS='0' export MUTTER_DEBUG_FORCE_KMS_MODE='simple' # Clutter export CLUTTER_PAINT='disable-dynamic-max-render-time' # 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' # End
Settings
All-in-one
- Last updated: 2023/11/02
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.wm.preferences' 'disable-workarounds' 'true' && gsettings set 'org.gnome.software' 'download-updates' 'false' && gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'
Individual
- Last updated: 2023/11/02
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.wm.preferences' 'disable-workarounds' 'true'
gsettings set 'org.gnome.software' 'download-updates' 'false'
gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'
Weather
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
Secure Shell
- See Client notes to generate/restore public key
Drive Maintenance
Trim
sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l
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
UTC
- Set RTC to UTC
Needed if Windows is installed first
Windows should also be set to UTC
sudo timedatectl set-local-rtc '0'
Verify
timedatectl | grep local
Wine
- See Wine
Wayland
Full RGB HDMI
- See proptest_full_rgb for more ports
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 proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '99' '1' proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '107' '4'
Firefox
- See Firefox if old configuration is needed, otherwise use Firefox Sync
about:config
- See about:config
Extensions
gio open 'https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/' 'https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/'
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
www.phoronix.com##.details > .comments www.phoronix.com##.author www.phoronix.com##.comments-label www.phoronix.com###sharebar www.phoronix.com###social www.phoronix.com###searchbox www.phoronix.com##div.popular-list > .comments oldschool.runescape.wiki###utcdate > [href="#"] oldschool.runescape.wiki###footer-info-lastmod runescape.wiki##[href="/w/Clock_(interface)"] runescape.wiki###footer-info-lastmod
DNS over HTTPS
- See dns_servers for other addresses
https://security.cloudflare-dns.com/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
- See misc_linux
/var/www/wiki/data/pages/distros/fedora_workstation_gnome.txt · Last modified: 2023/12/02 05:56 by Sean Rhone