ArchLinux Utility Belt
A comprehensive collection of configurations, utilities, and automation scripts for Arch Linux power users. This repository provides a curated set of tools and settings to transform a fresh Arch installation into a highly optimized development environment.
v2.0.0 - 2026-02-25 Released - Breaking Changes This release includes significant breaking changes: removed configurations, renamed aliases, and deleted functions. See the release notes for full details.
Table of Contents
- Disclaimer
- Features
- Prerequisites
- Repository Structure
- Usage
- Documentation
- Sponsorship
- License
Disclaimer
- Use at your own risk. These configurations are highly personalized for specific hardware and software choices.
- Hardware Specificity: Configurations are optimized for systems with Nvidia GPU, linux-zen kernel, and Btrfs filesystem. Optional Intel GPU support is available via
configs/20-intel.conf. - Backup First: Always back up existing configurations before replacing them.
- Review Before Use: Carefully inspect files before applying them to your system. Each configuration file includes header comments indicating its target location.
Features
System Optimization
- Kernel Performance: Custom parameters for linux-zen kernel with Btrfs-specific optimizations
- GPU Support: Nvidia driver configurations and legacy driver packages for older GPUs
- Build System: Optimized makepkg configuration for faster AUR builds
- Performance-tuned configurations: for linux-zen kernel, Nvidia GPU, and Btrfs filesystem
- Production-ready templates: Docker, systemd, git, and more
Development Productivity
- Custom ZSH functions for Development Automation
- Media Processing: Batch convert and optimize images and media files
- Template Generation: Instantly scaffold Docker, systemd, and project files
- AI Integration: Interactive AI chat via OpenRouter API
Modular Architecture
- Modular design: use only what you need
- Selective Installation: Each component can be used independently
- Clear Documentation: Every module includes its own detailed README
- Flexible Configuration: Adapt configurations to your specific needs
Prerequisites
- Arch Linux (or Arch-based distribution)
- ZSH shell with Oh-My-ZSH framework
- Git 2.0+
Additional dependencies may be required for specific modules. Please refer to individual README files in each directory for detailed requirements.
Repository Structure
ArchLinux-utility-belt/
+-- configs/ # System and application configurations
| +-- 20-intel.conf # Xorg Intel GPU configuration
| +-- 99-custom.conf # Kernel parameters optimization
| +-- .gitconfig # Git configuration (GPG, SSH, commit template)
| +-- .makepkg.conf # Build system configuration
| +-- grub # GRUB bootloader configuration
| +-- mkinitcpio.conf # Initramfs generation (Nvidia/Btrfs)
| +-- .xinitrc # X session startup (XFCE4)
| +-- .zshrc # Main ZSH configuration
| +-- .zshrc_default # Default Oh-My-ZSH config
+-- custompkgs/ # Local package archive
| +-- nvidia-dkms-580.95.05-1-x86_64.pkg.tar.zst
| +-- nvidia-utils-580.95.05-1-x86_64.pkg.tar.zst
+-- fonts/ # Curated programming fonts
| +-- [various font files] # FiraCode, JetBrains Mono NF, MartianMono, OpenSans, SF Pro
+-- .zfunc/ # Custom ZSH functions library
| +-- fn_ask_ai # Interactive AI chat via OpenRouter API
| +-- fn_convert_media # Media format conversion
| +-- fn_convert_media_batch # Bulk media conversion
| +-- fn_git_clone_template # Clone without git history
| +-- fn_init_repo # Initialize git repository with basic files
| +-- fn_optimize_images # Batch image optimization
| +-- fn_new_Dockerfile # Generate Dockerfile template
| +-- fn_new_docker_compose # Generate docker-compose.yaml
| +-- fn_new_dockerignore # Generate .dockerignore
| +-- fn_new_gitignore # Generate .gitignore from template
| +-- fn_new_desktop_file # Create desktop entry
| +-- fn_new_timer # Generate systemd timer
| +-- fn_new_system_service # Generate system service
| +-- fn_new_user_service # Generate user service
+-- templates/ # Production-ready file templates
| +-- .dockerignore # Docker ignore patterns
| +-- .editorconfig # Code formatting configuration
| +-- .gitignore # Comprehensive ignore patterns
| +-- desktop-file.desktop # Application launcher template
| +-- docker-compose.yaml # Multi-container setup
| +-- Dockerfile # Node.js Alpine template
| +-- example-system.service # System service template
| +-- example-user.service # User service template
| +-- example-timer.timer # Systemd timer template
| +-- git-commit-template.txt # Conventional commit template
| +-- Makefile_go # Go project Makefile template
+-- CHANGELOG.md # Version history
+-- LICENSE # MIT License
+-- README.md # Project documentation
Usage
Getting Started
Clone the repository:
cd ArchLinux-utility-belt
Applying Configurations
You have two options for using the configurations:
- Copy files to their target locations (recommended for system files)
- Create symbolic links for configurations that support it
Example: Setting up ZSH configuration
cp ~/.zshrc ~/.zshrc.backup
# Option 1: Copy the file
cp configs/.zshrc ~/
# Option 2: Create a symbolic link
ln -s $(pwd)/configs/.zshrc ~/.zshrc
# Reload the configuration
source ~/.zshrc
# or
exec zsh
Important Notes
- Git commit templates (
git-commit-template.txt) must be referenced by their full path in git configuration rather than using symbolic links:git config --global commit.template /path/to/ArchLinux-utility-belt/templates/git-commit-template.txt - Each configuration file contains a header comment specifying its target location in the system
- Some configurations may require additional setup steps - refer to module-specific documentation
Documentation
Each module in this repository has its own comprehensive README with:
- Detailed installation instructions
- Configuration options
- Usage examples
- Troubleshooting guides
Module documentation:
configs/README.md-- System and application configuration detailscustompkgs/README.md-- Legacy Nvidia driver and other packagesfonts/README.md-- Font installation and usage guidetemplates/README.md-- Template file documentation.zfunc/README.md-- ZSH function reference and examples
Sponsorship
1CCnwAvJYEoDVGM7vsBg2Q99cF9EHtBVaY
0x54f0ccc6b2987de454f69f2814fc9202bcfb74fe
License
MIT Licensed. See LICENSE for details.