feat(core): initialize NaxOS declarative NixOS distribution, modules, and ISO installer
Test NaxOS Module Configurations / test-modules (push) Failing after 6m10s
Test NaxOS Module Configurations / test-modules (push) Failing after 6m10s
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
{
|
||||
description = "NaxOS: Declarative, Appliance-Like NixOS- & ZFS-Based Network Attached Storage";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
||||
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, nixpkgs-unstable, ... }:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
in {
|
||||
# Exported NixOS Modules for NaxOS
|
||||
nixosModules = {
|
||||
naxos = import ./modules;
|
||||
default = self.nixosModules.naxos;
|
||||
};
|
||||
|
||||
# Standard NaxOS Appliance System Configuration
|
||||
nixosConfigurations = {
|
||||
naxos = nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
modules = [
|
||||
self.nixosModules.naxos
|
||||
./profiles/nas-appliance.nix
|
||||
./profiles/hardware-generic.nix
|
||||
];
|
||||
};
|
||||
|
||||
# Bootable Installer ISO
|
||||
installer-iso = nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
modules = [
|
||||
./iso/installer-iso.nix
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
# Exported Packages & ISO Image
|
||||
packages.${system} = {
|
||||
iso = self.nixosConfigurations.installer-iso.config.system.build.isoImage;
|
||||
default = pkgs.writeShellScriptBin "naxos-help" ''
|
||||
echo "NaxOS Appliance Flake"
|
||||
echo "To build installer ISO: nix build .#iso"
|
||||
echo "To test appliance configuration: nix build .#nixosConfigurations.naxos.config.system.build.toplevel"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user