diff --git a/.quixos-subtree-source.json b/.quixos-subtree-source.json index 8f76827..babc4be 100644 --- a/.quixos-subtree-source.json +++ b/.quixos-subtree-source.json @@ -1,7 +1,7 @@ { "version": 1, "sourceRepo": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git", - "sourceCommit": "eb407e5a3bbd4ae2f810a0cee0d45b5c7e8d7db1", + "sourceCommit": "398fd9e0d723c3fe7a511c2c35702874fd7342d0", "sourcePath": "quixos-instance/quixos-nix-helpers", "exportName": "quixos-nix-helpers", "mirrorRemote": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git" diff --git a/quixos-package-helpers.nix b/quixos-package-helpers.nix index 09776a9..e81887e 100644 --- a/quixos-package-helpers.nix +++ b/quixos-package-helpers.nix @@ -595,12 +595,22 @@ EOF installConfig.libexecName or (lib.strings.sanitizeDerivationName packageNameFinal); serverFile = installConfig.serverFile or bundleOutfile; descriptorPath = installConfig.descriptorPath or "descriptor.quixos-package.txtpb"; + extraFiles = installConfig.extraFiles or [ ]; + installExtraFile = file: + let + source = toString file.source; + target = file.target or (baseNameOf source); + mode = file.mode or "0644"; + in '' + install -Dm${toString mode} ${lib.escapeShellArg source} "$out/libexec/${serverLibexecName}/${target}" + ''; installServerPhase = if installServer == null then null else '' runHook preInstall install -Dm755 ${lib.escapeShellArg serverFile} "$out/libexec/${serverLibexecName}/${serverFile}" + ${lib.concatMapStringsSep "\n" installExtraFile extraFiles} mkdir -p "$out/bin" cat > "$out/bin/${serverBin}" <