e8786b6e832409a81e25caf1d78953d354766cec
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
_ _____ __ __ __ _ _____ ____ _ _____
| | / / | / / / //_// | / / | / __ ( ) ___/
| | / / /| | / / / ,< / |/ / /| | / /_/ //\__ \
| |/ / ___ |/ /___/ /| |/ /| / ___ |/ _, _/ ___/ /
|___/_/ |_/_____/_/ |_/_/ |_/_/ |_/_/ |_| /____/
__________ ____ ____________
/ ____/ __ \/ __ \/ ____/ ____/
/ /_ / / / / /_/ / / __/ __/
/ __/ / /_/ / _, _/ /_/ / /___
/_/ \____/_/ |_|\____/_____/
WHERE CODE MEETS CHAOS
My Debian home directory - forged in the fires of chaos, tempered with configuration files, and wielded with the fury of a thousand riffs.
This is where dotfiles headbang and shell scripts scream.
THE ARSENAL
WEAPONS OF MASS DEVELOPMENT
+-----------------------------------------------------+
| NODE.JS | Managed by nvm |
| PYTHON | Managed by pyenv |
| RUBY | Managed by rbenv |
| RUST | Managed by rustup |
| DOCKER | Containerized destruction |
+-----------------------------------------------------+
QUICK START RITUAL
Summoning the Environment
# 1. Clone this unholy repository
git init && git remote add origin ssh://git@dev.pivoine.art/valknar/home.git
git fetch && git reset --hard origin/main
git branch --set-upstream-to=origin/main main
# 2. Configure git
git config --global init.defaultBranch main
git config --global --add safe.directory /home/$USER
# 3. Sync all dependencies (version managers, shell config, etc.)
arty.sh sync
# 4. Install system packages
arty.sh debian/update && arty.sh debian/install
# 5. Install development tools
arty.sh rust/install
arty.sh node/install
arty.sh ruby/install
arty.sh python/install
# 6. Install global packages
arty.sh npm/install
arty.sh gem/install
# 7. Source the shell configuration
source ~/.zshrc
arty.sh - REPOSITORY ORCHESTRATION
Available Scripts
# System setup
arty.sh debian/update # Enable non-free repos and update sources
arty.sh debian/install # curl, wget, zsh, fzf, davfs2, make, imagemagick, ffmpeg, yt-dlp, pkg-config, zstd, libffi-dev, libyaml-dev, libssl-dev, liblzma-dev, libbz2-dev, libncurses-dev, libreadline-dev, libsqlite3-dev, python3-tk
# Development tools
arty.sh docker/install # Docker Engine with user group
arty.sh rust/install # Rust toolchain via rustup
arty.sh node/install # Node.js via nvm
arty.sh ruby/install # Ruby via rbenv
arty.sh python/install # Python via pyenv
arty.sh go/install # Go via apt
arty.sh hugo/install # Hugo extended via go install
# CLI tools
arty.sh claude/install # Claude AI CLI
arty.sh yq/install # yq YAML processor
arty.sh gh/install # GitHub CLI
arty.sh tailscale/install # Tailscale
arty.sh ollama/install # Ollama
What arty.sh Manages
- Version managers (nvm, rbenv, pyenv)
- Shell configuration (Oh-My-Zsh, Powerlevel10k, plugins)
COMMAND LINE BRUTALITY
Custom Scripts
Scripts in ~/scripts/ are loaded via PATH. They live in their own repo: git@dev.pivoine.art:valknar/scripts.git.
Available scripts: stacks.sh (Docker Compose stack manager), arty.sh (repository orchestration).
ENVIRONMENT STRUCTURE
~/
+-- .nvm/ # Node Version Manager
+-- .rbenv/ # Ruby Version Manager
| +-- plugins/ruby-build/
+-- .pyenv/ # Python Version Manager
+-- .oh-my-zsh/ # Oh-My-Zsh framework
| +-- custom/
| +-- themes/
| | +-- powerlevel10k/
| +-- plugins/
| +-- zsh-autosuggestions/
| +-- zsh-syntax-highlighting/
DOTFILE HIGHLIGHTS
Shell Configuration
.zshrc- Oh-My-Zsh with Powerlevel10k theme.zlogin- Login script (mounts HiDrive, creates symbolic links).p10k.zsh- Powerlevel10k configuration.zprofile,.zlogout,.zshenv- Zsh startup files
Version Files
.nvmrc- Node.js version.ruby-version- Ruby version.python-version- Python version
Git Configuration
.gitignore- INVERTED PATTERN (ignore all, allow specific files).gitconfig- Git user configuration
Personal
signature.txt- ASCII art email signature.hushlogin- Suppress login banners
GIT SELECTIVE TRACKING
This repository uses an inverted .gitignore pattern:
# Ignore everything
*
# But not these files.
!.gitignore
!.gitconfig
!.editorconfig
!.nvmrc
!.ruby-version
!.python-version
!.p10k.zsh
!.zprofile
!.zlogout
!.zlogin
!.zshrc
!.zshenv
!.hushlogin
!arty.yml
!signature.txt
!LICENSE
!README.md
Why? To track only essential dotfiles and configurations while ignoring cache, logs, and user data.
SHELL PLUGIN POWER
Oh-My-Zsh Plugins Loaded:
git pm2 gh sudo ssh ruby rust python node github
rsync nvm rbenv pyenv docker docker-compose qrcode
zsh-autosuggestions zsh-syntax-highlighting
zsh-interactive-cd zsh-navigation-tools
USEFUL RESOURCES
System & Shell
Language Managers
- nvm - Node Version Manager
- rbenv - Ruby Version Manager
- pyenv - Python Version Manager
- rustup - Rust Toolchain Manager
CLI Tools
- GitHub CLI
- Tailscale
- Ollama
- yq - YAML processor
LICENSE
MIT License - Do whatever the hell you want with it.
=================================================================
__________ ____ ______ _________
/ ____/ __ \/ __ \/ ____/ / _/ ___/
/ / / / / / / / / __/ / / \__ \
/ /___/ /_/ / /_/ / /___ _/ / ___/ /
\____/\____/_____/_____/ /___//____/
______________ _______ ____ ____ ___ ______ __
/_ __/ ____/ |/ / __ \/ __ \/ __ \/ | / __ \ \/ /
/ / / __/ / /|_/ / /_/ / / / / /_/ / /| | / /_/ /\ /
/ / / /___/ / / / ____/ /_/ / _, _/ ___ |/ _, _/ / /
/_/ /_____/_/ /_/_/ \____/_/ |_/_/ |_/_/ |_| /_/
__ __________________ __ _________
/ |/ / ____/_ __/ | / / / _/ ___/
/ /|_/ / __/ / / / /| | / / / / \__ \
/ / / / /___ / / / ___ |/ /___ _/ / ___/ /
/_/ /_/_____/ /_/ /_/ |_/_____/ /___//____/
______________________ _ _____ __
/ ____/_ __/ ____/ __ \/ | / / | / /
/ __/ / / / __/ / /_/ / |/ / /| | / /
/ /___ / / / /___/ _, _/ /| / ___ |/ /___
/_____/ /_/ /_____/_/ |_/_/ |_/_/ |_/_____/
=================================================================
FORGED BY VALKNAR
valknar@pivoine.art
Powered by Debian | Fueled by Metal
Languages
Shell
85.1%
Lua
14.9%