Refractor to dendritic approach.
This commit is contained in:
@@ -2,14 +2,7 @@
|
||||
description = "Aner's NIX config for his systems!";
|
||||
|
||||
inputs = {
|
||||
# self.submodules = true;
|
||||
# Nixpkgs
|
||||
#Temporarily
|
||||
# nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
|
||||
#Need unstable for opencode and agent-shell
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
|
||||
# Unused unstable
|
||||
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
|
||||
home-manager = {
|
||||
@@ -19,58 +12,41 @@
|
||||
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
|
||||
#Music production nix
|
||||
musnix = {url = "github:musnix/musnix";};
|
||||
|
||||
azos-core = {
|
||||
url = "./azos-core";
|
||||
flake = true;
|
||||
};
|
||||
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
import-tree.url = "github:vic/import-tree";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
...
|
||||
} @ inputs: let
|
||||
inherit (self) outputs;
|
||||
systems = [
|
||||
"aarch64-linux"
|
||||
"x86_64-linux"
|
||||
"aarch64-darwin"
|
||||
"x86_64-darwin"
|
||||
];
|
||||
forAllSystems = nixpkgs.lib.genAttrs systems;
|
||||
in {
|
||||
formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.alejandra);
|
||||
outputs = inputs:
|
||||
inputs.flake-parts.lib.mkFlake {inherit inputs;} {
|
||||
imports = [
|
||||
inputs.azos-core.flakeModules.default
|
||||
./overlays/default.nix
|
||||
(inputs.import-tree ./features)
|
||||
./_machines/lauretta.nix
|
||||
./_machines/vm.nix
|
||||
];
|
||||
|
||||
overlays = import ./overlays {inherit inputs;};
|
||||
azos-core.nixosModules = inputs.azos-core.nixosModules.nixosModules;
|
||||
nixosModules = import ./modules/nixos;
|
||||
azos-core.homeManagerModules = inputs.azos-core.nixosModules.homeManagerModules;
|
||||
homeManagerModules = import ./modules/home-manager;
|
||||
systems = [
|
||||
"aarch64-linux"
|
||||
"x86_64-linux"
|
||||
"aarch64-darwin"
|
||||
"x86_64-darwin"
|
||||
];
|
||||
|
||||
#Systems configured
|
||||
nixosConfigurations = {
|
||||
#Lauretta - laptop
|
||||
lauretta = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs outputs;};
|
||||
modules = [
|
||||
./nixos/configuration.nix
|
||||
];
|
||||
};
|
||||
|
||||
#Test VM
|
||||
vm = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs outputs;};
|
||||
modules = [
|
||||
./nixos/configuration-vm.nix
|
||||
];
|
||||
perSystem = {
|
||||
system,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
formatter = pkgs.alejandra;
|
||||
devShells = (import ./shells) {inherit pkgs;};
|
||||
};
|
||||
};
|
||||
|
||||
#TODO the devshells do not know of the new packages.
|
||||
devShells = forAllSystems (system: ((import ./shells) {pkgs = nixpkgs.legacyPackages.${system};}));
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user