Message ID | 02ab6d7a2efc2d402f967841fcffd8837d28d61a.1698597871.git.vivien@planete-kraus.eu |
---|---|
State | New |
Headers | show |
Series | Add GNOME Calls | expand |
Am Sonntag, dem 29.10.2023 um 12:04 +0100 schrieb Vivien Kraus: > * gnu/packages/gnome.scm (libcallaudio): New variable. > > Change-Id: I6f0485e4c73536c576713005cf7cd74610923a21 > --- > gnu/packages/gnome.scm | 82 > ++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 82 insertions(+) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index 8092715795..2536b8f98d 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -13463,3 +13463,85 @@ (define-public xffm+ > (home-page "http://xffm.org/") > (license license:gpl3+) > (properties '((upstream-name . "xffm"))))) > + > +(define-public calls > + (package > + (name "calls") > + (version "45.0") Version 45 is nice and all, but perhaps we should stick to 44 if we can build that with less hassle. > + (source (origin > + (method url-fetch) > + (uri (string-append "mirror://gnome/sources/" name "/" > + (version-major version) "/" > + name "-" version ".tar.xz")) > + (sha256 > + (base32 > + > "1mvnrm5wbl69xbcjg8nxd6l6nj2fd3whbyh70axlm75c7l7d5j5r")))) > + (build-system meson-build-system) > + (arguments > + (list > + #:glib-or-gtk? #t > + #:configure-flags #~'("-Dgtk_doc=true") > + #:phases > + #~(modify-phases %standard-phases > + (add-after 'unpack 'unpack-gmobile > + (lambda _ > + (copy-recursively > + #$(origin > + (method git-fetch) > + (uri (git-reference > + (url > "https://gitlab.gnome.org/World/Phosh/libcall-ui") > + (commit > "6798b38d4d66d069751151b3e9a202c6de8d7f3c"))) > + (file-name (git-file-name "libcall-ui" version)) > + (sha256 > + (base32 > + > "0zfrxh77ag8garqj319amnxjcdyp3ig12dkxfkl6wbwn1mvyrwx8"))) > + "subprojects/libcall-ui"))) > + (add-after 'unpack 'disable-failing-test > + (lambda _ > + ;; 3 tests fail with: Could not create pipeline: Could > not create > + ;; 'srtpdec' element of type srtpdec > + (substitute* "plugins/provider/tests/meson.build" > + (("^test\\('media'") > + "# test('media'") > + (("^test\\('sip'") > + "# test('sip'")) This looks like a broken GStreamer dependency. I'd hazard a guess that the application itself will fail as well. srtpdec is part of the bad gstreamer plugins, you can probably use gst-plugins/selection to not pull in all of the plugins. > + (call-with-output-file "tests/test-application.c" > + (lambda (port) > + (format port "int main(void) { return 0; }"))))) Uhm… yeah… > + (add-before 'check 'pre-check > + (lambda _ > + (setenv "HOME" (getcwd)) > + ;; Tests require a running X server. > + (system "Xvfb :1 &") > + (setenv "DISPLAY" ":1")))))) > + (inputs > + (list evolution-data-server > + feedbackd > + folks > + glib > + gom > + gstreamer > + gst-plugins-base > + gst-plugins-good > + gtk+ > + libgee > + libpeas > + (@ (gnu packages telephony) libcallaudio) > + libhandy > + modem-manager > + (@ (gnu packages telephony) sofia-sip))) > + (native-inputs > + (list desktop-file-utils ; update-desktop-database > + gettext-minimal > + `(,glib "bin") ; glib-mkenums > + gtk-doc ; gtkdoc-scan > + `(,gtk+ "bin") ; gtk-update-icon-cache > + pkg-config > + python-docutils ; rst2man > + vala > + xorg-server-for-tests)) > + (home-page "https://gitlab.gnome.org/GNOME/calls") > + (synopsis "Phone dialer and call handler") > + (description "Calls can make and answer phone calls using > different backends, such as > +ModemManager for phones and SIP for VoIP.") > + (license license:gpl3))) No +? Cheers
Hi Vivien, Vivien Kraus <vivien@planete-kraus.eu> writes: > * gnu/packages/gnome.scm (libcallaudio): New variable. > > Change-Id: I6f0485e4c73536c576713005cf7cd74610923a21 > --- > gnu/packages/gnome.scm | 82 ++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 82 insertions(+) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index 8092715795..2536b8f98d 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -13463,3 +13463,85 @@ (define-public xffm+ > (home-page "http://xffm.org/") > (license license:gpl3+) > (properties '((upstream-name . "xffm"))))) > + > +(define-public calls > + (package > + (name "calls") > + (version "45.0") > + (source (origin > + (method url-fetch) > + (uri (string-append "mirror://gnome/sources/" name "/" > + (version-major version) "/" > + name "-" version ".tar.xz")) > + (sha256 > + (base32 > + "1mvnrm5wbl69xbcjg8nxd6l6nj2fd3whbyh70axlm75c7l7d5j5r")))) > + (build-system meson-build-system) > + (arguments > + (list > + #:glib-or-gtk? #t > + #:configure-flags #~'("-Dgtk_doc=true") > + #:phases > + #~(modify-phases %standard-phases > + (add-after 'unpack 'unpack-gmobile > + (lambda _ > + (copy-recursively > + #$(origin > + (method git-fetch) > + (uri (git-reference > + (url "https://gitlab.gnome.org/World/Phosh/libcall-ui") > + (commit "6798b38d4d66d069751151b3e9a202c6de8d7f3c"))) > + (file-name (git-file-name "libcall-ui" version)) > + (sha256 > + (base32 > + "0zfrxh77ag8garqj319amnxjcdyp3ig12dkxfkl6wbwn1mvyrwx8"))) > + "subprojects/libcall-ui"))) > + (add-after 'unpack 'disable-failing-test > + (lambda _ > + ;; 3 tests fail with: Could not create pipeline: Could not create > + ;; 'srtpdec' element of type srtpdec Nitpick: I'd double-quote the error and add a trailing '.'. It'd be nice to understand where this error comes from; e.g. is it because we're not building gstreamer with an optional dependency? > + (substitute* "plugins/provider/tests/meson.build" > + (("^test\\('media'") > + "# test('media'") > + (("^test\\('sip'") > + "# test('sip'")) > + (call-with-output-file "tests/test-application.c" > + (lambda (port) > + (format port "int main(void) { return 0; }"))))) > + (add-before 'check 'pre-check > + (lambda _ > + (setenv "HOME" (getcwd)) > + ;; Tests require a running X server. > + (system "Xvfb :1 &") > + (setenv "DISPLAY" ":1")))))) > + (inputs > + (list evolution-data-server > + feedbackd > + folks > + glib > + gom > + gstreamer > + gst-plugins-base > + gst-plugins-good > + gtk+ > + libgee > + libpeas Same comment as earlier about the @ import hack, but I guess there was a cyclic problem, as something in (gnu packages telephony) is not following the rules laid in (info 'guix (Cyclic Module Dependencies)'). The problem likely stems from the ffmpeg-jami variant that inherits ffmpeg from a different module (these are top level references and *not* delayed). > + (@ (gnu packages telephony) libcallaudio) > + libhandy > + modem-manager > + (@ (gnu packages telephony) sofia-sip))) > + (native-inputs > + (list desktop-file-utils ; update-desktop-database > + gettext-minimal > + `(,glib "bin") ; glib-mkenums > + gtk-doc ; gtkdoc-scan > + `(,gtk+ "bin") ; gtk-update-icon-cache > + pkg-config > + python-docutils ; rst2man Nitpick: Ensure at least 2 leading spaces before a ';' inline comment. I like to use M-; in Emacs to produce those, as it also aligns them. I also don't put a space between the ';' and the *inline* comment. Otherwise, LGTM. I'll be looking forward to try it!
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 8092715795..2536b8f98d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -13463,3 +13463,85 @@ (define-public xffm+ (home-page "http://xffm.org/") (license license:gpl3+) (properties '((upstream-name . "xffm"))))) + +(define-public calls + (package + (name "calls") + (version "45.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1mvnrm5wbl69xbcjg8nxd6l6nj2fd3whbyh70axlm75c7l7d5j5r")))) + (build-system meson-build-system) + (arguments + (list + #:glib-or-gtk? #t + #:configure-flags #~'("-Dgtk_doc=true") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'unpack-gmobile + (lambda _ + (copy-recursively + #$(origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/World/Phosh/libcall-ui") + (commit "6798b38d4d66d069751151b3e9a202c6de8d7f3c"))) + (file-name (git-file-name "libcall-ui" version)) + (sha256 + (base32 + "0zfrxh77ag8garqj319amnxjcdyp3ig12dkxfkl6wbwn1mvyrwx8"))) + "subprojects/libcall-ui"))) + (add-after 'unpack 'disable-failing-test + (lambda _ + ;; 3 tests fail with: Could not create pipeline: Could not create + ;; 'srtpdec' element of type srtpdec + (substitute* "plugins/provider/tests/meson.build" + (("^test\\('media'") + "# test('media'") + (("^test\\('sip'") + "# test('sip'")) + (call-with-output-file "tests/test-application.c" + (lambda (port) + (format port "int main(void) { return 0; }"))))) + (add-before 'check 'pre-check + (lambda _ + (setenv "HOME" (getcwd)) + ;; Tests require a running X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1")))))) + (inputs + (list evolution-data-server + feedbackd + folks + glib + gom + gstreamer + gst-plugins-base + gst-plugins-good + gtk+ + libgee + libpeas + (@ (gnu packages telephony) libcallaudio) + libhandy + modem-manager + (@ (gnu packages telephony) sofia-sip))) + (native-inputs + (list desktop-file-utils ; update-desktop-database + gettext-minimal + `(,glib "bin") ; glib-mkenums + gtk-doc ; gtkdoc-scan + `(,gtk+ "bin") ; gtk-update-icon-cache + pkg-config + python-docutils ; rst2man + vala + xorg-server-for-tests)) + (home-page "https://gitlab.gnome.org/GNOME/calls") + (synopsis "Phone dialer and call handler") + (description "Calls can make and answer phone calls using different backends, such as +ModemManager for phones and SIP for VoIP.") + (license license:gpl3)))