Files
home/README.md
2025-11-25 08:41:49 +01:00

8.6 KiB
Executable File

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

    __________  ____  ____________
   / ____/ __ \/ __ \/ ____/ ____/
  / /_  / / / / /_/ / / __/ __/
 / __/ / /_/ / _, _/ /_/ / /___
/_/    \____/_/ |_|\____/_____/

WHERE CODE MEETS CHAOS

Debian Powered by Metal Built with Blood License: MIT

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            |
+-----------------------------------------------------+

QUICK START RITUAL

Summoning the Environment

# 1. Clone this unholy repository
git init && git remote add origin 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 sync

# 4. Install system packages
arty debian/update && arty debian/install

# 5. Install development tools
arty rust/install
arty node/install
arty ruby/install
arty python/install

# 6. Install global packages
arty npm/install
arty gem/install

# 7. Source the shell configuration
source ~/.zshrc

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 ecosystem.

Available Scripts

# System setup
arty debian/update       # Enable non-free repos and update sources
arty debian/install      # curl, zsh, fzf, davfs2, krusader, make, imagemagick, ffmpeg, yt-dlp, thunderbird, etc.
arty debian/remove       # Remove pulseaudio-module-bluetooth

# Development tools
arty docker/install      # Docker Engine with user group
arty rust/install        # Rust toolchain via rustup
arty node/install        # Node.js via nvm
arty ruby/install        # Ruby via rbenv
arty python/install      # Python via pyenv
arty uv/install          # uv Python package manager

# Applications
arty zed/install         # Zed code editor
arty claude/install      # Claude AI CLI
arty spotify/install     # Spotify desktop client
arty mattermost/install  # Mattermost desktop client
arty joplin/install      # Joplin note-taking app
arty yq/install          # yq YAML processor

# Package managers
arty npm/install         # npm, pnpm, @valknarthing/llmx
arty gem/install         # bundler

What Arty Manages

  • Version managers (nvm, rbenv, pyenv, gvm)
  • Shell configuration (Oh-My-Zsh, Powerlevel10k, plugins)
  • Custom binaries (from valknar/bin repository)
  • LLM configuration (from home-llmx repository)

COMMAND LINE BRUTALITY

Git Operations

g0                  # Stage all changes and verify clean state
g1                  # Nuclear reset to single commit
g2                  # Show last commit message

Development Servers

# Serve current directory on port 8000
ss

# Download YouTube video as MP3
yt "https://youtube.com/watch?v=..."

Rsync Power

# Sync to remote with sudo
rs /local/path/ user@host:/remote/path/

ENVIRONMENT STRUCTURE

~/
+-- bin/                    # Custom scripts and executables
+-- .llmx/                  # LLM configuration (Claude, etc.)
+-- .nvm/                   # Node Version Manager
+-- .rbenv/                 # Ruby Version Manager
|   +-- plugins/ruby-build/
+-- .pyenv/                 # Python Version Manager
+-- .gvm/                   # Go Version Manager
+-- .oh-my-zsh/             # Oh-My-Zsh framework
|   +-- custom/
|       +-- themes/
|       |   +-- powerlevel10k/
|       +-- plugins/
|           +-- zsh-autosuggestions/
|           +-- zsh-syntax-highlighting/
+-- Projects/               # Development projects
+-- Documents/              # -> /mnt/hidrive/users/valknar/Documents
+-- Pictures/               # -> /mnt/hidrive/users/valknar/Pictures
+-- Videos/                 # -> /mnt/hidrive/users/valknar/Videos
+-- Music/                  # -> /mnt/hidrive/users/valknar/Music

DOTFILE HIGHLIGHTS

Shell Configuration

  • .zshrc - Oh-My-Zsh with Powerlevel10k theme
  • .zlogin - Login script (mounts HiDrive, creates symbolic links)
  • .p10k.zsh - Powerlevel10k configuration

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

Orchestration

  • arty.yml - Repository and dependency management with installation scripts

Personal

  • signature.txt - ASCII art email signature

HIDRIVE INTEGRATION

The .zlogin script automatically:

  • Mounts HiDrive storage at /mnt/hidrive on shell login
  • Creates symbolic links from HiDrive to home directory:
    • ~/Documents -> /mnt/hidrive/users/valknar/Documents
    • ~/Pictures -> /mnt/hidrive/users/valknar/Pictures
    • ~/Videos -> /mnt/hidrive/users/valknar/Videos
    • ~/Music -> /mnt/hidrive/users/valknar/Music

GIT SELECTIVE TRACKING

This repository uses an inverted .gitignore pattern:

# Ignore everything
*

# Allow specific files
!CLAUDE.md
!README.md
!.gitignore
!.zshrc
!.zlogin
!arty.yml
...

Why? To track only essential dotfiles and configurations while ignoring cache, logs, and user data.


SHELL PLUGIN POWER

Oh-My-Zsh Plugins Loaded:

git sudo ssh rsync docker docker-compose
nvm rbenv pyenv
zsh-autosuggestions zsh-syntax-highlighting

USEFUL RESOURCES

System & Shell

Language Managers

  • nvm - Node Version Manager
  • rbenv - Ruby Version Manager
  • pyenv - Python Version Manager
  • gvm - Go Version Manager
  • rustup - Rust Toolchain Manager

Orchestration


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