Skip to content

jmhbnz/tooling

Repository files navigation

Tooling overview

This document captures my standard tooling for future replication and aims to make it as easy as possible to setup and use a new device with my workflows.

For the purposes of this repository I broadly refer to tooling as the “standard” way my devices are configured and which things are installed that are non-standard to the operating system.

The environment is based on Pop!_OS 22.04 LTS for my primary work device which is a 2021 Razer Blade 14”. Additionally a subdirectory is included for my smartphone which is a Fairphone 4 running Ubuntu Touch.

How I get things done

Before diving into the technical details, below is a brief summary of how I get things done.

Code editing

For an editor I primarily rely on emacs, specifically doom emacs.

The main feature that I rely on in emacs is org-mode. This allows me to do literate programming, writing my documenation with embedded code blocks that are actually executable or exportable via babel.

Browsing the web

My primary browser is firefox. Over the years various extensions have come and gone but u-block origin has remained a constant and something I use everywhere. Currently I also have dark reader installed to make working in low light situations less harsh.

For monitoring traffic, blocking connections, enforcing secure dns and routing connections through other servers vpn style I rely on portmaster + spn.

Reading email

For reading email I rely on the mutt terminal email client. Included in this repository are the configuration dotfiles I use.

I’ve configured mutt to be able to display html emails via lynx and open links with urlscan.

The thing I like most about mutt is the caching which means I can traverse or scan through my entire email history in seconds. In a browser this would be a painfully slow process.

Managing secrets

Bitwarden is my secrets manager of choice. Primarily due to the emphasis they place on open source and excellent bw cli utility. Use of the bitwarden cli is incorporated into many of my workflows.

One of the things I really like and use daily is leveraging bitwarden for my one time passwords. I can run something like bw get totp <thing> | xclip in a terminal and have a two factor auth code copied straight onto my clipboard ready to paste where it is required.

The .bashrc file in this repository includes helper functions to make bitwarden workflows even faster, including an implementation of a custom git credential cache to dynamically retrieve git https credentials from bitwarden.