diff --git a/pkgs/by-name/ba/backintime-common/package.nix b/pkgs/by-name/ba/backintime-common/package.nix index bff2db1cff81..32fd94112ac7 100644 --- a/pkgs/by-name/ba/backintime-common/package.nix +++ b/pkgs/by-name/ba/backintime-common/package.nix @@ -10,6 +10,12 @@ openssh, sshfs-fuse, encfs, + gocryptfs, + which, + ps, + gnugrep, + man, + asciidoctor, }: let @@ -28,24 +34,30 @@ let rsync sshfs-fuse encfs + gocryptfs ]; in -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "backintime-common"; - version = "1.5.6"; + version = "1.6.1"; src = fetchFromGitHub { owner = "bit-team"; repo = "backintime"; - rev = "v${version}"; - sha256 = "sha256-y9uo/6R9OXK9hqUD0pCLJXF2B80lr2gXf6v8+Ca6u5M="; + tag = "v${finalAttrs.version}"; + hash = "sha256-/33Lx62S/9RcqrfJumE6/o3KnAObBa3DcmuGkcOXIQE="; }; nativeBuildInputs = [ makeWrapper gettext ]; - buildInputs = [ python' ]; + + buildInputs = [ + python' + man + asciidoctor + ]; installFlags = [ "DEST=$(out)" ]; @@ -53,12 +65,23 @@ stdenv.mkDerivation rec { preConfigure = '' patchShebangs --build updateversion.sh + patchShebangs --build doc/manpages/build_manpages.sh cd common substituteInPlace configure \ - --replace-fail "/.." "" \ + --replace-fail "/../etc" "/etc" \ --replace-fail "share/backintime" "${python'.sitePackages}/backintime" + substituteInPlace "backintime" "backintime-askpass" \ --replace-fail "share" "${python'.sitePackages}" + + substituteInPlace "schedule.py" \ + --replace-fail "'crontab'" "'${cron}/bin/crontab'" \ + --replace-fail "'which'" "'${lib.getExe which}'" \ + --replace-fail "'ps'" "'${lib.getExe ps}'" \ + --replace-fail "'grep'" "'${lib.getExe gnugrep}'" \ + + substituteInPlace "bitlicense.py" \ + --replace-fail "/usr/share/doc" "$out/share/doc" \ ''; dontAddPrefix = true; @@ -81,4 +104,4 @@ stdenv.mkDerivation rec { done by taking snapshots of a specified set of directories. ''; }; -} +}) diff --git a/pkgs/by-name/ba/backintime-qt/package.nix b/pkgs/by-name/ba/backintime-qt/package.nix index f6fda4423672..52a2ff52452a 100644 --- a/pkgs/by-name/ba/backintime-qt/package.nix +++ b/pkgs/by-name/ba/backintime-qt/package.nix @@ -4,21 +4,45 @@ backintime-common, python3, polkit, + meld ? null, + meldSupport ? true, + kdePackages ? null, + kompareSupport ? false, which, su, coreutils, util-linux, qt6, + man, + asciidoctor, + keyringBackends ? + ps: with ps; [ + secretstorage + keyrings-alt + keyring-pass + ], }: let python' = python3.withPackages ( - ps: with ps; [ + ps: + with ps; + [ pyqt6 backintime-common + dbus-python + keyring packaging ] + ++ (keyringBackends ps) ); + diffProgram = + if meldSupport then + "${lib.getBin meld}/bin" + else if kompareSupport then + "${lib.getBin kdePackages.kompare}/bin" + else + ""; in stdenv.mkDerivation { inherit (backintime-common) @@ -36,6 +60,8 @@ stdenv.mkDerivation { backintime-common qt6.qtbase qt6.qtwayland + man + asciidoctor ]; nativeBuildInputs = backintime-common.nativeBuildInputs or [ ] ++ [ @@ -46,14 +72,16 @@ stdenv.mkDerivation { preConfigure = '' patchShebangs --build updateversion.sh + patchShebangs --build doc/manpages/build_manpages.sh cd qt substituteInPlace qttools_path.py \ - --replace "__file__, os.pardir, os.pardir" '"${backintime-common}/${python'.sitePackages}/backintime"' + --replace-fail "Path(__file__).parent.parent" '"${backintime-common}/${python'.sitePackages}/backintime"' ''; preFixup = '' wrapQtApp "$out/bin/backintime-qt" \ - --prefix PATH : "${lib.getBin backintime-common}/bin:$PATH" + --prefix PATH : "${lib.getBin backintime-common}/bin:$PATH" \ + --prefix PATH : "${diffProgram}:$PATH" substituteInPlace "$out/share/polkit-1/actions/net.launchpad.backintime.policy" \ --replace-fail "/usr/bin/backintime-qt" "$out/bin/backintime-qt"