Restructure modules/shared and update all imports

- Delete 2024-12-rework/ folder
- Rename modules/hosts/common to modules/shared, then split into:
  - modules/shared/home/general
  - modules/shared/home/linux
  - modules/shared/nixos
- Update all import paths throughout the codebase
- Update lib/*.nix to use new paths
- Fix hardcoded /Users/${username} to use config.home.homeDirectory
- Update README and examples/flake-structure.nix
This commit is contained in:
Gene Liverman 2026-03-22 18:32:08 -04:00
parent 14fbadd9aa
commit 582f93d9ed
No known key found for this signature in database
78 changed files with 88 additions and 406 deletions

View file

@ -1,49 +1,46 @@
{
inputs = {};
outputs = inputs@{}: let
darwinHostConfig = { system, hostname, username, additionalModules, additionalSpecialArgs }:
nix-darwin.lib.darwinSystem { };
mkNixosHost = { system, hostname, username, additionalModules, additionalSpecialArgs }:
nixpkgs.lib.nixosSystem { };
linuxHomeConfig = { system, hostname, username, additionalModules, additionalSpecialArgs }:
home-manager.lib.homeManagerConfiguration { };
in {
# Darwin (macOS) hosts
darwinConfigurations = {
mightymac = darwinHostConfig {
system = "aarch64-darwin";
hostname = "mightymac";
username = "gene.liverman";
additionalModules = [];
additionalSpecialArgs = {};
};
};
# NixOS hosts
nixosConfigurations = {
rainbow-planet = mkNixosHost {
system = "x86_64-linux";
hostname = "rainbow-planet";
username = "gene";
additionalModules = [
nixos-hardware.nixosModules.dell-xps-13-9360
];
additionalSpecialArgs = {};
};
};
# Home Manager (only) users
homeConfigurations = {
gene = linuxHomeConfig {
system = "x86_64-linux";
hostname = "mini-watcher";
username = "gene";
additionalModules = [];
additionalSpecialArgs = {};
};
};
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
home-manager.url = "github:nix-community/home-manager";
nix-darwin.url = "github:lnl7/nix-darwin";
nixos-hardware.url = "github:NixOS/nixos-hardware";
};
}
outputs =
inputs@{ self, ... }:
let
# Import helper functions from lib/
localLib = import ./lib { inherit inputs; };
in
{
# Darwin (macOS) hosts
darwinConfigurations = {
mightymac = localLib.mkDarwinHost {
system = "aarch64-darwin";
hostname = "mightymac";
username = "gene.liverman";
};
};
# NixOS hosts
nixosConfigurations = {
rainbow-planet = localLib.mkNixosHost {
system = "x86_64-linux";
hostname = "rainbow-planet";
username = "gene";
additionalModules = [
inputs.nixos-hardware.nixosModules.dell-xps-13-9360
];
};
};
# Home Manager (only) users
homeConfigurations = {
gene = localLib.mkHomeConfig {
system = "x86_64-linux";
homeDirectory = "/home/gene";
username = "gene";
};
};
};
}