I’m Kayla. I run Linux every day on a ThinkPad X1 Carbon (Fedora 40, GNOME) and on a tiny Raspberry Pi that hums in my closet. I write code, fix silly mistakes, and, yes, break things on Fridays when I should be folding laundry. These are the tips and tools I actually use. Not theory. Real stuff. With real wins and a few “oops.”
If you're still weighing which desktop distro should host your next experiment, the concise write-ups over at Desktop Linux Reviews can help you pick with confidence. I also expanded on many of these habits in this deeper companion piece if you want an even broader toolbox.
You know what? Linux can feel big. But small habits add up. Here’s what helped me work fast without feeling like I’m lost in man pages.
Fast File Searches That Don’t Make You Wait
When logs go wild, I reach for ripgrep and fd. They’re fast. Like “coffee still hot” fast.
Need proof? The actively maintained codebases for both tools live on GitHub—ripgrep and fd—so you can audit, tweak, or compile them yourself.
-
I use ripgrep (rg) to find errors:
rg -n "ERROR" /var/logThe -n flag shows line numbers. Handy when I’m skimming big files.
-
I use fd to find files by name:
fd nginx /etcIt skips junk like .git by default. Less noise, more gold.
What I like: speed and sane defaults.
What I don’t: rg’s regex can bite me if I forget quotes.
Jump Around Folders Like You Mean It
I move through projects all day, so I use fzf and zoxide. They feel like magic, but with less drama.
-
Fuzzy find a file and open it:
fd . | fzf | xargs -r nanoI’ll admit, I still use nano for quick notes. It’s comfy.
-
Jump to places I visit a lot with zoxide:
z project-nameFirst I teach it:
cd ~/code/my-appAfter a few days, zoxide “gets” me.
What I like: it saves brain power.
What I don’t: the first day feels like training a shy dog.
Fix Slow Boots With Journal Logs
One week my laptop took forever to boot. I thought it was me. It wasn’t. It was a stubborn service.
- See what dragged:
systemd-analyze blame - Then peek at logs:
journalctl -b -u NetworkManager --no-pager | rg -n "timeout|fail|drop" - Turn a service off if it’s pointless:
sudo systemctl disable cups sudo systemctl stop cupsI don’t own a printer. Why was cups even awake?
What I like: clear cause and effect.
What I don’t: systemd names can read like a puzzle.
A Calm Prompt That Shows What Matters
I use the starship prompt with zsh. It shows git status, node versions, and time. But it stays clean.
- Install and set it as default:
echo 'eval "$(starship init zsh)"' >> ~/.zshrc - My tiny tweak in ~/.config/starship.toml:
add_newline = true [git_status] conflicted = "!"
What I like: info at a glance.
What I don’t: a busy prompt can slow down in huge repos.
Tmux: Keep Work Alive, Even After SSH Drops
I keep long tasks in tmux. If my train Wi-Fi dies, my session lives.
- Start and name a session:
tmux new -s web - Split and run a server:
Ctrl-b % # split right npm run dev - Detach and go:
Ctrl-b d - Later, hop back:
tmux attach -t web
What I like: peace of mind.
What I don’t: the key binds feel odd the first week.
Packages Without Tears: apt, dnf, and Flatpak
On Fedora I use dnf for base apps and Flatpak for desktop stuff I don’t want to babysit.
- Install with dnf:
sudo dnf install jq - Install a desktop app with Flatpak:
flatpak install flathub com.spotify.Client - Run it:
flatpak run com.spotify.Client
What I like: newer desktop apps, less hassle.
What I don’t: Flatpak can eat disk space if I ignore it.
If you’re still juggling the occasional Windows-only utility, here’s how I let Wine access your files safely without tripping over messy permissions.
Clean older runtimes now and then:
flatpak uninstall --unused
When Fans Spin, I Check btop
If the fans jump, I open btop and hunt the hog.
- Start it:
btop - Sort by CPU, find the bad process, then:
kill -9 12345I kill with care. I save work first if I can.
What I like: clear graphs, no fuss.
What I don’t: killing the wrong PID stings.
SSH That Feels Like Shortcuts
Typing full SSH lines gets old. I keep a config file.
- In ~/.ssh/config:
Host pi HostName 192.168.1.40 User kayla IdentityFile ~/.ssh/id_ed25519 - Then connect with:
ssh pi - If I need a new key:
ssh-keygen -t ed25519 -C "kayla@laptop" ssh-copy-id pi
What I like: short names, less typing.
What I don’t: wrong file perms break SSH fast.
Fix perms if SSH yells:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/*
Simple, Safe Backups I’ll Actually Run
I’ve tried fancy tools. I always come back to restic or rsync. They’re plain and steady.
- First time with restic (it asks for a password you must remember):
export RESTIC_REPOSITORY=/mnt/backup/kayla export RESTIC_PASSWORD=keepitsecret restic init - Back up my home:
restic backup ~/Documents ~/Pictures ~/.config - Check it:
restic snapshots
What I like: fast and deduped.
What I don’t: forget the password, and it’s game over.
On a slow Sunday, I also run:
rsync -a --delete ~/Documents /mnt/backup/
Little Comforts: Prettier cat and ls
These don’t change the world, but they make every day nicer.
- Bat for syntax highlights:
bat ~/.bashrc - lsd for icons and column view:
lsd -la - My tiny alias set in ~/.bashrc:
alias cat='bat' alias ls='lsd'
What I like: quick reads, tidy lists.
What I don’t: remote servers may not have them, so I keep the muscle memory for stock tools too.
Quick Fixes I Reach For a Lot
-
Make a script run:
chmod +x ~/bin/deploy.sh -
Fix a file I saved as root by mistake:
sudo chown kayla:kayla myfile.txtNeed a refresher on what
chowncan and can’t do? Check out this hands-on chown guide. -
See my disk usage, fast:
du -sh * | sort -hWhen that surface check isn’t enough, I dig deeper with the steps from this step-by-step hunt for huge files to find the real culprits.
-
Find who’s using a port (why won’t my app start?):
sudo lsof -i :3000
Need to unzip a mountain of archives in one sweep? I walked through the pros, cons, and commands in this batch-unzipping saga.
And if broken or orphaned links litter your project tree, here’s a safe way to [delete stray symlinks](https://desktoplinuxreviews.com/deleting-symlinks-on-linux-my-hands
