From 7e0e927e858c24d1b9a868e066dc0b93c690771c Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Sun, 18 Aug 2024 20:39:10 -0400 Subject: [PATCH 1/3] backintime: use --replace-fail and set mainProgram --- .../networking/sync/backintime/common.nix | 11 ++++++----- .../networking/sync/backintime/qt.nix | 18 +++++++++--------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/pkgs/applications/networking/sync/backintime/common.nix b/pkgs/applications/networking/sync/backintime/common.nix index 0a1a1d05dde4..747300ccf048 100644 --- a/pkgs/applications/networking/sync/backintime/common.nix +++ b/pkgs/applications/networking/sync/backintime/common.nix @@ -26,10 +26,10 @@ in stdenv.mkDerivation rec { preConfigure = '' cd common substituteInPlace configure \ - --replace "/.." "" \ - --replace "share/backintime" "${python'.sitePackages}/backintime" + --replace-fail "/.." "" \ + --replace-fail "share/backintime" "${python'.sitePackages}/backintime" substituteInPlace "backintime" \ - --replace "share" "${python'.sitePackages}" + --replace-fail "share" "${python'.sitePackages}" ''; dontAddPrefix = true; @@ -44,10 +44,11 @@ in stdenv.mkDerivation rec { description = "Simple backup tool for Linux"; license = lib.licenses.gpl2; maintainers = with lib.maintainers; [ stephen-huan ]; - platforms = lib.platforms.all; + platforms = lib.platforms.linux; + mainProgram = "backintime"; longDescription = '' Back In Time is a simple backup tool (on top of rsync) for Linux - inspired from “flyback project” and “TimeVault”. The backup is + inspired from "flyback project" and "TimeVault". The backup is done by taking snapshots of a specified set of directories. ''; }; diff --git a/pkgs/applications/networking/sync/backintime/qt.nix b/pkgs/applications/networking/sync/backintime/qt.nix index 1580a51151a2..d0d4fa813017 100644 --- a/pkgs/applications/networking/sync/backintime/qt.nix +++ b/pkgs/applications/networking/sync/backintime/qt.nix @@ -24,23 +24,23 @@ mkDerivation { --prefix PATH : "${lib.getBin backintime-common}/bin:$PATH" substituteInPlace "$out/share/polkit-1/actions/net.launchpad.backintime.policy" \ - --replace "/usr/bin/backintime-qt" "$out/bin/backintime-qt" + --replace-fail "/usr/bin/backintime-qt" "$out/bin/backintime-qt" substituteInPlace "$out/share/applications/backintime-qt-root.desktop" \ - --replace "/usr/bin/backintime-qt" "backintime-qt" + --replace-fail "/usr/bin/backintime-qt" "backintime-qt" substituteInPlace "$out/share/backintime/qt/serviceHelper.py" \ - --replace "'which'" "'${lib.getBin which}/bin/which'" \ - --replace "/bin/su" "${lib.getBin su}/bin/su" \ - --replace "/usr/bin/backintime" "${lib.getBin backintime-common}/bin/backintime" \ - --replace "/usr/bin/nice" "${lib.getBin coreutils}/bin/nice" \ - --replace "/usr/bin/ionice" "${lib.getBin util-linux}/bin/ionice" + --replace-fail "'which'" "'${lib.getExe which}'" \ + --replace-fail "/bin/su" "${lib.getBin su}/bin/su" \ + --replace-fail "/usr/bin/backintime" "${lib.getExe backintime-common}" \ + --replace-fail "/usr/bin/nice" "${lib.getBin coreutils}/bin/nice" \ + --replace-fail "/usr/bin/ionice" "${lib.getBin util-linux}/bin/ionice" substituteInPlace "$out/share/dbus-1/system-services/net.launchpad.backintime.serviceHelper.service" \ - --replace "/usr/share/backintime" "$out/share/backintime" + --replace-fail "/usr/share/backintime" "$out/share/backintime" substituteInPlace "$out/bin/backintime-qt_polkit" \ - --replace "/usr/bin/backintime-qt" "$out/bin/backintime-qt" + --replace-fail "/usr/bin/backintime-qt" "$out/bin/backintime-qt" wrapProgram "$out/bin/backintime-qt_polkit" \ --prefix PATH : "${lib.getBin polkit}/bin:$PATH" From c85528c1acf698fd5edd5f7aa4349a78748b0a85 Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Sun, 18 Aug 2024 20:40:13 -0400 Subject: [PATCH 2/3] backintime: 1.4.3 -> 1.5.2 --- .../networking/sync/backintime/common.nix | 5 +++-- .../networking/sync/backintime/qt.nix | 16 +++++++++++----- pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/networking/sync/backintime/common.nix b/pkgs/applications/networking/sync/backintime/common.nix index 747300ccf048..95594dc93cb7 100644 --- a/pkgs/applications/networking/sync/backintime/common.nix +++ b/pkgs/applications/networking/sync/backintime/common.nix @@ -7,13 +7,13 @@ let apps = lib.makeBinPath [ openssh python' cron rsync sshfs-fuse encfs ]; in stdenv.mkDerivation rec { pname = "backintime-common"; - version = "1.4.3"; + version = "1.5.2"; src = fetchFromGitHub { owner = "bit-team"; repo = "backintime"; rev = "v${version}"; - sha256 = "sha256-2q2Q4rnxXwVnfH1YEBwY35B2ctG9+qpOIAHqPOjjArg="; + sha256 = "sha256-yfCSTzCmhXDBC1vYqwgVjsYUtc5VO1VW74BmIB0hHfE="; }; nativeBuildInputs = [ makeWrapper gettext ]; @@ -24,6 +24,7 @@ in stdenv.mkDerivation rec { configureFlags = [ "--python=${lib.getExe python'}" ]; preConfigure = '' + patchShebangs --build updateversion.sh cd common substituteInPlace configure \ --replace-fail "/.." "" \ diff --git a/pkgs/applications/networking/sync/backintime/qt.nix b/pkgs/applications/networking/sync/backintime/qt.nix index d0d4fa813017..136b91a0623c 100644 --- a/pkgs/applications/networking/sync/backintime/qt.nix +++ b/pkgs/applications/networking/sync/backintime/qt.nix @@ -1,19 +1,25 @@ -{ lib, mkDerivation, backintime-common, python3, polkit, which, su, coreutils, util-linux }: +{ lib, stdenv, backintime-common, python3, polkit, which, su, coreutils, util-linux, +wrapQtAppsHook, qtbase, qtwayland }: let - python' = python3.withPackages (ps: with ps; [ pyqt5 backintime-common packaging ]); + python' = python3.withPackages (ps: with ps; [ pyqt6 backintime-common packaging ]); in -mkDerivation { +stdenv.mkDerivation { inherit (backintime-common) - version src installFlags meta dontAddPrefix nativeBuildInputs; + version src installFlags meta dontAddPrefix; pname = "backintime-qt"; - buildInputs = [ python' backintime-common ]; + buildInputs = [ python' backintime-common qtbase qtwayland ]; + + nativeBuildInputs = backintime-common.nativeBuildInputs or [ ] ++ [ + wrapQtAppsHook + ]; configureFlags = [ "--python=${lib.getExe python'}" ]; preConfigure = '' + patchShebangs --build updateversion.sh cd qt substituteInPlace qttools_path.py \ --replace "__file__, os.pardir, os.pardir" '"${backintime-common}/${python'.sitePackages}/backintime"' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a2a18fff0194..445d542b06a8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -29415,7 +29415,7 @@ with pkgs; backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { }; - backintime-qt = libsForQt5.callPackage ../applications/networking/sync/backintime/qt.nix { }; + backintime-qt = qt6.callPackage ../applications/networking/sync/backintime/qt.nix { }; backintime = backintime-qt; From 162dd80fe94e6fbce85e351f8a1a14b74d8b8bc7 Mon Sep 17 00:00:00 2001 From: Stephen Huan Date: Sun, 18 Aug 2024 20:52:17 -0400 Subject: [PATCH 3/3] backintime: fix backintime-askpass --- pkgs/applications/networking/sync/backintime/common.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/networking/sync/backintime/common.nix b/pkgs/applications/networking/sync/backintime/common.nix index 95594dc93cb7..087b415c241f 100644 --- a/pkgs/applications/networking/sync/backintime/common.nix +++ b/pkgs/applications/networking/sync/backintime/common.nix @@ -29,7 +29,7 @@ in stdenv.mkDerivation rec { substituteInPlace configure \ --replace-fail "/.." "" \ --replace-fail "share/backintime" "${python'.sitePackages}/backintime" - substituteInPlace "backintime" \ + substituteInPlace "backintime" "backintime-askpass" \ --replace-fail "share" "${python'.sitePackages}" '';