Skip to content

Chere3/dots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌟 NixOS Dotfiles

NixOS Logo

A modern, reproducible, and elegant NixOS configuration using Home Manager and Flakes.

NixOS Home Manager Flakes

✨ Features

  • 🎨 Clean and modern desktop environment
  • 🔧 Fully reproducible system configuration
  • 🏠 Home Manager for user environment management
  • ❄️ Nix Flakes for declarative and reproducible builds
  • 🚀 Easy installation process
  • 🎯 Optimized for daily use

🛠️ Technologies

System

  • OS: NixOS (Linux)
  • Window Manager: Hyprland
  • Shell: Fish
  • Terminal: Foot
  • Package Manager: Nix with Flakes
  • Configuration Manager: Home Manager

Desktop Environment

  • Status Bar: Eww
  • Application Launcher: Fuzzel
  • Notifications: Mako
  • File Manager: Thunar
  • Screenshot Tool: Grimblast
  • Color Picker: Hyprpicker
  • Clipboard Manager: Cliphist
  • Audio Control: PavuControl
  • Media Controls: Playerctl

Development

  • Editor: Neovim, Cursor, Helix
  • Version Control: Git
  • Build System: Nix Build

Utilities

  • Cloud Storage: OneDrive, Rsync
  • Network Management: Network Manager
  • System Monitoring: Built-in Nix tools

📥 Quick Installation

  1. Boot into NixOS live environment

  2. Set up internet connection:

    # List available network interfaces
    ip link show
    
    # Connect to WiFi (replace values in <>)
    wpa_supplicant -B -i <interface> -c <(wpa_passphrase "<wifi_name>" "<wifi_password>")
    
    # Verify connection
    ping -c 3 google.com
  3. Set up your partitions and mount them:

    # Mount your root partition
    mount /dev/your-root-partition /mnt
    
    # For UEFI systems
    mkdir -p /mnt/boot/efi
    mount /dev/your-efi-partition /mnt/boot/efi
  4. Get the configuration:

    # Install git temporarily
    nix-shell -p git
    
    # Clone the repository
    cd /mnt/etc/nixos
    git clone https://github.com/chere3/dots.git . --recurse-submodules
  5. Generate and update hardware configuration:

    nixos-generate-config --root /mnt
    # Replace the hardware configuration with the generated one
    cp /mnt/etc/nixos/hardware-configuration.nix /mnt/etc/nixos/nixos/hosts/<hostname>/
  6. Install NixOS:

    nixos-install --flake /mnt/etc/nixos#<hostname>
  7. After reboot, set up home configuration:

    git clone https://github.com/chere3/dots.git ~/.dots --recurse-submodules
    doas nh home switch -R

🔧 Post-Installation

Additional Setup Steps

Troubleshooting Network Issues

If you lose connection during installation:

  1. Use ip link show to identify your network interface
  2. For WiFi, use:
    wpa_supplicant -B -i <interface> -c <(wpa_passphrase "<wifi_name>" "<wifi_password>")
  3. For ethernet, usually no configuration is needed
  4. Verify with:
    ping -c 3 google.com

📸 Screenshots

View Screenshots

Desktop Screenshot

🎨 Customization

The configuration is organized into several key components:

  • nixos/ - System configuration
  • home/ - User environment configuration
  • flake.nix - Main configuration entry point

📝 Notes

  • Make sure to replace <hostname> with your actual hostname
  • Backup your data before installation
  • Check hardware compatibility with NixOS

🤝 Contributing

Contributions are welcome! Feel free to submit issues and pull requests.

📜 License

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


Made with ❤️ using NixOS