gnu: pjproject-jami: Update and relocate.
* gnu/packages/jami.scm (pjproject-jami): Move to... * gnu/packages/telephony.scm (pjproject-jami): ... here. Update to latest commit. [arguments]: Use same configure flags as done in Jami/DhtNet projects. Change-Id: I638364ebc94f17762ee072311b5fe439b7c6f837
This commit is contained in:
		
							parent
							
								
									88f294cc14
								
							
						
					
					
						commit
						202b16e31a
					
				
					 2 changed files with 70 additions and 37 deletions
				
			
		| 
						 | 
					@ -106,42 +106,6 @@
 | 
				
			||||||
                            (string-append patches-directory "/" f ".patch")))
 | 
					                            (string-append patches-directory "/" f ".patch")))
 | 
				
			||||||
                  patches))))
 | 
					                  patches))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public pjproject-jami
 | 
					 | 
				
			||||||
  (let ((commit "e4b83585a0bdf1523e808a4fc1946ec82ac733d0")
 | 
					 | 
				
			||||||
        (revision "3"))
 | 
					 | 
				
			||||||
    (package
 | 
					 | 
				
			||||||
      (inherit pjproject)
 | 
					 | 
				
			||||||
      (name "pjproject-jami")
 | 
					 | 
				
			||||||
      (version (git-version "2.12" revision commit))
 | 
					 | 
				
			||||||
      (source (origin
 | 
					 | 
				
			||||||
                (inherit (package-source pjproject))
 | 
					 | 
				
			||||||
                ;; The Jami development team regularly issues patches to
 | 
					 | 
				
			||||||
                ;; pjproject to extend the its functionality and fix bugs;
 | 
					 | 
				
			||||||
                ;; they are submitted for inclusion upstream but larger
 | 
					 | 
				
			||||||
                ;; patches take time to be reviewed and merged, hence this
 | 
					 | 
				
			||||||
                ;; forked repository.
 | 
					 | 
				
			||||||
                (method git-fetch)
 | 
					 | 
				
			||||||
                (uri (git-reference
 | 
					 | 
				
			||||||
                      (url "https://github.com/savoirfairelinux/pjproject")
 | 
					 | 
				
			||||||
                      (commit commit)))
 | 
					 | 
				
			||||||
                (file-name (git-file-name name version))
 | 
					 | 
				
			||||||
                (sha256
 | 
					 | 
				
			||||||
                 (base32
 | 
					 | 
				
			||||||
                  "0gky5idyyqxhqk959lzys5l7x1i925db773lfdpvxxmkmfizdq21"))))
 | 
					 | 
				
			||||||
      (arguments
 | 
					 | 
				
			||||||
       (substitute-keyword-arguments (package-arguments pjproject)
 | 
					 | 
				
			||||||
         ((#:phases phases '%standard-phases)
 | 
					 | 
				
			||||||
          #~(modify-phases #$phases
 | 
					 | 
				
			||||||
              (add-after 'unpack 'apply-patches
 | 
					 | 
				
			||||||
                (lambda _
 | 
					 | 
				
			||||||
                  (#$jami-apply-custom-patches
 | 
					 | 
				
			||||||
                   #:dep-name "pjproject"
 | 
					 | 
				
			||||||
                   #:patches
 | 
					 | 
				
			||||||
                   ;; This adds a config_site.h configuration file that sets
 | 
					 | 
				
			||||||
                   ;; constants such as PJ_ICE_MAX_CAND that cannot be
 | 
					 | 
				
			||||||
                   ;; configured at build time.
 | 
					 | 
				
			||||||
                   '("0009-add-config-site")))))))))))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; The following variables are configure flags used by ffmpeg-jami.  They're
 | 
					;; The following variables are configure flags used by ffmpeg-jami.  They're
 | 
				
			||||||
;; from the jami/daemon/contrib/src/ffmpeg/rules.mak file.  We try to keep it
 | 
					;; from the jami/daemon/contrib/src/ffmpeg/rules.mak file.  We try to keep it
 | 
				
			||||||
;; as close to the official Jami package as possible, to provide all the
 | 
					;; as close to the official Jami package as possible, to provide all the
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,7 +17,7 @@
 | 
				
			||||||
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
 | 
					;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
 | 
				
			||||||
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
 | 
					;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
 | 
				
			||||||
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
 | 
					;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
 | 
				
			||||||
;;; Copyright © 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 | 
					;;; Copyright © 2020, 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
					;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
				
			||||||
;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
 | 
					;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
 | 
				
			||||||
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 | 
					;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 | 
				
			||||||
| 
						 | 
					@ -855,6 +855,75 @@ your calls and messages.")
 | 
				
			||||||
Initiation Protocol (SIP) and a multimedia framework.")
 | 
					Initiation Protocol (SIP) and a multimedia framework.")
 | 
				
			||||||
    (license license:gpl2+)))
 | 
					    (license license:gpl2+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public pjproject-jami
 | 
				
			||||||
 | 
					  (let ((commit "d044ad6c5b4221648c555da16196804e4721299c")
 | 
				
			||||||
 | 
					        (revision "0"))
 | 
				
			||||||
 | 
					    (package
 | 
				
			||||||
 | 
					      (inherit pjproject)
 | 
				
			||||||
 | 
					      (name "pjproject-jami")
 | 
				
			||||||
 | 
					      ;; The version is taken from
 | 
				
			||||||
 | 
					      ;; <https://raw.githubusercontent.com/savoirfairelinux/pjproject/master/version.mak>.
 | 
				
			||||||
 | 
					      (version (git-version "2.13.1" revision commit))
 | 
				
			||||||
 | 
					      (source (origin
 | 
				
			||||||
 | 
					                (inherit (package-source pjproject))
 | 
				
			||||||
 | 
					                ;; The Jami development team regularly issues patches to
 | 
				
			||||||
 | 
					                ;; pjproject to extend the its functionality and fix bugs;
 | 
				
			||||||
 | 
					                ;; they are submitted for inclusion upstream but larger
 | 
				
			||||||
 | 
					                ;; patches take time to be reviewed and merged, hence this
 | 
				
			||||||
 | 
					                ;; forked repository.
 | 
				
			||||||
 | 
					                (method git-fetch)
 | 
				
			||||||
 | 
					                (uri (git-reference
 | 
				
			||||||
 | 
					                      (url "https://github.com/savoirfairelinux/pjproject")
 | 
				
			||||||
 | 
					                      (commit commit)))
 | 
				
			||||||
 | 
					                (file-name (git-file-name name version))
 | 
				
			||||||
 | 
					                (sha256
 | 
				
			||||||
 | 
					                 (base32
 | 
				
			||||||
 | 
					                  "0z4d7wdpa2mlaygb283k0j8n3l6q68gn0xqd62b5ngqvkhlaf775"))))
 | 
				
			||||||
 | 
					      (arguments
 | 
				
			||||||
 | 
					       (substitute-keyword-arguments (package-arguments pjproject)
 | 
				
			||||||
 | 
					         ((#:configure-flags _ ''())
 | 
				
			||||||
 | 
					          ;; This package is tailored for DhtNet; see how it is built for its
 | 
				
			||||||
 | 
					          ;; CI in
 | 
				
			||||||
 | 
					          ;; <https://git.jami.net/savoirfairelinux/dhtnet/-/raw/master/Dockerfile>.
 | 
				
			||||||
 | 
					          #~(list
 | 
				
			||||||
 | 
					             ;; Some flags preserved flags from parent package.
 | 
				
			||||||
 | 
					             "--with-external-srtp"
 | 
				
			||||||
 | 
					             #$@(if (string-contains (or (%current-system)
 | 
				
			||||||
 | 
					                                         (%current-target-system)) "linux")
 | 
				
			||||||
 | 
					                    #~("--enable-epoll")
 | 
				
			||||||
 | 
					                    #~())
 | 
				
			||||||
 | 
					             "--with-gnutls"            ;disable OpenSSL checks
 | 
				
			||||||
 | 
					             ;; -DNDEBUG is set to prevent pjproject from raising
 | 
				
			||||||
 | 
					             ;; assertions that aren't critical, crashing
 | 
				
			||||||
 | 
					             ;; applications as the result.
 | 
				
			||||||
 | 
					             "CFLAGS=-DNDEBUG"
 | 
				
			||||||
 | 
					             ;; Specify a runpath reference to itself, which is missing and
 | 
				
			||||||
 | 
					             ;; causes the validate-runpath phase to fail.
 | 
				
			||||||
 | 
					             (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib")
 | 
				
			||||||
 | 
					             "--enable-shared"
 | 
				
			||||||
 | 
					             "--disable-libyuv"         ;TODO: add missing package
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					             ;; These flags are specific to DhtNet.
 | 
				
			||||||
 | 
					             "--disable-sound"
 | 
				
			||||||
 | 
					             "--enable-video"
 | 
				
			||||||
 | 
					             "--enable-ext-sound"
 | 
				
			||||||
 | 
					             "--disable-speex-aec"
 | 
				
			||||||
 | 
					             "--disable-g711-codec"
 | 
				
			||||||
 | 
					             "--disable-l16-codec"
 | 
				
			||||||
 | 
					             "--disable-gsm-codec"
 | 
				
			||||||
 | 
					             "--disable-g722-codec"
 | 
				
			||||||
 | 
					             "--disable-g7221-codec"
 | 
				
			||||||
 | 
					             "--disable-speex-codec"
 | 
				
			||||||
 | 
					             "--disable-ilbc-codec"
 | 
				
			||||||
 | 
					             "--disable-opencore-amr"
 | 
				
			||||||
 | 
					             "--disable-silk"
 | 
				
			||||||
 | 
					             "--disable-sdl"
 | 
				
			||||||
 | 
					             "--disable-ffmpeg"
 | 
				
			||||||
 | 
					             "--disable-v4l2"
 | 
				
			||||||
 | 
					             "--disable-openh264"
 | 
				
			||||||
 | 
					             "--disable-resample"
 | 
				
			||||||
 | 
					             "--disable-libwebrtc")))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public libtgvoip
 | 
					(define-public libtgvoip
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "libtgvoip")
 | 
					    (name "libtgvoip")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Reference in a new issue