dot_files/.config/onboardme/packages.yml

382 lines
11 KiB
YAML

---
brew:
emoji: "🍺"
commands:
list: "brew list -1"
update: "brew update --quiet"
upgrade: "brew upgrade --quiet"
install: "brew install "
cleanup: "brew cleanup"
packages:
# these are all for both macOS and Debian
default:
# for working w/ images and making lsimg work, is lorg
- imagemagick
# cool interactive python with colors + docs
- bpython
# TUI browser
- w3m
# less complicated curl
- wget
# tmux replacement :)
- zellij
# recording a shell session to share with others
- asciinema
# TUI IDE is neovim
- neovim
# fuzzy search, helps with completion and searching
- fzf
# ls replacement written in rust: https://github.com/Peltoche/lsd
- lsd
# A cat(1) clone with syntax highlighting and Git integration.
- bat
# pretty formatting and syntax highlighting
- rich-cli
# file TUI: https://www.geeksforgeeks.org/ranger-a-cli-file-manager/
- ranger
# cat images in the terminal (e.g. img2sixel imagename.png)
- libsixel
# ag command: like grep or ack, but more modern, for searching file text
- the_silver_searcher
# diff, but with colors
- colordiff
# prettier top alternatives in C++ and Rust respectively
# - btop
- bottom
# quick system metrics, typically used as an MOTD
- fastfetch
# prettier du/df outputs: https://github.com/muesli/duf
- duf
# blocky fonts with the options for colors
- toilet
# less: b/c you get new features if you stay up2date, & brew is up2date
- less
# The Matrix screensaver for the terminal
- cmatrix
# terminal user interface for git
- gitui
# node.js
- node
# linter for YAML
- yamllint
# for parsing json via cli
- jq
# it's like jq but for yaml
- yq
# search stackoverflow e.g. howdoi extend a dictionary in python
- howdoi
# get the quick, short text of how to use various commands
- tealdeer
# password management
- bitwarden-cli
# TUI for gpg keys, for the lazy, like me
- gpg-tui
# macOS specific stuff. Won't work with LinuxBrew
macOS:
# this is installed via apt for linux
- git
# python 3.11 already ships with Debian bookworm, only needed for macOS
- python@3.11
# for hiding the top bar on an M1
- topnotch
# for testing apis and downloading things
- curl
# current version of bash 😍
- bash
# so that bash completion stuff works
- "bash-completion@2"
# fonts
- "--cask homebrew/cask-fonts/font-mononoki"
- "--cask homebrew/cask-fonts/font-symbols-only-nerd-font"
# - "--cask font-hack-nerd-font"
# this lets us resize windows on macOS
- "--cask rectangle"
# Default browser
- "--cask firefox"
# File server cloud replacement
- "--cask nextcloud"
# wezterm: Rust based terminal the is cross-OS-compatible
- "--cask wez/wezterm/wezterm"
# gives us the default gnu/linux sed we all know and love
- "gnu-sed"
# remap keys on macOS
# - "--cask karabiner-elements"
# primary media player
- "--cask vlc"
# youtube replacement
- "--cask freetube"
# firewall
- "--cask lulu"
# password manager
- "--cask bitwarden"
# VPN
- "--cask protonvpn"
# libreoffice is a FOSS office suite that replaces Google Docs/Office365
- "--cask libreoffice"
# docker desktop
# - "--cask docker"
# colima is a docker desktop replacement
- colima
devops:
# for github actions linting
- actionlint
# vale helps with english grammar formatting and markdown formatting
- vale
# for k8s helm chart development
- helm/tap/chart-releaser
- helm/tap/chart-testing
- norwoodj/tap/helm-docs
# for removing passwords or large files from git history
- bfg
- pyenv
- pyenv-virtualenv
# docker cli
- docker
# docker dashboard tui
- lazydocker
# linter for dockerfiles
- hadolint
# programming languages and their package managers
- go
# cli for k8s (kubernetes)
- kubectl
# kubectl plugin manager
- krew
# kubecolor, a kubectl colorizer
- hidetatz/tap/kubecolor
# terminal based dashbaord for k8s
- k9s
# package manager for k8s
- helm
# for kustomize k8s manifest directories
- kustomize
# gitops continuous delivery for k8s configs
- argocd
# KinD (Kubernetes in Docker), for small k8s clusters for testing
- kind
# generating SSL certs and random strings
- openssl@3
# Bitnami sealed-secrets cli: encrypt secrets in yaml files for gitops
# - kubeseal
# gitlab cli
- glab
# github cli
- gh
# for backups
- restic
# terraform for building stuff
- tfenv
- tflint
- terraform-docs
extras:
# installs cargo and rust
# - rustup
# preview videos in the terminal. commented by default because it is big
# - ffmpegthumbnailer
# a cow that says things
- cowsay
# steam locomotive
- sl
# rainbow text
- lolcat
# tool for mirroring android screen
- scrcpy
mail:
# fetch your mail locally for neomutt
- offlineimap
# anti virus mostly for mail
- clamav
# TUI email client
- neomutt
# markdown rendering
- pandoc
# zathura is a document viewer, that is not working yet
# - zegervdv/zathura/zathura
# - zegervdv/zathura/zathura-pdf-mupdf
# proton bridge for getting mail locally
- "--cask protonmail-bridge"
work:
# for work chats
- "--cask slack"
- "--cask zoom"
music:
# spotify daemon
- spotifyd
# spotify TUI: written in rust, but no longer maintained
# - spotify-tui
- nuclear
Linux:
# linuxbrew asks for this
- gcc
# this should solve font issues :D but...
# linuxbrew fonts aren't working for some reason
# - "homebrew/linux-fonts/font-mononoki"
# - "homebrew/linux-fonts/font-symbols-only-nerd-font"
gui:
# wezterm: Rust based terminal the is cross-OS-compatible
- "wez/wezterm-linuxbrew/wezterm"
apt:
emoji: "🙃"
commands:
update: "sudo apt-get update -y"
upgrade: "sudo apt-get upgrade -y"
install: "sudo apt-get install -y --no-install-recommends "
cleanup: "sudo apt-get autoremove -y"
packages:
default:
- bash-completion
- build-essential
# this is just to keep us up to date
- git
- curl
- python3
- python3-dev
- python3-pip
# needed for python virtual environments, especially for jedi
- python3-venv
# grep alternative
- silversearcher-ag
# this should let you use the a yubikey for auth
- libpam-yubico
# troubleshooting
- sysstat
# networking and firewall
- iptables
- net-tools
# print a pretty pallete to see all colors the terminal can render
- colortest
# help fix locale issues
- "locales-all"
# for installing stuff through ssh - might not be needed with powerline anymore
- "openssh-client"
devops:
- docker-ce
# vpn
- wireguard
# like top but for GPUs
- nvtop
# was for euporie - notebooks in terminals, but gcc is already installed
# by brew so might be able to remove this
# - gcc-11
gui:
# my favorite font :)
- fonts-mononoki
# package manager we don't use right now
# - snapd
# package manager for gui apps that we also don't use
# - flatpak
# this is for android development
- adb
# needed for freetube
- youtube-dl
# this lets you install flatpak packages via the gui
- gnome-software-plugin-flatpak
# gui firewall
- gufw
# pdf viewer with themeing
- zathura
# nextcloud is a self hosted file share app
- nextcloud-desktop
# libreoffice is a FOSS office suite that replaces Google Docs/Office365
- libreoffice
# GUI interface for pulseaudio, so you can disable audio devices
- pavucontrol
gaming:
# helpful for gaming on linux
- "nvidia-driver-libs:i386"
- "steam:i386"
# to format disks to exFAT; FAT is too thin for modern windows 10 ISOs
# - exfat-utils
music:
- vlc
- pulseaudio
flatpak:
emoji: "🫓 "
commands:
setup: "flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo"
list: "flatpak list --user --columns=application"
install: "flatpak install --user --app -y "
packages:
gui:
# - "org.freedesktop.Platform/x86_64/21.08"
# password manager
# - com.bitwarden.desktop
# youtube alternative
# - io.freetubeapp.FreeTube
gaming:
- lutris
snap:
emoji: "🫰 "
commands:
upgrade: "sudo snap refresh"
list: "snap list"
install: "sudo snap install "
packages:
gui:
- core
# screen debugger/sharing tool for android
# - scrcpy
# most of this is actually for powerline, my shell prompt
pip3.11:
emoji: "🐍"
commands:
list: "pip3.11 list"
# this is just till there's a better solution than pipx for Debian Bookworm
# ref: https://salsa.debian.org/cpython-team/python3/-/blob/master/debian/README.venv
install: "pip3.11 install --upgrade --user --break-system-packages "
# env_vars:
# PYTHONUSERBASE: ""
packages:
default:
# pip itself needs to be kept up to up2date
- pip
# keep ourselves up to date
- onboardme
# powerline: for the internal ip address prompt segment
- netifaces
# neovim: needed for neovim's python3 interface, I think
- pynvim
# this is for git pre-commits
- pre-commit
# powerline: (status line for tmux/BASH), this works on linux
- "git+https://github.com/jessebot/powerline@patch-2"
# these are powerline extensions
- powerline-kubernetes
- powerline-gitstatus
# python development: linting/auto-linting
- ruff
- flake8
- pyflakes
- autoflake
- poetry
# this is needed to make python respect XDG Base directory specific
- xdg_base_dirs
devops:
# might be needed for development and building
- build
- twine
# this is a k8s tool to spin up clusters on your local machine
- smol-k8s-lab
# need this for python notebooks
- ipykernel
# latest jupyter notebooks
- jupyterlab
# classic python notebooks
# - notebook
# notebook-driven development platform
# - nbdev
# this is for markdown notebook docs and such
# - quarto
# notebooks in the terminal 💚
- euporie
music:
# terminal based youtube player
- yewtube
# powerline: supposed to work spotify info
- dbus
# python spotify tui: https://github.com/ceuk/spotui
- spotui