nixos_config/flake.nix

77 lines
1.9 KiB
Nix
Raw Normal View History

2024-05-07 15:37:50 -04:00
{
description = "Whovian9369's WSL NixOS Config";
inputs = {
### Basically required
nixpkgs = {
url = "github:NixOS/nixpkgs/nixos-unstable";
};
nixos-wsl = {
url = "github:nix-community/NixOS-WSL/main";
inputs.nixpkgs.follows = "nixpkgs";
};
### My extra inputs
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
# optional, not necessary for the module
2024-05-07 22:55:55 -04:00
inputs.darwin.follows = "";
# optionally choose not to download darwin deps
# (saves some resources on Linux)
2024-05-07 15:37:50 -04:00
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
my_packages = {
url = "/home/whovian/.flakes";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-05-07 22:55:55 -04:00
xil = {
url = "github:Qyriad/Xil";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-05-07 15:37:50 -04:00
}; # inputs
2024-05-07 22:55:55 -04:00
outputs = { self, nixpkgs, nixos-wsl, agenix, home-manager, my_packages, xil, ... }:
2024-05-07 15:37:50 -04:00
{
nixosConfigurations = {
nixos-wsl = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./system/configuration.nix
nixos-wsl.nixosModules.wsl
home-manager.nixosModules.home-manager
{
home-manager = {
# users.whovian = import ./home/home.nix;
sharedModules = [
./home/home.nix
agenix.homeManagerModules.default
];
users.whovian.home.packages = [
agenix.packages.x86_64-linux.default
2024-05-07 22:55:55 -04:00
2024-05-07 15:37:50 -04:00
];
# Optionally, use home-manager.extraSpecialArgs to pass arguments to home.nix
extraSpecialArgs = {
system = "x86_64-linux";
inherit my_packages;
2024-05-07 22:55:55 -04:00
inherit xil;
2024-05-07 15:37:50 -04:00
my_pkgs = my_packages.packages.x86_64-linux;
};
};
}
];
};
};
};
}