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

319 lines
8.6 KiB
Markdown
Executable File

<div align="center">
<pre>
_ _____ __ __ __ _ _____ ____ _ _____
| | / / | / / / //_// | / / | / __ ( ) ___/
| | / / /| | / / / ,< / |/ / /| | / /_/ //\__ \
| |/ / ___ |/ /___/ /| |/ /| / ___ |/ _, _/ ___/ /
|___/_/ |_/_____/_/ |_/_/ |_/_/ |_/_/ |_| /____/
__________ ____ ____________
/ ____/ __ \/ __ \/ ____/ ____/
/ /_ / / / / /_/ / / __/ __/
/ __/ / /_/ / _, _/ /_/ / /___
/_/ \____/_/ |_|\____/_____/
</pre>
# 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.*
</div>
---
## 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
```bash
# 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](https://github.com/butter-sh/butter-sh.github.io) ecosystem.
### Available Scripts
```bash
# 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
```bash
g0 # Stage all changes and verify clean state
g1 # Nuclear reset to single commit
g2 # Show last commit message
```
### Development Servers
```bash
# Serve current directory on port 8000
ss
# Download YouTube video as MP3
yt "https://youtube.com/watch?v=..."
```
### Rsync Power
```bash
# 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:
```gitignore
# 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
- [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 / Butter.sh Ecosystem](https://github.com/butter-sh/butter-sh.github.io)
---
## LICENSE
MIT License - Do whatever the hell you want with it.
---
<div align="center">
<pre>
=================================================================
__________ ____ ______ _________
/ ____/ __ \/ __ \/ ____/ / _/ ___/
/ / / / / / / / / __/ / / \__ \
/ /___/ /_/ / /_/ / /___ _/ / ___/ /
\____/\____/_____/_____/ /___//____/
______________ _______ ____ ____ ___ ______ __
/_ __/ ____/ |/ / __ \/ __ \/ __ \/ | / __ \ \/ /
/ / / __/ / /|_/ / /_/ / / / / /_/ / /| | / /_/ /\ /
/ / / /___/ / / / ____/ /_/ / _, _/ ___ |/ _, _/ / /
/_/ /_____/_/ /_/_/ \____/_/ |_/_/ |_/_/ |_| /_/
__ __________________ __ _________
/ |/ / ____/_ __/ | / / / _/ ___/
/ /|_/ / __/ / / / /| | / / / / \__ \
/ / / / /___ / / / ___ |/ /___ _/ / ___/ /
/_/ /_/_____/ /_/ /_/ |_/_____/ /___//____/
______________________ _ _____ __
/ ____/_ __/ ____/ __ \/ | / / | / /
/ __/ / / / __/ / /_/ / |/ / /| | / /
/ /___ / / / /___/ _, _/ /| / ___ |/ /___
/_____/ /_/ /_____/_/ |_/_/ |_/_/ |_/_____/
=================================================================
FORGED BY VALKNAR
valknar@pivoine.art
Powered by Debian | Fueled by Metal
</pre>
**[BACK TO THE TOP](#)**
</div>