fruitbasket/flake.nix

82 lines
2.8 KiB
Nix
Raw Normal View History

2022-03-04 16:40:11 +01:00
{
2022-09-06 17:16:31 +02:00
inputs = {
2023-05-25 22:58:14 +02:00
nixpkgs.url = github:nixos/nixpkgs/nixos-23.05;
2022-03-04 16:40:11 +01:00
sops-nix.url = github:Mic92/sops-nix;
sops-nix.inputs.nixpkgs.follows = "nixpkgs";
2023-07-04 15:56:50 +02:00
kpp.url = "github:fsr/kpp";
kpp.inputs.nixpkgs.follows = "nixpkgs";
2023-05-25 22:58:14 +02:00
# fsr-infoscreen.url = github:fsr/infoscreen; # some anonymous strukturer accidentally removed the flake.nix
2023-06-08 13:34:45 +02:00
course-management = {
url = "github:fsr/course-management";
inputs.nixpkgs.follows = "nixpkgs";
};
2022-03-04 16:40:11 +01:00
};
2023-06-08 13:34:45 +02:00
outputs = { self, nixpkgs, sops-nix, kpp, course-management, ... }@inputs:
2023-05-25 22:58:14 +02:00
{
2022-11-11 16:39:48 +01:00
packages."x86_64-linux".quitte = self.nixosConfigurations.quitte-vm.config.system.build.vm;
2022-11-11 16:37:17 +01:00
packages."x86_64-linux".default = self.packages."x86_64-linux".quitte;
2023-02-15 15:16:29 +01:00
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
2022-04-19 16:39:09 +02:00
2022-09-06 17:16:31 +02:00
nixosConfigurations = {
quitte = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
inputs.sops-nix.nixosModules.sops
2023-07-04 15:56:50 +02:00
inputs.kpp.nixosModules.default
2023-06-08 13:34:45 +02:00
course-management.nixosModules.default
2022-09-06 17:16:31 +02:00
./hosts/quitte/configuration.nix
2022-12-17 19:12:41 +01:00
./modules/options.nix
2022-09-06 17:16:31 +02:00
./modules/base.nix
./modules/sops.nix
2023-07-04 15:56:50 +02:00
./modules/kpp.nix
2023-07-04 15:10:00 +02:00
./modules/ldap
2022-12-17 19:12:41 +01:00
# ./modules/keycloak.nix replaced by portunus
2022-12-17 19:46:25 +01:00
./modules/mail.nix
2023-04-04 14:27:43 +02:00
./modules/mailman.nix
2022-09-06 17:16:31 +02:00
./modules/nginx.nix
2023-06-30 13:57:21 +02:00
./modules/userdir.nix
2022-11-18 19:08:43 +01:00
./modules/hedgedoc.nix
2022-09-06 17:16:31 +02:00
./modules/wiki.nix
2023-04-03 22:48:14 +02:00
./modules/ftp.nix
2022-09-28 08:06:27 +02:00
./modules/stream.nix
2022-11-18 17:00:20 +01:00
./modules/nextcloud.nix
2022-12-17 19:11:37 +01:00
./modules/matrix.nix
2023-05-04 16:42:59 +02:00
./modules/mautrix-telegram.nix
2023-04-03 23:14:12 +02:00
./modules/sogo.nix
2023-07-04 14:20:55 +02:00
./modules/vaultwarden.nix
2023-07-19 15:01:47 +02:00
./modules/zsh.nix
2023-06-08 13:34:45 +02:00
./modules/course-management.nix
2022-09-06 17:16:31 +02:00
{
2022-12-17 19:12:41 +01:00
fsr.enable_office_bloat = false;
fsr.domain = "staging.ifsr.de";
2022-11-11 16:37:17 +01:00
sops.defaultSopsFile = ./secrets/quitte.yaml;
}
];
};
quitte-vm = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
inputs.sops-nix.nixosModules.sops
2022-11-11 16:39:48 +01:00
./hosts/quitte/configuration.nix
2022-12-17 19:12:41 +01:00
./modules/options.nix
2022-11-11 16:37:17 +01:00
./modules/base.nix
2023-07-04 15:10:00 +02:00
./modules/ldap
2022-11-11 16:37:17 +01:00
./modules/nginx.nix
2023-04-04 00:04:04 +02:00
./modules/mail.nix
./modules/mailman.nix
2022-11-18 19:08:43 +01:00
./modules/hedgedoc.nix
2022-11-11 16:37:17 +01:00
./modules/wiki.nix
./modules/stream.nix
2023-04-03 23:14:12 +02:00
./modules/sogo.nix
2022-11-11 16:37:17 +01:00
./modules/vm.nix
"${nixpkgs}/nixos/modules/virtualisation/qemu-vm.nix"
{
_module.args.buildVM = true;
2022-11-11 16:39:48 +01:00
sops.defaultSopsFile = ./secrets/test.yaml;
2022-09-06 17:16:31 +02:00
}
];
};
2022-08-16 14:20:36 +02:00
};
2022-03-04 16:40:11 +01:00
};
}