From b0cf086efe870b26963e916a5e0afcadfc8a44ff Mon Sep 17 00:00:00 2001 From: aleksana Date: Sat, 20 Jul 2024 22:35:26 +0800 Subject: [PATCH 1/2] zsync2: init at 2.0.0-alpha-1-20230304 --- pkgs/by-name/zs/zsync2/package.nix | 66 ++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 pkgs/by-name/zs/zsync2/package.nix diff --git a/pkgs/by-name/zs/zsync2/package.nix b/pkgs/by-name/zs/zsync2/package.nix new file mode 100644 index 000000000000..70a204eafab6 --- /dev/null +++ b/pkgs/by-name/zs/zsync2/package.nix @@ -0,0 +1,66 @@ +{ + lib, + stdenv, + fetchFromGitHub, + fetchpatch, + cmake, + pkg-config, + libgcrypt, + libcpr, + libargs, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "zsync2"; + version = "2.0.0-alpha-1-20230304"; + + src = fetchFromGitHub { + owner = "AppImageCommunity"; + repo = "zsync2"; + rev = finalAttrs.version; + hash = "sha256-OCeMEXQmbc34MZ1NyOfAASdrUyeSQqqfvWqAszJN4x0="; + }; + + patches = [ + # Add missing cstdint includes + (fetchpatch { + url = "https://github.com/AppImageCommunity/zsync2/commit/e57e1fce68194fa920542fd334488de5123e4832.patch"; + hash = "sha256-iLXxD6v+pSwFKmwAEyzbYUJ3DmtpvV/DYr8kcD+t5Cg="; + }) + ]; + + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace-fail 'VERSION "2.0.0-alpha-1"' 'VERSION "${finalAttrs.version}"' \ + --replace-fail 'git rev-parse --short HEAD' 'bash -c "echo unknown"' \ + --replace-fail '' '' \ + --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"' + ''; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + libgcrypt + libcpr + libargs + ]; + + cmakeFlags = [ + (lib.cmakeBool "USE_SYSTEM_CPR" true) + (lib.cmakeBool "USE_SYSTEM_ARGS" true) + ]; + + meta = { + description = "Rewrite of the advanced file download/sync tool zsync"; + homepage = "https://github.com/AppImageCommunity/zsync2"; + license = lib.licenses.artistic2; + mainProgram = "zsync2"; + maintainers = with lib.maintainers; [ aleksana ]; + # macro only supports linux as of now + # src/zsclient.cpp#L460 + platforms = lib.platforms.linux; + }; +}) From 5ab59cff363f8cada0024d274b950c55549fbca7 Mon Sep 17 00:00:00 2001 From: aleksana Date: Sat, 20 Jul 2024 22:55:19 +0800 Subject: [PATCH 2/2] 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 {