bonfire/flake.nix

133 lines
3.2 KiB
Nix
Raw Normal View History

2023-06-06 23:18:09 +05:00
{
description = "Derivation lit";
2023-06-06 23:18:09 +05:00
nixConfig = {
extra-substituters = ["https://bonfire.cachix.org"];
extra-trusted-public-keys = ["bonfire.cachix.org-1:mzAGBy/Crdf8NhKail5ciK7ZrGRbPJJobW6TwFb7WYM="];
};
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-mailserver = {
url = "gitlab:simple-nixos-mailserver/nixos-mailserver";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
crane = {
url = "github:ipetkov/crane";
inputs.nixpkgs.follows = "nixpkgs";
};
fenix = {
url = "github:nix-community/fenix";
inputs.nixpkgs.follows = "nixpkgs";
inputs.rust-analyzer-src.follows = "";
};
catppuccin = {
url = "github:catppuccin/nix";
2023-12-20 13:55:15 +05:00
};
oscuro = {
url = "github:L-Nafaryus/oscuro";
};
obs-image-reaction = {
url = "github:L-Nafaryus/obs-image-reaction";
};
nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-07-12 15:30:50 +05:00
ags = {
url = "github:Aylur/ags";
inputs.nixpkgs.follows = "nixpkgs";
};
};
2023-12-20 13:55:15 +05:00
outputs = {
self,
nixpkgs,
home-manager,
nixos-mailserver,
sops-nix,
crane,
fenix,
catppuccin,
oscuro,
...
} @ inputs: let
lib = import ./lib {inherit (nixpkgs) lib;};
in {
inherit lib;
nixosConfigurations = {
astora = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
home-manager.nixosModules.home-manager
./nixosConfigurations/astora
self.nixosModules.bonfire
self.nixosModules.spoofdpi
(import ./nixosModules {
lib = nixpkgs.lib;
self = self;
})
.configModule
];
specialArgs = {inherit self inputs;};
};
catarina = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
nixos-mailserver.nixosModules.mailserver
sops-nix.nixosModules.sops
oscuro.nixosModules.oscuro
./nixosConfigurations/catarina
self.nixosModules.bonfire
self.nixosModules.spoofdpi
self.nixosModules.papermc
self.nixosModules.qbittorrent-nox
(import ./nixosModules {
lib = nixpkgs.lib;
self = self;
})
.configModule
];
specialArgs = {inherit self;};
};
2023-06-06 23:18:09 +05:00
};
nixosModules =
lib.importNamedModules
(import ./nixosModules {
lib = nixpkgs.lib;
self = self;
})
.modules;
2024-01-06 18:08:40 +05:00
templates = {
rust = {
path = ./templates/rust;
description = "Basic Rust template";
};
};
2023-06-06 23:18:09 +05:00
packages = import ./packages {inherit self inputs;};
2023-12-15 16:08:32 +05:00
apps = import ./apps {inherit self nixpkgs;};
2023-12-19 11:52:26 +05:00
devShells = import ./devShells {inherit self nixpkgs;};
2023-12-19 11:52:26 +05:00
configurations = import ./configurations {inherit self inputs;};
2023-12-19 12:36:54 +05:00
hydraJobs = {
inherit (self) packages;
2023-06-06 23:18:09 +05:00
};
};
2023-06-06 23:18:09 +05:00
}