https://github.com/cyb3rko/fedokde-handbook
My personal notes and scripts for my Fedora KDE setup
https://github.com/cyb3rko/fedokde-handbook
fedora handbook kde kde-plasma linux
Last synced: 3 months ago
JSON representation
My personal notes and scripts for my Fedora KDE setup
- Host: GitHub
- URL: https://github.com/cyb3rko/fedokde-handbook
- Owner: cyb3rko
- Created: 2024-08-31T20:30:18.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-01-09T17:39:40.000Z (4 months ago)
- Last Synced: 2025-01-09T18:41:17.373Z (4 months ago)
- Topics: fedora, handbook, kde, kde-plasma, linux
- Language: Shell
- Homepage:
- Size: 13.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Fedora KDE Handbook
System info: (Fedora Workstation + KDE Plasma Wayland)
---
- [Resource Management](#resource-management)
- [Large file and folder monitor](#large-file-and-folder-monitor)
- [Find large files](#find-large-files)
- [AutoTrash](#autotrash)
- [journalctl](#journalctl)
- [Services](#services)
- [dnf Optimization](#dnf-optimization)
- [SSH Session Keep-Alive](#ssh-session-keep-alive)
- [Java](#java)
- [GitHub Authentication](#github-authentication)
- [Howdy Face Recognition](#howdy-face-recognition)
- [Remove KDE Stuff](#remove-kde-stuff)
- [Remove Gnome Junk](#remove-gnome-junk)
- [Remove Libre Office](#remove-libre-office)
- [Remove unused firmware](#remove-unused-firmware)
- [Remove other unused pre-installed stuff](#remove-other-unused-pre-installed-stuff)
- [Nvidia Graphics](#nvidia-graphics)
- [Applications](#applications)
- [Firefox](#firefox)
- [OneDrive](#onedrive)
- [Jetbrains Toolbox](#jetbrains-toolbox)
- [yt-dlp](#yt-dlp)
- [TLS](#tls)
- [Import CA](#import-ca)## Resource Management
### Large file and folder monitor
Use the CLI tool ncdu for a simple overview of the largest files and folders.
```shell
sudo dnf install ncdu -y
ncdu /
```### Find large files
Find files in current directory with a specified minimum size (in this example 100 MB)
```shell
find . -type f -size +100M
```### Autotrash
To automatically clear older files in the trash, run the following (example: files older than 40 days):
```shell
uv tool install autotrash
autotrash -d 40 --install
```### journalctl
See space used by system logs:
```shell
journalctl --disk-usage
```Set maximum log retention time in `/usr/lib/systemd/journald.conf`:
```shell
MaxRetentionSec=1month
```## Services
### dnf Optimization
Change the following entries at `/etc/dnf/dnf.conf`:
```shell
max_parallel_downloads=10
deltarpm=True
fastestmirror=True
install_weak_deps=False
```### SSH Session Keep-Alive
Edit `/etc/ssh/ssh_config` and append:
```shell
ServerAliveInterval 60
```### Java
To install the correct version do:
```shell
dnf search opendjk
sudo dnf install ...
```To switch between installed java versions do:
```shell
sudo alternatives --config java
```### GitHub Authentication
```shell
ssh-keygen -t ed25519 -f /home/niko/.ssh/id_github_ed25519
```Add to config at `/home/niko/.ssh/config`:
```shell
Host github.com
User git
IdentityFile ~/.ssh/id_github_ed25519
```Example remote config:
```shell
git remote set-url origin [email protected]:cyb3rko/fedokde-handbook.git
```### Howdy Face Recognition
Install it via:
```shell
dnf copr enable principis/howdy
dnf --refresh install howdy
```Find your available cameras with `ls /dev/video*` and remember the name of your infrared camera.
Paste the camera path in the config at `sudo howdy config` in the line `device_path`.Test the camera with `sudo howdy test` and change it until you find the infrared camera.
Allow Howdy authentication for `sudo` at `/etc/pam.d/sudo`:
```shell
auth sufficient pam_python.so /lib64/security/howdy/pam.py
...
```Allow Howdy authentication for the KDE lockscreen at `/etc/pam.d/kde`:
```shell
auth [success=done ignore=ignore default=bad] pam_selinux_permit.so
auth sufficient pam_python.so /lib64/security/howdy/pam.py
auth substack password-auth
...
```Manually create the snapshots folder:
```shell
sudo mkdir /usr/lib64/security/howdy/snapshots
```### Hide unused built-in applications
```shell
sudo cp /usr/share/applications/{org.kde.contactprintthemeeditor.desktop,org.kde.contactthemeeditor.desktop,org.kde.headerthemeeditor.desktop} /home/niko/.local/share/applications && \
for file in /home/niko/.local/share/applications/org.kde.*themeeditor.desktop; \
do sudo chown niko:niko $file && echo "NoDisplay=true" >> $file; done
```### Remove KDE Stuff
```shell
sudo yum autoremove plasma-welcome akregator kaddressbook khelpcenter kmahjong korganizer kpat
```### Remove Gnome Junk
```shell
sudo yum autoremove gnome-keyring*
```### Remove Libre Office
```shell
sudo yum autoremove libreoffice*
```### Remove unused firmware
```shell
sudo yum autoremove amd-gpu-firmware cirrus-audio-firmware
```### Remove other unused pre-installed stuff
```shell
sudo yum autoremove bluez mariadb minicom sos speech-dispatcher words
```## Nvidia Graphics
To enable support for Nvidia Graphics Cards using Wayland do the following:
```shell
sudo dnf upgrade -y
sudo dnf install kmodtool akmods mokutil openssl
sudo kmodgenca -a
sudo mokutil --import /etc/pki/akmods/certs/public_key.der
``````shell
systemctl reboot
```Add free + nonfree rpm fusion repos: https://rpmfusion.org/Configuration.
Then:
```shell
sudo dnf update
sudo dnf install akmod-nvidia
sudo dnf install xorg-x11-drv-nvidia-cuda
```Wait a few minutes, until...
```shell
modinfo -F version nvidia
```prints out the module version.
Then:
```shell
systemctl reboot
```## Applications
### Firefox
To apply policies to Firefox via the [policies.json](firefox/policies.json), just place it at `/etc/firefox/policies`.
Move or delete the default Fedora config at `/usr/lib64/firefox/browser/defaults/preferences/firefox-redhat-default-prefs.js`.
Restart Firefox and find applied policies at `about:policies`.Custom configs not available with the centralized policy configuration:
- `full-screen-api.warning.timeout`: 0 (disables the fullscreen popup)
- `reader.parse-on-load.enabled`: false (disables the simplified reader mode)
- remove all removable search keywords in the search settings### OneDrive
Install [abraunegg/onedrive](https://github.com/abraunegg/onedrive):
```shell
sudo dnf install onedrive -y
```To allow logging to `/var/log/onedrive`, do the following:
```shell
sudo mkdir /var/log/onedrive
sudo chown root:niko /var/log/onedrive
sudo chmod 0775 /var/log/onedrive
```Initialize onedrive:
```shell
onedrive
```After initializing onedrive and BEFORE running the first sync, copy [config](onedrive/config) and [sync_list](onedrive/sync_list) to `~/.config/onedrive/`. Check the config with `onedrive --display-config`.
First sync:
`onedrive --resync --sync`### Jetbrains Toolbox
Install via one-liner:
```shell
curl -fsSL https://raw.githubusercontent.com/nagygergo/jetbrains-toolbox-install/master/jetbrains-toolbox.sh | sed 's/ --show-progress//' | bash
```### yt-dlp
```shell
sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp
```## TLS
### Import CA
1. Get root rights with `sudo -i`
2. Copy certificate file (plaintext, not binary) to `/usr/share/pki/ca-trust-source/anchors`
3. Run `update-ca-trust`
4. (Test TLS connection with `openssl s_client -connect :443`)