Compare commits

..

1 commit

Author SHA1 Message Date
2d886def6c
retry
All checks were successful
/ test (push) Successful in 1m7s
2025-08-20 11:44:44 +02:00
12 changed files with 89 additions and 112 deletions

View file

@ -1,11 +1,6 @@
on: on: [push]
push:
branches:
- master
jobs: jobs:
build: test:
runs-on: nixos-latest runs-on: nixos-latest
steps: steps:
- uses: actions/checkout@v4 - run: echo All good!
- run: nix develop
- run: colmena build -v --on @fili

View file

@ -1,7 +0,0 @@
on: [push]
jobs:
lint:
runs-on: nixos-latest
steps:
- uses: actions/checkout@v4
- run: nix fmt -- --check .

View file

@ -16,6 +16,7 @@ _: {
networkmanager.enable = true; networkmanager.enable = true;
}; };
nix.settings = { nix.settings = {
# users that can interact with nix # users that can interact with nix
trusted-users = [ trusted-users = [

View file

@ -1,5 +1,4 @@
{ baseUrl, clientId }: { baseUrl, clientId }: {
{
inherit clientId; inherit clientId;
userAuthUrl = "${baseUrl}/ui/oauth2"; userAuthUrl = "${baseUrl}/ui/oauth2";

View file

@ -1,11 +1,9 @@
{ pkgs, config, ... }: {pkgs, config, ...}: let
let
lib = pkgs.lib; lib = pkgs.lib;
domain = "auth.donsz.nl"; domain = "auth.donsz.nl";
port = 3013; port = 3013;
backupsDir = "/var/lib/kanidm/backup"; backupsDir = "/var/lib/kanidm/backup";
in in {
{
services.kanidm.enableServer = true; services.kanidm.enableServer = true;
services.kanidm.package = pkgs.kanidm_1_6; services.kanidm.package = pkgs.kanidm_1_6;
services.kanidm.serverSettings = { services.kanidm.serverSettings = {
@ -28,11 +26,12 @@ in
mkdir -p "${backupsDir}" mkdir -p "${backupsDir}"
''; '';
serviceConfig = { serviceConfig = {
SupplementaryGroups = [ config.security.acme.certs.${domain}.group ]; SupplementaryGroups =
[ config.security.acme.certs.${domain}.group ];
}; };
}; };
environment.systemPackages = [ pkgs.kanidm ]; environment.systemPackages = [pkgs.kanidm];
services.nginx.virtualHosts.${domain} = { services.nginx.virtualHosts.${domain} = {
forceSSL = true; forceSSL = true;

View file

@ -1,17 +1,12 @@
{ pkgs, config, ... }: {pkgs, config, ...}: {
{
sops.secrets.oauth2-proxy = { sops.secrets.oauth2-proxy = {
sopsFile = ../../../secrets/oauth2-proxy.env; sopsFile = ../../../secrets/oauth2-proxy.env;
}; };
services.oauth2-proxy = services.oauth2-proxy =
let let
auth = import ../../lib/auth.nix { auth = import ../../lib/auth.nix { baseUrl = "https://auth.donsz.nl"; clientId = "homeserver"; };
baseUrl = "https://auth.donsz.nl"; in {
clientId = "homeserver";
};
in
{
enable = true; enable = true;
provider = "oidc"; provider = "oidc";
@ -39,7 +34,7 @@
}; };
extraConfig = { extraConfig = {
whitelist-domain = [ "*.donsz.nl" ]; whitelist-domain = ["*.donsz.nl"];
}; };
nginx.domain = "oauth2.donsz.nl"; nginx.domain = "oauth2.donsz.nl";

View file

@ -1,9 +1,4 @@
{ { lib, pkgs, config, ... }:
lib,
pkgs,
config,
...
}:
let let
cfg = config.services.forgejo; cfg = config.services.forgejo;
srv = cfg.settings.server; srv = cfg.settings.server;
@ -11,7 +6,7 @@ in
{ {
sops.secrets.forgejo = { sops.secrets.forgejo = {
sopsFile = ../../secrets/forgejo.yaml; sopsFile = ../../secrets/forgejo.yaml;
key = "email_password"; key="email_password";
format = "yaml"; format = "yaml";
}; };
@ -38,7 +33,7 @@ in
lfs.enable = true; lfs.enable = true;
user = "forgejo"; user = "forgejo";
group = "forgejo"; group = "forgejo";
repositoryRoot = "/storage/storage/git"; repositoryRoot="/storage/storage/git";
database = { database = {
type = "postgres"; type = "postgres";
@ -48,8 +43,8 @@ in
settings = { settings = {
DEFAULT = { DEFAULT = {
APP_NAME = "jana's git server"; APP_NAME="jana's git server";
APP_SLOGAN = "meow!"; APP_SLOGAN="meow!";
}; };
server = { server = {
DOMAIN = "git.donsz.nl"; DOMAIN = "git.donsz.nl";
@ -67,7 +62,7 @@ in
DEFAULT_ACTIONS_URL = "github"; DEFAULT_ACTIONS_URL = "github";
}; };
repository = { repository = {
DEFAULT_PRIVATE = "private"; DEFAULT_PRIVATE="private";
}; };
mailer = { mailer = {
ENABLED = true; ENABLED = true;
@ -90,7 +85,7 @@ in
labels = [ labels = [
"nixos-latest:docker://nixos/nix" "nixos-latest:docker://nixos/nix"
]; ];
settings = { }; settings = {};
}; };
}; };

View file

@ -1,5 +1,4 @@
{ pkgs, config, ... }: {pkgs, config, ...}: {
{
services.nginx = { services.nginx = {
enable = true; enable = true;
statusPage = true; statusPage = true;

View file

@ -1,5 +1,4 @@
{ flakes, pkgs, ... }: {flakes, pkgs, ...}: {
{
services.nginx = { services.nginx = {
virtualHosts."donsz.nl" = { virtualHosts."donsz.nl" = {
forceSSL = true; forceSSL = true;

View file

@ -1,5 +1,4 @@
{ flakes, ... }: {flakes,...}: {
{
# imports = [ # imports = [
# flakes.mapf.nixosModules.default # flakes.mapf.nixosModules.default
# ]; # ];

View file

@ -1,6 +1,8 @@
{ flakes, pkgs, ... }: { flakes, pkgs,... }:
let let
totpal = flakes.totpal.packages.${pkgs.system}.default; totpal =
flakes.totpal.packages.${pkgs.system}.default
;
in in
{ {
services.nginx = { services.nginx = {
@ -15,7 +17,8 @@ in
}; };
}; };
systemd.services.totpal = { systemd.services.totpal =
{
description = "totpal"; description = "totpal";
serviceConfig = { serviceConfig = {
Type = "simple"; Type = "simple";