github.com/chelmertz/dotfiles contains all dotfiles.
My ansible file could be used to look for sources & dependencies.
Desktop applications
| Name |
Purpose & context |
| Arandr |
Configuring multi-monitor setup |
| Console |
A good enough terminal. Supporting dark/light mode is critical |
| Copyq |
Clipboard |
| Doom Emacs |
Purely as entry point to Org mode/Magit |
| Dropbox |
Sync between mobile and laptop is a must |
| Element |
Matrix chat client |
| Espanso |
Snippet expander |
| Elly |
Github pull request tracker |
| Firefox |
I hear Chrome is mucking about with adblockers |
| Flameshot |
Screenshots with very convenient UI for quick editing |
| Intellij IDEA |
Editor for java and grails (don't ask) |
| Libreoffice |
Quick & dirty editing of truth tables/decision tables and CSV files |
| Lightshot |
Video editor - OK for stitching together things but more complex than my needs |
| Magit |
The best git client. See lazygit |
| Obsidian |
Purely as entry point to Excalidraw |
| Org mode |
Diary. TODOs. |
| Peek |
Screen recorder |
| Redshift |
Adjusts color temperature of screen |
| Rofi |
Launcher. Easy to customize. Like fzf but without a terminal in the foreground |
| Screenkey |
Displays the pressed keys on screen. Useful but not perfect with multiple monitors |
| VS code |
Code editor |
| i3 |
Window manager |
| i3blocks |
Task bar for i3 |
Languages & libraries
| Name |
Purpose & context |
| Go |
Programming in general |
| fsm |
Go package for encoding state machines. Exports mermaid diagrams. |
| cmp |
Go package for reducing test writing efforts |
| oapi-codegen |
Go package enabling spec-first OpenAPI-development |
| OpenAPI |
REST APIs. Spec first and generate clients/server works really well |
CLI & TUI
| Name |
Purpose & context |
| bat |
Nicer cat |
| cloc |
Counts LoC in codebases |
| datedate |
Transforms dates & timestamps |
| duc |
Another disk usage tool. Sunburst chart |
| dunst |
Notifications |
| entr |
inotify-like watcher. Execute command when files change |
| fd |
Less verbose find |
| fzf |
Fuzzy finder |
| gdu |
A fast disk usage analyser |
| gh |
Github via CLI. Usable for quickly entering TODOs with some attributes and for listing open issues and displaying with i3blocks |
| git-filter-repo |
Can extract directory of git repo to its own repo |
| glow |
Markdown viewer |
| gron |
Turns JSON into grep:able lines of text and back again |
| htop |
Good enough system monitor |
| image-sorter |
TUI for quickly moving image files into proper directories |
| lazygit |
Very similar to Magit. Slightly less intuitive but working in the terminal without all of Emacs is more comfy. |
| litecli |
Better CLI for sqlite. See mycli |
| moreutils |
sponge, vipe, ts are proper CLI tools |
| mycli |
Better CLI for mysql. See litecli |
| pandoc |
Document converter |
| pavucontrol |
Choosing device for sound output |
| pspg |
Pager for tabular content like psql or CSV files |
| ripdrag |
“ripdrag filename” creates a small window with “filename” that you can use for drop-friendly interfaces |
| ripgrep |
More ergonomic search than grep |
| serve |
Serve directory via HTTP |
| up |
Pipe commands dynamically |
| watchexec |
inotify-like watcher. Execute command when files change. Slightly more complete than entr - might overtake its position |
| wmctrl |
API capabilities for X.org |
| xcape |
Rebind keys. For example: pressing caps=esc & holding caps=ctrl |
| z |
Interface to MRU directories when cd:ing around |
| zenity |
Interactive bash scripts. Very useful with i3blocks |
Web applications & third party services
Browser extensions
Hardware
| Name |
Purpose & context |
| Keychron K8 Pro |
Very comfortable keyboard |
| Logitech G MX518 |
So happy when this got revived |
On the radar
Untried but interesting. Hammers looking for the proper nails.
| Name |
Purpose & context |
| ansisvg |
Capture terminal output into svg for presentations |
| apisnip |
Concise overview of endpoints in an OpenAPI specification |
| broot |
Interactive tree/ls/cd |
| dive |
Docker image layer introspection |
| firenvim |
vim in browser textareas |
| fq |
jq for binary files |
| git-absorb |
Aids fixups in git |
| git-revise |
Split commits in git |
| gojo |
CLI for constructing JSON |
| grist |
Next generation Spreadsheet (probably like Airtable) |
| hwatch |
hwatch, watch alternative that records the history and keeps diffs |
| hyperfine |
Benchmarks |
| ijq |
Interactive version of jq |
| immich |
Self-hosted Google Photos alternative |
| isd |
TUI for systemd |
| jujutsu |
VCS on top of git |
| kuzudb |
Embeddable graph database. Maybe valid alternative to sqlite |
| lazydocker |
TUI for docker. See lazygit |
| mailpit |
Fake SMTP server with web interface |
| modsecurity |
Open source WAF |
| open policy agent |
Policy engine |
| opensnitch |
Application firewall |
| pastel |
CLI for color palettes |
| plantuml |
Diagrams |
| podman |
Podman, docker alternative |
| pspg |
Pager for tabular data |
| pushover |
Push notifications to a personal device for $5 for a lifetime |
| sqids |
Short youtube-like IDs that you could spell out |
| sqldef |
SQL migration tool for sqlite et al. |
| st |
Statistics on CLI |
| svg-term-cli |
Record terminal session as svg + css |
| syncthing |
Dropbox alternative |
| temporal |
Distributed computing with error handling |
| ugrep |
Interactive grep |
| up |
Ultimate plumber. Interactive pipelines |
| uppy |
Javascript library for uploads, including screencast on the fly or Dropbox et al. |
| webhook.site |
Hosted/one-off webhooks |
| yazi |
File manager TUI |
| youplot |
Plotting library for CLI |
| zizmor |
Audits Github actions |
| zsys |
fzf TUI for systemctl |
| tantivy |
Search engine - alternative to Elasticsearch or Solr |
| prr |
Review Github PRs locally |
| xan |
CSV editor/viewer |