Add .goosehints

This commit is contained in:
2025-03-05 13:25:08 -08:00
parent 6536213bd0
commit 5650125d7e

View File

@@ -1,21 +1,22 @@
This repository contains NixOS configurations for different machines and roles. Here's a brief overview based on the files present:
NixOS Configurations Repository
================================
- **Secrets:**
- `secrets/secrets.yaml`: Contains secret configurations, possibly encrypted or sensitive data.
Overview:
---------
This repository hosts modular and reproducible NixOS configurations managed via Nix flakes. It is structured to separate concerns across machine-specific setups, common roles, and custom packages.
- **Packages:**
- `packages/`: Nix package definitions.
Directory Structure:
----------------------
• secrets/ - Confidential data (passwords, keys, etc.) required for system configuration.
• packages/ - Custom Nix packages leveraged across various configurations.
• roles/ - Role-based configurations (e.g., kodi, bluetooth) each with its own module (default.nix) for inclusion in machine setups.
• machines/ - Machine-specific configurations (e.g., nix-book, z790prors, boxy, wixos) including configuration.nix and hardware-configuration.nix tailored for each hardware.
• home/ - Home-manager configurations for personal environments and application settings (e.g., home-nix-book.nix, home-z790prors.nix).
- **Flake:**
- `flake.nix` and `flake.lock`: Nix Flake configuration files for managing the Nix environment dependencies.
Design Principles:
------------------
• Modularity: Clear separation between roles, machines, and packages allows for flexible and reusable configurations.
• Declarative & Reproducible: Using Nix flakes guarantees a fully declarative setup that can be effortlessly reproduced across systems.
• Scalability: The structure is designed to accommodate adding new roles or machines with minimal disruption to existing configurations.
- **Roles:**
- Various directories like `roles/kodi/`, `roles/bluetooth/`, etc., each containing `default.nix` files which possibly define role-specific configurations and modules.
- **Machines:**
- `machines/`: Machine-specific configurations for different machines like `nix-book`, `z790prors`, `boxy`, and `wixos`.
- Each machine has `configuration.nix` and `hardware-configuration.nix`, detailing the machine's system and hardware configuration.
- **Home:**
- `home/`: Pertains to user-specific configurations with different modules and home environment setups. Contains files like `home-nix-book.nix`, `home-z790prors.nix`, etc.
- Includes specific modules for software like Emacs, tmux, i3+sway, etc.
This file serves as a concise guide for navigating and understanding the repository from an advanced Nix perspective. Further documentation can be found within the respective directories or individual README files where applicable.