_    _____    __    __ __ _   _____    ____ _ _____
| |  / /   |  / /   / //_// | / /   |  / __ ( ) ___/
| | / / /| | / /   / ,<  /  |/ / /| | / /_/ //\__ \
| |/ / ___ |/ /___/ /| |/ /|  / ___ |/ _, _/ ___/ /
|___/_/  |_/_____/_/ |_/_/ |_/_/  |_/_/ |_| /____/

    __________  ____  ____________
   / ____/ __ \/ __ \/ ____/ ____/
  / /_  / / / / /_/ / / __/ __/
 / __/ / /_/ / _, _/ /_/ / /___
/_/    \____/_/ |_|\____/_____/
# ⚡🔥 WHERE CODE MEETS CHAOS 🔥⚡ [![Debian](https://img.shields.io/badge/Debian-Trixie-A81D33?style=for-the-badge&logo=debian&logoColor=white)](https://www.debian.org/) [![Powered by Metal](https://img.shields.io/badge/POWERED%20BY-METAL-FF0000?style=for-the-badge)](https://www.slayer.net/) [![Built with Blood](https://img.shields.io/badge/BUILT%20WITH-BLOOD%20%26%20SWEAT-8B0000?style=for-the-badge)](/) [![License: MIT](https://img.shields.io/badge/License-MIT-990000?style=for-the-badge)](LICENSE) **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 │ │ ⚔️ GO │ Managed by gvm │ │ ⚔️ DOCKER │ Containerized destruction │ │ ⚔️ POSTGRES │ Version 18 database engine │ └─────────────────────────────────────────────────┘ ``` --- ## 🩸 QUICK START RITUAL 🩸 ### **Summoning the Environment** ```bash # 1. Clone this unholy repository git init && git remote add origin git@github.com:valknarogg/home.git git fetch && git reset --hard origin/main git branch --set-upstream-to=origin/main main # 2. Install Ansible (if not already installed) sudo apt install git ansible # 3. Configure git git config --global init.defaultBranch main git config --global --add safe.directory /home/$USER # 4. Unleash the Ansible playbook sudo -u $USER ansible-playbook -K playbook.yml ``` ### **Selective Provisioning** Run specific parts of the setup using tags: ```bash # Install only Node.js environment ansible-playbook --tags node -K playbook.yml # Install Python + Ruby ansible-playbook --tags python,ruby -K playbook.yml # Install everything ansible-playbook -K playbook.yml ``` #### 🏷️ **Available Tags:** `base` | `node` | `python` | `ruby` | `rust` | `zsh` | `postgres` | `docker` | `fonts` | `flatpak` | `github` | `oh-my-posh` --- ## 🎯 ARTY - REPOSITORY ORCHESTRATION 🎯 ### **What is Arty?** **Arty.sh** is a bash-based dependency and repository manager that orchestrates git subrepositories like a conductor of chaos. It's part of the [butter.sh](https://github.com/butter-sh/butter-sh.github.io) ecosystem - a suite of bash development tools. ### **Installing Arty** Arty is already installed globally at `/usr/local/bin/arty`. If you need to install/update it: ```bash # Clone butter.sh ecosystem git clone https://github.com/butter-sh/butter-sh.github.io.git ~/Projects/butter-sh # Install arty globally (requires sudo) cd ~/Projects/butter-sh/projects/arty.sh sudo ./arty.sh install ``` ### **The `arty.yml` Configuration** The root `~/arty.yml` defines your entire repository ecosystem: ```yaml name: "Valknar's home" version: "1.0.0" envs: dev: # Development environment prod: # Production environment references: # Project repositories - url: git@github.com:valknarogg/pivoine.art.git into: Projects/pivoine.art env: dev # Media repositories - url: git@github.com:valknarogg/home-pictures.git into: Bilder env: dev # Version managers - url: https://github.com/nvm-sh/nvm.git into: .nvm # ... and many more scripts: debug: echo "$ARTY_BIN_DIR" && echo "$ARTY_LIBS_DIR" ``` ### **Using Arty** ```bash # Sync all dev environment repositories arty sync --env dev # Sync production repositories only arty sync --env prod # Install dependencies from arty.yml arty install # Run custom scripts defined in arty.yml arty debug # Show dependency tree arty deps # Update a specific reference arty update pivoine.art ``` ### **What Arty Manages:** - ✅ Project repositories (pivoine.art, sexy.pivoine.art, etc.) - ✅ Media repositories (Pictures, Videos, Music) - ✅ Docker compose configurations - ✅ Version managers (nvm, rbenv, pyenv, gvm) - ✅ Oh-My-Zsh and plugins - ✅ Shell scripts and binaries ### **Environment-Based Management** References can be tagged with `env: dev` or `env: prod` to control which repositories are synced in different environments. This allows you to: - Keep heavy media files out of production servers - Separate development projects from system utilities - Maintain clean, minimal deployments --- ## 🔥 COMMAND LINE BRUTALITY 🔥 ### **Git Operations** ```bash g0 # Stage all changes and verify clean state g1 # Nuclear reset to single commit g2 # Show last commit message git add -A && git commit -m "$(g2)" # Reuse last commit message ``` ### **Media Processing** ```bash # Convert all images in directory to WebP batch_image_webp # Rename files with sequence numbers batch_file_sequence artwork webp # Optimize video _video_optimize input.mov # Download YouTube video as MP3 yt "https://youtube.com/watch?v=..." ``` ### **Development Servers** ```bash # Serve current directory on port 8000 ss # Run Jekyll site with livereload cd ~/Projects/pivoine.art && bundle exec jekyll serve --livereload # Run Node.js dev server cd ~/Projects/node.js/awesome && pnpm dev ``` ### **Rsync Power** ```bash # Sync to remote with sudo rs /local/path/ user@host:/remote/path/ ``` --- ## 📁 PROJECT STRUCTURE 📁 ``` ~/Projects/ ├── butter-sh/ # Butter.sh ecosystem (arty, judge, myst, etc.) ├── docker-compose/ # Docker orchestration configs ├── pivoine.art/ # Jekyll art portfolio (main site) ├── docs.pivoine.art/ # Documentation site ├── sexy.pivoine.art/ # Rust + web project (includes buttplug package) └── node.js/ ├── awesome/ # GitHub Awesome lists browser ├── awesome-app/ # Awesome list application ├── email-pour-vous/ # Email templating project └── webshot/ # Website screenshot tool ``` --- ## 🛠️ DOTFILE HIGHLIGHTS 🛠️ ### **Shell Configuration** - **`.zshrc`** - Oh-My-Zsh with Powerlevel10k theme - **`.p10k.zsh`** - Powerlevel10k configuration - **`.bashrc`** - Bash configuration (fallback) ### **Version Files** - **`.nvmrc`** - Node.js version - **`.ruby-version`** - Ruby version - **`.python-version`** - Python version ### **Code Quality** - **`.pre-commit-config.yaml`** - Pre-commit hooks (Python) - **`.rubocop.yml`** - Ruby style enforcement - **`eslint.config.mts`** - JavaScript/TypeScript linting - **`.prettierrc`** - Code formatting rules - **`biome.json`** - Fast linter/formatter ### **Package Management** - **`requirements.txt`** - Python packages (pip) - **`Gemfile`** - Ruby gems (bundler) ### **Git Configuration** - **`.gitignore`** - INVERTED PATTERN (ignore all, allow specific files) - **`.gitconfig`** - Git user configuration ### **Orchestration** - **`arty.yml`** - Repository and dependency management - **`playbook.yml`** - Ansible system provisioning --- ## ⚙️ GIT SELECTIVE TRACKING ⚙️ This repository uses an **inverted `.gitignore`** pattern: ```gitignore # Ignore everything * # Allow specific files !CLAUDE.md !README.md !.gitignore !.zshrc !arty.yml !playbook.yml ... ``` **Why?** To track only essential dotfiles and configurations while ignoring cache, logs, and user data. Your home directory becomes a git repository without the chaos. **Note**: The `.init/` directory is NOT tracked in git - it exists locally only for shell initialization. This keeps your shell configuration private and machine-specific. --- ## 🎸 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 - [Ansible Documentation](https://docs.ansible.com/) - [Oh-My-Zsh](https://ohmyz.sh/) - [Powerlevel10k](https://github.com/romkatv/powerlevel10k) ### Language Managers - [nvm](https://github.com/nvm-sh/nvm) - Node Version Manager - [rbenv](https://github.com/rbenv/rbenv) - Ruby Version Manager - [pyenv](https://github.com/pyenv/pyenv) - Python Version Manager - [gvm](https://github.com/moovweb/gvm) - Go Version Manager - [rustup](https://rustup.rs/) - Rust Toolchain Manager ### Orchestration - [Arty.sh Documentation](https://github.com/butter-sh/butter-sh.github.io) - [Butter.sh Ecosystem](https://butter.sh) --- ## 🖤 LICENSE 🖤 MIT License - Do whatever the hell you want with it. ---
═════════════════════════════════════════════════════════════════

