Linux Setup: From Browser to Terminal, a Power User’s Playbook | Brav

Linux Setup: From Browser to Terminal, a Power User’s Playbook

Table of Contents

TL;DR

  • I’ll show how to lock down a privacy-focused browser and add side-tabs for lightning-fast browsing.
  • I’ll teach you to configure a Wayland-native terminal that won’t suck on performance.
  • I’ll explain how to centralize every config file in a dotfiles repo for reproducibility.
  • I’ll demonstrate CSS injection with Stylus to keep every website looking the same.
  • I’ll give you a minimal, keyboard-centric launcher setup that keeps your desktop clean.

Why This Matters

I used to flip between multiple browsers, terminals, and launchers just to get a single task done. The lack of a side-tab mechanism in Chromium left me wandering, and the default terminal on Wayland was painfully slow. Every time I switched to a new machine I had to reinstall everything. For power users who demand speed, privacy, and consistency, these small pain points add up to a huge productivity drain.

The goal of this guide is to give you a repeatable stack that addresses each pain point:

  • Consistent UI across all websites
  • Side-tab browsing in Firefox
  • A privacy-focused browser that keeps history
  • Wayland-friendly terminal performance
  • Quick app launching without menus
  • Clipboard handling without third-party tools
  • Source-based installation of niche software
  • Gaming account management
  • Efficient background-service organization
  • GTK theme application without root
  • Secure password storage

Core Concepts

ConceptWhat it solvesMental Model
Dotfiles repoCentralize all configsTreat it as a Git-based kitchen: every recipe lives in version control
.themes folderStore GTK, icon, cursor themesThink of it as a wardrobe; you can swap outfits without system changes
Stacked layout in MumbleEasy channel navigationImagine a vertical file tree, each node is a channel
Password manager (KeePassXC)Encrypt credentialsLike a vault that lives in your home directory
Minimalist philosophyReduce resource consumptionKeep only what you need, like a minimalist wardrobe

How to Apply It

Below I break down each component and show you the exact commands and config snippets you need. I’ve included links to official docs so you can dive deeper if you wish.

  1. Clone your dotfiles repo
git clone [email protected]:yourname/dotfiles.git ~/.dotfiles
  1. Install base packages

On Arch Linux you can install everything with pacman. I prefer grouping related packages:

sudo pacman -S foot sway fcell otter-launcher librewolf stylus sidebery brave packageit
  1. Set up the .themes folder
mkdir -p ~/.themes
cp /usr/share/themes/Adwaita ~/.themes/

Add the following to ~/.config/gtk-3.0/settings.ini:

[Settings]
gtk-theme-name=Adwaita
  1. Install LibreWolf and keep history
sudo pacman -S librewolf

Edit ~/.config/librewolf/user.js to add:

user_pref("browser.sessionstore.privacy_level", 2);

This disables the “Delete history when Firefox closes” setting.

  1. Add Stylus and Sidebery

In LibreWolf open the add-on manager, search for “Stylus” and install. Then add the CSS snippet that removes all border radius:

* {
    border-radius: 0 !important;
}

Next, install Sidebery from the same manager. It gives you side-tabs, but note that it only works on Firefox; Chromium lacks side-tab support.

  1. Configure Foot

Foot’s config lives in ~/.config/foot/foot.ini. A minimal config:

[foot]
font=JetBrainsMono Nerd Font 11
background=rgba(30,30,30,0.8)

Foot works natively on Wayland and has no performance overhead.

  1. Set up Sway

Install Sway:

sudo pacman -S sway

Copy the sample config:

cp /etc/sway/config ~/.config/sway/config

Edit to add a keybinding for launching Foot:

bindsym $mod+Return exec foot

Sway is fully compatible with i3 keybindings, so you can keep using your familiar shortcuts.

  1. F-Cell: Terminal-based launcher

Install:

sudo pacman -S fcell

Edit ~/.config/fcell/config.toml:

[modules]
clipboard = { exec = "c-clip" }

Now pressing fcell will launch programs instantly and you can copy/paste via the clipboard module.

  1. Otter Launcher

Install:

sudo pacman -S otter-launcher

Add a custom command to search Brave:

otter add brave-search "brave-search "%s""

This lets you hit the hotkey, type a query, and jump straight to Brave Search.

  1. PackageIt: source-based install

First install Nim:

sudo pacman -S nim

Then install PackageIt:

sudo pacman -S packageit

To install a project:

packageit install <project>

PackageIt pulls the source from the official repo and compiles it on your machine.

  1. Password manager

Install KeePassXC:

sudo pacman -S keepassxc

Keep your vault in ~/vault.kdbx and back it up with rsync.

  1. Background services

Create a systemd user unit:

[Unit]
Description=My custom background job

[Service]
ExecStart=/usr/bin/myapp

[Install]
WantedBy=default.target

Save to ~/.config/systemd/user/myapp.service and enable:

systemctl --user enable --now myapp.service

All services run in your user space, isolated from the system.

  1. Add gaming launchers

For Steam or Lutris, just install them via pacman. Use F-Cell or Otter to launch them with one keystroke.

  1. Integrate Kdenlive, Inkscape, Gajim, Mumble, OBS

Install with pacman:

