Skip to content

arthur404dev/dots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

79 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏠 Arthur's Dotfiles

A carefully curated collection of configuration files for a modern Linux development environment, organized with GNU Stow for easy management and deployment.

🎯 Philosophy

These dotfiles embrace the Unix philosophy of doing one thing well. Each configuration is thoughtfully crafted to provide a seamless, efficient, and aesthetically pleasing computing experience across different machines.

πŸ“¦ What's Inside

🐚 Shell (shell/)

Modern shell configurations with custom prompts and productivity enhancements.

  • Fish Shell: Modern shell with intelligent autocompletions
  • Zsh: Powerful shell with custom configurations
  • Starship: Cross-shell prompt with git integration and performance metrics
  • Bash: Fallback shell configuration

πŸ“– Detailed Shell Documentation β†’

πŸ’» Terminal (terminal/)

Terminal emulator configurations optimized for development workflows.

  • Kitty: GPU-accelerated terminal with ligature support
  • Foot: Lightweight Wayland terminal
  • Zellij: Modern terminal multiplexer with layouts and plugins
  • Tmux: Traditional terminal multiplexer for session management

πŸ“– Detailed Terminal Documentation β†’

✏️ Editor (editor/)

Modern text editor configurations with LSP integration and productivity features.

  • Neovim: Modern Vim with LSP, treesitter, and plugin ecosystem
  • Micro: Simple, intuitive terminal-based text editor

πŸ“– Detailed Editor Documentation β†’

πŸͺŸ Window Manager (wm/)

Comprehensive window manager setups for both X11 and Wayland environments.

  • Hyprland: Dynamic tiling Wayland compositor
  • BSPWM: Binary space partitioning window manager
  • Waybar: Highly customizable Wayland bar
  • Rofi: Application launcher and window switcher
  • Fuzzel: Fast application launcher for Wayland
  • Dunst: Lightweight notification daemon
  • Polybar: Fast and easy-to-use status bar
  • Swaylock: Screen locker for Wayland
  • Wlogout: Logout menu for Wayland
  • Quickshell: Modern Qt-based shell with modular components

πŸ“– Detailed Window Manager Documentation β†’

πŸ› οΈ Tools (tools/)

Essential command-line tools for development, system management, and productivity.

  • Git: Version control with aliases and configurations
  • Lazygit: Terminal UI for git commands
  • Ranger: Console file manager with VI key bindings
  • Btop: Resource monitor with a sleek interface
  • Fastfetch: System information tool
  • Cava: Console-based audio visualizer
  • LSD: Modern replacement for ls with colors and icons
  • Fontconfig: Font configuration and customization
  • Matugen: Material You color generation tool
  • Redshift: Blue light filter for eye strain reduction

πŸ“– Detailed Tools Documentation β†’

🎨 Theme (theme/)

Comprehensive theming system for consistent visual appearance across all applications.

  • GTK 3/4: Consistent theming across GTK applications
  • Qt5/Qt6: Qt application theming
  • Kvantum: SVG-based theme engine for Qt applications

πŸ“– Detailed Theme Documentation β†’

🎡 Media (media/)

Media player configuration and curated wallpaper collection for multimedia experience.

  • MPV: Minimalist media player with extensive customization
  • Wallpapers: Curated collection of beautiful desktop wallpapers

πŸ“– Detailed Media Documentation β†’

πŸ€– AI (ai/)

AI-powered development tools and assistants for enhanced productivity.

  • OpenCode: Configuration for the AI-powered coding assistant
  • Claude: Settings and preferences for Claude AI interactions
  • AI Tools: Configurations for modern AI development workflow

πŸ“– Detailed AI Documentation β†’

πŸ“± Apps (apps/)

Performance and feature flags for browsers and applications.

  • Browser Flags: Performance and feature flags for Chrome, Thorium, and VSCode
  • Application Optimizations: Custom flags for better performance and functionality

πŸ“– Detailed Apps Documentation β†’

βš™οΈ System (system/)

System-wide integration configurations for desktop portals, boot management, and display managers.

  • GRUB: Boot loader configuration with custom theme and kernel parameters
  • SDDM: Display manager configuration with custom theme
  • XDG Desktop Portal: Desktop integration for sandboxed applications
  • GoXLR Utility: Audio interface control and configuration
  • LACT: Linux AMDGPU Control Tool for GPU management
  • TuxClocker: GPU overclocking and monitoring tool
  • System Integration: Configurations for seamless desktop experience

πŸ“– Detailed System Documentation β†’

πŸš€ Quick Start

Prerequisites

Ensure you have GNU Stow installed:

# Arch Linux
sudo pacman -S stow

# Ubuntu/Debian
sudo apt install stow

# macOS
brew install stow

Installation

  1. Clone the repository:

    git clone https://github.com/arthur404dev/dots.git ~/.dots
    cd ~/.dots
  2. Backup existing configurations:

    # Create backup directory
    mkdir -p ~/.config-backup
    
    # Backup existing configs (optional but recommended)
    cp -r ~/.config/* ~/.config-backup/ 2>/dev/null || true
  3. Stow individual packages:

    # Install shell configurations
    stow shell
    
    # Install terminal configurations
    stow terminal
    
    # Install editor configurations
    stow editor
    
    # Install window manager configurations
    stow wm
    
    # Install tools configurations
    stow tools
    
    # Install theme configurations
    stow theme
    
     # Install media configurations
     stow media
     
     # Install AI configurations
     stow ai
     
     # Install app configurations
     stow apps
     
      # Install system configurations (requires sudo for system-level configs)
      stow system
      sudo stow system -t /  # For GRUB and SDDM configs    ```
  4. Or install everything at once:

    stow */

