Loading pkgs/by-name/du/duplicati/package.nix +51 −0 Original line number Diff line number Diff line { lib, stdenv, buildNpmPackage, buildDotnetModule, fetchFromGitHub, autoPatchelfHook, dotnetCorePackages, bun, icu, openssl, krb5, }: let # for update.sh easy to handle ngclientVersion = "0.0.163"; ngclientRev = "2546891ad116cb0a7a8df1c2bcf8a11fc17d58a4"; ngclientHash = "sha256-MQOJHr3JBceO7qZRQvCcR4NNxpc77oRRjBQkmMv9RUA="; # from Duplicati/Server/webroot/ngclient/package.json ngclient = buildNpmPackage { pname = "ngclient"; version = ngclientVersion; src = fetchFromGitHub { owner = "duplicati"; repo = "ngclient"; rev = ngclientRev; hash = ngclientHash; }; npmDepsHash = "sha256-HYKzf7JaoOYvYlVZgMZ0jvYHf96be6abTZNtefgy59Y="; nativeBuildInputs = [ bun ]; npmBuildScript = "build:prod"; env = { NG_CLI_ANALYTICS = "false"; CI = "true"; }; installPhase = '' runHook preInstall mkdir -p $out cp -r dist/ngclient/* $out/ runHook postInstall ''; postInstall = '' substituteInPlace $out/browser/index.html \ --replace-fail '<base href="/">' '<base href="/ngclient/">' ''; }; in buildDotnetModule rec { pname = "duplicati"; version = "2.2.0.1"; Loading Loading @@ -66,6 +112,11 @@ buildDotnetModule rec { "Duplicati.Service" ]; postPatch = '' rm -rf Duplicati/Server/webroot/ngclient ln -s ${ngclient}/browser Duplicati/Server/webroot/ngclient ''; postFixup = '' mv $out/bin/Duplicati.Agent $out/bin/duplicati-agent mv $out/bin/Duplicati.GUI.TrayIcon $out/bin/duplicati Loading pkgs/by-name/du/duplicati/update.sh +31 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,9 @@ REPO="duplicati" SCRIPT_DIR=$(dirname "$(readlink -f "$0")") TARGET="$SCRIPT_DIR/package.nix" TMP=$(mktemp -d) trap 'rm -rf "$TMP"' EXIT TAG=$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s "https://api.github.com/repos/$OWNNER/$REPO/tags" | jq -r '.[].name' | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+_stable_' | Loading @@ -22,7 +25,35 @@ DATE=$(echo "$TAG" | cut -d_ -f3) HASH=$(nix-prefetch-github $OWNNER $REPO --rev "$TAG" | jq -r '.hash') curl -sL "https://raw.githubusercontent.com/$OWNNER/$REPO/$TAG/Duplicati/Server/webroot/ngclient/package.json" \ -o "$TMP/package.json" NGCLIENT_VERSION=$( jq -r '.dependencies["@duplicati/ngclient"]' \ "$TMP/package.json" | sed 's/^[^0-9]*//' ) git clone --no-tags https://github.com/duplicati/ngclient.git "$TMP/ngclient" NGCLIENT_REV=$(cd "$TMP/ngclient" && git log --format="%H %s" | grep "$NGCLIENT_VERSION" | awk '{print $1}') NGCLIENT_HASH=$( nix-prefetch-github $OWNNER ngclient --rev "$NGCLIENT_REV" | jq -r .hash ) echo "version=$VERSION" echo "channel=$CHANNEL" echo "date=$DATE" echo "ngclientVersion=$NGCLIENT_VERSION" echo "ngclientRev=$NGCLIENT_REV" echo "ngclientHash=$NGCLIENT_HASH" sed -i \ -e "/ngclientVersion = /c\ ngclientVersion = \"$NGCLIENT_VERSION\";" \ -e "/ngclientRev = /c\ ngclientRev = \"$NGCLIENT_REV\";" \ -e "/ngclientHash = /c\ ngclientHash = \"$NGCLIENT_HASH\";" \ -e "/version = \"/c\ version = \"$VERSION\";" \ -e "/channel = \"/c\ channel = \"$CHANNEL\";" \ -e "/buildDate = \"/c\ buildDate = \"$DATE\";" \ Loading Loading
pkgs/by-name/du/duplicati/package.nix +51 −0 Original line number Diff line number Diff line { lib, stdenv, buildNpmPackage, buildDotnetModule, fetchFromGitHub, autoPatchelfHook, dotnetCorePackages, bun, icu, openssl, krb5, }: let # for update.sh easy to handle ngclientVersion = "0.0.163"; ngclientRev = "2546891ad116cb0a7a8df1c2bcf8a11fc17d58a4"; ngclientHash = "sha256-MQOJHr3JBceO7qZRQvCcR4NNxpc77oRRjBQkmMv9RUA="; # from Duplicati/Server/webroot/ngclient/package.json ngclient = buildNpmPackage { pname = "ngclient"; version = ngclientVersion; src = fetchFromGitHub { owner = "duplicati"; repo = "ngclient"; rev = ngclientRev; hash = ngclientHash; }; npmDepsHash = "sha256-HYKzf7JaoOYvYlVZgMZ0jvYHf96be6abTZNtefgy59Y="; nativeBuildInputs = [ bun ]; npmBuildScript = "build:prod"; env = { NG_CLI_ANALYTICS = "false"; CI = "true"; }; installPhase = '' runHook preInstall mkdir -p $out cp -r dist/ngclient/* $out/ runHook postInstall ''; postInstall = '' substituteInPlace $out/browser/index.html \ --replace-fail '<base href="/">' '<base href="/ngclient/">' ''; }; in buildDotnetModule rec { pname = "duplicati"; version = "2.2.0.1"; Loading Loading @@ -66,6 +112,11 @@ buildDotnetModule rec { "Duplicati.Service" ]; postPatch = '' rm -rf Duplicati/Server/webroot/ngclient ln -s ${ngclient}/browser Duplicati/Server/webroot/ngclient ''; postFixup = '' mv $out/bin/Duplicati.Agent $out/bin/duplicati-agent mv $out/bin/Duplicati.GUI.TrayIcon $out/bin/duplicati Loading
pkgs/by-name/du/duplicati/update.sh +31 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,9 @@ REPO="duplicati" SCRIPT_DIR=$(dirname "$(readlink -f "$0")") TARGET="$SCRIPT_DIR/package.nix" TMP=$(mktemp -d) trap 'rm -rf "$TMP"' EXIT TAG=$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s "https://api.github.com/repos/$OWNNER/$REPO/tags" | jq -r '.[].name' | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+_stable_' | Loading @@ -22,7 +25,35 @@ DATE=$(echo "$TAG" | cut -d_ -f3) HASH=$(nix-prefetch-github $OWNNER $REPO --rev "$TAG" | jq -r '.hash') curl -sL "https://raw.githubusercontent.com/$OWNNER/$REPO/$TAG/Duplicati/Server/webroot/ngclient/package.json" \ -o "$TMP/package.json" NGCLIENT_VERSION=$( jq -r '.dependencies["@duplicati/ngclient"]' \ "$TMP/package.json" | sed 's/^[^0-9]*//' ) git clone --no-tags https://github.com/duplicati/ngclient.git "$TMP/ngclient" NGCLIENT_REV=$(cd "$TMP/ngclient" && git log --format="%H %s" | grep "$NGCLIENT_VERSION" | awk '{print $1}') NGCLIENT_HASH=$( nix-prefetch-github $OWNNER ngclient --rev "$NGCLIENT_REV" | jq -r .hash ) echo "version=$VERSION" echo "channel=$CHANNEL" echo "date=$DATE" echo "ngclientVersion=$NGCLIENT_VERSION" echo "ngclientRev=$NGCLIENT_REV" echo "ngclientHash=$NGCLIENT_HASH" sed -i \ -e "/ngclientVersion = /c\ ngclientVersion = \"$NGCLIENT_VERSION\";" \ -e "/ngclientRev = /c\ ngclientRev = \"$NGCLIENT_REV\";" \ -e "/ngclientHash = /c\ ngclientHash = \"$NGCLIENT_HASH\";" \ -e "/version = \"/c\ version = \"$VERSION\";" \ -e "/channel = \"/c\ channel = \"$CHANNEL\";" \ -e "/buildDate = \"/c\ buildDate = \"$DATE\";" \ Loading