Compare commits
3 Commits
abbcfebc97
...
5650125d7e
| Author | SHA1 | Date | |
|---|---|---|---|
| 5650125d7e | |||
| 6536213bd0 | |||
| a0ce3b810e |
41
.goosehints
41
.goosehints
@@ -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.
|
||||
|
||||
- **Packages:**
|
||||
- `packages/`: Nix package definitions.
|
||||
|
||||
- **Flake:**
|
||||
- `flake.nix` and `flake.lock`: Nix Flake configuration files for managing the Nix environment dependencies.
|
||||
|
||||
- **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.
|
||||
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.
|
||||
|
||||
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).
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
@@ -81,8 +81,14 @@ in
|
||||
# org.gradle.daemon.idletimeout=3600000
|
||||
# '';
|
||||
|
||||
".profile".text = ''
|
||||
. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
|
||||
[ -e "$HOME/.nix-profile/etc/profile.d/nix.sh" ] && . "$HOME/.nix-profile/etc/profile.d/nix.sh"
|
||||
'';
|
||||
};
|
||||
|
||||
targets.genericLinux.enable = true;
|
||||
|
||||
# Home Manager can also manage your environment variables through
|
||||
# 'home.sessionVariables'. These will be explicitly sourced when using a
|
||||
# shell provided by Home Manager. If you don't want to manage your shell
|
||||
@@ -175,11 +181,6 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
services.home-manager.autoUpgrade = {
|
||||
enable = true;
|
||||
frequency = "weekly";
|
||||
};
|
||||
|
||||
services.kdeconnect = {
|
||||
enable = true;
|
||||
indicator = true;
|
||||
|
||||
Reference in New Issue
Block a user