Archived
1
0
Fork 0

gnu: jami: Always remove contrib tarballs from the sources of Jami.

The origin used as the "sfl-patches" input contained bundled library tarballs,
and weighed 217 MiB.  After this change, it weighs 3.3 MiB.

* gnu/packages/jami.scm (jami-source): Rename #:without-daemon to
\#:keep-contrib-patches.  Delete the daemon/contrib/tarballs sub-directory even
when keeping the patches.  Delete extraneous code.
(%sfl-patches, %jami-sources): New variables.
(pjproject-jami, ffmpeg-jami, libring): Adjust to use the above variables.
This commit is contained in:
Maxim Cournoyer 2020-08-05 23:23:22 -04:00
parent 4c91f184a1
commit 0531ea982b
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -65,7 +65,11 @@
(define %jami-version "20200710.1.6bd18d2") (define %jami-version "20200710.1.6bd18d2")
(define* (jami-source #:key without-daemon) (define* (jami-source #:key keep-contrib-patches?)
"Return an origin object of the tarball release sources archive of Jami.
When KEEP-CONTRIB-PATCHES? is #t, do not completely remove the contrib
subdirectory, which contains patches to be applied to some of the dependencies
of Jami."
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://dl.jami.net/release/tarballs/jami_" (uri (string-append "https://dl.jami.net/release/tarballs/jami_"
@ -73,15 +77,28 @@
".tar.gz")) ".tar.gz"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
(if without-daemon `(begin
'(begin ;; Delete over 200 MiB of bundled tarballs. The contrib directory
;; contains the custom patches for pjproject and other libraries used
;; by Savoir-faire Linux.
(if ,keep-contrib-patches?
(delete-file-recursively "daemon/contrib/tarballs")
(delete-file-recursively "daemon/contrib")) (delete-file-recursively "daemon/contrib"))
#f)) ;; Remove code from unused Jami clients.
(for-each delete-file-recursively '("client-android"
"client-macosx"
"client-uwp"
"client-windows"))
#t))
(sha256 (sha256
(base32 (base32
"0lg61jv39x7kc9lq30by246xb6gcgp1rzj49ak7ff8nqpfzyfvva")))) "0lg61jv39x7kc9lq30by246xb6gcgp1rzj49ak7ff8nqpfzyfvva"))))
;; Savoir-Faire Linux modifies many libraries to add features (define %sfl-patches (jami-source #:keep-contrib-patches? #t))
(define %jami-sources (jami-source))
;; Savoir-faire Linux modifies many libraries to add features
;; to Jami. This procedure makes applying patches to a given ;; to Jami. This procedure makes applying patches to a given
;; package easy. ;; package easy.
(define jami-apply-dependency-patches (define jami-apply-dependency-patches
@ -105,7 +122,7 @@
(inherit pjproject) (inherit pjproject)
(name "pjproject-jami") (name "pjproject-jami")
(native-inputs (native-inputs
`(("sfl-patches" ,(jami-source)) `(("sfl-patches" ,%sfl-patches)
,@(package-native-inputs pjproject))) ,@(package-native-inputs pjproject)))
(arguments (arguments
(substitute-keyword-arguments (package-arguments pjproject) (substitute-keyword-arguments (package-arguments pjproject)
@ -352,7 +369,7 @@
(inherit ffmpeg) (inherit ffmpeg)
(name "ffmpeg-jami") (name "ffmpeg-jami")
(native-inputs (native-inputs
`(("sfl-patches" ,(jami-source)) `(("sfl-patches" ,%sfl-patches)
("libiconv" ,libiconv) ("libiconv" ,libiconv)
,@(package-native-inputs ffmpeg))) ,@(package-native-inputs ffmpeg)))
(supported-systems '("x86_64-linux" "i686-linux" (supported-systems '("x86_64-linux" "i686-linux"
@ -387,7 +404,7 @@
(package (package
(name "libring") (name "libring")
(version %jami-version) (version %jami-version)
(source (jami-source #:without-daemon #t)) (source %jami-sources)
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("alsa-lib" ,alsa-lib) `(("alsa-lib" ,alsa-lib)