__________  ____  ______   _________
  / ____/ __ \/ __ \/ ____/  /  _/ ___/
 / /   / / / / / / / __/     / / \__ \
/ /___/ /_/ / /_/ / /___   _/ / ___/ /
\____/\____/_____/_____/  /___//____/

  ______________  _______  ____  ____  ___    ______  __
 /_  __/ ____/  |/  / __ \/ __ \/ __ \/   |  / __ \ \/ /
  / / / __/ / /|_/ / /_/ / / / / /_/ / /| | / /_/ /\  /
 / / / /___/ /  / / ____/ /_/ / _, _/ ___ |/ _, _/ / /
/_/ /_____/_/  /_/_/    \____/_/ |_/_/  |_/_/ |_| /_/

    __  __________________    __       _________
   /  |/  / ____/_  __/   |  / /      /  _/ ___/
  / /|_/ / __/   / / / /| | / /       / / \__ \
 / /  / / /___  / / / ___ |/ /___   _/ / ___/ /
/_/  /_/_____/ /_/ /_/  |_/_____/  /___//____/

    ______________________  _   _____    __
   / ____/_  __/ ____/ __ \/ | / /   |  / /
  / __/   / / / __/ / /_/ /  |/ / /| | / /
 / /___  / / / /___/ _, _/ /|  / ___ |/ /___
/_____/ /_/ /_____/_/ |_/_/ |_/_/  |_/_____/

═════════════════════════════════════════════════════════════════

🔥⚡ FORGED BY VALKNAR ⚡🔥
valknar@pivoine.art
Powered by Debian | Fueled by Metal

🤘 🤘 🤘
**[⚔️ BACK TO THE TOP ⚔️](#)**