nixos-config/flake.nix
2024-12-07 14:04:15 -05:00

71 lines
1.9 KiB
Nix

# flake.nix
{
description = "My Home Manager configuration";
inputs = {
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
home-manager = {
url = "github:nix-community/home-manager/release-24.11";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-flatpak.url = "github:gmodena/nix-flatpak"; # unstable branch. Use github:gmodena/nix-flatpak/?ref=<tag> to pin releases.
kmonad = {
url = "git+https://github.com/kmonad/kmonad?submodules=1&dir=nix";
inputs.nixpkgs.follows = "nixpkgs";
};
musnix = {
url = "github:musnix/musnix";
inputs.nixpkgs.follows = "nixpkgs";
};
audio = {
url = "github:polygon/audio.nix";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-ld.url = "github:Mic92/nix-ld";
nix-ld.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = {nixpkgs, nixpkgs-unstable, home-manager, audio, nix-flatpak, kmonad, musnix, nix-ld, self, ... } @ inputs: {
# packages = nixpkgs.legacyPackages.x86_64-linux;
nixosConfigurations = {
eddie = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; }; # Pass flake inputs to our config
modules = [
nix-flatpak.nixosModules.nix-flatpak
kmonad.nixosModules.default
musnix.nixosModules.musnix
nix-ld.nixosModules.nix-ld
./system/eddie/configuration.nix
];
};
};
homeConfigurations = {
"emenel" = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
extraSpecialArgs = {
inherit inputs;
pkgs-unstable = nixpkgs-unstable.legacyPackages.x86_64-linux;
};
modules = [
nix-flatpak.homeManagerModules.nix-flatpak
./home/home.nix
];
};
};
};
}