nixos-dotfiles/flake.nix

66 lines
1.5 KiB
Nix
Executable File

{
description = "NixOS configuration";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11";
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/release-22.11";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
agenix.url = "github:ryantm/agenix";
};
outputs = inputs@{ nixpkgs, unstable, home-manager, agenix, ... }:
let
system = "x86_64-linux";
in
{
nixosConfigurations =
let
# Inject unstable for inputs for modules
defaults = { pkgs, ... }: {
_module.args.unstable = import inputs.unstable {
inherit (pkgs.stdenv.targetPlatform) system;
config.allowUnfree = true;
};
};
in {
smallinux = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
defaults
home-manager.nixosModules.home-manager
agenix.nixosModule
{
networking.hostName = "smallinux";
}
./common.nix
./hosts/smallinux.nix
];
};
xps15 = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
defaults
home-manager.nixosModules.home-manager
agenix.nixosModule
{
networking.hostName = "xps15";
}
./common.nix
./hosts/xps15.nix
];
};
};
};
}