From 5ab59cff363f8cada0024d274b950c55549fbca7 Mon Sep 17 00:00:00 2001 From: aleksana Date: Sat, 20 Jul 2024 22:55:19 +0800 Subject: [PATCH] appimageupdate: init at 2.0.0-alpha-1-20230526 --- pkgs/by-name/ap/appimageupdate/package.nix | 85 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 87 insertions(+) create mode 100644 pkgs/by-name/ap/appimageupdate/package.nix diff --git a/pkgs/by-name/ap/appimageupdate/package.nix b/pkgs/by-name/ap/appimageupdate/package.nix new file mode 100644 index 000000000000..b1af05103d8a --- /dev/null +++ b/pkgs/by-name/ap/appimageupdate/package.nix @@ -0,0 +1,85 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + pkg-config, + qt5, + zsync2, + libcpr, + libgcrypt, + libappimage, + argagg, + nlohmann_json, + gpgme, + appimageupdate-qt, + withQtUI ? false, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "appimageupdate"; + version = "2.0.0-alpha-1-20230526"; + + src = fetchFromGitHub { + owner = "AppImageCommunity"; + repo = "AppImageUpdate"; + rev = finalAttrs.version; + hash = "sha256-b2RqSw0Ksn9OLxQV9+3reBiqrty+Kx9OwV93jlvuPnY="; + }; + + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace-fail 'VERSION 1-alpha' 'VERSION ${finalAttrs.version}' \ + --replace-fail 'env LC_ALL=C date -u "+%Y-%m-%d %H:%M:%S %Z"' 'bash -c "echo 1970-01-01 00:00:01 UTC"' \ + --replace-fail 'git rev-parse --short HEAD' 'bash -c "echo unknown"' \ + --replace-fail '' '' + ''; + + nativeBuildInputs = + [ + cmake + pkg-config + ] + ++ lib.optionals withQtUI [ + qt5.wrapQtAppsHook + ]; + + buildInputs = + [ + zsync2 + libcpr + libgcrypt + libappimage + argagg + nlohmann_json + gpgme + ] + ++ lib.optionals withQtUI [ + qt5.qtbase + ]; + + cmakeFlags = [ + (lib.cmakeBool "USE_SYSTEM_ZSYNC2" true) + (lib.cmakeBool "USE_SYSTEM_LIBAPPIMAGE" true) + (lib.cmakeBool "BUILD_QT_UI" withQtUI) + ]; + + dontWrapQtApps = true; + + preFixup = lib.optionalString withQtUI '' + wrapQtApp "$out/bin/AppImageUpdate" + ''; + + passthru.tests = { + inherit appimageupdate-qt; + }; + + meta = { + description = "Update AppImages using information embedded in the AppImage itself"; + homepage = "https://github.com/AppImageCommunity/AppImageUpdate"; + license = lib.licenses.mit; + mainProgram = if withQtUI then "AppImageUpdate" else "appimageupdatetool"; + maintainers = with lib.maintainers; [ aleksana ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 85dc76a96bfc..2172191ed37b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -196,6 +196,8 @@ with pkgs; appimageTools = callPackage ../build-support/appimage { }; + appimageupdate-qt = appimageupdate.override { withQtUI = true; }; + appindicator-sharp = callPackage ../development/libraries/appindicator-sharp { }; bindle = callPackage ../servers/bindle {