diff --git a/nixos/modules/services/web-apps/eintopf.nix b/nixos/modules/services/web-apps/eintopf.nix index c814e58f6aca..d9bf612042a0 100644 --- a/nixos/modules/services/web-apps/eintopf.nix +++ b/nixos/modules/services/web-apps/eintopf.nix @@ -15,14 +15,14 @@ in { options.services.eintopf = { - enable = mkEnableOption "Eintopf community event calendar web app"; + enable = mkEnableOption "Lauti (Eintopf) community event calendar web app"; settings = mkOption { type = types.attrsOf types.str; default = { }; description = '' Settings to configure web service. See - + for available options. ''; example = literalExpression '' @@ -54,7 +54,7 @@ in wants = [ "network-online.target" ]; environment = cfg.settings; serviceConfig = { - ExecStart = "${pkgs.eintopf}/bin/eintopf"; + ExecStart = lib.getExe pkgs.lauti; WorkingDirectory = "/var/lib/eintopf"; StateDirectory = "eintopf"; EnvironmentFile = [ cfg.secrets ]; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index ce22a46e600c..06213b9ce7c6 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -421,7 +421,7 @@ in ecryptfs = handleTest ./ecryptfs.nix { }; fscrypt = handleTest ./fscrypt.nix { }; fastnetmon-advanced = runTest ./fastnetmon-advanced.nix; - eintopf = handleTest ./eintopf.nix { }; + eintopf = runTest ./eintopf.nix; ejabberd = handleTest ./xmpp/ejabberd.nix { }; elk = handleTestOn [ "x86_64-linux" ] ./elk.nix { }; emacs-daemon = runTest ./emacs-daemon.nix; diff --git a/nixos/tests/eintopf.nix b/nixos/tests/eintopf.nix index 6e3992677da2..11e1158456f1 100644 --- a/nixos/tests/eintopf.nix +++ b/nixos/tests/eintopf.nix @@ -1,26 +1,24 @@ -import ./make-test-python.nix ( - { pkgs, ... }: - { - name = "eintopf"; - meta = with pkgs.lib.maintainers; { - maintainers = [ onny ]; - }; +{ + lib, + pkgs, + ... +}: - nodes = { - eintopf = - { config, pkgs, ... }: - { - services.eintopf = { - enable = true; - }; - }; - }; +{ + name = "eintopf"; + meta.maintainers = with lib.maintainers; [ onny ]; - testScript = '' - eintopf.start - eintopf.wait_for_unit("eintopf.service") - eintopf.wait_for_open_port(3333) - eintopf.succeed("curl -sSfL http://eintopf:3333 | grep 'Es sind keine Veranstaltungen eingetragen'") - ''; - } -) + nodes = { + eintopf = { + services.eintopf.enable = true; + }; + }; + + testScript = '' + eintopf.start + eintopf.wait_for_unit("eintopf.service") + eintopf.wait_for_open_port(3333) + eintopf.succeed("curl -sSfL http://eintopf:3333 | grep 'No events available'") + ''; + +} diff --git a/pkgs/by-name/ei/eintopf/frontend.nix b/pkgs/by-name/la/lauti/frontend.nix similarity index 71% rename from pkgs/by-name/ei/eintopf/frontend.nix rename to pkgs/by-name/la/lauti/frontend.nix index 08108d97081a..1e0cf2851692 100644 --- a/pkgs/by-name/ei/eintopf/frontend.nix +++ b/pkgs/by-name/la/lauti/frontend.nix @@ -4,20 +4,18 @@ src, version, nodejs, - eintopf, + lauti, yarnConfigHook, yarnBuildHook, }: stdenv.mkDerivation (finalAttrs: { - pname = "eintopf"; + pname = "lauti"; inherit version src; - sourceRoot = "${finalAttrs.src.name}/backstage"; - offlineCache = fetchYarnDeps { - yarnLock = "${finalAttrs.src}/backstage/yarn.lock"; - hash = "sha256-3TPBrQxvTfmBfhAavHy8eDcZwRZMwu0dCovnE1fcuTE="; + yarnLock = "${finalAttrs.src}/yarn.lock"; + hash = "sha256-uIDBE4ewdzrtJqOjFQTAei1TpAjQMRqls7CtG1h8KnA="; }; nativeBuildInputs = [ @@ -27,6 +25,10 @@ stdenv.mkDerivation (finalAttrs: { nodejs ]; + preBuild = '' + cd backstage + ''; + installPhase = '' runHook preInstall @@ -39,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: { ''; meta = { - inherit (eintopf.meta) + inherit (lauti.meta) homepage description license diff --git a/pkgs/by-name/ei/eintopf/package.nix b/pkgs/by-name/la/lauti/package.nix similarity index 62% rename from pkgs/by-name/ei/eintopf/package.nix rename to pkgs/by-name/la/lauti/package.nix index 778741640a30..f53397b39b8a 100644 --- a/pkgs/by-name/ei/eintopf/package.nix +++ b/pkgs/by-name/la/lauti/package.nix @@ -7,22 +7,22 @@ }: let - version = "0.14.3"; + version = "1.0.0"; src = fetchFromGitea { domain = "codeberg.org"; owner = "Klasse-Methode"; - repo = "eintopf"; - rev = "v${version}"; - hash = "sha256-cWHWRxZFoArBB5PiuY6EQubKJKm3/79fwNhnABOtBrM="; + repo = "lauti"; + tag = "v${version}"; + hash = "sha256-cO9rK7GAVRlv5x4WI/xbXNJ594QqB+KIPUteB3TifKM="; }; frontend = callPackage ./frontend.nix { inherit src version; }; in buildGoModule rec { - pname = "eintopf"; + pname = "lauti"; inherit version src; - vendorHash = "sha256-ysAgyaewREI8TaMnKH+kh33QT6AN1eLhog35lv7CbVU="; + vendorHash = "sha256-ushTvIpvRLZP3q6tLN6BA4tl2Xp/UImWugm2ZgTAm8k="; ldflags = [ "-s" @@ -37,19 +37,20 @@ buildGoModule rec { preCheck = '' # Disable test, requires running Docker daemon - rm cmd/eintopf/main_test.go + rm cmd/lauti/main_test.go rm service/email/email_test.go ''; passthru.tests = { - inherit (nixosTests) eintopf; + inherit (nixosTests) lauti; }; meta = { - description = "A calendar for Stuttgart, showing events, groups and places"; - homepage = "https://codeberg.org/Klasse-Methode/eintopf"; + description = "An open source calendar for events, groups and places"; + homepage = "https://lauti.org"; license = lib.licenses.agpl3Only; maintainers = with lib.maintainers; [ onny ]; platforms = lib.platforms.unix; + mainProgram = "lauti"; }; } diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 2b912f4e9b87..5e6ee7707b97 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -556,6 +556,7 @@ mapAliases { ecryptfs-helper = throw "'ecryptfs-helper' has been removed, for filesystem-level encryption, use fscrypt"; # Added 2025-04-08 edUnstable = throw "edUnstable was removed; use ed instead"; # Added 2024-07-01 edgedb = throw "edgedb replaced to gel because of change of upstream"; # Added 2025-02-24 + eintopf = lauti; # Project was renamed, added 2025-05-01 elasticsearch7Plugins = elasticsearchPlugins; electronplayer = throw "'electronplayer' has been removed as it had been discontinued upstream since October 2024"; # Added 2024-12-17