Restore original flake.nix with nixosModules.Sovran_SystemsOS export

Restores the complete original flake.nix that includes:
- nixosModules.Sovran_SystemsOS (required by deployed machines)
- overlay-stable for accessing pkgs.stable packages
- nixosConfigurations.nixos for direct builds
- nixosConfigurations.sovran_systemsos-iso for ISO builds
- nixosTests and checks
This commit is contained in:
Sovran Systems
2026-08-10 11:12:21 -05:00
parent 2c6ef7b60e
commit 7b04adbbe6
+64 -28
View File
@@ -1,32 +1,68 @@
{ {
description = "Sovran Systems OS - A secure, self-hosted server OS"; description = "The Ultimate Sovran_SystemsOS Configuration from Sovran Systems";
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-26.05"; nixvim.url = "github:nix-community/nixvim";
nixvim.url = "github:nix-community/nixvim"; btc-clients.url = "github:emmanuelrosa/btc-clients-nix";
btc-clients.url = "github:emmanuelrosa/btc-clients-nix"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-26.05";
}; };
outputs = { self, nixpkgs, nixpkgs-stable, nixvim, btc-clients }: outputs = { self, nixpkgs, nixvim, btc-clients, nixpkgs-stable, ... }:
let
system = "x86_64-linux"; let
pkgs = nixpkgs.legacyPackages.${system}; overlay-stable = final: prev: {
pkgs-stable = import nixpkgs-stable { stable = import nixpkgs-stable {
inherit system; system = prev.stdenv.hostPlatform.system;
config.allowUnfree = true; config.allowUnfree = true;
}; };
in };
{ in
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { {
inherit system; nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
specialArgs = { inherit pkgs-stable; }; modules = [
modules = [ { nixpkgs.hostPlatform = "x86_64-linux"; nixpkgs.overlays = [ overlay-stable ]; }
./configuration.nix self.nixosModules.Sovran_SystemsOS
./modules ./hardware-configuration.nix
btc-clients.nixosModules.bitcoin ./role-state.nix
nixvim.nixosModules.nixvim ./custom.nix
]; ];
}; };
};
nixosConfigurations.sovran_systemsos-iso = nixpkgs.lib.nixosSystem {
modules = [
{ nixpkgs.hostPlatform = "x86_64-linux"; nixpkgs.overlays = [ overlay-stable ]; }
./iso/common.nix
./modules/bitcoin
nixvim.nixosModules.nixvim
];
};
nixosModules.Sovran_SystemsOS = { pkgs, lib, config, ... }: {
imports = [
({ config, pkgs, ... }: {
nixpkgs.overlays = [ overlay-stable ];
})
./configuration.nix
./modules/bitcoin
nixvim.nixosModules.nixvim
];
config = {
environment.systemPackages = with pkgs; [
btc-clients.packages.${pkgs.system}.bisq
btc-clients.packages.${pkgs.system}.bisq2
btc-clients.packages.${pkgs.system}.sparrow
];
};
};
nixosTests.nwc-wallets-port-collision =
import ./nix/tests/nwc-wallets-port-collision.nix {
inherit nixpkgs;
system = "x86_64-linux";
};
checks.x86_64-linux.nwc-wallets-port-collision =
self.nixosTests.nwc-wallets-port-collision;
};
} }