❄️ My personnal NixOS configuration
nix-flake
nixos-configuration
linux
dotfiles
flake
nix
nix-config
nixos
nixos-flake
linux-desktop
1# ❄️ NixOS configuration :D
2
3Welcome to my NixOS configuration repository! \
4This repository contains the configuration files and scripts for setting up and managing my NixOS-based system.
5
6## 📦 Packages
7
8#### `keyznvim` or `keyznvim-lite`
9My custom nixvim config with lsp support, auto sessions, auto light/dark mode and other QOL plugins and features. It also has a lite mode, that does not install all the lsp servers.
10
11#### `adjust-brightness`
12A wrapper script for ddcutil to change brightness of a DDC/CI compatible screen (need ddcutil installed and working).
13
14### Using the packages
15- For just running it:
16```bash
17nix run git+https://tangled.org/adjoly.fr/nixos-config#<package-name>
18```
19- Installing it in your session:
20```bash
21nix profile install git+https://tangled.org/adjoly.fr/nixos-config#<package-name>
22```
23- Or install it in your config:
24```nix
25inputs = {
26 keynixos.url = "git+https://tangled.org/adjoly.fr/nixos-config"
27};
28...
29environment.systemPackages = [
30 inputs.keyznixos.packages.${pkgs.stdenv.hostPlatform.system}.<package-name>
31];
32```
33
34## 📁 Directory Structure
35- **flake.lock** and **flake.nix**: Used for managing dependencies and configurations using Nix flakes.
36- **home/**: Contains configurations for home-manager.
37- **hosts/**: Contains configurations for my differents machine.
38- **modules/**: This directory contains reusable modules for different configurations:
39 - `home-manager/`: For managing user environments with Home Manager.
40 - `nixos/`: For NixOS-specific configurations.
41 - `nixvim/`: For Nixvim configurations.
42- **pkgs/**: Custom package definitions (Nixvim config, adjust-brighness).
43
44## 📝 License
45This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.