nix/flake.nix
2025-01-03 16:14:31 +11:00

142 lines
3.2 KiB
Nix

{
description = "nixos config";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
helix.url = "github:helix-editor/helix";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-index-database.url = "github:Mic92/nix-index-database";
nix-rice.url = "github:bertof/nix-rice";
# nixd.url = "github:nix-community/nixd";
nil.url = "github:oxalica/nil";
madness.url = "github:antithesishq/madness";
nh.url = "github:viperML/nh";
lix = {
url = "https://git.lix.systems/lix-project/lix/archive/main.tar.gz";
flake = false;
};
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
inputs.lix.follows = "lix";
};
meat = {
url = "git+https://git.atagen.co/atagen/meat";
inputs.lix.follows = "lix";
inputs.lix-module.follows = "lix-module";
inputs.nh.follows = "nh";
inputs.nixpkgs.follows = "nixpkgs";
};
culr = {
url = "git+https://git.atagen.co/atagen/culr";
inputs.nixpkgs.follows = "nixpkgs";
};
comfyui = {
url = "path:./flakes/comfyui";
inputs.nixpkgs.follows = "nixpkgs";
};
comfyui-plugins = {
url = "path:./flakes/comfyui-plugins";
inputs.nixpkgs.follows = "nixpkgs";
};
murex = {
url = "github:lmorg/murex/develop";
flake = false;
};
murex-jump = {
url = "path:./flakes/murex-module-jump";
inputs.nixpkgs.follows = "nixpkgs";
};
murex-starship = {
url = "path:./flakes/murex-module-starship";
inputs.nixpkgs.follows = "nixpkgs";
};
niri = {
url = "github:sodiboo/niri-flake";
};
ironbar.url = "github:JakeStanger/ironbar";
sirula = {
url = "github:DorianRudolph/sirula";
flake = false;
};
# hjem = {
# url = "github:feel-co/hjem";
# inputs.nixpkgs.follows = "nixpkgs";
# };
# nixago = {
# url = "github:jmgilman/nixago";
# inputs.nixpkgs.follows = "nixpkgs";
# };
# wrapper-manager = {
# url = "github:viperML/wrapper-manager";
# inputs.nixpkgs.follows = "nixpkgs";
# };
};
outputs = {
self,
nixpkgs,
home-manager,
nix-index-database,
madness,
meat,
culr,
niri,
...
} @ inputs: let
inherit (self) outputs;
create = import ./util/create.nix {
inherit nixpkgs home-manager inputs outputs;
system = "x86_64-linux";
sharedModules = [
culr.nixosModules.culr
meat.nixosModules.meat
madness.nixosModules.madness
niri.nixosModules.niri
nix-index-database.nixosModules.nix-index
./system/cachix.nix
];
};
in {
overlays = import ./util/overlay.nix {
inherit inputs;
inherit (nixpkgs) lib;
};
nixosConfigurations = create.systems {
quiver.user = "bolt";
adrift.user = "plank";
};
};
}