feat: Rename project to 'Athenix'

This commit is contained in:
UGA Innovation Factory
2025-12-18 12:07:25 -05:00
committed by Hunter Halloran
parent d97ece898c
commit d205211c7d
39 changed files with 278 additions and 277 deletions

View File

@@ -26,7 +26,7 @@ Users are defined in `users.nix` but are **not enabled by default** on all syste
### 1. Define User in users.nix
```nix
ugaif.users = {
athenix.users = {
# Option 1: Inline definition
myuser = {
description = "My Full Name";
@@ -53,20 +53,20 @@ In `inventory.nix`:
```nix
nix-laptop = {
devices = 2;
overrides.ugaif.users.myuser.enable = true; # Enables on all nix-laptop hosts
overrides.athenix.users.myuser.enable = true; # Enables on all nix-laptop hosts
};
# Or for specific devices
nix-desktop = {
devices = {
"1".ugaif.users.myuser.enable = true;
"2".ugaif.users.otheruser.enable = true;
"1".athenix.users.myuser.enable = true;
"2".athenix.users.otheruser.enable = true;
};
};
# Or use convenience option
nix-wsl = {
devices."alice".ugaif.forUser = "alice-user"; # Automatically enables user
devices."alice".athenix.forUser = "alice-user"; # Automatically enables user
};
```
@@ -153,7 +153,7 @@ dotfiles/
{
# ========== User Account Configuration ==========
# These options define the user account itself
ugaif.users.myuser = {
athenix.users.myuser = {
description = "My Full Name";
extraGroups = [ "wheel" "docker" ];
shell = pkgs.zsh;
@@ -171,7 +171,7 @@ dotfiles/
home.packages = with pkgs; [
vim
ripgrep
] ++ lib.optional (osConfig.ugaif.sw.type or null == "desktop") firefox;
] ++ lib.optional (osConfig.athenix.sw.type or null == "desktop") firefox;
programs.git = {
enable = true;
@@ -210,7 +210,7 @@ dotfiles/
The `user.nix` module serves a dual purpose and is imported in **two contexts**:
1. **NixOS Module Context (User Options)**: The module is imported as a NixOS module where `ugaif.users.<username>` options are read to define the user account (description, shell, groups, SSH keys, etc.). These options override any defaults set in `users.nix`.
1. **NixOS Module Context (User Options)**: The module is imported as a NixOS module where `athenix.users.<username>` options are read to define the user account (description, shell, groups, SSH keys, etc.). These options override any defaults set in `users.nix`.
2. **Home-Manager Context**: The same module is imported into home-manager where `home.*`, `programs.*`, and `services.*` options configure the user's environment, packages, and dotfiles.
@@ -251,7 +251,7 @@ Users must be explicitly enabled on each host in `inventory.nix`.
nix-laptop = {
devices = 5;
overrides = {
ugaif.users.student.enable = true; # All 5 laptops get this user
athenix.users.student.enable = true; # All 5 laptops get this user
};
};
```
@@ -261,30 +261,30 @@ nix-laptop = {
```nix
nix-desktop = {
devices = {
"1".ugaif.users.alice.enable = true;
"2".ugaif.users.bob.enable = true;
"1".athenix.users.alice.enable = true;
"2".athenix.users.bob.enable = true;
"3" = {
ugaif.users.alice.enable = true;
ugaif.users.bob.enable = true;
athenix.users.alice.enable = true;
athenix.users.bob.enable = true;
};
};
};
```
### Method 3: Convenience Option (ugaif.forUser)
### Method 3: Convenience Option (athenix.forUser)
Quick setup for single-user systems:
```nix
nix-wsl = {
devices = {
"alice".ugaif.forUser = "alice-user"; # Automatically enables alice-user
"bob".ugaif.forUser = "bob-user";
"alice".athenix.forUser = "alice-user"; # Automatically enables alice-user
"bob".athenix.forUser = "bob-user";
};
};
```
This is equivalent to `ugaif.users.alice-user.enable = true`.
This is equivalent to `athenix.users.alice-user.enable = true`.
## Password Management
@@ -414,7 +414,7 @@ wsl-user = {
Enable in inventory.nix:
```nix
nix-wsl = {
devices."my-wsl".ugaif.forUser = "wsl-user";
devices."my-wsl".athenix.forUser = "wsl-user";
};
```
@@ -464,7 +464,7 @@ Disable if you want to configure Neovim yourself.
**Check if enabled on host:**
```bash
nix eval .#nixosConfigurations.nix-laptop1.config.ugaif.users.myuser.enable
nix eval .#nixosConfigurations.nix-laptop1.config.athenix.users.myuser.enable
```
**Check if user exists:**