nixfiles/flake.nix
2024-03-03 06:34:26 +03:00

87 lines
2.1 KiB
Nix
Executable file

{
description = "koi nixos";
nixConfig = {
experimental-features = [ "nix-command" "flakes" ];
extra-substituters = [
"https://nix-community.cachix.org"
];
extra-trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
};
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
vscode-server.url = "github:nix-community/nixos-vscode-server";
nil = {
url = "github:oxalica/nil";
inputs.nixpkgs.follows = "nixpkgs";
};
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
inputs.darwin.follows = "";
};
bootspec-secureboot = {
url = "github:vikanezrimaya/bootspec-secureboot";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-darwin.url = "github:LnL7/nix-darwin";
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
};
outputs =
inputs@{ self
, nixpkgs
, vscode-server
, agenix
, bootspec-secureboot
, home-manager
, nix-darwin
, ...
}:
let
specialArgs = {
inherit inputs;
abs = path: ./. + ("/" + path);
};
in
{
nixosConfigurations = {
koi = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
agenix.nixosModules.default
bootspec-secureboot.nixosModules.bootspec-secureboot
home-manager.nixosModules.home-manager
{ home-manager.extraSpecialArgs = specialArgs; }
./hosts/koi/configuration.nix
];
inherit specialArgs;
};
};
darwinConfigurations = {
teidesu-osx = nix-darwin.lib.darwinSystem {
modules = [
agenix.darwinModules.default
home-manager.darwinModules.home-manager
{ home-manager.extraSpecialArgs = specialArgs; }
./hosts/teidesu-osx/configuration.nix
];
inherit specialArgs;
};
};
};
}