flake/flake.nix

126 lines
3.1 KiB
Nix

{
description = "im gonna cry again ;-;";
inputs = {
systems.url = "github:nix-systems/default";
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs";
};
# nt.url = "github:emilelcb/nt";
nt.url = "/home/me/agribit/nexus/nt";
cerulean = {
# url = "github:emilelcb/Cerulean";
url = "/home/me/agribit/nexus/Cerulean";
inputs = {
systems.follows = "systems";
nixpkgs.follows = "nixpkgs";
nixpkgs-unstable.follows = "nixpkgs-unstable";
nt.follows = "nt";
};
};
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.7.0";
grub2-themes = {
url = "github:vinceliuice/grub2-themes";
inputs.nixpkgs.follows = "nixpkgs";
};
nixcord = {
url = "github:FlameFlag/nixcord";
inputs.nixpkgs.follows = "nixpkgs";
};
dobutterfliescry-net = {
url = "git+https://forge.dobutterfliescry.net/cry/site";
inputs = {
nixpkgs.follows = "nixpkgs";
nixpkgs-unstable.follows = "nixpkgs-unstable";
systems.follows = "systems";
};
};
};
nixConfig = {
extra-experimental-features = "pipe-operators";
};
outputs = {
cerulean,
home-manager,
grub2-themes,
dobutterfliescry-net,
...
}:
cerulean.mkNexus ./. (self: {
nexus = {
overlays =
import ./overlays
++ [
dobutterfliescry-net.overlays.default
];
groups = {
cryos = {
# oh frick i cried again
cryde = {};
};
server = {};
};
nodes = let
inherit
(self.nexus)
groups
;
in {
# my laptop <3 :3
lolcathost = {
system = "x86_64-linux";
groups = [groups.cryos.cryde];
extraModules = [
home-manager.nixosModules.default
grub2-themes.nixosModules.default
];
};
# i be on my puter frfr
myputer = {
system = "x86_64-linux";
groups = [groups.cryos.cryde];
extraModules = [
home-manager.nixosModules.default
grub2-themes.nixosModules.default
];
};
# courtesy of aurora <3
butterfly = {
system = "x86_64-linux";
groups = [groups.server];
deploy.ssh.host = "dobutterfliescry.net";
};
# pls dont sue me im broke
hyrule = {
system = "x86_64-linux";
groups = [groups.server];
deploy.ssh.host = "hyrule.dobutterfliescry.net";
};
# call me a statistician the way she spreads in my sheets
# matcha = {
# system = "x86_64-linux";
# groups = [groups.server];
# deploy.ssh.host = "bedroom.dobutterfliescry.net";
# };
};
};
});
}