Guides

GUIDE / LINUX

Setting Up a New Linux Workstation

A fictional, maintainable sequence for turning a clean install into a documented working environment.

Start with an inventory

Before installing a long list of tools, write down the work this machine needs to support. A useful inventory is short and concrete:

  • browser and password manager
  • editor and source-control tools
  • language runtimes required by active projects
  • backup, disk encryption, and update expectations
  • peripherals that need explicit drivers or firmware

Establish a safe baseline

Apply supported updates, confirm time synchronization, and record the distribution release. Avoid copying an old dotfiles directory wholesale before you know what the clean system already provides.

cat /etc/os-release
uname -a
timedatectl status

Configure Git deliberately

Use readable global defaults, but keep employer- or client-specific identity in repository or conditional configuration.

git config --global init.defaultBranch main
git config --global pull.ff only
git config --global core.editor "your-editor --wait"

Restore access, not clutter

Generate or restore keys through your approved process. Add only the credentials this workstation needs, and confirm a key fingerprint before depending on it.

ssh-keygen -lf ~/.ssh/id_ed25519.pub

Add development runtimes

Prefer a single understandable runtime-management approach. Document the chosen tool in the project README and pin versions in the repository where the ecosystem supports it.

Verification pass

Open a fresh terminal and verify that the shell does not depend on state from the setup session. Clone a non-sensitive repository, install its dependencies, run its checks, and restart the workstation once before calling the build complete.

Keep a rebuild note

Record the few manual steps that cannot yet be reproduced. That note becomes the seed for the next workstation setup—and a good candidate for future automation.