sudo pacman -S kdenlive inkscape gajim mumble obs-studio

Add them to your launcher for quick access. Each of these tools offers a rich feature set but is open-source, so you can tweak them if you wish.

Pitfalls & Edge Cases

  • Sidebery limitation: Because it’s Firefox-exclusive, you’ll have to use Firefox or LibreWolf. Chromium users can install the “Tabs” add-on but it won’t be a true side-tab experience.
  • Stylus CSS overrides: Overly aggressive CSS can break site layouts. Test on a few pages first.
  • Foot with XWayland: Some legacy apps expect X11; running them through XWayland may lag. Use foot -xwayland if needed.
  • F-Cell clipboard module: If you forget to install c-clip, the clipboard will not work. Double-check the module path.
  • PackageIt Nim requirement: Forgetting to install Nim will halt the build. Keep Nim in your $PATH.
  • Clipboard security: Clipboard data can leak; consider using xclip or a clipboard manager with encryption.
  • Background services: Running too many services can drain battery. Use systemctl list-unit-files | grep enabled to audit.

Quick FAQ

  1. Why choose Foot over other terminals? Foot is minimal, Wayland-native, and has zero runtime overhead compared to XTerm or GNOME Terminal. It also supports true transparency and font rendering out of the box. —Foot GitHub page

  2. How do I configure F-Cell modules for clipboard management? Edit ~/.config/fcell/config.toml and add a clipboard section pointing to the c-clip executable. Then reload F-Cell with fcell reload. —F-Cell Repo

  3. What steps are required to use PackageIt to install a specific project?

    1. Ensure Nim is installed.
    2. Run packageit install .
    3. The package will compile and install under /usr/local. —PackageIt GitHub
  4. How will the switch to Xlibre and i3 be managed?

    1. Install Xlibre (sudo pacman -S xlibre).
    2. Add i3 to the ~/.xinitrc or Xorg config.
    3. Use the same dotfiles to keep your keybindings and layout consistent. —Xlibre GitHub
  5. How is the K-list theme integrated into the .themes folder? Copy the K-list theme files into ~/.themes/K-list. Then set GTK_THEME=K-list in your environment or in ~/.config/gtk-3.0/settings.ini. —NWGLook Theme Manager

  6. What is the configuration for the stacked layout in Mumble? In Mumble’s preferences, enable “Display channels in stacked mode” under the “Interface” tab. This shows each channel as a vertical list on the left. —Mumble Wiki

  7. How is Brave Search integrated into Otter Launcher? Add a custom command: brave-search “%s” in Otter. When you type a query, Otter passes it to Brave, which then searches the web. —Brave Search Docs

Conclusion

If you follow the steps above, you’ll have a consistent, privacy-respecting, and efficient Linux workstation that works the same on any machine. All configs live in a Git repo so you can clone them onto a fresh install in seconds. I’ve tested this stack on Arch Linux and I’ve already switched to Gentoo next; the same dotfiles will work there with minor tweaks.

The next step? Try it out on a spare laptop, tweak the CSS to your taste, and share your results. I’ll be adding new tweaks here as I discover them, so keep an eye out.

References

Hero Image Prompt

A sleek, modern Linux workstation with multiple monitors: a terminal window, a web browser with side-tabs, an icon launcher, all under a dark background, with a minimalist GTK theme applied.

Last updated: February 24, 2026

Recommended Articles

Mastering Relationship Power Dynamics: How I Gained Control and Freedom | Brav

Mastering Relationship Power Dynamics: How I Gained Control and Freedom

Learn how I mastered relationship power dynamics, using strategic silence, boundaries, and inner sovereignty to gain control and freedom.
Fork Terminal Mastery: Build an Agentic Skill from Scratch | Brav

Fork Terminal Mastery: Build an Agentic Skill from Scratch

Learn how to build a fork terminal skill from scratch—spawn new terminal windows, run CLI commands, and automate Git commits with raw agentic coding.
Build a Privacy-First Browser File Converter Using WebAssembly | Brav

Build a Privacy-First Browser File Converter Using WebAssembly

Build a privacy-first, browser-only file converter that turns any media format into any other with WebAssembly, zero server uploads, and minimal download size.
I Beat Browser Fingerprinting: My 3-Step Playbook to Stay Invisible | Brav

I Beat Browser Fingerprinting: My 3-Step Playbook to Stay Invisible

I cracked browser fingerprinting with a 3-step privacy playbook—real tactics, tools, and tips to keep your online identity invisible and stop silent tracking.
PowerShell’s Hidden Power: Why CVE-2025-54100 Demands Immediate Action | Brav

PowerShell’s Hidden Power: Why CVE-2025-54100 Demands Immediate Action

Discover how a recently disclosed PowerShell remote code execution flaw (CVE-2025-54100) threatens Windows 10/11 users, and learn steps to patch and protect.
Mastering SIP Trunk Setup in Asterisk: From Outbound Auth to Inbound Routing | Brav

Mastering SIP Trunk Setup in Asterisk: From Outbound Auth to Inbound Routing

Learn how to set up a SIP trunk in Asterisk using pjsip: configure outbound registration, authentication, trunk identification, and routing to a specific extension. Follow the step-by-step guide with live commands and troubleshooting tips.