{,nixos/}pocket-id: make pocket-id-backend subpackage the main package

This commit is contained in:
Gutyina Gergő 2025-05-27 16:25:46 +02:00
parent ab1ce1ea5b
commit cf7ece2830
No known key found for this signature in database
3 changed files with 14 additions and 32 deletions

View file

@ -134,8 +134,8 @@ in
]; ];
systemd.services = { systemd.services = {
pocket-id-backend = { pocket-id = {
description = "Pocket ID backend"; description = "Pocket ID";
after = [ "network.target" ]; after = [ "network.target" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
restartTriggers = [ restartTriggers = [
@ -149,7 +149,7 @@ in
User = cfg.user; User = cfg.user;
Group = cfg.group; Group = cfg.group;
WorkingDirectory = cfg.dataDir; WorkingDirectory = cfg.dataDir;
ExecStart = "${cfg.package}/bin/pocket-id-backend"; ExecStart = "${cfg.package}/bin/pocket-id";
Restart = "always"; Restart = "always";
EnvironmentFile = [ EnvironmentFile = [
cfg.environmentFile cfg.environmentFile

View file

@ -27,7 +27,7 @@
inherit (builtins) toString; inherit (builtins) toString;
in in
'' ''
machine.wait_for_unit("pocket-id-backend.service") machine.wait_for_unit("pocket-id.service")
machine.wait_for_open_port(${toString settings.PORT}) machine.wait_for_open_port(${toString settings.PORT})
backend_status = machine.succeed("curl -L -o /tmp/backend-output -w '%{http_code}' http://localhost:${toString settings.PORT}/api/users/me") backend_status = machine.succeed("curl -L -o /tmp/backend-output -w '%{http_code}' http://localhost:${toString settings.PORT}/api/users/me")

View file

@ -3,12 +3,11 @@
fetchFromGitHub, fetchFromGitHub,
buildGoModule, buildGoModule,
buildNpmPackage, buildNpmPackage,
stdenvNoCC,
nixosTests, nixosTests,
nix-update-script, nix-update-script,
}: }:
stdenvNoCC.mkDerivation (finalAttrs: { buildGoModule (finalAttrs: {
pname = "pocket-id"; pname = "pocket-id";
version = "1.0.0"; version = "1.0.0";
@ -19,10 +18,6 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-cHPG4KZgfLuEDzLJ9dV4PRUlqWjd7Ji3480lrFwK6Ds="; hash = "sha256-cHPG4KZgfLuEDzLJ9dV4PRUlqWjd7Ji3480lrFwK6Ds=";
}; };
backend = buildGoModule {
pname = "pocket-id-backend";
inherit (finalAttrs) version src;
sourceRoot = "${finalAttrs.src.name}/backend"; sourceRoot = "${finalAttrs.src.name}/backend";
vendorHash = "sha256-82kdx9ihJgqMCiUjZTONGa1nCZoxKltw8mpF0KoOdT8="; vendorHash = "sha256-82kdx9ihJgqMCiUjZTONGa1nCZoxKltw8mpF0KoOdT8=";
@ -32,9 +27,8 @@ stdenvNoCC.mkDerivation (finalAttrs: {
''; '';
preFixup = '' preFixup = ''
mv $out/bin/cmd $out/bin/pocket-id-backend mv $out/bin/cmd $out/bin/pocket-id
''; '';
};
frontend = buildNpmPackage { frontend = buildNpmPackage {
pname = "pocket-id-frontend"; pname = "pocket-id-frontend";
@ -57,25 +51,12 @@ stdenvNoCC.mkDerivation (finalAttrs: {
''; '';
}; };
dontUnpack = true;
installPhase = ''
runHook preInstall
mkdir -p $out/bin
ln -s ${finalAttrs.backend}/bin/pocket-id-backend $out/bin/pocket-id-backend
runHook postInstall
'';
passthru = { passthru = {
tests = { tests = {
inherit (nixosTests) pocket-id; inherit (nixosTests) pocket-id;
}; };
updateScript = nix-update-script { updateScript = nix-update-script {
extraArgs = [ extraArgs = [
"--subpackage"
"backend"
"--subpackage" "--subpackage"
"frontend" "frontend"
]; ];
@ -87,6 +68,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
homepage = "https://pocket-id.org"; homepage = "https://pocket-id.org";
changelog = "https://github.com/pocket-id/pocket-id/releases/tag/v${finalAttrs.version}"; changelog = "https://github.com/pocket-id/pocket-id/releases/tag/v${finalAttrs.version}";
license = lib.licenses.bsd2; license = lib.licenses.bsd2;
mainProgram = "pocket-id";
maintainers = with lib.maintainers; [ maintainers = with lib.maintainers; [
gepbird gepbird
marcusramberg marcusramberg