Files
nur/flake.nix
T

95 lines
2.6 KiB
Nix
Raw Normal View History

2026-05-21 08:41:07 -04:00
{
description = "Miller Nix User Repository";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05";
2026-05-21 08:41:07 -04:00
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
2026-05-21 08:41:07 -04:00
darwin.url = "github:LnL7/nix-darwin";
darwin.inputs.nixpkgs.follows = "nixpkgs";
2026-08-09 14:46:33 -04:00
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
go-overlay = {
url = "github:purpleclay/go-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
2026-10-26 13:16:13 -04:00
nix-minecraft = {
url = "github:Infinidoge/nix-minecraft";
inputs.nixpkgs.follows = "nixpkgs";
};
2026-05-21 08:41:07 -04:00
2026-08-09 15:38:24 -04:00
hildibrand.url = "git+https://scm.wyattjmiller.com/wymiller/hildibrand.git";
hildibrand.inputs.nixpkgs.follows = "nixpkgs";
2026-08-11 14:27:08 -04:00
caitsith.url = "git+https://scm.wyattjmiller.com/wymiller/caitsith.git";
caitsith.inputs.nixpkgs.follows = "nixpkgs";
2026-05-21 08:41:07 -04:00
};
2026-10-26 13:16:13 -04:00
outputs =
inputs@{
self,
nixpkgs,
home-manager,
darwin,
rust-overlay,
go-overlay,
...
}:
2026-05-21 08:41:07 -04:00
let
2026-08-26 14:04:12 -04:00
supportedSystems = [
2026-05-21 08:41:07 -04:00
"x86_64-linux"
"aarch64-linux"
"aarch64-darwin"
];
2026-08-26 14:04:12 -04:00
forAllSystems = f: nixpkgs.lib.genAttrs supportedSystems f;
2026-05-21 08:41:07 -04:00
in
{
2026-08-09 14:46:33 -04:00
packages = forAllSystems (
system:
2026-05-21 08:41:07 -04:00
let
pkgs = import nixpkgs {
inherit system;
overlays = [ self.overlays.default ];
};
in
2026-10-26 13:16:13 -04:00
inputs.nix-minecraft.packages.${system}
// (import ./pkgs {
2026-08-09 15:38:24 -04:00
inherit pkgs;
# packages that are already built with Nix go here
hildibrand = inputs.hildibrand.packages.${system}.default;
2026-08-11 14:27:08 -04:00
caitsith = inputs.caitsith.packages.${system}.default;
2026-10-26 13:16:13 -04:00
})
2026-05-21 08:41:07 -04:00
);
2026-10-26 13:16:13 -04:00
legacyPackages = forAllSystems (system: inputs.nix-minecraft.legacyPackages.${system});
2026-08-09 14:46:33 -04:00
devShells = forAllSystems (
system:
let
pkgs = import nixpkgs { inherit system; };
in
2026-05-21 08:41:07 -04:00
{
default = pkgs.mkShell {
2026-08-09 14:46:33 -04:00
packages = with pkgs; [
nixfmt-rfc-style
2026-05-21 08:41:07 -04:00
];
};
}
);
2026-10-26 13:16:13 -04:00
overlays.minecraft = inputs.nix-minecraft.overlays.default;
2026-08-09 14:46:33 -04:00
overlays.default = nixpkgs.lib.composeManyExtensions [
rust-overlay.overlays.default
go-overlay.overlays.default
2026-10-26 13:16:13 -04:00
self.overlays.minecraft
2026-08-09 14:46:33 -04:00
(import ./overlays)
];
2026-05-31 13:37:48 -04:00
homeManagerModules = import ./modules/home-manager self;
2026-10-26 13:16:13 -04:00
nixosModules = inputs.nix-minecraft.nixosModules // {
default = import ./modules/nixos;
};
2026-05-21 08:41:07 -04:00
darwinModules.default = import ./modules/darwin;
};
}