User Tools

Site Tools


distros:fedora_workstation_gnome

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
distros:fedora_workstation_gnome [2020/03/17 08:05] Sean Rhonedistros:fedora_workstation_gnome [2024/04/07 15:21] Sean Rhone
Line 2: Line 2:
  
   * Fedora Workstation ((https://getfedora.org/en/workstation))   * Fedora Workstation ((https://getfedora.org/en/workstation))
-  * 31 +  * 39
-  * 32 Beta+
  
-====== Issues ======+====== Download ======
  
-  * KeePassXC loads databases slower specifically on Fedora vs other distros ((https://bugzilla.redhat.com/show_bug.cgi?id=1653435))+===== Fedora Media Writer =====
  
-====== Download ======+  * https://github.com/FedoraQt/MediaWriter/releases
  
 ===== Workstation ===== ===== Workstation =====
Line 16: Line 15:
  
 ===== Updated Live Images ===== ===== Updated Live Images =====
 +
 +  * [[https://fedoraproject.org/wiki/Respins-SIG|Respins-SIG]]
  
   * https://dl.fedoraproject.org/pub/alt/live-respins   * https://dl.fedoraproject.org/pub/alt/live-respins
Line 21: Line 22:
 ====== Installation Notes ====== ====== Installation Notes ======
  
-  * ''EFI/fedora/shimx64.efi'' ((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)) +===== Partitioning ===== 
-  * Remove ''/home'', set ''/boot'' and ''/'' to use XFS, expand ''/''+ 
 +  - :!: Delete ''/home'' 
 +  - :!: Delete ''/'' 
 +  - Set ''/boot'' to XFS ((Fedora Server and RHEL do it)) 
 +  - Re-create ''/'' without specifying a size ((this uses all available remaining space)) 
 +  - Set ''/'' to XFS ((can also use F2FS with F39+ or by installing ''f2fs-tools'' on F38 and older before starting Anaconda)) 
 +  - :!: See [[notes:misc_linux#create_software_raid|Software RAID]] notes if software RAID across multiple drives is wanted
  
 ====== HOSTS ====== ====== HOSTS ======
  
   * https://github.com/StevenBlack/hosts/   * https://github.com/StevenBlack/hosts/
-  * Using ''Unified hosts + fakenews + gambling''+  * Unified hosts + fakenews + gambling
  
-  wget -O '/tmp/hosts-tmp' 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts' && sudo cp '/etc/hosts' '/etc/hosts-bak' && sudo mv '/tmp/hosts-tmp' '/etc/hosts' && sync+===== Initial =====
  
-  cat '/etc/hosts' | grep 'Date:'+  * Only run once
  
-  sudo -'/etc/hosts'+  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 -'/etc/hosts' && sync
  
-===== RoE LAN =====+===== Update =====
  
-  This adds RoE sites to HOSTS file and allows resources to be grabbed over LAN +****
-  Useful for doing significant configurations with sites on LAN+
  
-  echo -'\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.xyzsudo tee --append '/etc/hosts' '/dev/null' && cat '/etc/hosts' | grep 'realmofespionage.xyz'+  ls '/etc/hosts~' && wget -'/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
  
-====== DNF ======+===== Restore Backup =====
  
-  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'+  ls '/etc/hosts~&& sudo restorecon --I -R '/etc/hosts~&& sudo mv --force '/etc/hosts~' '/etc/hosts&& sync
  
-====== Repositories ======+====== DNF ======
  
-===== su =====+  * Disables Delta RPMs with ''deltarpm=false''
  
-  * Useful for fresh installations where repo(s) can be added, and then package updates can be ran afterwards unattended without having ''sudo'' timeout and re-prompt for the password+  echo 'deltarpm=falsesudo tee --append '/etc/dnf/dnf.conf' > '/dev/null' && cat '/etc/dnf/dnf.conf' | grep 'deltarpm=false'
  
-  sudo su+  sudo -e '/etc/dnf/dnf.conf' 
 + 
 +====== Repositories ======
  
 ===== RPM Fusion ===== ===== RPM Fusion =====
  
   * https://rpmfusion.org   * https://rpmfusion.org
 +  * See [[notes:fedora_rpm_fusion|RPM Fusion]] notes
  
 ==== free ==== ==== free ====
Line 64: Line 73:
   * https://download1.rpmfusion.org/free/fedora   * https://download1.rpmfusion.org/free/fedora
  
-  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+  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 ==== ==== nonfree ====
Line 70: Line 79:
   * https://download1.rpmfusion.org/nonfree/fedora   * https://download1.rpmfusion.org/nonfree/fedora
  
-  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+  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
  
-===== RawhideKernelNodebug =====+==== tainted ====
  
-  * https://fedoraproject.org/wiki/RawhideKernelNodebug +  * Provides interesting firmware files
-  * https://dl.fedoraproject.org/pub/alt/rawhide-kernel-nodebug+
  
-  sudo dnf config-manager --add-repo='http://dl.fedoraproject.org/pub/alt/rawhide-kernel-nodebug/fedora-rawhide-kernel-nodebug.repo' +  sudo dnf install 'rpmfusion-free-release-tainted' 'rpmfusion-nonfree-release-tainted'
- +
-===== gloriouseggroll/kernel Copr ===== +
- +
-  * https://copr.fedorainfracloud.org/coprs/gloriouseggroll/kernel +
-  * :!: TODO: Figure out vim or just add this after installing ''nano'' +
- +
-  sudo -e '/etc/yum.repos.d/ge-fsync-kernel.repo' +
- +
-<code> +
-[kernel-fsync] +
-name=Copr repo for kernel owned by gloriouseggroll +
-baseurl=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/kernel/fedora-$releasever-$basearch/ +
-type=rpm-md +
-skip_if_unavailable=True +
-gpgcheck=1 +
-gpgkey=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/kernel/pubkey.gpg +
-repo_gpgcheck=0 +
-enabled=1 +
-enabled_metadata=1 +
-priority=1</code>+
  
 ====== Software ====== ====== Software ======
Line 105: Line 93:
 ==== System ==== ==== System ====
  
-  * The initial ''dnf clean all'' was removed from here since on a fresh install, there's nothing to remove, and fresh repo data is pulled-in+  * See [[notes:misc_linux#dnf_autoremove_fix]] if ''dnf autoremove'' fails
  
-  sudo dnf distro-sync -y && sync +  sudo dnf autoremove -y && sudo dnf distro-sync -&& sync
- +
-  sudo dnf autoremove +
- +
-=== Autoremove Fix === +
- +
-  * Removes the initially-installed kernel in order to fix ``dnf autoremove`` +
-  * :!: This will vary depending on the Fedora image version used +
- +
-  sudo dnf list --installed 'kernel'+
- +
-  sudo dnf remove *5.3.7* && sync+
  
 ==== Firmware ==== ==== Firmware ====
Line 140: Line 117:
   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'   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 =====+==== Multimedia ==== 
 + 
 +  * https://rpmfusion.org/Howto/Multimedia
  
-  * https://rpmfusion.org/Configuration +<code>sudo dnf swap 'ffmpeg-free' 'ffmpeg' --allowerasing</code>
-  * Covers AppStream data and missing Multimedia packages+
  
-  sudo dnf groupupdate core multimedia sound-and-video && sync+<code>sudo dnf groupupdate 'core' 'multimedia' 'sound-and-video' --setop='install_weak_deps=False' --exclude='PackageKit-gstreamer-plugin' --allowerasing && sync</code>
  
 ===== General ===== ===== General =====
  
-  ''p7zip-plugins'' provides ''7z'' which 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 lm_sensors +  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 openssl1.1 gstreamer1-plugin-openh264 openh264 mozilla-openh264 p7zip p7zip-plugins unar wget xrandr yt-dlp 
  
-===== RPM Fusion =====+===== Google Chrome =====
  
-==== free ====+****
  
-  * ''ffmpeg'' is for ''youtube-dl'' to correct DASH containers+  google-chrome-stable
  
-  ffmpeg mpv+===== OBS Studio =====
  
-==== nonfree ====+  * ''obs-studio'' is in Fedora repos and works fine by itself, but pulls in interesting dependencies from [[notes:fedora_rpm_fusion#free|RPM Fusion's free repo]]
  
-  steam+  obs-studio
  
-  akmod-nvidia+===== RPM Fusion =====
  
-===== Game Controllers =====+==== free ====
  
-  Necessary for Xbox 360 controllers, and maybe others+****
  
-  kernel-modules-extra+  ffmpeg-libs
  
-===== VA-API =====+==== nonfree ====
  
-  * ''libva-intel-driver'' requires the [[#free1|RPM Fusion free repo]] +  steam
-  * ''intel-media-driver'' is the newer VA-API solution +
-  * ''libva-utils'' provides ''vainfo''+
  
-  libva-intel-driver intel-media-driver+  intel-media-driver
  
-  libva-utils+==== Tainted ====
  
-===== ckb-next =====+****
  
-  * https://github.com/ckb-next/ckb-next +  libdvdcss *'-firmware'
- +
-  ckb-next +
- +
-===== Keybase ===== +
- +
-  * https://keybase.io +
- +
-  'https://prerelease.keybase.io/keybase_amd64.rpm'+
  
 ===== Wine ===== ===== Wine =====
  
-**** +<code>wine winetricks openssl1.1.i686</code>
- +
-  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'+<code>mesa-libd3d mesa-libd3d.i686</code>
  
 ====== Settings ====== ====== Settings ======
Line 217: Line 173:
 ===== Keyboard Shortcuts ===== ===== Keyboard Shortcuts =====
  
-  gnome-terminal+<code>gnome-terminal</code>
  
-  bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"+<code>bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"</code>
  
-  gnome-terminal --command "sudo sh -c 'dnf clean 'all' && dnf distro-sync -y && sync && 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''"+<code>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''"</code>
  
 ==== Keys ==== ==== Keys ====
Line 229: Line 185:
   * Ctrl + Alt + T   * Ctrl + Alt + T
   * Ctrl + Alt + Z   * Ctrl + Alt + Z
-  * Pause or F7+  * Menu or F6
  
 ===== Printer ===== ===== Printer =====
Line 235: Line 191:
   * http://localhost:631/admin   * http://localhost:631/admin
  
-  * :!: Select the ''en, en'' printer driver +  * Printer name can be ''Ctrl + F'''
-  * Output Mode: Black Only Grayscale +  * :!: AppSocket/HP JetDirect -> HP -> HP Officejet Pro 8710, hpcups (en) ((single ''en'' **not** ''en, en'')) 
-  * Print Quality: High-Resolution Photo+  * Color Mode: Device Gray
   * Administration -> Set As Server Default   * Administration -> Set As Server Default
  
   socket://192.168.1.164:9100   socket://192.168.1.164:9100
  
-===== gedit =====+  HP Officejet Pro 8710
  
-  4 Tab width +==== Info ==== 
-  * Insert Spaces for Tab mode+ 
 +  * ''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 ===== ===== Network =====
  
-==== DNS ====+==== systemd-resolved ====
  
-=== Cloudflare ===+  * systemd-resolved caches DNS 
 +  * [[notes:dns_servers#quad9|Quad9]], see [[notes:dns_servers]] for other addresses
  
-  * https://1.1.1.1/dns/+  sudo mkdir -p '/etc/systemd/resolved.conf.d' && sudo -e '/etc/systemd/resolved.conf.d/99-dns-over-tls.conf'
  
-  1.1.1.1,1.0.0.1+<code> 
 +[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</code>
  
-  2606:4700:4700::1111,2606:4700:4700::1001+=== NetworkManager ===
  
-=== UncensoredDNS ===+<code>127.0.0.1</code>
  
-  * https://blog.uncensoreddns.org/ +<code>::1</code>
- +
-  89.233.43.71,91.239.100.100 +
- +
-  2a01:3a0:53:53::,2001:67c:28a4:: +
- +
-=== OpenNIC Anycast === +
- +
-  * https://wiki.opennic.org/start#anycast_tier_2_dns_resolvers +
- +
-  185.121.177.177,169.239.202.202 +
- +
-  2a05:dfc7:5::53,2a05:dfc7:5::5353 +
- +
-==== VPN.AC ==== +
- +
-  * See [[information:vpn.ac|VPN.AC]] +
-  * :!: If using this VPN, disable IPv6 from NetworkManager+
  
 ===== Nautilus ===== ===== Nautilus =====
  
-  * Sort folders before files +  * Sort Folders Before Files
-  * 4096 MB File Previews+
  
 ===== Rhythmbox ===== ===== Rhythmbox =====
Line 293: Line 241:
   * 10-notch Transparency   * 10-notch Transparency
  
-===== Transmission ===== +===== Fan Profile =====
- +
-  * Blocklist +
- +
-  http://john.bitsurge.net/public/biglist.p2p.gz +
- +
-===== Environment Variables ===== +
- +
-==== iHD VA-API ==== +
- +
-  * [[https://github.com/intel/media-driver|GitHub]] +
-  * Requires ''intel-media-driver'' +
-  * :!: Requires HuC firmware loaded for "AVC/HEVC/VP9 low power encoding bitrate control, including CBR, VBR, etc", which requires ''i915.enable_guc=2'' and PAVP enabled in firmware settings +
- +
-  echo 'export LIBVA_DRIVER_NAME=iHD' | sudo tee '/etc/profile.d/iHD-vappi.sh' > '/dev/null' && cat '/etc/profile.d/iHD-vappi.sh' +
- +
-  sudo -e '/etc/profile.d/iHD-vappi.sh' +
- +
-=== Verify === +
- +
-  * Default: ''Intel i965 driver for Intel(R) Coffee Lake - 2.4.0'' +
-  * iHD: ''Intel iHD driver - 1.0.0'' +
- +
-  vainfo | grep 'Driver' +
- +
-  LIBVA_DRIVER_NAME='iHD' vainfo | grep 'Driver' +
- +
-==== Iris Gallium Driver ==== +
- +
-  echo 'export MESA_LOADER_DRIVER_OVERRIDE=iris' | sudo tee '/etc/profile.d/iris-gallium.sh' > '/dev/null' && cat '/etc/profile.d/iris-gallium.sh' +
- +
-  sudo -e '/etc/profile.d/iris-gallium.sh' +
- +
-=== Verify === +
- +
-  * Default: ''Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)'' +
-  * Iris: ''Mesa Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)''+
  
-  glxinfo | grep 'renderer'+  * https://www.dell.com/support/kbdoc/en-us/000177768/guide-to-dell-power-manager
  
-  MESA_LOADER_DRIVER_OVERRIDE='irisglxinfo | grep 'renderer'+  sudo dnf install 'smbios-utils-python' -y && sudo smbios-thermal-ctl --set-thermal-mode='performance&& sudo dnf remove 'smbios-utils-python-y
  
 ===== Kernel Options ===== ===== Kernel Options =====
Line 340: Line 252:
  
   * https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html   * https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html
 +  * ''kernel.sysrq = 1''
  
   echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && cat '/etc/sysctl.d/99-sysrq.conf'   echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && cat '/etc/sysctl.d/99-sysrq.conf'
  
-==== Swap ==== +  sysctl 'kernel.sysrq'
- +
-  * https://www.kernel.org/doc/html/latest/admin-guide/sysctl/vm.htm +
- +
-  echo -e 'vm.swappiness = 1\nvm.vfs_cache_pressure = 50' | sudo tee '/etc/sysctl.d/99-swap.conf' > '/dev/null' && cat '/etc/sysctl.d/99-swap.conf' +
- +
-=== Verify === +
- +
-  * ''swappiness'' should be ''1'' +
-  * ''vfs_cache_pressure'' should be ''50'' +
- +
-  sysctl 'vm.swappiness' 'vm.vfs_cache_pressure'+
  
 ===== GRUB ===== ===== GRUB =====
Line 360: Line 262:
 ==== Config ==== ==== Config ====
  
-=== UEFI === +  :!: [[notes:kernel_parameters|More Kernel Parameters]]
- +
-**** +
- +
-  sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/efi/EFI/fedora/grub.cfg' +
- +
-=== Legacy === +
- +
-**** +
- +
-  sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg' +
- +
-=== grubby === +
   * Add commands within ''args''   * Add commands within ''args''
-  * :!: For whatever reason, ''grubby'' sometimes exists on F31, where other times it doesn't 
  
   sudo grubby --update-kernel='ALL' --args=''   sudo grubby --update-kernel='ALL' --args=''
  
-==== Kernel Parameters ====+  sudo grubby --update-kernel='ALL' --remove-args=''
  
-=== Other Parameters ===+  sudo -e '/etc/default/grub' && sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'
  
-  * See [[notes:kernel_parameters|Kernel Parameters]] for other options+==== Spinesnap ====
  
-=== Spinesnap ===+  * Last updated: 2024/04/01 
 +  * ''GRUB_CMDLINE_LINUX=''
  
-  * Last updated: 2020/01/19 +  sudo -e '/etc/default/grub&& sudo grub2-mkconfig -o '/boot/grub2/grub.cfg'
-  * :!: With ''i915.enable_guc=3'', HuC submission requires PAVP to be enabled in firmware settings or else the firmware can't be loaded or authenticated+
  
-  i915.enable_fbc=1 i915.fastboot=1 modprobe.blacklist=iTCO_wdt,sp5100_tco nowatchdog+<code>pci='pcie_bus_perf' video='HDMI-A-1:1920x1080@74'</code>
  
-  i915.enable_guc=3+===== GNOME =====
  
-== NVIDIA ==+==== Dynamic Wallpaper ====
  
-  Last updated: 2020/02/16 +****
-  ''rd.driver.blacklist=nouveau'' and ''modprobe.blacklist=nouveau'' are automatically added to ''GRUB_CMDLINE_LINUX='', and the Watchdog modules need appended to that+
  
-  ,iTCO_wdt,sp5100_tco+  gsettings set 'org.gnome.desktop.background' 'picture-uri' '/usr/share/backgrounds/f'*'/default/f'*'.xml'
  
-  i915.enable_fbc=1 i915.fastboot=1 nowatchdog+==== Extensions ====
  
-===== GNOME =====+=== Hide Top Bar ===
  
-==== Extensions ====+  * https://extensions.gnome.org/extension/545/hide-top-bar/
  
-=== Top Panel Workspace Scroll ===+==== External Monitor Settings ====
  
-  * https://github.com/timbertson/gnome-shell-scroll-workspaces+  * 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
  
-  rm -Rf ~/'.local/share/gnome-shell/extensions/scroll-workspaces@gfxmonk.net' '/tmp/gnome-shell-scroll-workspaces-master.zip'/tmp/gnome-shell-scroll-workspaces-master' && wget -O '/tmp/gnome-shell-scroll-workspaces-master.zip' 'https://github.com/timbertson/gnome-shell-scroll-workspaces/archive/master.zip' && unzip '/tmp/gnome-shell-scroll-workspaces-master.zip -d '/tmp&& mkdir -p ~/'.local/share/gnome-shell/extensions' && mv '/tmp/gnome-shell-scroll-workspaces-master/scroll-workspaces' ~/'.local/share/gnome-shell/extensions/scroll-workspaces@gfxmonk.net&& gnome-extensions enable 'scroll-workspaces@gfxmonk.net' && sync+  sudo cp --remove-destination ~/'.config/monitors.xml~gdm/'.config/monitors.xml' && sudo chown 'gdm':'gdm' ~gdm/'.config/monitors.xml' && sudo restorecon ---~gdm/'.config/monitors.xml'
  
-== Uninstall ==+=== Undo ===
  
 **** ****
  
-  gnome-extensions disable 'scroll-workspaces@gfxmonk.net' && rm -Rf ~/'.local/share/gnome-shell/extensions/scroll-workspaces@gfxmonk.net' && sync +  sudo rm ~gdm/'.config/monitors.xml' && sync
- +
-==== 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 +
-  * TODO: Is this even needed anymore? +
- +
-  xhost +LOCAL:+
  
 ==== Settings ==== ==== Settings ====
Line 437: Line 311:
 === All-in-one === === All-in-one ===
  
-  * Last updated: 2019/12/23+  * Last updated: 2024/04/01
  
-  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.software' 'download-updates' 'false' && gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'+  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 === === Individual ===
  
-  * Last updated: 2019/12/23+  * 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.interface' 'enable-animations' 'false'
Line 462: Line 338:
  
   gsettings set 'org.gnome.desktop.interface' 'clock-show-date' 'true'   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.software' 'download-updates' 'false'
  
   gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'   gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true'
 +
 +==== Weather ====
 +
 +=== Location Fork ===
 +
 +  * https://gitlab.gnome.org/GNOME/gnome-weather/-/issues/247#note_1819885
 +
 +  * 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 ===== ===== Hostname =====
Line 478: Line 366:
  
   * General -> [ ] Load previous databases on startup   * General -> [ ] Load previous databases on startup
 +  * Security -> [x] Use DuckDuckGo service to download website icons
  
 ==== Add Database Password to GNOME Keyring ==== ==== Add Database Password to GNOME Keyring ====
Line 487: Line 376:
 ===== lm_sensors ===== ===== lm_sensors =====
  
-****+  sudo sensors-detect --auto
  
-  sudo sensors-detect --auto+  sudo -e '/etc/sysconfig/lm_sensors'
  
 ===== mpv ===== ===== mpv =====
  
-**** +  mkdir -p ~/'.config/mpv' && nano ~/'.config/mpv/mpv.conf'
- +
-  mkdir -p ~/'.config/mpv' && echo -e "vo=gpu\nprofile=gpu-hq\nhwdec=vaapi-copy" | tee ~/'.config/mpv/mpv.conf' > '/dev/null' && cat ~/'.config/mpv/mpv.conf' +
- +
-===== NetworkManager ===== +
- +
-  * ''wifi.powersave'' can be ''2'' for disabled, or ''3'' for enabled +
-  * :!: ''ethernet.cloned-mac-address=random'' breaks USB Tethering with iOS/iPhones +
- +
-  sudo -e '/etc/NetworkManager/conf.d/99-custom.conf'+
  
 <code> <code>
-[device-mac-randomization] +save-position-on-quit 
-wifi.scan-rand-mac-address=yes +sub-auto=fuzzy 
- +force-window=yes 
-[connection-mac-randomization] +profile=gpu-hq 
-wifi.cloned-mac-address=random +scale=ewa_lanczossharp 
- +cscale=ewa_lanczossharp 
-[connection] +video-sync=display-resample 
-wifi.powersave=2</code>+interpolation 
 +tscale=oversample</code>
  
 <code> <code>
-[connection-mac-randomization] +hwdec=vaapi 
-ethernet.cloned-mac-address=random</code>+hwdec-codecs=all 
 +vo=dmabuf-wayland</code>
  
-===== Laptop Power Management =====+===== Secure Shell =====
  
-  * See [[notes:laptop_power_management|Laptop Power Management]]+  * See [[clients:secure_shell|Client]] notes to generate/restore public key
  
-===== Secure Shell =====+===== Drive Maintenance =====
  
-  * See [[Clients:Secure Shell|Secure Shell]]+==== XFS Scrub ====
  
-===== systemd =====+  * [[https://wiki.archlinux.org/title/XFS#Online_metadata_checking_(scrub)|XFS - ArchWiki]]
  
-  * Disable suspend on laptop lid-close if "docked" or more than one external screen exists +  sudo dnf install 'xfsprogs-xfs_scrub-y && sync
-  * :!: This is necessary on Spinesnap when using NVIDIA's proprietary graphics driver and an external HDMI screen primarily+
  
-  sudo mkdir -p '/etc/systemd/logind.conf.d' && sudo -e '/etc/systemd/logind.conf.d/custom.conf'+  sudo systemctl enable 'xfs_scrub_all.timer--now && sudo systemctl start 'xfs_scrub_all&& sync && sudo systemctl status 'xfs_scrub_all' -l
  
-<code> +==== Trim ====
-[Login] +
-HandleLidSwitchDocked=ignore</code>+
  
-===== TRIM =====+****
  
-==== Swap ====+  sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l
  
-  * Add ''discard'' after ''defaults'' for the ''swap'' mountpoint ((defaults,discard)) +===== UTC =====
-  * According to the ''swapon'' man page, setting this in ''fstab'' is acceptable+
  
-  sudo -e '/etc/fstab'+  * [[https://wiki.archlinux.org/index.php/System_time#Time_standard|System time - ArchWiki]] 
 +  * Set RTC to UTC 
 +  * :!: Likely needed if Windows was installed first for dual-boot 
 +  * :!: Windows should also be set to UTC
  
-  ,discard+  sudo timedatectl set-local-rtc '0'
  
-==== Service ====+==== Verify ====
  
 **** ****
  
-  sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l+  timedatectl | grep local
  
 ===== Wine ===== ===== Wine =====
Line 558: Line 439:
   * See [[notes:wine|Wine]]   * See [[notes:wine|Wine]]
  
-====== Xorg =====+===== Xorg/Wayland =====
- +
-  * See [[notes:xorg.conf_snippets|xorg.conf Snippets]] for more configurations +
- +
-===== Spinesnap ===== +
- +
-==== NVIDIA ==== +
- +
-  * Sets pre-rendered frames from the default to 1 +
-  * Apparently reduces CPU usage for desktop environments rendered with the NVIDIA GPU +
-  * May smooth-out framerates when turning the camera in FFXIV +
- +
-  echo 'export __GL_MaxFramesAllowed=1' | sudo tee '/etc/profile.d/nvidia-custom.sh' > '/dev/null' && cat '/etc/profile.d/nvidia-custom.sh'+
  
-  sudo -e '/etc/profile.d/nvidia-custom.sh'+==== Full RGB HDMI ====
  
-==== intel + nouveau ====+  * See [[notes:proptest_full_rgb]] for more ports 
 +  * 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 ((the current values are specific to a Dell Latitude 5591 and its onboard HDMI port))
  
-  sudo dnf install xorg-x11-drv-intel xorg-x11-drv-nouveau -y && sudo -e '/etc/X11/xorg.conf.d/99-graphics.conf'+  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
  
 <code> <code>
-Section "OutputClass" +#!/bin/bash 
-    Identifier  "Intel Graphics" +proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '99' '1' 
-    MatchDriver "i915+proptest -M 'i915' -D '/dev/dri/card'* '103' 'connector' '107' '4'</code>
-    Driver "intel" +
-    Option "DRI"       "3" +
-    Option "TearFree"  "0" +
-EndSection+
  
-Section "OutputClass" +====== Firefox ======
-    Identifier  "NVIDIA Graphics" +
-    MatchDriver "nouveau" +
-    Driver "nouveau" +
-    Option "DRI"       "3" +
-EndSection</code>+
  
-====== Mozilla Firefox ======+  * See [[notes:firefox|Firefox]] if old configuration is needed, otherwise use Firefox Sync 
 +  * https://wiki.archlinux.org/title/Firefox/Privacy
  
-===== Settings =====+===== about:config =====
  
-==== Environment Variables ====+  * See [[notes:firefox#aboutconfig|about:config]] for more info 
 +  * :!: ''layout.frame_rate'' ideally needs set if using Wayland and above 60Hz
  
-  * Enables hardware acceleration, use of WebRenderer, and smooth-scrolling +  layout.frame_rate
-  * :!: WebRenderer requires the previous ''MOZ_ACCELERATED'' variable as well+
  
-  echo -e 'export MOZ_ACCELERATED=1\nexport MOZ_WEBRENDER=1\nexport MOZ_USE_XINPUT2=1' | sudo tee '/etc/profile.d/firefox-hwaccel.sh' > '/dev/null' && cat '/etc/profile.d/firefox-hwaccel.sh'+  extensions.screenshots.disabled
  
-  sudo -e '/etc/profile.d/firefox-hwaccel.sh' +  extensions.pocket.enabled
- +
-==== Default Profile ==== +
- +
-  rm -fv '/tmp/profiles.ini' && nano '/tmp/profiles.ini' && sed -i 's/'CHANGEME'/'$USER'/g' '/tmp/profiles.ini' +
- +
-<code> +
-[General] +
-StartWithLastProfile=1 +
- +
-[Profile0] +
-Name=default +
-IsRelative=1 +
-Path=CHANGEME +
-Default=1</code> +
- +
-==== user.js ==== +
- +
-  * Last updated: 2020/03/14 +
- +
-  rm -fv '/tmp/user.js' && nano '/tmp/user.js' +
- +
-<code> +
-/********************* +
- * Hardware-specific * +
- *********************/ +
- +
-user_pref("layout.frame_rate", 144); +
- +
-/*********** +
- * 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); +
-user_pref("network.standard-url.escape-utf8", false); +
- +
-/*********** +
- * Privacy * +
- ***********/ +
- +
-user_pref("security.tls.version.min", 2); +
-user_pref("security.ssl.require_safe_negotiation", true); +
-user_pref("security.ssl.treat_unsafe_negotiation_as_broken", true); +
-user_pref("security.OCSP.require", true); +
-user_pref("security.cert_pinning.enforcement_level", 2); +
-user_pref("security.ssl3.rsa_des_ede3_sha", false); +
-user_pref("security.ssl.enable_false_start", false); +
- +
-user_pref("network.security.esni.enabled", true); +
- +
-/******* +
- * U2F * +
- *******/ +
- +
-user_pref("security.webauth.u2f", true); +
- +
-/******* +
- * END * +
- *******/</code> +
- +
-=== VPN === +
- +
-  * :!: Add if using a VPN in order to prevent local IP address leaking +
-  * :!: IPv6 is disabled in order to prevent WebRTC from grabbing an IPv6 address even though NetworkManager has it disabled... +
-  * :!: ''media.peerconnection.enabled'' disables WebRTC +
- +
-<code> +
-/*********** +
- * Privacy * +
- ***********/ +
- +
-user_pref("network.dns.disableIPv6", true); +
-user_pref("media.peerconnection.enabled", false);</code> +
- +
-==== Apply Settings ==== +
- +
-  * ''Path'' should report the current user's username, and the text ''Custom Stuff'' should be visible +
-  * :!: If Firefox doesn't open automatically, ''firefox -p default'' must 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 ===== ===== Extensions =====
  
-==== Download ==== +  [[https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/|uBlock Origin]] 
- +  * [[https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/|Decentraleyes]] 
-  Decentraleyes +  * [[https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/|Privacy Badger]]
-  * 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 ==== +
- +
-  * [xEnable 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 +
-  * [xLocalstorage Cleanup (Firefox 58+)+
  
 ==== uBlock Origin ==== ==== uBlock Origin ====
  
-=== Settings ===+==== Filters list ====
  
-  [x] Prevent WebRTC from leaking local IP addresses +****
- +
-=== Filter lists === +
- +
-  [ ] Ads -> EasyList ((uncheck; included in ''Fanboy Ultimate List'')) +
-  [ ] Privacy -> EasyPrivacy ((uncheck; included in ''Fanboy Ultimate List'')) +
- +
-  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+
  
 <code> <code>
 https://www.fanboy.co.nz/fanboy-problematic-sites.txt https://www.fanboy.co.nz/fanboy-problematic-sites.txt
 https://www.fanboy.co.nz/r/fanboy-ultimate.txt https://www.fanboy.co.nz/r/fanboy-ultimate.txt
-https://www.fanboy.co.nz/fanboy-antifacebook.txt +https://www.fanboy.co.nz/fanboy-cookiemonster_ubo.txt 
-https://www.fanboy.co.nz/fanboy-antifonts.txt +https://www.fanboy.co.nz/enhancedstats.txt</code>
-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</code>+
  
-===== Testing Sites ===== +==== My filters ====
- +
-  * https://www.youtube.com/html5 +
-  * https://ipx.ac +
-  * https://decentraleyes.org/test/ +
-  * https://panopticlick.eff.org/ +
-  * https://browserleaks.com/ +
-  * https://speedof.me/ +
-  * https://www.cloudflare.com/ssl/encrypted-sni/ +
-  * https://1.1.1.1/help +
- +
-====== Notable Folders and Commands ====== +
- +
-===== Extract ISO ===== +
- +
-  * ''D'' is the destination you want the extracted files to go +
-  * ''x'' is the ISO you want to extract files from +
-  * No space after the ''-o'' flag 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 ===== +
- +
-  * https://ytdl-org.github.io/youtube-dl/index.html +
- +
-==== Download ====+
  
 **** ****
  
-  rm -f '/tmp/youtube-dl' && wget -O '/tmp/youtube-dl' 'https://yt-dl.org/downloads/latest/youtube-dl' && chmod +x '/tmp/youtube-dl'+<code> 
 +! 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
  
-==== Show Formats ====+! End</code>
  
-  * Change ''x'' to a URL+===== DNS over HTTPS =====
  
-  '/tmp/youtube-dl' --list-formats x+  * [[notes:dns_servers#quad9|Quad9]], see [[notes:dns_servers]] for other addresses
  
-==== Download Media ====+<code>https://dns.quad9.net/dns-query</code>
  
-  * Change ''x'' to a URL +====== Server ======
-  * ''bestaudio'' can be changed to ''bestvideo'' for just video, or ''best'' for best video with audio+
  
-  '/tmp/youtube-dl' --extract-audio --format 'bestaudio' x+  * For workstations that run servers as a secondary directive 
 +  * For headless servers, see [[distros:fedora_server|Fedora Server]]
  
-=== M4A Audio === +===== Enable SSH =====
- +
-  * Ideally for if iOS devices will be involved +
- +
-  '/tmp/youtube-dl' --extract-audio --format 'bestaudio' --audio-format 'm4a'+
- +
-=== MP3 Audio ===+
  
 **** ****
  
-  '/tmp/youtube-dl' --extract-audio --format 'bestaudio' --audio-format 'mp3x+  sudo systemctl enable --now 'sshd'
  
-===== Shortcuts =====+===== Automatic Updates =====
  
-  /usr/share/applications+==== Service ====
  
-  ~/.local/share/applications+  sudo -e '/etc/systemd/system/fedora-up.service'
  
-===== Icons =====+<code> 
 +[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</code>
  
-  /usr/share/icons/hicolor+===== Timer =====
  
-  ~/.local/share/icons/hicolor+  * 03:00 Oak
  
-===== Anaconda Module Blacklists ===== +  sudo -e '/etc/systemd/system/fedora-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'fedora-up.timer' --now
- +
-**** +
- +
-  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 ''x'' to 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 ''x'' to 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 ===== +
- +
-  * https://www.geeks3d.com/gputest/ +
- +
-==== Execute ==== +
- +
-=== HDTV === +
- +
-  * 1280x720 +
- +
-  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' +
- +
-== NVIDIA Optimus == +
- +
-**** +
- +
-  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_'* && __NV_PRIME_RENDER_OFFLOAD='1' __GLX_VENDOR_LIBRARY_NAME='nvidia' ./GpuTest /test='fur' /width='1280' /height='720' +
- +
-=== FHD === +
- +
-  * 1920x1080 +
- +
-  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 === +
- +
-  * 3840x2160 +
- +
-  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 ''hdparm'' commands 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 ''apt'' command +
- +
-  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 ((personally tested fine on several Acer and Dell computers)) +
-  * Safer way is to use ''efibootmgr'' to 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 ===== +
- +
-  * https://nouveau.freedesktop.org/wiki/Optimus +
- +
-  sudo cat '/sys/kernel/debug/vgaswitcheroo/switch' +
- +
-===== ACPI Tables ===== +
- +
-  * In ''dsdt.dsl'', look for ''_OSI'' values, along with ''Windows'' and ''Linux'' +
- +
-  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 ===== +
- +
-  * https://unix.stackexchange.com/a/114398 +
- +
-  sudo dnf install 'monitor-edid' +
- +
-  monitor-edid +
- +
-===== Custom Resolutions ===== +
- +
-==== Generate Modeline ==== +
- +
-  * Use ''--reduced'' only for LCD/Non-CRT displays, and only as-needed ((useful for reducing amount of bandwidth over cables, particularly in-case of unstable 4k@60Hz set-ups)) +
-  * Syntax is ''horizontal'' (width), ''vertical'' (height) and ''refresh rate'' +
- +
-  cvt '3840' '2160' '60' +
- +
-  cvt --reduced '3840' '2160' '60' +
- +
-<code>--reduced</code> +
- +
-==== Temporarily Apply ==== +
- +
-  * Changes are lost after reboot +
-  * Values after ''--newmode'' are from the above generate command, and is everything after ''Modeline'' +
- +
-  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 ==== +
- +
-  * ''Identifier'' is the name of the port on the GPU the display is connected to +
-  * ''Modeline'' is from the above generate command, including the text ''Modeline'' +
-  * ''PreferredMode'' is the custom resolution name generated+
  
 <code> <code>
-Section "Monitor" +[Unit] 
-    Identifier  "HDMI-A-0" +Description=Software Package Maintenance and Updater 
-    Modeline x +After=network-online.target 
-    Option      "PreferredMode" "3840x2160R" +Wants=network-online.target
-EndSection</code>+
  
-===== Backlight =====+[Timer] 
 +OnCalendar=*-*-* 03:00:00 
 +Persistent=true
  
-==== Notes ====+[Install] 
 +WantedBy=timers.target</code>
  
-  * The following commands with an asterisk expect only one backlight controller at ''/sys/class/backlight'' +====== Notable Folders and Commands ======
-  * This was only tested on one laptop with ''intel_backlight'' +
-  * See [[#power_management|Power Management notes]] on how to add backlight changes to a udev script +
-  * See [[https://wiki.archlinux.org/index.php/backlight|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 ''376'' to desired brightness +
-  * Desired brightness **must** be under ''max_brightness'' value +
- +
-  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 ''7ZIPNAME'' in ''7ZIPNAME.7z'' to the desired archive name +
-  * Change ''PASS'' in ''-pPASS'' to the desired password +
-  * Change ''x'' to the file or folder to add to the archive +
- +
-  7za a '7ZIPNAME.7z' -p'PASS' 'x' +
- +
-  7za a 'x.7z' -p'x' 'x' +
- +
-===== oathtool ===== +
- +
-  * ''x'' is a secret without ''&digits=6'' +
- +
-  sudo dnf install 'oathtool' +
- +
-  oathtool --totp -b 'x' +
- +
-===== Remove EXIF data =====+
  
-  sudo dnf install 'perl-Image-ExifTool'+  * See [[notes:misc_linux]]
  
-  exiftool -all= *.* -overwrite_original 
/var/www/wiki/data/pages/distros/fedora_workstation_gnome.txt · Last modified: 2024/05/02 03:13 by Sean Rhone