Files
nur/flake.nix
T
wymiller b79299847a mod: added nix-minecraft
re-exported for others to use
2026-10-26 13:16:13 -04:00

96 lines
2.6 KiB
Nix

{
description = "Miller Nix User Repository";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
darwin.url = "github:LnL7/nix-darwin";
darwin.inputs.nixpkgs.follows = "nixpkgs";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
go-overlay = {
url = "github:purpleclay/go-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-minecraft = {
url = "github:Infinidoge/nix-minecraft";
inputs.nixpkgs.follows = "nixpkgs";
};
hildibrand.url = "git+https://scm.wyattjmiller.com/wymiller/hildibrand.git";
hildibrand.inputs.nixpkgs.follows = "nixpkgs";
caitsith.url = "git+https://scm.wyattjmiller.com/wymiller/caitsith.git";
caitsith.inputs.nixpkgs.follows = "nixpkgs";
};
outputs =
inputs@{
self,
nixpkgs,
home-manager,
darwin,
rust-overlay,
go-overlay,
...
}:
let
supportedSystems = [
"x86_64-linux"
"aarch64-linux"
"aarch64-darwin"
];
forAllSystems = f: nixpkgs.lib.genAttrs supportedSystems f;
in
{
packages = forAllSystems (
system:
let
pkgs = import nixpkgs {
inherit system;
overlays = [ self.overlays.default ];
};
in
inputs.nix-minecraft.packages.${system}
// (import ./pkgs {
inherit pkgs;
# packages that are already built with Nix go here
hildibrand = inputs.hildibrand.packages.${system}.default;
caitsith = inputs.caitsith.packages.${system}.default;
})
);
legacyPackages = forAllSystems (system: inputs.nix-minecraft.legacyPackages.${system});
devShells = forAllSystems (
system:
let
pkgs = import nixpkgs { inherit system; };
in
{
default = pkgs.mkShell {
packages = with pkgs; [
nixfmt-rfc-style
];
};
}
);
overlays.minecraft = inputs.nix-minecraft.overlays.default;
overlays.default = nixpkgs.lib.composeManyExtensions [
rust-overlay.overlays.default
go-overlay.overlays.default
self.overlays.minecraft
(import ./overlays)
];
homeManagerModules = import ./modules/home-manager self;
nixosModules = inputs.nix-minecraft.nixosModules // {
default = import ./modules/nixos;
};
darwinModules.default = import ./modules/darwin;
};
}