feat: Rename project to 'Athenix'
This commit is contained in:
committed by
Hunter Halloran
parent
d97ece898c
commit
d205211c7d
@@ -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:**
|
||||
|
||||
Reference in New Issue
Block a user