147 lines
4.1 KiB
Nix
147 lines
4.1 KiB
Nix
{
|
|
description = "imnyang's Nix Configuration";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
|
nixpkgs-2511.url = "github:NixOS/nixpkgs/nixos-25.11";
|
|
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
|
|
|
|
catppuccin.url = "github:catppuccin/nix";
|
|
|
|
nix-flatpak.url = "github:gmodena/nix-flatpak/";
|
|
|
|
plasma-manager = {
|
|
url = "github:nix-community/plasma-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.home-manager.follows = "home-manager";
|
|
};
|
|
|
|
darwin = {
|
|
url = "github:nix-darwin/nix-darwin";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
nix-homebrew.url = "github:zhaofengli/nix-homebrew";
|
|
|
|
sops-nix = {
|
|
url = "github:Mic92/sops-nix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
nixcord.url = "github:FlameFlag/nixcord";
|
|
# nixcord.url = "path:/home/imnyang/workspaces/git/imnyang/nixcord";
|
|
|
|
vscode-nigo = {
|
|
url = "git+https://git.pari.ng/imnyang/vscode-nigo.git?ref=main";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
notion-desktop = {
|
|
url = "github:heytcass/notion-mac-flake";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
notion-calendar-electron.url = "github:czlabinger/notion-calendar-electron";
|
|
|
|
millennium.url = "github:SteamClientHomebrew/Millennium?dir=packages/nix";
|
|
|
|
vicinae.url = "github:vicinaehq/vicinae";
|
|
|
|
vicinae-extensions = {
|
|
url = "github:vicinaehq/extensions";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
|
|
|
|
codex-app = {
|
|
url = "github:ilysenko/codex-desktop-linux";
|
|
};
|
|
|
|
quadlet-nix.url = "github:SEIAROTg/quadlet-nix";
|
|
|
|
rustfs = {
|
|
url = "github:rustfs/rustfs-flake";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
imnyang.url = "git+https://git.mizuki.guru/imnyang/nix-packages.git";
|
|
|
|
paring.url = "git+https://git.pari.ng/paring/nix-packages.git";
|
|
|
|
mizuki-nc.url = "git+https://git.mizuki.guru/imnyang/mizuki.guru.git?rev=70b1c9a2befc933c63f2b3197655b4f1166f9fbb";
|
|
|
|
muvel.url = "github:imnyang/muvel-nix";
|
|
};
|
|
|
|
outputs =
|
|
inputs@{
|
|
imnyang,
|
|
paring,
|
|
...
|
|
}:
|
|
let
|
|
# Overlays
|
|
overlays = [
|
|
paring.overlays.default
|
|
imnyang.overlays.default
|
|
inputs.millennium.overlays.default
|
|
(import ./overlays/spotx.nix)
|
|
(final: prev: {
|
|
vulkan-validation-layers = prev.vulkan-validation-layers.overrideAttrs (old: {
|
|
cmakeFlags = (old.cmakeFlags or [ ]) ++ [
|
|
# Fixed upstream; keep this until the locked nixpkgs includes it.
|
|
"-DUPDATE_DEPS=OFF"
|
|
];
|
|
});
|
|
|
|
pythonPackagesExtensions = (prev.pythonPackagesExtensions or [ ]) ++ [
|
|
(python-final: python-prev: {
|
|
uefi-firmware-parser = python-prev.uefi-firmware-parser.overridePythonAttrs (old: {
|
|
build-system = (old.build-system or [ ]) ++ [
|
|
python-final.setuptools-scm
|
|
];
|
|
});
|
|
})
|
|
];
|
|
})
|
|
(import ./overlays/hoffice)
|
|
];
|
|
|
|
mkHost =
|
|
hostPath: overlays:
|
|
import hostPath {
|
|
inherit inputs overlays;
|
|
};
|
|
in
|
|
{
|
|
nixosConfigurations = {
|
|
# Machine
|
|
mafuyu = mkHost ./hosts/machine/mafuyu overlays;
|
|
mizuki = mkHost ./hosts/machine/mizuki overlays;
|
|
ena = mkHost ./hosts/machine/ena overlays;
|
|
ribbon = mkHost ./hosts/machine/ribbon [
|
|
paring.overlays.default
|
|
imnyang.overlays.default
|
|
];
|
|
installer = mkHost ./hosts/installer overlays;
|
|
|
|
# Server
|
|
hikari = mkHost ./hosts/server/hikari/default overlays;
|
|
hako = mkHost ./hosts/server/hikari/hako overlays;
|
|
natsu = mkHost ./hosts/server/natsu overlays;
|
|
kazusa = mkHost ./hosts/server/kazusa overlays;
|
|
};
|
|
|
|
darwinConfigurations = {
|
|
# Machine
|
|
kanade = mkHost ./hosts/machine/kanade overlays;
|
|
};
|
|
};
|
|
}
|