distros:fedora_workstation_gnome
This is an old revision of the document!
Table of Contents
Information
- Fedora Workstation 1)
- 30
TODO
Download
Workstation
Updated Live Images
Installation Notes
EFI/fedora/shimx64.efi2)- Remove
/home, set/bootand/to use XFS, expand/
HOSTS
- Using
Unified hosts + fakenews + gambling
sudo wget -O '/etc/hosts' 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts' && sync
cat '/etc/hosts' | grep 'Date:'
sudo -e '/etc/hosts'
RoE LAN
- This adds RoE sites to HOSTS file and allows resources to be grabbed over LAN
- Useful for doing large configurations with sites on local LAN
echo -e '\n# RoE LAN\n192.168.1.153 realmofespionage.xyz\n192.168.1.153 social.realmofespionage.xyz\n192.168.1.153 blog.realmofespionage.xyz\n192.168.1.153 media.realmofespionage.xyz\n192.168.1.153 wiki.realmofespionage.xyz' | sudo tee --append '/etc/hosts' > '/dev/null' && cat '/etc/hosts' | grep 'realmofespionage.xyz'
DNF
- Disables Delta RPMs with
deltarpm=false
cat '/etc/dnf/dnf.conf' | grep 'deltarpm=false' || echo 'deltarpm=false' | sudo tee --append '/etc/dnf/dnf.conf' > '/dev/null' && cat '/etc/dnf/dnf.conf'
Repositories
su
- Useful for fresh installations where repo(s) can be added, and then package updates can be ran afterwards unattended without having
sudotimeout and re-prompt for the password
sudo su
RPM Fusion
free
sudo rpm --import 'https://rpmfusion.org/keys?action=AttachFile&do=get&target=RPM-GPG-KEY-rpmfusion-free-fedora-'$(rpm -E %fedora) && sync && sudo dnf install 'https://download1.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-'$(rpm -E %fedora) && sync && sudo dnf install 'https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-'$(rpm -E %fedora)'.noarch.rpm' -y && sync
RawhideKernelNodebug
sudo dnf config-manager --add-repo='http://dl.fedoraproject.org/pub/alt/rawhide-kernel-nodebug/fedora-rawhide-kernel-nodebug.repo'
pp3345/gnome-with-patches
sudo dnf copr enable 'pp3345/gnome-with-patches'
gloriouseggroll/mesa-aco
sudo -e '/etc/yum.repos.d/mesa-aco.repo'
Software
Update
System
- The initial
dnf clean allwas removed from here since on a fresh install, there's nothing to remove, and fresh repo data is pulled-in dnf autoremoveas of 2019/08/29 is broken
sudo dnf distro-sync -y && sync
sudo dnf autoremove -y
Firmware
sudo fwupdmgr refresh && sudo fwupdmgr update --verbose
Flatpaks
flatpak update && sudo flatpak update
GNU nano
- Installs
nano - Sets
VISUALandEDITORtonanovia environment variable - Sets
nowrapfor 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 Initial
- Covers AppStream data and missing Multimedia packages
sudo dnf groupupdate core multimedia sound-and-video && sync
General
p7zip-pluginsprovides7zwhich can be used for extracting ISOs and other formats
sudo dnf install filezilla keepassxc p7zip p7zip-plugins unar aria2 gimp transmission-gtk hdparm nano htop wget irqbalance evolution flashrom
RPM Fusion
free
ffmpegis foryoutube-dlto correct DASH containers
ffmpeg mpv
nonfree
Spinesnap needs
broadcom-wl, and forakmods --forceto be ran after installation
steam
broadcom-wl
Game Controllers
- Necessary for Xbox 360 controllers, and maybe others
kernel-modules-extra
VA-API
ckb-next
ckb-next
Keybase
'https://prerelease.keybase.io/keybase_amd64.rpm'
Wine
wine winetricks
Tor Browser
torbrowser-launcher
Google Chrome
sudo rpm --import 'https://dl-ssl.google.com/linux/linux_signing_key.pub' && sudo dnf install 'https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm'
Settings
Keyboard Shortcuts
- As of 2019/08/29,
dnf autoremove -yis removed from the update command since it's been broken on F30 for over a week or two now…
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 && fwupdmgr refresh && fwupdmgr update --verbose && flatpak update && rm -Rfv '/usr/lib64/firefox/browser/features' '/home/'*'/.mozilla/firefox/'*'/features' && wget -O '/etc/hosts' 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/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
- Pause or F7
Printer
Select the
en, enprinter driver- Output Mode: Black Only Grayscale
- Print Quality: High-Resolution Photo
- Administration → Set As Server Default
socket://192.168.1.164:9100
gedit
- 4 Tab width
- Insert Spaces for Tab mode
Network
DNS
UncensoredDNS
OpenNIC Anycast
185.121.177.177,169.239.202.202
2a05:dfc7:5::53,2a05:dfc7:5::5353
VPN.AC
- See VPN.AC
If using this VPN, disable IPv6 from NetworkManager
Nautilus
- Sort folders before files
- 4096 MB File Previews
Rhythmbox
- See Internet Radio
Terminal
- 10-notch Transparency
GRUB
grubby
- Add commands within
args
sudo grubby --update-kernel='ALL' --args=''
Error Fix
This only applies to Legacy/MBR installs
sudo grub2-install '/dev/sda'
Other Parameters
- See Kernel Parameters for other options
AIO
Spinesnap
- Last updated: 2019/09/07
scsi_mod.use_blk_mq=y dm_mod.use_blk_mq=y i915.enable_fbc=1 i915.fastboot=1 i915.enable_psr=1 usbcore.quirks=1b1c:1b38:gn,1b1c:1b3c:gn modprobe.blacklist=iTCO_wdt,sp5100_tco nowatchdog intel_iommu=on pci=nocrs,pcie_bus_perf
blk_mq
scsi_mod.use_blk_mq=y dm_mod.use_blk_mq=y
Reboot
efiis for UEFI systemspciis for Legacy systems and Coreboot with SeaBIOS payload- There are other values possible should either of those not work
reboot=pci
reboot=efi
i915
i915.enable_fbc=1 i915.fastboot=1 i915.enable_psr=1
amdgpu
- Allows use of Overdrive options for overclocking
amdgpu.ppfeaturemask=0xffffffff
Verify
cat '/sys/module/amdgpu/parameters/ppfeaturemask' | grep '4294967295'
Corsair USB Quirks
usbcore.quirks=1b1c:1b38:gn,1b1c:1b3c:gn
PCI
pci=nocrs,pcie_bus_perf
IOMMU
intel_iommu=on
Blacklist Watchdogs
iTCO_wdtcontrols watchdog on some Intel platformssp5100_tcocontrols watchdog on some AMD platformsnowatchdogdisables both soft and hard generic watchdogs- Apparently this reduces power usage slightly
modprobe.blacklist=iTCO_wdt,sp5100_tco nowatchdog
GNOME
Disable Wayland
cat '/etc/gdm/custom.conf' | grep '#WaylandEnable' > '/dev/null' && sudo sed -i 's/'#WaylandEnable'/'WaylandEnable'/g' '/etc/gdm/custom.conf' && cat '/etc/gdm/custom.conf' | grep 'WaylandEnable'
sudo -e '/etc/gdm/custom.conf'
Root GUI Apps in Wayland
- Run this before running GUI applications requiring root
- This needs re-ran after session restart
xhost +LOCAL:
Settings
All-in-one
- Last updated: 2019/09/05
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' 'true' && 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.software' 'download-updates' 'false'
Individual
- Last updated: 2019/08/29
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' 'true'
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.software' 'download-updates' 'false'
Hostname
- Change
xto computer name
hostnamectl set-hostname 'x'
KeePassXC
Settings
- General → [ ] Load previous databases on startup
Add Database Password to GNOME Keyring
secret-tool store --label='KeePass' 'keepass' 'default'
mpv
mkdir -p ~/'.config/mpv' && echo -e "profile=gpu-hq\nscale=ewa_lanczossharp\ncscale=ewa_lanczossharp\nvideo-sync=display-resample\ninterpolation\ntscale=oversample" | tee ~/'.config/mpv/mpv.conf' > '/dev/null' && cat ~/'.config/mpv/mpv.conf'
NetworkManager
wifi.powersavecan be2for disabled, or3for enabledethernet.cloned-mac-address=randombreaks USB Tethering with iOS/iPhones
sudo -e '/etc/NetworkManager/conf.d/99-custom.conf'
[device-mac-randomization] wifi.scan-rand-mac-address=yes [connection-mac-randomization] ethernet.cloned-mac-address=random wifi.cloned-mac-address=random [connection] wifi.powersave=2
Spinesnap
- Requires
broadcom-wlto be installed
sudo -e '/etc/NetworkManager/conf.d/99-custom.conf'
[device] match-device=driver:wl wifi.scan-rand-mac-address=no [connection] wifi.powersave=2
Laptop Power Management
Secure Shell
- See Secure Shell
Solo Key
Information
- Usable as authentication for GDM and
sudo
PAM
Dependencies
sudo dnf install pamu2fcfg pam-u2f
Centralized Key
pamu2fcfg > ~/'u2f_keys' && sudo mv ~/'u2f_keys' '/etc/u2f_mappings'
GDM
- Add to line 2, under the
pam_selinux_permit.soentry
sudo -e '/etc/pam.d/gdm-password'
auth sufficient pam_u2f.so authfile=/etc/u2f_mappings cue
sudo
- Add to line 2, under the
#%PAM-1.0line
sudo -e '/etc/pam.d/sudo'
auth sufficient pam_u2f.so authfile=/etc/u2f_mappings cue
Swappiness
echo "vm.swappiness=10" | sudo tee '/etc/sysctl.d/99-swappiness.conf' > '/dev/null' && cat '/etc/sysctl.d/99-swappiness.conf'
cat '/sys/fs/cgroup/memory/memory.swappiness'
systemd
- Log data is stored in volatile storage
- Max log file sizes of
50MB
sudo mkdir -p '/etc/systemd/journald.conf.d' && echo -e "[Journal]\nStorage=volatile\nSystemMaxUse=50M\nRuntimeMaxUse=50M" | sudo tee '/etc/systemd/journald.conf.d/logging.conf' > '/dev/null' && cat '/etc/systemd/journald.conf.d/logging.conf'
TRIM
Swap
- According to the
swaponman page, setting this infstabis acceptable
sudo -e '/etc/fstab'
,discard
Service
sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l
Wine
- See Wine
Computer-specific
Nightwane
Volume
alsamixer
Fan Control
- Expects an ASUS KCMA-D8 motherboard
- If OpenBMC is figured out, this may be superseded
Answer
yesto allsensors-detectprompts and reboot forfancontrolto run
sudo dnf install 'lm_sensors' && sudo sensors-detect && sudo -e '/etc/fancontrol' && sudo systemctl enable 'fancontrol'
INTERVAL=10 DEVNAME=/sys/class/hwmon/hwmon6=w83795g FCTEMPS=/sys/class/hwmon/hwmon6/device/pwm2=/sys/class/hwmon/hwmon6/device/temp8_input FCFANS=/sys/class/hwmon/hwmon6/device/fan1_input+/sys/class/hwmon/hwmon6/device/fan2_input MINTEMP=/sys/class/hwmon/hwmon6/device/pwm2=50 MAXTEMP=/sys/class/hwmon/hwmon6/device/pwm2=60 MINSTART=/sys/class/hwmon/hwmon6/device/pwm2=4000 MINSTOP=/sys/class/hwmon/hwmon6/device/pwm2=0
Custom Resolution
Generate Modeline
- 4k@60Hz CVT-RB
- Fixes unstable HDMI at 4K@60Hz, and overly-bright colors on DisplayPort
This cannot be used on Wayland currently
cvt --verbose --reduced '3840' '2160' '60' | grep 'Modeline "3840x2160R" 533.00 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync'
xorg.conf Snippet
HDMI-A-0is used for theIdentifierwith the HDMI port onamdgpu
sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'
Section "Monitor"
Identifier "HDMI-A-0"
Modeline "3840x2160R" 533.00 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync
Option "PreferredMode" "3840x2160R"
EndSection
Spinesnap
Using an AMD eGPU with a display attached doesn't seem to work reliably if the
inteldriver is being used 6)- TODO: If
inteloffers no obvious benefit, remove theOutputClasssection for it and let it default tomodesetting
sudo dnf install xorg-x11-drv-intel xorg-x11-drv-amdgpu -y && sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'
Section "Monitor"
Identifier "HDMI-A-0"
Modeline "3840x2160R" 533.00 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync
Option "PreferredMode" "3840x2160R"
EndSection
Section "OutputClass"
Identifier "Intel Graphics"
MatchDriver "i915"
Driver "intel"
Option "DRI" "3"
Option "TearFree" "0"
EndSection
Section "OutputClass"
Identifier "AMD Graphics"
MatchDriver "amdgpu"
Driver "amdgpu"
Option "DRI" "3"
Option "TearFree" "0"
EndSection
Deep Color
- The lack-of quotes around
30is intentional and required syntax This may cause minor issues with programs not expecting 30-bit color 7)
This can cause games in Wine to not start under some circumstances 8)
sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'
Section "Screen"
Identifier "Deep Color Screen"
DefaultDepth 30
EndSection
Graphics xorg.conf
intel
sudo dnf install 'xorg-x11-drv-intel' -y && sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'
Section "OutputClass"
Identifier "Intel Graphics"
MatchDriver "i915"
Driver "intel"
Option "DRI" "3"
Option "TearFree" "0"
EndSection
amdgpu
ShadowPrimaryset tooncaused GNOME not to log-in
sudo dnf install 'xorg-x11-drv-amdgpu' -y && sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'
Section "OutputClass"
Identifier "AMD Graphics"
MatchDriver "amdgpu"
Driver "amdgpu"
Option "DRI" "3"
Option "TearFree" "0"
EndSection
radeon
- Expects pre-SI GPUs 9)
- For SI, CIK, and newer GPUs, use
amdgpu, along with enablingsi_supportandcik_supportrespectively for theamdgpukernel module 10) This was changed to a new syntax and untested as of 2019/08/23
sudo dnf install 'xorg-x11-drv-ati' -y && sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'
Section "OutputClass"
Identifier "AMD Graphics"
MatchDriver "radeon"
Driver "radeon"
Option "DRI" "3"
Option "SwapbuffersWait" "0"
Option "TearFree" "0"
Option "AccelMethod" "EXA"
EndSection
Mozilla Firefox
Settings
Environment Variables
- Enables hardware acceleration and use of WebRenderer
WebRenderer requires the previous
MOZ_ACCELERATEDvariable as well
echo -e 'export MOZ_ACCELERATED=1\nexport MOZ_WEBRENDER=1' | sudo tee '/etc/profile.d/firefox-hwaccel.sh' > '/dev/null' && cat '/etc/profile.d/firefox-hwaccel.sh'
Default Profile
rm -fv '/tmp/profiles.ini' && nano '/tmp/profiles.ini' && sed -i 's/'CHANGEME'/'$USER'/g' '/tmp/profiles.ini'
[General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=1 Path=CHANGEME Default=1
user.js
- Last updated: 2019/04/05
IPv6 is disabled in order to prevent WebRTC from grabbing an IPv6 address even though NetworkManager has it disabled…
media.peerconnection.enableddisables WebRTC
rm -fv '/tmp/user.js' && nano '/tmp/user.js'
/***********
* General *
***********/
user_pref("extensions.screenshots.disabled", true);
user_pref("reader.parse-on-load.enabled", false);
user_pref("media.mediasource.experimental.enabled", true);
user_pref("media.mediasource.ignore_codecs", true);
user_pref("media.autoplay.enabled", false);
user_pref("webgl.disabled", true);
user_pref("webgl.enable-webgl2", false);
user_pref("accessibility.force_disabled", 1);
user_pref("mousewheel.min_line_scroll_amount", 40);
user_pref("browser.tabs.drawInTitlebar", true);
/*******
* U2F *
*******/
user_pref("security.webauth.u2f", true);
/***********
* Privacy *
***********/
user_pref("network.dns.disableIPv6", true);
user_pref("media.peerconnection.enabled", false);
/*******
* END *
*******/
Apply Settings
Pathshould report the current user's username, and the textCustom Stuffshould be visibleIf Firefox doesn't open automatically,
firefox -p defaultmust be ran the first time Firefox is started after this command
ls '/tmp/profiles.ini' '/tmp/user.js' && pkill 'firefox' && rm -Rfv ~/'.mozilla' && sync && mkdir -p ~/'.mozilla/firefox/'$USER && mv '/tmp/profiles.ini' ~/'.mozilla/firefox/profiles.ini' && mv '/tmp/user.js' ~/'.mozilla/firefox/'$USER'/user.js' && sync && cat ~/'.mozilla/firefox/profiles.ini' | grep $USER && cat ~/'.mozilla/firefox/'$USER'/user.js' | grep 'Custom Stuff' && sleep '1' && sync || firefox -p 'default'
Extensions
Download
- Decentraleyes
- HTTPS Everywhere
- Privacy Possum
- Cookie AutoDelete
- uBlock Origin
gio open 'https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/versions' && gio open 'https://www.eff.org/https-everywhere' && gio open 'https://addons.mozilla.org/en-US/firefox/addon/privacy-possum/versions' && gio open 'https://addons.mozilla.org/en-US/firefox/addon/cookie-autodelete/versions' && gio open 'https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/versions'
Cookie AutoDelete
- [x] Enable Automatic Cleaning? Delay Before Cleaning
- [x] Enable Cleanup on Domain Change
- [ ] Enable Cleanup Log and Counter
- [ ] Show Notification After Cookie Cleanup
- [x] Clean Cookies from Open Tabs on Startup
- [x] Localstorage Cleanup (Firefox 58+)
uBlock Origin
Settings
- [x] Prevent WebRTC from leaking local IP addresses
Filter lists
- Multipurpose → [x] Dan Pollock's hosts file
- Multipurpose → [x] hpHost's Ad and tracking servers
- Multipurpose → [x] MVPS HOSTS
- Custom → [x] Import
Custom 3rd-party filters
- Last updated: 2018/11/23
https://www.fanboy.co.nz/fanboy-problematic-sites.txt https://www.fanboy.co.nz/r/fanboy-ultimate.txt https://www.fanboy.co.nz/fanboy-antifacebook.txt https://www.fanboy.co.nz/fanboy-antifonts.txt https://www.fanboy.co.nz/fanboy-cookiemonster.txt https://raw.githubusercontent.com/ryanbr/fanboy-adblock/master/popads-domains-list.txt https://raw.githubusercontent.com/ryanbr/fanboy-adblock/master/fake-news.txt
Testing Sites
Notable Folders and Commands
Extract ISO
Dis the destination you want the extracted files to goxis the ISO you want to extract files from- No space after the
-oflag is intentional - This is primarily useful for copying Windows ISO images to a FAT32 flash drive
7z x -o'D' -y x
7z x -o'/run/media/espionage724/LTSC 2019' -y '/home/espionage724/Downloads/en_windows_10_enterprise_ltsc_2019_x64_dvd_be3c8ffb.iso' && sync && sync
youtube-dl
Download
rm -f '/tmp/youtube-dl' && wget -O '/tmp/youtube-dl' 'https://yt-dl.org/downloads/latest/youtube-dl' && chmod +x '/tmp/youtube-dl'
Show Formats
- Change
xto a URL
'/tmp/youtube-dl' --list-formats x
Download Media
- Change
xto a URL bestaudiocan be changed tobestvideofor just video, orbestfor best video with audio
'/tmp/youtube-dl' --extract-audio --format 'bestaudio' x
M4A Audio
- Ideally for if iOS devices will be involved
'/tmp/youtube-dl' --extract-audio --format 'bestaudio' --audio-format 'm4a' x
MP3 Audio
'/tmp/youtube-dl' --extract-audio --format 'bestaudio' --audio-format 'mp3' x
Shortcuts
/usr/share/applications
~/.local/share/applications
Icons
/usr/share/icons/hicolor
~/.local/share/icons/hicolor
Anaconda Module Blacklists
sudo -e '/etc/modprobe.d/anaconda-blacklist.conf'
YUM/DNF Repos
gio open '/etc/yum.repos.d'
DNF History
Transaction IDs
sudo dnf history
Undo
- Change
xto a transaction ID found above
sudo dnf history undo x
GPG Keys
Check Keys
rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
Remove Keys
sudo rpm -e x
Re-generate Thumbnails
rm -Rf ~/'.cache/thumbnails'
List GNOME gsettings
- Change
xto schema or omit it to show all settings
gsettings list-recursively 'x'
GNOME Software Maintenance
pkcon -c '1' refresh && pkcon update
fstrim
sudo fstrim --verbose --all
SELinux Re-label
sudo touch '/.autorelabel'
GNOME Monitors Reset
rm -f ~/'.config/monitors.xml' ~/'.config/monitors.xml~'
PulseAudio Reset
rm -f ~/'.config/pulse/'*
Xorg Debug
journalctl -e _COMM='gdm-x-session'
gio open ~/'.local/share/xorg/Xorg.1.log'
Verify DRI3
LIBGL_DEBUG='verbose' glxinfo | grep 'libgl'
GpuTest
Execute
HDTV
- 1280×720
wget -O '/tmp/GpuTest_Linux_x64.zip' 'http://www.ozone3d.net/gputest/dl/GpuTest_Linux_x64_0.7.0.zip' && unzip '/tmp/GpuTest_Linux_x64.zip' -d '/tmp' && cd '/tmp/GpuTest_Linux_x64_'* && ./GpuTest /test='fur' /width='1280' /height='720'
cd '/tmp/GpuTest_Linux_x64_'* && ./GpuTest /test='fur' /width='1280' /height='720'
/fullscreen /benchmark /benchmark_duration_ms='15000'
FHD
- 1920×1080
wget -O '/tmp/GpuTest_Linux_x64.zip' 'http://www.ozone3d.net/gputest/dl/GpuTest_Linux_x64_0.7.0.zip' && unzip '/tmp/GpuTest_Linux_x64.zip' -d '/tmp' && cd '/tmp/GpuTest_Linux_x64_'* && ./GpuTest /test='fur' /width='1920' /height='1080'
cd '/tmp/GpuTest_Linux_x64_'* && ./GpuTest /test='fur' /width='1920' /height='1080'
/fullscreen /benchmark /benchmark_duration_ms='15000'
UHDTV1
- 3840×2160
wget -O '/tmp/GpuTest_Linux_x64.zip' 'http://www.ozone3d.net/gputest/dl/GpuTest_Linux_x64_0.7.0.zip' && unzip '/tmp/GpuTest_Linux_x64.zip' -d '/tmp' && cd '/tmp/GpuTest_Linux_x64_'* && ./GpuTest /test='fur' /width='3840' /height='2160'
cd '/tmp/GpuTest_Linux_x64_'* && ./GpuTest /test='fur' /width='3840' /height='2160'
/fullscreen /benchmark /benchmark_duration_ms='15000'
Cleanup
rm -Rf '/tmp/GpuTest_Linux_'* && cd ~ && sync
Show Sensors
sudo apt install 'lm-sensors' -y && sudo sensors-detect --auto && sudo watch -n0.1 sensors
Show CPU Frequency
grep 'MHz' '/proc/cpuinfo'
watch -n 0.1 grep \'cpu MHz\' '/proc/cpuinfo'
OpenSSL Supported Ciphers
openssl ciphers -v | awk '{print $2}' | sort | uniq
Partition Information
- Both commands do the same things
df -hT
df --human-readable --print-type
Encryption Information
sudo cryptsetup -v status '/dev/dm-0'
ATA Secure Erase
All
hdparmcommands below assume actions to be performed on/dev/sda
Preparation
sudo dnf install 'hdparm' && sync
sudo hdparm -I '/dev/sda'
systemctl suspend
ATA Secure Erase
sudo blkdiscard --verbose '/dev/sda'
sudo hdparm --user-master u --security-set-pass 'x' '/dev/sda' && sudo hdparm --user-master u --security-erase-enhanced 'x' '/dev/sda' && sync
sudo hdparm --user-master u --security-set-pass 'x' '/dev/sda' && sudo hdparm --user-master u --security-erase 'x' '/dev/sda' && sync
NVMe Erase
- NVMe Erase from the start page lands here and I usually use a Ubuntu LiveUSB to do this, hence the
aptcommand
sudo apt install 'nvme-cli' -y && sync
sudo dnf install 'nvme-cli' -y && sync
sudo nvme format '/dev/nvme0' --reset --ses='1' --pil='0' --pi='0' --ms='0' && sync
Clean EFI Variables
Could potentially cause a firmware brick or other issues with improper EFI implementations, use at own risk 13)
- Safer way is to use
efibootmgrto remove boot entries individually
sudo rm -f '/sys/firmware/efi/efivars/'* || sync && sudo efibootmgr -v
RAID
Controller Details
sudo mdadm --detail-platform
Create Software RAID
Came from old notes; I assume this worked at some point, but in any case, the syntax looks nice :p
sudo mdadm --create '/dev/md0' --name='RAID' --level='0' --raid-devices='3' '/dev/sda' '/dev/sdb' '/dev/sdc' --verbose
VGA Switcheroo Power States
sudo cat '/sys/kernel/debug/vgaswitcheroo/switch'
ACPI Tables
- In
dsdt.dsl, look for_OSIvalues, along withWindowsandLinux
sudo dnf install 'acpica-tools'
sudo cp --force '/sys/firmware/acpi/tables/DSDT' ~/'dsdt.dat'
cd ~ && iasl -d ~/'dsdt.dat'
gio open ~/'dsdt.dsl'
sudo dnf remove 'acpica-tools' && sync
Display EDID Info
Custom Resolutions
Generate Modeline
- Use
--reducedonly for LCD/Non-CRT displays, and only as-needed 14) - Syntax is
horizontal(width),vertical(height) andrefresh rate
cvt '3840' '2160' '60'
cvt --reduced '3840' '2160' '60'
--reduced
Temporarily Apply
- Changes are lost after reboot
- Values after
--newmodeare from the above generate command, and is everything afterModeline
xrandr --newmode "3840x2160R" 533.00 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync
xrandr --addmode 'HDMI-A-0' '3840x2160R'
xrandr --output 'HDMI-A-0' --mode '3840x2160R'
Verify
xrandr --verbose | grep *current
Permanently Apply
Identifieris the name of the port on the GPU the display is connected toModelineis from the above generate command, including the textModelinePreferredModeis the custom resolution name generated
Section "Monitor"
Identifier "HDMI-A-0"
Modeline x
Option "PreferredMode" "3840x2160R"
EndSection
Backlight
Notes
- The following commands with an asterisk expect only one backlight controller at
/sys/class/backlight - This was only tested on one laptop with
intel_backlight - See Power Management notes on how to add backlight changes to a udev script
- See backlight for more details
Controller Name
ls '/sys/class/backlight'
Query Current Brightness
cat '/sys/class/backlight/'*'/brightness'
Query Max Brightness
cat '/sys/class/backlight/'*'/max_brightness'
Set Custom Brightness
- Change
376to desired brightness - Desired brightness must be under
max_brightnessvalue
echo "376" | sudo tee '/sys/class/backlight/'*'/brightness' > '/dev/null'
Set Max Brightness
echo "$(cat '/sys/class/backlight/'*'/max_brightness')" | sudo tee '/sys/class/backlight/'*'/brightness' > '/dev/null'
Intel GuC Firmware
sudo cat '/sys/kernel/debug/dri/0/i915_guc_info'
sudo cat '/sys/kernel/debug/dri/0/i915_guc_load_status'
Hyper-threading Information
grep -e "processor" -e "core id" -e "^$" /proc/cpuinfo
Optimal GCC compiler flags
gcc -v -E -x c -march=native -mtune=native - < /dev/null 2>&1 | grep cc1 | perl -pe 's/ -mno-\S+//g; s/^.* - //g;'
Privacy
Clear Terminal History
history -cw
Create 7z Password Archive
- Change
7ZIPNAMEin7ZIPNAME.7zto the desired archive name - Change
PASSin-pPASSto the desired password - Change
xto the file or folder to add to the archive
7za a '7ZIPNAME.7z' -p'PASS' 'x'
7za a 'x.7z' -p'x' 'x'
oathtool
xis a secret without&digits=6
sudo dnf install 'oathtool'
oathtool --totp -b 'x'
Remove EXIF data
sudo dnf install 'perl-Image-ExifTool'
exiftool -all= *.* -overwrite_original
2)
EFI file to boot and in the case of (quirky) InsydeH2O UEFI implementations, add to SecureBoot trust; doesn't matter if SecureBoot is enabled or not
3)
defaults,discard
4)
if grep reports nothing, use whatever is reported instead
5)
modesetting has a 4K RB resolution without any settings on Xorg6)
for a very specific scenario, the Intel iGPU has to be active, manually set to use the
intel Xorg DDX driver, an AMD GPU plugged into a Thunderbolt eGPU using the amdgpu Xorg DDX driver, with a 4K display plugged into it via HDMI7)
GpuTest's fur ring doesn't render right, RS's NXT client's splash screen is gray
8)
FFXIV crashes on start-up due to a DirectX error
9)
HD6000 series and lower, and non-SI HD7000 series
10)
see
modinfo -p amdgpu13)
personally tested fine on several Acer and Dell computers
14)
useful for reducing amount of bandwidth over cables, particularly in-case of unstable 4k@60Hz set-ups
/usr/local/www/wiki/data/attic/distros/fedora_workstation_gnome.1568202198.txt.gz · Last modified: by Sean Rhone
