nixpkgs/pkgs/by-name/du/duplicati/package.nix

52 lines
1.5 KiB
Nix

{
lib,
stdenv,
fetchzip,
mono,
sqlite,
makeWrapper,
}:
stdenv.mkDerivation rec {
pname = "duplicati";
version = "2.0.8.1";
channel = "beta";
build_date = "2024-05-07";
src = fetchzip {
url = "https://github.com/duplicati/duplicati/releases/download/v${version}-${version}_${channel}_${build_date}/duplicati-${version}_${channel}_${build_date}.zip";
hash = "sha256-LmW6yGutxP33ghFqyOLKrGDNCQdr8DDFn/IHigsLpzA=";
stripRoot = false;
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/{bin,share/${pname}-${version}}
cp -r * $out/share/${pname}-${version}
makeWrapper "${mono}/bin/mono" $out/bin/duplicati-cli \
--add-flags "$out/share/${pname}-${version}/Duplicati.CommandLine.exe" \
--prefix LD_LIBRARY_PATH : ${
lib.makeLibraryPath [
sqlite
]
}
makeWrapper "${mono}/bin/mono" $out/bin/duplicati-server \
--add-flags "$out/share/${pname}-${version}/Duplicati.Server.exe" \
--prefix LD_LIBRARY_PATH : ${
lib.makeLibraryPath [
sqlite
]
}
'';
meta = with lib; {
description = "Free backup client that securely stores encrypted, incremental, compressed backups on cloud storage services and remote file servers";
homepage = "https://www.duplicati.com/";
license = licenses.lgpl21;
maintainers = with maintainers; [ nyanloutre bot-wxt1221 ];
sourceProvenance = with sourceTypes; [ binaryBytecode ];
platforms = platforms.all;
};
}