ALPHA: wire is a tool to deploy nixos systems wire.althaea.zone/
at rollback-hacking 48 lines 1.3 kB view raw
1# SPDX-License-Identifier: AGPL-3.0-or-later 2# Copyright 2024-2025 wire Contributors 3 4{ 5 inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; 6 7 outputs = 8 { nixpkgs, self, ... }@inputs: 9 let 10 makeHive = import ./makeHive.nix; 11 in 12 { 13 wire = makeHive { 14 inherit (self) nixosConfigurations; 15 meta.nixpkgs = import nixpkgs { localSystem = "x86_64-linux"; }; 16 17 node-a = { }; 18 node-b = { 19 nixpkgs.hostPlatform = "x86_64-linux"; 20 }; 21 }; 22 23 nixosConfigurations = { 24 # non-hive nixosConfiguration 25 # will fail to evaluate if this node is ever included 26 # in the hive because this system does not specify 27 # hostPlatform 28 system-c = nixpkgs.lib.nixosSystem { 29 system = "x86_64-linux"; 30 specialArgs = { inherit inputs; }; 31 modules = [ ]; 32 }; 33 34 # hive nixosConfiguration 35 # its verified that these are merged because hostPlatform 36 # must be specified, and its not specified in the hive 37 node-a = nixpkgs.lib.nixosSystem { 38 system = "x86_64-linux"; 39 specialArgs = { inherit inputs; }; 40 modules = [ 41 { 42 nixpkgs.hostPlatform = "x86_64-linux"; 43 } 44 ]; 45 }; 46 }; 47 }; 48}