nixos-config/flake.nix
2025-07-26 23:35:29 +02:00

127 lines
3.4 KiB
Nix

{
description = "liv's NixOS configuration";
inputs = {
agenix.url = "github:ryantm/agenix";
alejandra.url = "github:kamadorueda/alejandra/3.0.0";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
inputs.nixpkgs.follows = "nixpkgs";
};
hypr-contrib.url = "github:hyprwm/contrib";
hyprpicker.url = "github:hyprwm/hyprpicker";
hyprsunset.url = "github:hyprwm/hyprsunset";
Hyprspace = {
url = "github:KZDKM/Hyprspace";
inputs.hyprland.follows = "hyprland"; # Hyprspace uses latest Hyprland. We declare this to keep them in sync.
};
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nur.url = "github:nix-community/NUR";
nixos-hardware.url = "github:nixos/nixos-hardware";
nixvim.url = "github:ahwxorg/nixvim-config";
};
outputs =
{
self,
nixpkgs,
agenix,
...
}@inputs:
let
overlays = import ./overlays/default.nix;
username = "liv";
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
};
lib = nixpkgs.lib;
in
{
overlays.default = overlays.addition;
nixosConfigurations = {
sakura = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/sakura)
agenix.nixosModules.default
];
specialArgs = {
host = "sakura";
inherit self inputs username;
};
};
yoshino = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/yoshino)
agenix.nixosModules.default
];
specialArgs = {
host = "yoshino";
inherit self inputs username;
};
};
ichiyo = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/ichiyo)
agenix.nixosModules.default
];
specialArgs = {
host = "ichiyo";
inherit self inputs username;
};
};
violet = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/violet)
agenix.nixosModules.default
];
specialArgs = {
host = "violet";
inherit self inputs username;
};
};
dandelion = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/dandelion)
agenix.nixosModules.default
];
specialArgs = {
host = "dandelion";
inherit self inputs username;
};
};
lily = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/lily)
agenix.nixosModules.default
];
specialArgs = {
host = "lily";
inherit self inputs username;
};
};
zinnia = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
(import ./hosts/zinnia)
agenix.nixosModules.default
];
specialArgs = {
host = "zinnia";
inherit self inputs username;
};
};
};
};
}