Selective Installation

You can install only the configurations you need:

# Just shell and editor
stow shell editor

# Just window manager setup
stow wm theme

# Everything except window manager
stow shell terminal editor tools media ai apps system

πŸš€ Usage Examples

# Install just the essentials
stow shell terminal editor

# Install everything including new packages
stow */

# Install specific workflows
stow shell terminal tools wm theme  # Development + WM setup
stow ai apps system                 # AI tools + System integration
stow media                          # Media player + Wallpapers

# AI-focused development setup
stow shell terminal editor ai tools

# Complete desktop environment
stow wm theme system apps

πŸ”§ Customization

Modifying Configurations

  1. Edit files directly in the stow directories
  2. Re-stow to apply changes:
    stow -R shell  # Restow shell configurations

Adding New Configurations

  1. Create a new directory for your application
  2. Mirror the home directory structure
  3. Add your configuration files
  4. Stow the new package

Example:

mkdir -p mynewapp/.config/mynewapp
cp ~/.config/mynewapp/config mynewapp/.config/mynewapp/
stow mynewapp

πŸ—‚οΈ Directory Structure

dots/
β”œβ”€β”€ .stowrc              # Stow configuration (ignore patterns)
β”œβ”€β”€ README.md            # This file
β”œβ”€β”€ shell/               # Shell configurations
β”‚   β”œβ”€β”€ .bashrc
β”‚   β”œβ”€β”€ .zshrc
β”‚   └── .config/
β”‚       β”œβ”€β”€ fish/
β”‚       β”œβ”€β”€ starship.toml
β”‚       └── zshrc.d/
β”œβ”€β”€ terminal/            # Terminal emulator configs
β”‚   └── .config/
β”‚       β”œβ”€β”€ kitty/
β”‚       β”œβ”€β”€ foot/
β”‚       β”œβ”€β”€ zellij/
β”‚       └── tmux/
β”œβ”€β”€ editor/              # Text editor configurations
β”‚   └── .config/
β”‚       β”œβ”€β”€ nvim/
β”‚       └── micro/
β”œβ”€β”€ wm/                  # Window manager configurations
β”‚   └── .config/
β”‚       β”œβ”€β”€ hypr/
β”‚       β”œβ”€β”€ bspwm/
β”‚       β”œβ”€β”€ waybar/
β”‚       β”œβ”€β”€ rofi/
β”‚       β”œβ”€β”€ fuzzel/
β”‚       β”œβ”€β”€ dunst/
β”‚       β”œβ”€β”€ polybar/
β”‚       β”œβ”€β”€ swaylock/
β”‚       └── wlogout/
β”œβ”€β”€ tools/               # CLI tools and utilities
β”‚   └── .config/
β”‚       β”œβ”€β”€ git/
β”‚       β”œβ”€β”€ lazygit/
β”‚       β”œβ”€β”€ ranger/
β”‚       β”œβ”€β”€ btop/
β”‚       β”œβ”€β”€ fastfetch/
β”‚       β”œβ”€β”€ cava/
β”‚       β”œβ”€β”€ lsd/
β”‚       β”œβ”€β”€ fontconfig/
β”‚       β”œβ”€β”€ matugen/
β”‚       └── redshift/
β”œβ”€β”€ theme/               # Theming configurations
β”‚   └── .config/
β”‚       β”œβ”€β”€ gtk-3.0/
β”‚       β”œβ”€β”€ gtk-4.0/
β”‚       β”œβ”€β”€ qt5ct/
β”‚       β”œβ”€β”€ qt6ct/
β”‚       β”œβ”€β”€ Kvantum/
β”‚       β”œβ”€β”€ gtkrc
β”‚       └── gtkrc-2.0
β”œβ”€β”€ media/               # Media applications and assets
β”‚   β”œβ”€β”€ .config/
β”‚   β”‚   └── mpv/
β”‚   └── Pictures/
β”‚       └── Wallpapers/
β”œβ”€β”€ ai/                  # AI tools and assistants
β”‚   β”œβ”€β”€ .config/
β”‚   β”‚   └── opencode/
β”‚   └── .claude/
β”œβ”€β”€ apps/                # Application configurations
β”‚   └── .config/
β”‚       β”œβ”€β”€ chrome-flags.conf
β”‚       β”œβ”€β”€ code-flags.conf
β”‚       └── thorium-flags.conf
└── system/              # System integration
    β”œβ”€β”€ .config/
    β”‚   β”œβ”€β”€ xdg-desktop-portal/
    β”‚   └── xdg-desktop-portal-kderc
    └── etc/
        β”œβ”€β”€ default/
        β”‚   └── grub         # GRUB boot loader configuration
        └── sddm.conf        # SDDM display manager configuration

πŸ”„ Management Commands

Useful Stow Commands

# Install/link configurations
stow package_name

# Remove/unlink configurations
stow -D package_name

# Reinstall (useful after editing)
stow -R package_name

# Simulate actions (dry run)
stow -n package_name

# Verbose output
stow -v package_name

Maintenance

# Check for broken symlinks
find ~ -xtype l -print

# Update from git
git pull origin main

# Restow everything after updates
stow -R */

🀝 Contributing

Feel free to fork this repository and adapt it to your needs. If you have improvements or suggestions, pull requests are welcome!

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • The GNU Stow maintainers for this excellent tool
  • The open-source community for the amazing applications configured here
  • Everyone who shares their dotfiles and inspires others

"The best dotfiles are the ones that make you forget they exist while making everything work perfectly."

About

Personal Dotfiles, use at your own risk

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published