-
On Debian (desktop):
- i3 (window manager)
- i3status-rust (desktop status line)
- nitrogen (x background setter)
- rofi (on-screen menu)
- dolphin (file manager)
- konsole (terminal emulator)
- firefox (browser)
- gvim/neovim (editor)
- bash (shell)
- xmms2 (music player)
- pavucontrol (audio volumes and input switching)
-
Remote:
- tmux (terminal multiplexer)
-
On Mac (for work):
- iTerm2 (terminal emulator)
- Hex Fiend (hex editor)
- LICEcap (screen recorder for demos)
-
Fonts:
- Incosolata (konsole, neovim)
- Overpass Mono (gvim)
-
Additional Tools:
- kicad (schematic and PCB editor)
- okteta (hex editor)
- tigervnc-standalone-server (vnc/remote gui)
- tigervnc-viewer
- deluge (torrents)
- vlc (video player)
- wireshark (network analyzer)
- xmms2 (music player)
On Debian
apt-get install i3 i3status rofi dolphin konsole vim-gtk3 vim-scripts neovim neovim-qt nitrogen net-tools netcat python3-serial tmux gxmms2 xmms2 jq
apt-get install gcc-m68k-linux-gnu gcc-arm-none-eabi gdb-multiarch ocaml opam openocd
apt-get install kicad kicad-libraries iverilog yosys nextpnr-generic nextpnr-ice40-qt gtkwave
apt-get install fontconfig fonts-agave fonts-ancient-scripts fonts-anonymous-pro fonts-courier-prime fonts-dejavu fonts-dejavu-extra fonts-elusive-icons fonts-ferrite-core fonts-font-awesome fonts-fork-awesome fonts-glasstty fonts-hack fonts-hermit fonts-ibm-plex fonts-inconsolata fonts-lato fonts-lobster fonts-lyx fonts-material-design-icons-iconfont fonts-materialdesignicons-webfont fonts-monofur fonts-monoid fonts-noto fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji fonts-noto-core fonts-noto-extra fonts-noto-hinted fonts-noto-mono fonts-noto-ui-core fonts-noto-ui-extra fonts-noto-unhinted fonts-opensymbol fonts-powerline fonts-proggy fonts-quicksand fonts-sil-gentium fonts-spleen fonts-staypuft fonts-symbola fonts-terminus
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup component add rust-analyzer-x86_64-unknown-linux-gnu
cargo install i3status-rs
- install rust and rust-analyzer from rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- manually install Firefox and Signal binaries
On Mac
brew install bash bash-completion@2
brew install binutils nvm ocaml opam
brew install --cask iterm2 hex-fiend licecap macvim
brew install --cask tigervnc-viewer wireshark
brew install --cask font-azeret-mono font-b612-mono font-cousine font-incosolata
-
Terminal Emulators:
- konsole (current default)
- lots of good features without being too heavy feeling
- it doesn't run on MacOS, which I use for work
- alactritty
- wezterm
- kitty
- no scroll bars, and developer has no interest in implementing them
- stterm
- it doesn't support scrollback without a patch, and that's a critical feature for me, but is otherwise really lightweight
- warp
- no linux support
- konsole (current default)
-
Shells:
- bash (current default)
- nushell
- still in early development, but impressive
- zsh
- I don't like the double tab autofill behaviour and haven't tried configuring it differently
- fish
- it tries to do too much for me and can be distracting
-
Editors:
- vim (current default, but trying out neovim)
- neovim
- fonts don't display the same, but that's partly because they're broken in vim
- no prompt as soon as file changed on disk (fixed with noautoread and autocmd whenever focus changes)
- nvim-qt as frontend doesn't have as many little features as gvim
- guioptions=a which automatically yanks text selected with the mouse to the '*' register
- mouse cursor doesn't change shape when hovering over interactive ui elements like in gvim (vertical bar cursor in text area, up/down arrow cursor over status bars that can be moved)
-
Window Managers:
- i3 (current default)
- sway for Wayland
- last time I tried to run Wayland/Sway, it wouldn't start, likely because I'm also using the nvidia drivers, which apparently don't play well with sway, but I'm happy with X11/Xorg, so I'll stick with i3 for now
-
Terminal Multiplexers:
- tmux (current default)
- at first I didn't like the status bar (even though it can be turned off) but I used to use a multiplexer mostly through my phone when out of the house and on poor internet connections, but now that at work, I have to do all my coding and building on a remote machine through SSH, I prefer the extra features it has, especially the status bar
- zellij
- screen
- I used to use it but switched to tmux, for the extra features
- tmux (current default)