Fedora Linux (KDE) Set Up Notes
Motivation
Windows 11 has terrible UX and it’s only going to get worse because Microsoft as an organization has no incentive to make it better.
Objective is to find my new main personal OS. Looking at the alternatives, macOS is promising but I don’t want to be fully locked-in to Apple, or having to buy new hardware, or risk Liquid Glass shoved into my face. So that leaves Linux.
I started with selecting the desktop environment first. I picked KDE because it looks like Windows and does not do random nonsensical avant-garde stuff like GNOME.
Now the question of distro. I selected Fedora as it offers the following:
- Gets the new packages quickly (vs. Ubuntu/Debian), can enjoy new KDE versiosn as soon as they come out
- Fairly secure defaults with SELinux configurations
- Supports secure boot out of the box, easy to dual-boot with Windows for the backup option
- Pretty good stability (due to Red Hat support), and good documentation / community available
(Though maybe don’t use Fedora as a server, updating every six months would be too annoying – find some LTS distros instead)
If you are looking to switch to Linux, don’t let the length of this page scare you. Fedora KDE is quite usable out of the box. This is just my personal notes to make the OS behave as someone who used Windows growing up but now swaps between macOS (work) and Fedora KDE (personal).
- Motivation
- KDE Plasma Settings
- System Configuration
- Input Methods
- Application Notes
- Developer Tools
- Paper Cuts
- Further Reading
KDE Plasma Settings
Trackpad
Change trackpad scroll direction to Natural in System Settings (match with macOS).
Task Manager (Taskbar)
Change Task Manager to Icons-and-Text mode to replicate Windows taskbar appearance.
In Icons-and-Text settings:
- Appearance: Set Maximum Task Width to Narrow
- Behavior: Uncheck Keep launchers separate — this replicates Windows taskbar behavior and is closer to macOS Dock where the app icon stays in place
- Behavior: Set Clicking grouped task to Shows textual list
To access this setting, right click on the task bar where the apps are.
Digital Clock
- Time Display: 24-Hour
- Date format: ISO
Display
Change scaling to 140% for high-DPI displays (Framework 13).
Keyboard Shortcuts
Configure the following shortcuts in System Settings > Keyboard > Shortcuts:
| Action | Shortcut | Notes |
|---|---|---|
| KRunner | Ctrl + Space | Replicates macOS Cmd + Space for Spotlight |
| Show Clipboard Items [1] | Ctrl + Shift + X | Built-in is Meta + V, but I want to replicate Maccy. On macOS, Maccy’s default is Cmd + Shift + C, but on Linux this is the shortcut for Copy/Paste in Konsole sadface so can’t use it. I have devised this alternative: Ctrl + Shift + X – it has NO common conflicts on all OSes, and X is also kind of Cut/Copy/Paste related. I now use Cmd + Shift + X for Maccy as well. |
| Firefox New Private Window | Ctrl + Shift + N | Set in KDE because Firefox does NOT support custom shortcuts for this |
| Window Management / Toggle Overview | Meta + Tab | Replicates macOS Cmd + Tab for Expose and Windows Win + Tab for Overview |
[1]: Can we talk about just how delightful it is that KDE just has this nice thing included??? Now only if it can just Paste directly on item selection… please please pretty please
For VS Code, install https://marketplace.visualstudio.com/items?itemName=smcpeak.default-keys-windows
System Configuration
Full Disk Encryption Auto-Decrypt
Enroll TPM2 for automatic FDE decryption on boot: https://community.frame.work/t/guide-setup-tpm2-autodecrypt/39005
mDNS for Network Discovery
Enable mDNS to connect to NAS devices and other network services at home: https://www.reddit.com/r/Fedora/comments/1lg1c32/comment/mystf3f/
Add open Command
Add a macOS-style open command to the shell. In ~/.bashrc, add:
alias open='xdg-open'
(Optional) For a more extensive, cross-platform version: https://superuser.com/a/38989
Input Methods
Chinese Input (Fcitx5)
Install fcitx5 and the Chinese addons:
sudo dnf install fcitx5 fcitx5-chinese-addons
Configuration:
- In Fcitx settings, select Pinyin under the Chinese heading. Note: The “Chinese” entry with AltGr dead keys is a keyboard layout, not an input method.
- Disable Temporary Toggle Input Method with left Shift
- Add Meta + Space as Toggle Input Method (aligns with Windows and macOS). Also, Alt + Left Shift should work too.
Fcitx5 Pinyin seems to provide better prediction quality than Rime.
Application Notes
Firefox and Yubikey
Unfortunately, Linux does not yet support Platform-based Passkeys (meaning the passkey saved on the laptop itself). So you need a hardware-based key like a Yubikey.
Firefox prompts the Yubikey (causing it to blink) on every new website due to PIV module detection. If you don’t need PIV (enterprise feature), disable it for Firefox:
sudo nano /usr/share/p11-kit/modules/opensc.module
Add this line:
disable-in: firefox
Developer Tools
Terminal Emulator / Console
Install ghostty in order to take advantage of the “smart Ctrl+C and Ctrl+V (without needing to use Shift)” for copy/paste. This preserves muscle memory of copy/paste with coming from macOS.
Configure the following in ~/.config/ghostty/config.ghostty
keybind = performable:ctrl+c=copy_to_clipboard
keybind = performable:ctrl+v=paste_from_clipboard
More details: https://ghostty.org/docs/config/keybind#performable:
East Terminal Copy and Paste
Install sudo dnf install xclip
In ~/.bashrc, add:
alias pbcopy='xclip -selection clipboard'
alias pbpaste='xclip -selection clipboard -o'
Now this is working like macOS.
Node
Use “Fast Node Manager fnm” to wrangle node versions: https://github.com/Schniz/fnm
fnm install --lts
fnm default lts-latest
Virtual Machine Guide
Install components following this https://docs.fedoraproject.org/en-US/quick-docs/virtualization-getting-started/#_enabling_hardware_virtualization_support
For using the Virtual Machine Manager GUI https://ubuntuhandbook.org/index.php/2024/12/kvm-qemu-virtual-machines-ubuntu/
Paper Cuts
Known issues with KDE Plasma on Wayland:
- Chrome: Scrolling behavior is poor on Wayland. No forward/backward trackpad gestures. This caused me to switch to Firefox.
- Firefox: Has proper scrolling and gestures, but lacks passkey support (QR Passkeys and Windows Hello equivalent). -> Solution, use Yubikey for passkeys / FIDO2.
Further Reading
https://github.com/devangshekhawat/Fedora-43-Post-Install-Guide