guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

09/09: gnu: libtorrent-rasterbar: Update to 2.0.9.


From: guix-commits
Subject: 09/09: gnu: libtorrent-rasterbar: Update to 2.0.9.
Date: Wed, 6 Dec 2023 17:54:46 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit cc681b5657ff7c76ff2a6a43059c4a488110f0f2
Author: Tomas Volf <~@wolfsden.cz>
AuthorDate: Sat Dec 2 01:28:58 2023 +0100

    gnu: libtorrent-rasterbar: Update to 2.0.9.
    
    Update the package.  Since other packages do depend on the previous
    version (and according to their documentation do recommend it), the previous
    version is exposed as libtorrent-rasterbar-1.2.
    
    The v2.0.9 requires patching to get tests working.  Sadly one of the changes
    is to introduce new binary file, so it is fetched as an input and applied 
in a
    phase.  Snippet is used instead to do the rest of the patching.
    
    * gnu/packages/bittorrent.scm (libtorrent-rasterbar)[version]: Update to
    2.0.9.
    [source]<snippet>: Patch test/test_copy_file.cpp.
    [native-inputs]: Add the missing file (v2_empty_file.torrent).
    [arguments]<#:phases>: And add a phase copying it into the correct place.
    * gnu/packages/bittorrent.scm (libtorrent-rasterbar-1.2): New variable.
    (qbittorrent)[inputs]: Use libtorrent-rasterbar-1.2.
    * gnu/packages/enlightenment.scm (epour)[inputs]: Use
    libtorrent-rasterbar-1.2.
    
    Change-Id: Ifbbbf02a671f6a3db653499a7a5f2504fd23c255
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/packages/bittorrent.scm    | 50 ++++++++++++++++++++++++++++++++++++------
 gnu/packages/enlightenment.scm |  2 +-
 2 files changed, 44 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index f9098b1a56..731c8e1c20 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -80,6 +80,7 @@
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages tls)
+  #:use-module (gnu packages version-control)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml))
 
@@ -416,10 +417,16 @@ and will take advantage of multiple processor cores where 
possible.")
     (license (list l:public-domain      ; sha1.*, used to build without OpenSSL
                    l:gpl2+))))          ; with permission to link with OpenSSL
 
+(define %v2_empty_file.torrent
+  (origin (method url-fetch)
+          (uri 
"https://github.com/arvidn/libtorrent/raw/v2.0.9/test/test_torrents/v2_empty_file.torrent";)
+          (sha256
+           (base32 "1hydgf0m9193hy9010wl0wrbz4k4cgrqg70jakx68pgi79jcqnrn"))))
+
 (define-public libtorrent-rasterbar
   (package
     (name "libtorrent-rasterbar")
-    (version "1.2.19")
+    (version "2.0.9")
     (source
      (origin
        (method url-fetch)
@@ -428,7 +435,14 @@ and will take advantage of multiple processor cores where 
possible.")
                        "releases/download/v" version "/"
                        "libtorrent-rasterbar-" version ".tar.gz"))
        (sha256
-        (base32 "03p4nvsll568zlyqifid0cn135sg5whbk7g48gkbapnw92ayks7f"))))
+        (base32 "13kry578ifzz4m2f291bbd7v5v9zsi8y3mf38146cnqw0sv95kch"))
+       ;; https://github.com/arvidn/libtorrent/issues/7566
+       ;; Remove when resolved.  I would hope this to be fixed in 2.0.10.
+       (modules '((guix build utils)))
+       (snippet
+        #~(substitute* "test/test_copy_file.cpp"
+            (("EXT4_SUPER_MAGIC, EXT3_SUPER_MAGIC, XFS_SUPER_MAGIC" all)
+             (string-append all ", TMPFS_MAGIC\n"))))))
     (build-system cmake-build-system)
     (arguments
      `(#:configure-flags '("-Dpython-bindings=ON"
@@ -437,6 +451,14 @@ and will take advantage of multiple processor cores where 
possible.")
        #:parallel-tests? #f
        #:phases
        (modify-phases %standard-phases
+         ;; https://github.com/arvidn/libtorrent/issues/7567
+         ;; Remove when resolved.  I would hope this to be fixed in 2.0.10.
+         ;; Do not forget to remove the %v2_empty_file.torrent variable.
+         (add-before 'configure 'copy-v2_empty_file.torrent
+           (lambda* (#:key native-inputs inputs #:allow-other-keys)
+             (copy-file (assoc-ref (or native-inputs inputs)
+                                   "%v2_empty_file.torrent")
+                        "test/test_torrents/v2_empty_file.torrent")))
          (replace 'check
            (lambda* (#:key tests? parallel-tests? #:allow-other-keys)
              (let* ((disabled-tests
@@ -473,10 +495,10 @@ and will take advantage of multiple processor cores where 
possible.")
                          "--timeout" timeout
                          "--output-on-failure"))))))))
     (inputs (list boost openssl))
-    (native-inputs
-     (list libfaketime
-           python-wrapper
-           pkg-config))
+    (native-inputs `(("libfaketime" ,libfaketime)
+                     ("python-wrapper" ,python-wrapper)
+                     ("pkg-config" ,pkg-config)
+                     ("%v2_empty_file.torrent" ,%v2_empty_file.torrent)))
     (home-page "https://www.libtorrent.org/";)
     (synopsis "Feature-complete BitTorrent implementation")
     (description
@@ -485,6 +507,20 @@ focusing on efficiency and scalability.  It runs on 
embedded devices as well as
 desktops.")
     (license l:bsd-2)))
 
+(define-public libtorrent-rasterbar-1.2
+  (package
+    (inherit libtorrent-rasterbar)
+    (version "1.2.19")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "https://github.com/arvidn/libtorrent/";
+                       "releases/download/v" version "/"
+                       "libtorrent-rasterbar-" version ".tar.gz"))
+       (sha256
+        (base32 "03p4nvsll568zlyqifid0cn135sg5whbk7g48gkbapnw92ayks7f"))))))
+
 (define-public qbittorrent
   (package
     (name "qbittorrent")
@@ -506,7 +542,7 @@ desktops.")
      (list qttools-5))
     (inputs
      (list boost
-           libtorrent-rasterbar
+           libtorrent-rasterbar-1.2
            openssl
            python-wrapper
            qtsvg-5
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index 64d8945f8e..7860c43fef 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -585,7 +585,7 @@ directories.
     (native-inputs
      (list intltool python-distutils-extra))
     (inputs
-     (list libtorrent-rasterbar python-dbus python-efl python-pyxdg))
+     (list libtorrent-rasterbar-1.2 python-dbus python-efl python-pyxdg))
     (home-page "https://www.enlightenment.org";)
     (synopsis "EFL Bittorrent client")
     (description "Epour is a BitTorrent client based on the @dfn{Enlightenment



reply via email to

[Prev in Thread] Current Thread [Next in Thread]