[//]: # (This file is autogenerated)

# Nixy

**Nixy** is a **Hyprland** NixOS configuration with **home-manager**, **secrets**, and **custom theming** all in one place. It's a simple way to manage your system configuration and dotfiles. I'm Hadi, a french developer, student in infosec, enthusiastic about nix, golang & blockchains. This is my own, **keyboard-centric**, and **minimalistic** NixOS configuration. I enable vim-like keybindings everywhere I can, and I use a lot of custom scripts to make my life easier. **Nixy key points:** - Hypr-ecosystem first (hyprland, hyprlock, hyprpanel, hypridle, ...) - Stylix/base16 themes - Vim-like keybindings everywhere (hyprland, qutebrowser, nvim, ...) ## Table of Content - [Table of Content](#table-of-content) - [Gallery](#gallery) - [Architecture](#architecture) - [🏠 home](#-home) - [🐧 nixos](#-nixos) - [🎨 themes](#-themes) - [💻 hosts](#-hosts) - [Installation](#installation) - [Documentation](#documentation) ## Gallery ![nixy1](docs/src/nixy/1.png) ![nixy2](docs/src/nixy/2.png) ![nixy3](docs/src/nixy/3.png) ## Architecture ### 🏠 home Those are the dotfiles and configuration files for user-level configuration **Subfolders:** - `programs` is a collection of apps configured with home-manager - `scripts` is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md)) - `system` is some "desktop environment" configuration ### 🐧 nixos Those are the system-level configurations. (audio, bluetooth, gpu, bootloader, ...) ### 🎨 themes Those are the themes used in the system configuration. Those themes are based on [stylix](https://github.com/danth/stylix). ### 💻 hosts Those are the host-specific configurations. Each host contains a `configuration.nix` for system-level configuration, a `home.nix` for user-level configuration, and a `variables.nix` for config wide variables. ## Installation 1. Clone the repo ```sh git clone https://github.com/anotherhadi/nixy ~/.config/nixos ``` 2. Copy the `hosts/laptop` folder, rename it to your system name, and change the variables inside the `variables.nix` file 3. Add your `hardware-configuration.nix` to your new host's folder 4. Add your 'nixosConfigurations' inside `flake.nix` > [!Important] > I added few `# CHANGEME` comments in the files to help you find what to change. Be sure to check them up. > You can use `rg "CHANGEME"` to find them all with ripgrep. > [!TIP] > When you add new files, don't forget to run `git add .` to add them to the git repository 5. Build the system ```sh sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname ``` ## Documentation - [THEMES](docs/THEMES.md): How themes work and how to create your own - [SCRIPTS](docs/SCRIPTS.md): Scripts that are available - [KEYBINDINGS-HYPRLAND](docs/KEYBINDINGS-HYPRLAND.md): Keybindings available in Hyprland - [WALLPAPERS](https://github.com/anotherhadi/nixy-wallpapers): A collection of wallpapers for Nixy. - [TODO](docs/TODO.md): What's next (feel free to contribute) - [CONTRIBUTING](docs/CONTRIBUTING.md): How to contribute - [LICENSE](LICENSE): MIT License