tuxcoder
0494fb336f
Flake lock file updates: • Updated input 'flake-utils': 'github:numtide/flake-utils/ff7b65b44d01cf9ba6a71320833626af21126384' (2023-09-12) → 'github:numtide/flake-utils/4022d587cbbfd70fe950c1e2083a02621806a725' (2023-12-04) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/5e4c2ada4fcd54b99d56d7bd62f384511a7e2593' (2023-10-11) → 'github:NixOS/nixpkgs/cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7' (2023-12-12) • Updated input 'tuxpkgs': 'git+ssh://git@git.o-g.at/nixpkg/tuxpkgs.git?ref=refs/heads/master&rev=a25f5792a256beaed2a9f944fccdea8ea7a8d44b' (2023-10-07) → 'git+ssh://git@git.o-g.at/nixpkg/tuxpkgs.git?ref=refs/heads/master&rev=b77ada84c29fc587b24b4ca838a0280272e654da' (2023-12-10)
72 lines
2.3 KiB
Nix
72 lines
2.3 KiB
Nix
{
|
|
description = "Lenticular cloud interface";
|
|
inputs = {
|
|
nixpkgs.url = "nixpkgs/nixos-23.11";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
flake-compat = { # for shell.nix
|
|
url = "github:edolstra/flake-compat";
|
|
flake = false;
|
|
};
|
|
nix-node-package = {
|
|
url = "github:mkg20001/nix-node-package";
|
|
flake = false;
|
|
};
|
|
tuxpkgs = {
|
|
url = "git+ssh://git@git.o-g.at/nixpkg/tuxpkgs.git";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.flake-utils.follows = "flake-utils";
|
|
};
|
|
};
|
|
outputs = { self, nixpkgs, nix-node-package, flake-utils, tuxpkgs, ... }:
|
|
flake-utils.lib.eachDefaultSystem (system: let
|
|
pkgs = nixpkgs.legacyPackages.${system}.extend (import ./overlay.nix);
|
|
in rec {
|
|
formatter = pkgs.nixpkgs-fmt;
|
|
devShells.default = pkgs.mkShell {packages = [
|
|
(pkgs.python3.withPackages (ps: (
|
|
pkgs.lenticular-cloud.propagatedBuildInputs ++
|
|
pkgs.lenticular-cloud.testBuildInputs
|
|
)))
|
|
];};
|
|
|
|
packages.default = pkgs.lenticular-cloud;
|
|
|
|
checks = {
|
|
package = packages.default;
|
|
devShells = devShells.default;
|
|
};
|
|
}) // {
|
|
nixosModules = {
|
|
default = import ./module.nix;
|
|
};
|
|
overlays.default = import ./overlay.nix;
|
|
nixosConfigurations.testSystem = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
self.nixosModules.default
|
|
tuxpkgs.nixosModules.ory-hydra
|
|
"${nixpkgs}/nixos/modules/virtualisation/qemu-vm.nix"
|
|
({...}:{
|
|
security.acme.acceptTerms = true;
|
|
security.acme.defaults.email = "acme@example.com";
|
|
services.lenticular-cloud = {
|
|
enable = true;
|
|
domain = "example.com";
|
|
service_domain = "account.example.com";
|
|
};
|
|
services.ory-hydra = {
|
|
enable = true;
|
|
admin_domain = "admin-hydra.local";
|
|
public_domain = "public-hydra.local";
|
|
};
|
|
networking.hosts = {
|
|
"::1" = [ "admin-hydra.local" "public-hydra.local" "account.example.com" ];
|
|
};
|
|
services.getty.autologinUser = "root";
|
|
virtualisation.qemu.options = ["-vga none"];
|
|
})
|
|
];
|
|
};
|
|
};
|
|
}
|