feat: simplified themes module

This commit is contained in:
Nick 2025-01-18 03:50:54 -06:00
parent b0fdd1d958
commit a5ec879db0
119 changed files with 2045 additions and 4624 deletions

113
flake.nix
View file

@ -4,8 +4,7 @@
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
lix-module = {
url =
"https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz";
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
flake-parts = {
@ -16,7 +15,9 @@
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
ghostty = { url = "github:ghostty-org/ghostty"; };
ghostty = {
url = "github:ghostty-org/ghostty";
};
nixos-cosmic.url = "github:lilyinstarlight/nixos-cosmic";
edgedb = {
url = "github:edgedb/packages-nix";
@ -66,13 +67,18 @@
url = "github:direnv/direnv";
inputs.nixpkgs.follows = "nixpkgs";
};
zed = {
zed-editor = {
url = "github:zed-industries/zed";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:danth/stylix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs:
outputs =
inputs:
inputs.flake-parts.lib.mkFlake { inherit inputs; } {
imports = [
inputs.pre-commit-hooks-nix.flakeModule
@ -83,56 +89,59 @@
./config
];
flake = { config, ... }: {
nixosConfigurations = {
desktop = inputs.self.lib.mkLinuxSystem [
./systems/desktop
./profiles/user0
./profiles/user1
config.nixosModules.personal
config.nixosModules.desktop
config.nixosModules.hyprland
config.nixosModules.shared
inputs.home-manager.nixosModules.home-manager
inputs.lix-module.nixosModules.default
inputs.nur.modules.nixos.default
inputs.sops-nix.nixosModules.sops
inputs.nixos-cosmic.nixosModules.default
];
laptop = inputs.self.lib.mkLinuxSystem [
./systems/laptop
./profiles/user0
./profiles/user1
config.nixosModules.personal
config.nixosModules.shared
inputs.home-manager.nixosModules.home-manager
inputs.lix-module.nixosModules.default
inputs.nur.modules.nixos.default
inputs.sops-nix.nixosModules.sops
];
server = inputs.self.lib.mkLinuxSystem [
./systems/server
./profiles/user0
config.nixosModules.server
config.nixosModules.shared
inputs.home-manager.nixosModules.home-manager
inputs.lix-module.nixosModules.default
inputs.ngipkgs.nixosModules."services.peertube"
inputs.ngipkgs.nixosModules.default
inputs.sops-nix.nixosModules.sops
];
};
templates = {
elm = {
path = ./templates/elm;
description = "Elm Environment";
flake =
{ config, ... }:
{
nixosConfigurations = {
desktop = inputs.self.lib.mkLinuxSystem [
./systems/desktop
./profiles/user0
./profiles/user1
config.nixosModules.personal
config.nixosModules.desktop
config.nixosModules.hyprland
config.nixosModules.shared
inputs.home-manager.nixosModules.home-manager
inputs.lix-module.nixosModules.default
inputs.nur.modules.nixos.default
inputs.sops-nix.nixosModules.sops
inputs.nixos-cosmic.nixosModules.default
inputs.stylix.nixosModules.stylix
];
laptop = inputs.self.lib.mkLinuxSystem [
./systems/laptop
./profiles/user0
./profiles/user1
config.nixosModules.personal
config.nixosModules.shared
inputs.home-manager.nixosModules.home-manager
inputs.lix-module.nixosModules.default
inputs.nur.modules.nixos.default
inputs.sops-nix.nixosModules.sops
];
server = inputs.self.lib.mkLinuxSystem [
./systems/server
./profiles/user0
config.nixosModules.server
config.nixosModules.shared
inputs.home-manager.nixosModules.home-manager
inputs.lix-module.nixosModules.default
inputs.ngipkgs.nixosModules."services.peertube"
inputs.ngipkgs.nixosModules.default
inputs.sops-nix.nixosModules.sops
];
};
haskell = {
path = ./templates/haskell;
description = "Haskell Environment";
templates = {
elm = {
path = ./templates/elm;
description = "Elm Environment";
};
haskell = {
path = ./templates/haskell;
description = "Haskell Environment";
};
};
};
};
systems = import inputs.systems;
};