From f555ddafda99194b033ba4a2b93c3415fef6c53c Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Thu, 12 Mar 2026 20:47:54 -0400 Subject: [PATCH 1/4] backintime: fix missing crontab --- pkgs/by-name/ba/backintime-common/package.nix | 10 ++++++++++ pkgs/by-name/ba/backintime-qt/package.nix | 1 + 2 files changed, 11 insertions(+) diff --git a/pkgs/by-name/ba/backintime-common/package.nix b/pkgs/by-name/ba/backintime-common/package.nix index bff2db1cff81..dea598c1c77a 100644 --- a/pkgs/by-name/ba/backintime-common/package.nix +++ b/pkgs/by-name/ba/backintime-common/package.nix @@ -10,6 +10,9 @@ openssh, sshfs-fuse, encfs, + which, + ps, + gnugrep, }: let @@ -57,8 +60,15 @@ stdenv.mkDerivation rec { substituteInPlace configure \ --replace-fail "/.." "" \ --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}'" \ ''; dontAddPrefix = true; diff --git a/pkgs/by-name/ba/backintime-qt/package.nix b/pkgs/by-name/ba/backintime-qt/package.nix index f6fda4423672..e0298467f411 100644 --- a/pkgs/by-name/ba/backintime-qt/package.nix +++ b/pkgs/by-name/ba/backintime-qt/package.nix @@ -16,6 +16,7 @@ let ps: with ps; [ pyqt6 backintime-common + keyring packaging ] ); From 6dcb0fc58aa6f62b385a95eb79411043a06829f1 Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Thu, 12 Mar 2026 20:52:33 -0400 Subject: [PATCH 2/4] backintime: 1.5.6 -> 1.6.1 --- pkgs/by-name/ba/backintime-common/package.nix | 25 +++++++++++++------ pkgs/by-name/ba/backintime-qt/package.nix | 7 +++++- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/ba/backintime-common/package.nix b/pkgs/by-name/ba/backintime-common/package.nix index dea598c1c77a..28139d679359 100644 --- a/pkgs/by-name/ba/backintime-common/package.nix +++ b/pkgs/by-name/ba/backintime-common/package.nix @@ -13,6 +13,8 @@ which, ps, gnugrep, + man, + asciidoctor, }: let @@ -33,22 +35,27 @@ let encfs ]; 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)" ]; @@ -56,9 +63,10 @@ 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" \ @@ -69,6 +77,9 @@ stdenv.mkDerivation rec { --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; @@ -91,4 +102,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 e0298467f411..0e1f484e0ace 100644 --- a/pkgs/by-name/ba/backintime-qt/package.nix +++ b/pkgs/by-name/ba/backintime-qt/package.nix @@ -9,6 +9,8 @@ coreutils, util-linux, qt6, + man, + asciidoctor, }: let @@ -37,6 +39,8 @@ stdenv.mkDerivation { backintime-common qt6.qtbase qt6.qtwayland + man + asciidoctor ]; nativeBuildInputs = backintime-common.nativeBuildInputs or [ ] ++ [ @@ -47,9 +51,10 @@ 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 = '' From 9e0c40162ea87227c2122475be9ff74897b748ae Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Thu, 12 Mar 2026 21:30:25 -0400 Subject: [PATCH 3/4] backintime: add gocryptfs, meld/kompare support --- pkgs/by-name/ba/backintime-common/package.nix | 2 ++ pkgs/by-name/ba/backintime-qt/package.nix | 14 +++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ba/backintime-common/package.nix b/pkgs/by-name/ba/backintime-common/package.nix index 28139d679359..32fd94112ac7 100644 --- a/pkgs/by-name/ba/backintime-common/package.nix +++ b/pkgs/by-name/ba/backintime-common/package.nix @@ -10,6 +10,7 @@ openssh, sshfs-fuse, encfs, + gocryptfs, which, ps, gnugrep, @@ -33,6 +34,7 @@ let rsync sshfs-fuse encfs + gocryptfs ]; in stdenv.mkDerivation (finalAttrs: { diff --git a/pkgs/by-name/ba/backintime-qt/package.nix b/pkgs/by-name/ba/backintime-qt/package.nix index 0e1f484e0ace..2a5f29aae507 100644 --- a/pkgs/by-name/ba/backintime-qt/package.nix +++ b/pkgs/by-name/ba/backintime-qt/package.nix @@ -4,6 +4,10 @@ backintime-common, python3, polkit, + meld ? null, + meldSupport ? true, + kdePackages ? null, + kompareSupport ? false, which, su, coreutils, @@ -22,6 +26,13 @@ let packaging ] ); + diffProgram = + if meldSupport then + "${lib.getBin meld}/bin" + else if kompareSupport then + "${lib.getBin kdePackages.kompare}/bin" + else + ""; in stdenv.mkDerivation { inherit (backintime-common) @@ -59,7 +70,8 @@ stdenv.mkDerivation { 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" From c7672db19cd153f2268d292939248fdae46460e2 Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Thu, 12 Mar 2026 22:01:38 -0400 Subject: [PATCH 4/4] backintime: add keyringBackends --- pkgs/by-name/ba/backintime-qt/package.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ba/backintime-qt/package.nix b/pkgs/by-name/ba/backintime-qt/package.nix index 2a5f29aae507..52a2ff52452a 100644 --- a/pkgs/by-name/ba/backintime-qt/package.nix +++ b/pkgs/by-name/ba/backintime-qt/package.nix @@ -15,16 +15,26 @@ 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