Files
nix/flake.nix
Nikolaos Karaolidis 54ec0d98cb Update
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
2025-02-11 15:49:10 +00:00

139 lines
3.3 KiB
Nix

{
inputs = {
nixpkgs = {
# --- Official
# type = "github";
# owner = "NixOS";
# repo = "nixpkgs";
# ref = "master";
# --- Fork
type = "github";
owner = "karaolidis";
repo = "nixpkgs";
ref = "integration";
# --- Local
# url = "git+file:./submodules/nixpkgs";
};
home-manager = {
# --- Official
# type = "github";
# owner = "nix-community"
# repo = "home-manager";
# --- Fork
type = "github";
owner = "karaolidis";
repo = "home-manager";
ref = "integration";
# --- Local
# url = "git+file:./submodules/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
systems = {
type = "github";
owner = "nix-systems";
repo = "default";
ref = "main";
};
nur = {
url = "github:nix-community/NUR";
inputs.nixpkgs.follows = "nixpkgs";
};
flake-utils = {
url = "github:numtide/flake-utils";
inputs.systems.follows = "systems";
};
astal = {
url = "github:aylur/astal";
inputs.nixpkgs.follows = "nixpkgs";
};
ags = {
url = "github:aylur/ags";
inputs = {
nixpkgs.follows = "nixpkgs";
astal.follows = "astal";
};
};
spicetify-nix = {
# --- Official
# type = "github";
# owner = "Gerg-L";
# repo = "spicetify-nix";
# ref = "master";
# --- Fork
type = "github";
owner = "karaolidis";
repo = "spicetify-nix";
ref = "integration";
# --- Local
# url = "git+file:./submodules/spicetify-nix";
inputs = {
nixpkgs.follows = "nixpkgs";
systems.follows = "systems";
};
};
};
outputs =
{ self, nixpkgs, ... }@inputs:
{
nixosConfigurations = {
installer = nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux";
modules = [ ./hosts/installer ];
specialArgs = { inherit inputs system; };
};
eirene = nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux";
modules = [ ./hosts/eirene ];
specialArgs = { inherit inputs system; };
};
elara = nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux";
modules = [ ./hosts/elara ];
specialArgs = { inherit inputs system; };
};
};
}
// inputs.flake-utils.lib.eachDefaultSystem (
system:
let
pkgs = nixpkgs.legacyPackages.${system};
in
{
devShells = {
bun = import ./hosts/common/shells/bun { inherit pkgs; };
c = import ./hosts/common/shells/c { inherit pkgs; };
go = import ./hosts/common/shells/go { inherit pkgs; };
java = import ./hosts/common/shells/java { inherit pkgs; };
nix = import ./hosts/common/shells/nix { inherit pkgs; };
nodejs = import ./hosts/common/shells/nodejs { inherit pkgs; };
python = import ./hosts/common/shells/python { inherit pkgs; };
};
formatter = pkgs.nixfmt-rfc-style;
}
);
}