update documentation

Former-commit-id: 9c7ca1adcb
This commit is contained in:
Hadi
2025-03-21 21:01:38 +01:00
parent aac1a100d8
commit 968c7a922e
4 changed files with 33 additions and 26 deletions

View File

@@ -23,18 +23,14 @@
</div> </div>
<br> <br>
**Nixy** is a **Hyprland** NixOS configuration with **home-manager**, **secrets**, and **custom theming** all in one place. **Nixy simplifies and unifies** the Hyprland ecosystem with a modular, easily customizable setup. It provides a structured way to manage your system configuration and dotfiles with minimal effort.
It's a simple way to manage your system configuration and dotfiles. It includes *home-manager*, *secrets*, and *custom theming* all in one place.
I'm Hadi, a french developer, student in infosec, enthusiastic about nix, golang & blockchains. **Features:**
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:** - 💻 Hyprland-centric: Preconfigured Hyprland ecosystem (Hyprlock, Hyprpanel, etc.)
- 🎨 Consistent Theming: Base16 & Stylix-powered themes
- Hypr-ecosystem first (hyprland, hyprlock, hyprpanel, hypridle, ...) - ⌨️ Vim-like Everywhere: Unified keybindings (Hyprland, nvim, vimium, etc.)
- Stylix/base16 themes
- Vim-like keybindings everywhere (hyprland, qutebrowser, nvim, ...)
## Table of Content ## Table of Content
@@ -49,9 +45,9 @@ I enable vim-like keybindings everywhere I can, and I use a lot of custom script
## Architecture ## Architecture
### 🏠 home ### 🏠 home (User-level configuration)
Those are the dotfiles and configuration files for user-level configuration Contains dotfiles and settings that apply to your user environment.
**Subfolders:** **Subfolders:**
@@ -65,13 +61,18 @@ Those are the system-level configurations. (audio, bluetooth, gpu, bootloader, .
### 🎨 themes ### 🎨 themes
Those are the themes used in the system configuration. The `stylix` folder contains the [stylix](https://github.com/danth/stylix) defined themes, the `var` folder contains the variables not handled by stylix. This folder contains all system themes.
See avaiable themes in [THEMES.md](docs/THEMES.md) Check out the available themes and learn how to create your own in [THEMES.md](docs/THEMES.md)
### 💻 hosts ### 💻 hosts
Those are the host-specific configurations. This directory contains 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. Each host includes:
- `configuration.nix` for system-wide settings
- `home.nix` for user-level configuration
- `variables.nix` for global variables
- `secrets/` for sensitive data
## Installation ## Installation
@@ -81,13 +82,17 @@ Each host contains a `configuration.nix` for system-level configuration, a `home
git clone https://github.com/anotherhadi/nixy ~/.config/nixos 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 2. Copy the `hosts/laptop` folder, rename it to match your systems hostname, and update `variables.nix` with your machines settings.
3. Add your `hardware-configuration.nix` to your new host's folder 3. Copy your `hardware-configuration.nix` into your new host's folder to ensure proper hardware support.
4. Add your 'nixosConfigurations' inside `flake.nix` 4. Register your new host in `flake.nix` by adding it under nixosConfigurations.
> [!Important] > [!Important]
> I added few `# CHANGEME` comments in the files to help you find what to change. Be sure to check them up. > `# CHANGEME` comments are placed throughout the config to indicate necessary modifications.
> You can use `rg "CHANGEME"` to find them all with ripgrep. > Use the following command to quickly locate them:
>
> ```sh
> rg "CHANGEME" ~/.config/nixos
> ```
> [!TIP] > [!TIP]
> When you add new files, don't forget to run `git add .` to add them to the git repository > When you add new files, don't forget to run `git add .` to add them to the git repository
@@ -100,8 +105,9 @@ sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname
## Documentation ## Documentation
- [SERVER](docs/SERVER.md): Check out the server documentation
- [THEMES](docs/THEMES.md): How themes work and how to create your own - [THEMES](docs/THEMES.md): How themes work and how to create your own
- [SCRIPTS](docs/SCRIPTS.md): Scripts that are available - [SCRIPTS](docs/SCRIPTS.md): A list of available scripts and their usage
- [KEYBINDINGS-HYPRLAND](docs/KEYBINDINGS-HYPRLAND.md): Keybindings available in Hyprland - [KEYBINDINGS-HYPRLAND](docs/KEYBINDINGS-HYPRLAND.md): Keybindings available in Hyprland
- [WALLPAPERS](https://github.com/anotherhadi/nixy-wallpapers): A collection of wallpapers for Nixy. - [WALLPAPERS](https://github.com/anotherhadi/nixy-wallpapers): A collection of wallpapers for Nixy.

View File

@@ -10,7 +10,7 @@ The process is straight-forward.
- Create a Pull Request against the main branch of Nixy. - Create a Pull Request against the main branch of Nixy.
> [!TIP] > [!TIP]
> To update the README, change the `./docs/src/README_template.md` and run `./docs/scripts/create_readme.sh` > To update the README, change the `./.github/assets/README_template.md`
> [!IMPORTANT] > [!IMPORTANT]
> Don't push your host's folder > Don't push your host's folder

3
docs/SERVER.md Normal file
View File

@@ -0,0 +1,3 @@
# SERVER
---

View File

@@ -1,9 +1,7 @@
# Themes # Themes
## NOT UPDATED
Themes are defined in `themes`. Those themes define the colors, fonts, icons, etc, used by Hyprland and the apps/programs installed. Themes are defined in `themes`. Those themes define the colors, fonts, icons, etc, used by Hyprland and the apps/programs installed.
You can change the selected theme by changing the import statement of your host's configuration.nix file. You can change the selected theme by changing the import statement of your host's variables.nix file.
> [!TIP] > [!TIP]
> To apply the theme to DuckDuckGo, follow the instructions in `$HOME/.duckduckgo-colorscheme.js` > To apply the theme to DuckDuckGo, follow the instructions in `$HOME/.duckduckgo-colorscheme.js`