No description
A minimal Pop!_OS image doesn't ship nodejs/npm, pip, or luarocks, so
every Mason package that shells out to one of them died with ENOENT or
'externally-managed-environment' (PEP 668). The Arch installer never hit
this because omarchy pulled those in transitively.
Adding to APT_PACKAGES:
nodejs, npm - JS-backed LSPs (ts_ls, bashls, html, jsonls,
eslint, prettier, ...)
python3-pip,
python3-venv - pip-backed tools (debugpy, ruff, vint).
python3-venv lets Mason 1.10+ create per-package
venvs and avoid PEP 668.
luarocks - luacheck
|
||
|---|---|---|
| .config | ||
| docs | ||
| install | ||
| .gitattributes | ||
| .gitconfig | ||
| .gitignore | ||
| .tmux.conf | ||
| .zshrc | ||
| LICENSE | ||
| README.md | ||
dotfiles
Linux dotfiles oriented around Pop!_OS 24.04 (Cosmic DE). Plain Debian
package paths in .zshrc with a fallback for Arch, so they also work on Arch
machines if you ever switch back.
Quick Setup
# Clone
git clone <repo-url> ~/dotfiles
# Symlink configs
ln -sfn ~/dotfiles/.config/nvim ~/.config/nvim
ln -sfn ~/dotfiles/.config/tmux ~/.config/tmux
ln -sfn ~/dotfiles/.config/starship ~/.config/starship
ln -sfn ~/dotfiles/.config/lazygit ~/.config/lazygit
ln -sfn ~/dotfiles/.config/wezterm ~/.config/wezterm
ln -sfn ~/dotfiles/.config/zed ~/.config/zed
ln -sfn ~/dotfiles/.config/.ideavimrc ~/.ideavimrc
ln -sfn ~/dotfiles/.zshrc ~/.zshrc
ln -sfn ~/dotfiles/.gitconfig ~/.gitconfig
Install
On Pop!_OS / Ubuntu 24.04, run the bundled installer. It uses apt for
the system base + GUI apps (WezTerm, Brave Beta) and Homebrew for the
CLI toolchain (fzf, fd, bat, eza, zoxide, ripgrep, tmux, neovim, lazygit,
starship, gh, zsh plugins) so those tools stay current — one
brew upgrade updates everything.
~/dotfiles/install/install.sh
See install/README.md for flags and the full
package list. The update alias runs brew upgrade && sudo apt upgrade.
Theme
Kanagawa theme with two variants: dragon (dark) and wave (darker blue).
Set in shell:
export KANAGAWA_THEME="wave" # or "dragon"