Common Tools and Apps I use on my Linux Machines

Here is a collection of common tools and applications I regularly use on almost all of my Linux pcs.

Common Tools and Apps I use on my Linux Machines
Photo by Lorenzo Herrera on Unsplash

I have a pretty beefy desktop for Gaming. That runs Windows 10 and that system is exclusively for the few games I play occasionally.

But I can not work with Windows and need a Linux system for being productive. Since my old Elementary OS install was borked I reinstalled the SSD for Linux with Ubuntu 20.04.

Here is a list of tools and applications which I almost install everywhere in no particular order:

Shell: Oh My Zsh

My shell of choice is Oh My Zsh based on the zsh.

Oh My Zsh - a delightful & open source framework for Zsh
Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with several helpful functions, helpers, plugins, themes, and a few things that make you shout... OH MY ZSH!

My current favorite theme is the Powerlevel10k theme. I just love it! Additionally, I will use fzf to have an awesome auto-completion.

Editor: VS Code

Hands down one of the best editors for me. Especially when you set up the sync feature and all your devices have the same config, plugins, etc.

Visual Studio Code - Code Editing. Redefined
Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

Version control: Git

Git is obviously a big part of my work and therefore not really surprising in this list. I just always install the upstream version since I want to be able to use the latest git features.

Git - Downloads

Managing App Images: AppImageLauncher

Software is often distributed via AppImages. These are self-contained application packages without having any system dependencies if I remember correctly. But adding them to your path, making them executable, and adding a desktop icon is tedious.

Integrate AppImages to your application launcher with one click, and manage, update and remove them from there. Double-click AppImages to open them, without having to make them executable first.
GitHub - TheAssassin/AppImageLauncher: Helper application for Linux distributions serving as a kind of “entry point” for running and integrating AppImages
Helper application for Linux distributions serving as a kind of "entry point" for running and integrating AppImages - GitHub - TheAssassin/AppImageLauncher: Helper application for Linux d...

Password Manager: Bitwarden

For me the only password manager I can recommend. Open Source, useable in the free plan, syncs across all devices, standalone browser extension. You can even self-host if you want.

Bitwarden Open Source Password Manager | Bitwarden
Bitwarden is an integrated open source password management solution for individuals, teams, and business organizations

I also pay the 10$/year plan because I want to support the devs. I do not even need the features.

Browser: Chrome

Yeah, I am a Chrome guy. Nothing much to say about that.

Google Chrome – den schnellen und sicheren Browser von Google jetzt herunterladen
Noch effizienter arbeiten mit dem neuen Google Chrome. Der Webbrowser mit der Technologie von Google ist jetzt noch einfacher, sicherer und schneller. Jetzt herunterladen.

And I do not have too many tabs. I have a search extension for people with my system. Just download it and thank me later.

Tabli Home

Seriously, just do it!

Music: YouTube Music Desktop App

I like listening to music while working. It can help me get into the zone. Since I hate ads on YouTube, I pay for YouTube Premium and therefore own the YouTube Music subscription as well.

And what do we see here? A descent YouTube Music Desktop App called just like that.

YouTube Music Desktop App
Free cross platform Desktop Player for YouTube Music

Screenshot tool: Shutter

Shutter is an awesome screenshot and minimal screenshot editor tool. When you install the gnome-web-photo package you also can take screenshots from complete websites. Without the hassle of scrolling down, taking another one, etc.

Shutter - Screenshot Tool website

The editor has basic editing onboard like blurring, etc. Just a nice tool!

Light photo editing: gthumb

The basic photo viewer and light editor on Gnome desktop environments. It covers my little needs when I have to crop, rotate, scale or change effects on a picture for one of my blog posts.

Apps/Gthumb - GNOME Wiki!

Containers: Docker

Docker with docker-compose is an absolute must-have for me on all machines I set up. It is just so easy to test something without bloating your system with a ton of packages.

Get Docker
Home page for Get Docker

Taking Notes: Obsidian

I take all my notes in the markdown format like many folks out there. The benefit? I just could jump on the hype train that Obsidian is developing the last year or two.

Obsidian: A knowledge base that works on local Markdown files.

Pretty sick markdown editor which can do so much more!

Syncing Files: Syncthing

I need to sync some files across different devices. Especially my folder of mardown notes for Obsidian or pictures for my blog.


I use Syncthing for years and it is just rock solid!

System Backup: Timeshift

This is just a lifesaver! Depening on your system this will do rsync magic or btrfs snapshots which you can go back to if a system upgrade did go wrong.

GitHub - teejee2008/timeshift: System restore tool for Linux. Creates filesystem snapshots using rsync+hardlinks, or BTRFS snapshots. Supports scheduled snapshots, multiple backup levels, and exclude filters. Snapshots can be restored while system is running or from Live CD/USB.
System restore tool for Linux. Creates filesystem snapshots using rsync+hardlinks, or BTRFS snapshots. Supports scheduled snapshots, multiple backup levels, and exclude filters. Snapshots can be re...

Already had to use it when I messed up my system somehow. Have written down the process of restoring: Restore snapshot with timeshift from a live medium with LUKS and LVM

Backup for files: Déjà Dup Backups

This is called just Backups in Ubuntu. I am using this to backup my /home to another location. Easy to set up, easy to browse files that you have deleted. Saved me a couple of times as well.

World / Déjà Dup Backups
Protect yourself from data loss

The devs are currently working on a restic implementation. Hope that does not take too long. Might be way faster than the current process of backing up.

Android App Development

I am learning a bit of Flutter.

Flutter - Build apps for any screen
Flutter transforms the entire app development process. Build, test, and deploy beautiful mobile, web, desktop, and embedded apps from a single codebase.

Other tools include the AndroidStudio IDE and the local firebase emulators.

Clipboard Manager: gpaste

I always need to copy and paste multiple values like URLs, UUIDs, etc. Instead of going back and forth, I can just press ALT+SHIFT+G and I get a window with my recent copied entries from my clipboard.

GitHub - Keruspe/GPaste: Clipboard management system
Clipboard management system. Contribute to Keruspe/GPaste development by creating an account on GitHub.

You can not go back to no clipboard manager when you had a clipboard manager in your life.

Adding apps: FLATPAK with Flathub

In my opinion the future of Linux app distribution. Here you get all the latest versions of your favorite apps like VS Code, Libre Office, Spotify, Discord, etc.

Flatpak—the future of application distribution
The days of chasing multiple Linux distributions are over. Standalone apps for Linux are here!


Some random stuff I use sometimes.

Gnome tweaks

Adjust a few settings here and there for the desktop environment. Especially important for changing mouse focus over windows behavior and for ALT+TAB with multiple monitors/workspaces.

Apps/Tweaks - GNOME Wiki!

GitHub CLI

Managing issues. Did not use it much yet.

GitHub - cli/cli: GitHub’s official command line tool
GitHub’s official command line tool. Contribute to cli/cli development by creating an account on GitHub.

That is it for now. I hope you have found something useful here. If you have some tips for me please leave them in the comments below!