flake/flake.nix
2025-01-13 15:40:24 +00:00

75 lines
2 KiB
Nix

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
stylix.url = "github:danth/stylix";
nix-minecraft.url = "git+https://codeberg.org/nix-astral/nix-minecraft.git";
nix-alien.url = "github:thiagokokada/nix-alien";
};
outputs = inputs@{ nixpkgs, home-manager, stylix, ... }:
let
system = "x86_64-linux";
pkgs = import inputs.nixpkgs { inherit system; };
utils = import ./utils.nix { inherit inputs system; };
in {
nixosConfigurations = {
# desktop
muon = utils.mkHost ./hosts/muon/configuration.nix;
# laptop
muop = utils.mkHost ./hosts/muop/configuration.nix;
# vps
muho = utils.mkHost ./hosts/muho/configuration.nix;
# vps
mups = utils.mkHost ./hosts/mups/configuration.nix;
# vm
muvm = utils.mkHost ./hosts/muvm/configuration.nix;
};
homeManagerModules.default = ./modules/home;
colmena = {
meta = {
nixpkgs = import inputs.nixpkgs { inherit system; };
specialArgs = { inherit nixpkgs inputs system; };
};
# Remote host name
"mups" = { name, nodes, ... }: {
deployment.targetHost = "muon.host"; # SSH IP
deployment.targetUser = "root"; # SSH username
# modules
imports = [
./hosts/mups/configuration.nix
./modules/nixos
inputs.home-manager.nixosModules.default
inputs.stylix.nixosModules.stylix
];
};
# "muho" = { name, nodes, ... }: {
# deployment.targetHost = "muho"; # SSH IP
# deployment.targetUser = "muon"; # SSH username
# # modules
# imports = [
# ./hosts/muho/configuration.nix
# ./modules/nixos
# inputs.home-manager.nixosModules.default
# inputs.stylix.nixosModules.stylix
# ];
# };
};
};
}