191 lines
4.2 KiB
Nix
191 lines
4.2 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 = {
|
|
type = "github";
|
|
owner = "nix-community";
|
|
repo = "disko";
|
|
ref = "master";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
sops-nix = {
|
|
type = "github";
|
|
owner = "Mic92";
|
|
repo = "sops-nix";
|
|
ref = "master";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
systems = {
|
|
type = "github";
|
|
owner = "nix-systems";
|
|
repo = "default";
|
|
ref = "main";
|
|
};
|
|
|
|
nur = {
|
|
type = "github";
|
|
owner = "nix-community";
|
|
repo = "NUR";
|
|
ref = "main";
|
|
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
treefmt-nix.follows = "treefmt-nix";
|
|
};
|
|
};
|
|
|
|
flake-utils = {
|
|
type = "github";
|
|
owner = "numtide";
|
|
repo = "flake-utils";
|
|
ref = "main";
|
|
|
|
inputs.systems.follows = "systems";
|
|
};
|
|
|
|
treefmt-nix = {
|
|
type = "github";
|
|
owner = "numtide";
|
|
repo = "treefmt-nix";
|
|
ref = "main";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
quadlet-nix = {
|
|
type = "github";
|
|
owner = "SEIAROTg";
|
|
repo = "quadlet-nix";
|
|
ref = "main";
|
|
};
|
|
|
|
astal = {
|
|
type = "github";
|
|
owner = "aylur";
|
|
repo = "astal";
|
|
ref = "main";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
ags = {
|
|
type = "github";
|
|
owner = "aylur";
|
|
repo = "ags";
|
|
ref = "main";
|
|
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
astal.follows = "astal";
|
|
};
|
|
};
|
|
|
|
spicetify-nix = {
|
|
type = "github";
|
|
owner = "Gerg-L";
|
|
repo = "spicetify-nix";
|
|
ref = "master";
|
|
|
|
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; };
|
|
};
|
|
|
|
himalia = nixpkgs.lib.nixosSystem rec {
|
|
system = "x86_64-linux";
|
|
modules = [ ./hosts/himalia ];
|
|
specialArgs = { inherit inputs system; };
|
|
};
|
|
|
|
jupiter = nixpkgs.lib.nixosSystem rec {
|
|
system = "x86_64-linux";
|
|
modules = [ ./hosts/jupiter ];
|
|
specialArgs = { inherit inputs system; };
|
|
};
|
|
|
|
jupiter-vps = nixpkgs.lib.nixosSystem rec {
|
|
system = "x86_64-linux";
|
|
modules = [ ./hosts/jupiter-vps ];
|
|
specialArgs = { inherit inputs system; };
|
|
};
|
|
};
|
|
}
|
|
// inputs.flake-utils.lib.eachSystem [ "x86_64-linux" ] (
|
|
system:
|
|
let
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
config.allowUnfree = true;
|
|
};
|
|
|
|
treefmt = inputs.treefmt-nix.lib.evalModule pkgs ./treefmt.nix;
|
|
in
|
|
{
|
|
devShells = import ./hosts/common/shells { inherit pkgs; };
|
|
lib = import ./lib { inherit pkgs; };
|
|
packages = import ./packages { inherit pkgs inputs system; };
|
|
|
|
formatter = treefmt.config.build.wrapper;
|
|
checks.formatting = treefmt.config.build.check self;
|
|
}
|
|
);
|
|
}
|