From: maxim.cournoyer@gmail.com
To: Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
Cc: 42229@debbugs.gnu.org
Subject: [bug#42229] [PATCH 8/9] gnu: jami: Fix compilation by providing necessary webchat files.
Date: Tue, 04 Aug 2020 00:40:25 -0400 [thread overview]
Message-ID: <87zh7bdnwm.fsf@hurd.i-did-not-set--mail-host-address--so-tickle-me> (raw)
In-Reply-To: <20200706155030.1938-8-tona_kosmicznego_smiecia@interia.pl> (Jan Wielkiewicz's message of "Mon, 6 Jul 2020 17:50:29 +0200")
Hello Jan!
Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl> writes:
> * gnu/packages/jami.scm (define-module): Add copy-build-system.
> (libringclient)[source]: Delete chatview files.
> [arguments]: Remove chatview files from CMakeLists.txt.
> (jami-chatview): New variable.
> (jami)[source]: Delete chatview directory.
> [inputs]: Add jami-chatview.
> [arguments]: Copu chatview files to destination.
> ---
> gnu/packages/jami.scm | 80 ++++++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 79 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/jami.scm b/gnu/packages/jami.scm
> index ea94efb2f9..58e10ae6d8 100644
> --- a/gnu/packages/jami.scm
> +++ b/gnu/packages/jami.scm
> @@ -56,6 +56,7 @@
> #:use-module (gnu packages xorg)
> #:use-module (gnu packages)
> #:use-module (guix build-system cmake)
> + #:use-module (guix build-system copy)
> #:use-module (guix build-system gnu)
> #:use-module (guix download)
> #:use-module (guix git-download)
> @@ -526,6 +527,16 @@ functionality.")
> (url "https://review.jami.net/ring-lrc")
> (commit commit)))
> (file-name (git-file-name name version))
> + (modules '((guix build utils)))
> + ;; The chatview is a common code among Jami clients.
> + ;; Since Guix likes functional design, I'm removing
> + ;; the directory containing it and making it a new
> + ;; package. The other reason is that there is no
> + ;; any rule in the build system to check if it is
> + ;; included.
> + (snippet
> + '(begin
> + (delete-file-recursively "src/web-chatview")))
> (sha256
> (base32
> "1s1wi80drabfjhvxbiyl8k9c2jsafvmx5v84s3wldsmmdg4f6xdf"))))
> @@ -542,6 +553,21 @@ functionality.")
> (assoc-ref %build-inputs "libring") "/include"))
> #:phases
> (modify-phases %standard-phases
> + (add-after 'unpack 'do-not-install-chatview
> + (lambda _
> + (substitute* "CMakeLists.txt"
> + (("src/web-chatview/.eslintrc.json") "")
> + (("src/web-chatview/chatview-gnome.css") "")
> + (("src/web-chatview/chatview.css") "")
> + (("src/web-chatview/chatview.html") "")
> + (("src/web-chatview/chatview.js") "")
> + (("src/web-chatview/jed.js") "")
> + (("src/web-chatview/linkify-html.js") "")
> + (("src/web-chatview/linkify-string.js") "")
> + (("src/web-chatview/linkify.js") "")
> + (("src/web-chatview/qwebchannel.js") "")
> + (("src/web-chatview/web.gresource.xml") ""))
> + #t))
> (add-before 'configure 'fix-dbus-interfaces-path
> (lambda* (#:key inputs #:allow-other-keys)
> (substitute* "CMakeLists.txt"
> @@ -558,6 +584,40 @@ This package provides a library common to all Jami clients.")
> (home-page "https://jami.net")
> (license license:gpl3+))))
>
> +(define-public jami-chatview
> + (let ((commit "0a790d86a20ae80e5d2ee0d35452fa77cfb8cc40")
> + (revision "0"))
> + (package
> + (name "jami-chatview")
> + (version (git-version %jami-version revision commit))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://review.jami.net/jami-chatview")
> + (commit commit)))
This doesn't seem to be the canonical place to get the latest chatview.
Rather, it lives in the LRC repo [0]. It was copied there sometime in 2019,
and no new commit were made to the repo you used above since.
[0] https://git.jami.net/savoirfairelinux/ring-lrc/commits/master/src/web-chatview
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1zb3qa1x37kclbgk4wdg6qp4ivr6513ypj8s4k0qjps7h2clgna8"))))
> + (build-system copy-build-system)
> + (arguments
> + '(#:phases
> + (modify-phases %standard-phases
> + (add-after 'unpack 'allow-copying
> + (lambda* (#:key inputs #:allow-other-keys)
> + ;; Permissions of this file are not right.
> + ;; Let's change this to allow installing it properly.
> + (chmod ".eslintrc.json" #o644)
> + #t)))
> + #:install-plan '(("." "include/libringclient/web-chatview")
> + (".eslintrc.json"
> + "include/libringclient/web-chatview/.eslintrc.json"))))
> + (synopsis "Chatview for Jami")
> + (description "Web chatview for Jami - html, css, js files.
> +It provides some common code for Jami clients.")
> + (home-page "https://jami.net")
> + (license license:gpl3+))))
> +
> (define-public jami
> (let ((commit "85cda2e1fde84230f6b9f5419f9ec1e23867c2a1")
> (revision "0"))
> @@ -570,6 +630,11 @@ This package provides a library common to all Jami clients.")
> (url "https://review.jami.net/ring-client-gnome")
> (commit commit)))
> (file-name (git-file-name name version))
> + (modules '((guix build utils)))
> + ;; The web directory contains links to nowhere
> + (snippet
> + '(begin
> + (delete-file-recursively "web")))
> (sha256
> (base32
> "0xzcx8x04yc8m8b2vf7sxfgw79idbm0hifzaw4s2vh26hyy9sp2g"))))
> @@ -584,6 +649,8 @@ This package provides a library common to all Jami clients.")
> ("clutter-gtk" ,clutter-gtk)
> ("libcanberra" ,libcanberra)
> ("libnm" ,network-manager)
> + ("jami-chatview" ,jami-chatview)
> + ("qtbase" ,qtbase)
> ("webkitgtk" ,webkitgtk)
> ("sqlite" ,sqlite)))
> (native-inputs
> @@ -596,7 +663,18 @@ This package provides a library common to all Jami clients.")
> ("adwaita-icon-theme" ,adwaita-icon-theme)
> ("evolution-data-server" ,evolution-data-server)))
> (arguments
> - `(#:tests? #f)) ; There is no testsuite.
> + `(#:tests? #f ; There is no testsuite.
> + #:phases
> + (modify-phases %standard-phases
> + (add-after 'unpack 'copy-chatview-files
> + (lambda* (#:key inputs #:allow-other-keys)
> + (let ((chatview
> + (string-append
> + (assoc-ref inputs "jami-chatview")
> + "/include/libringclient/web-chatview"))
> + (destination-dir "web"))
> + (copy-recursively chatview destination-dir))
> + #t)))))
> (synopsis "Distributed, privacy-respecting communication program")
> (description "Jami (formerly GNU Ring) is a secure and distributed voice,
> video and chat communication platform that requires no centralized server and
As I understand it, jami-chatview is *not* maintained as a distinct
component upstream, hence it makes little sense to maintain it as one in
Guix: it'd burden us with maintaining it, with little to no gain. IIUC,
all we need is to symlink the web-chatview from the lrc package, which
every Jami clients will already depend on.
The suggestion I'd make to upstream is to *install* those files as part
of a LRC installation (somewhere under share/), and then have the build
system check for their presence at configure time and use them directly.
Does that make sense?
Maxim
next prev parent reply other threads:[~2020-08-04 4:41 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-06 15:34 [bug#42229] [PATCH 0/9] Jami update and refactor Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 1/9] gnu: libring: Fetch from git, update to 20200702-guix Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 2/9] gnu: libringclient: " Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 3/9] gnu: jami-apply-dependency-patches, ffmpeg-jami, pjproject-jami: Apply patches from the new libring source Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 4/9] gnu: jami: Fetch from git, update to 20200702-guix Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 5/9] gnu: pjproject-jami: Make sure phases are run in order Jan Wielkiewicz
2020-08-04 4:20 ` maxim.cournoyer
2020-08-04 13:05 ` Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 6/9] gnu: jami: Add libnm as input Jan Wielkiewicz
2020-07-06 21:24 ` Christopher Baines
2020-07-10 18:03 ` Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 7/9] gnu: libringclient: Do not propagate qtbase in libringclient Jan Wielkiewicz
2020-07-06 20:56 ` Christopher Baines
2020-07-07 23:13 ` Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 8/9] gnu: jami: Fix compilation by providing necessary webchat files Jan Wielkiewicz
2020-07-06 21:19 ` Christopher Baines
2020-07-07 21:22 ` Jan Wielkiewicz
2020-07-08 19:14 ` Christopher Baines
2020-07-07 23:07 ` Jan Wielkiewicz
2020-08-04 4:40 ` maxim.cournoyer [this message]
2020-08-04 13:02 ` Jan Wielkiewicz
2020-07-06 15:50 ` [bug#42229] [PATCH 9/9] gnu: pjproject-jami: Fix assertion by disabling debugging Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 01/10] gnu: libring: Fetch from git, update to 20200708-guix Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 02/10] gnu: libringclient: Fetch from git, update to 20200702-guix Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 03/10] gnu: jami-apply-dependency-patches, ffmpeg-jami, pjproject-jami: Apply patches from the new libring source Jan Wielkiewicz
2020-07-11 19:52 ` Christopher Baines
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 04/10] gnu: jami: Fetch from git, update to 20200702-guix Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 05/10] gnu: pjproject-jami: Make sure phases are run in order Jan Wielkiewicz
2020-07-11 19:57 ` Christopher Baines
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 06/10] gnu: jami: Add libnm as input Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 07/10] gnu: jami: Fix compilation by providing necessary webchat files Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 08/10] gnu: pjproject-jami: Fix assertion by disabling debugging Jan Wielkiewicz
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 09/10] gnu: opendht: Fix libring compilation Jan Wielkiewicz
2020-07-11 20:12 ` Christopher Baines
2020-07-10 18:32 ` [bug#42229] [[PATCH V2] 10/10] gnu: jami-client-gnome: Remove deprecated package Jan Wielkiewicz
2020-07-11 19:51 ` [bug#42229] [[PATCH V2] 01/10] gnu: libring: Fetch from git, update to 20200708-guix Christopher Baines
2020-07-12 16:00 ` [bug#42229] [[PATCH v3] 1/4] gnu: jami-client-gnome: Remove deprecated package Jan Wielkiewicz
2020-07-12 16:00 ` [bug#42229] [[PATCH v3] 2/4] gnu: opendht: Fix compilation of software using this package Jan Wielkiewicz
2020-07-12 16:00 ` [bug#42229] [[PATCH v3] 3/4] gnu: jami: Bump to 20200710.1.6bd18d2 Jan Wielkiewicz
2020-07-12 16:00 ` [bug#42229] [[PATCH v3] 4/4] gnu: pjproject-jami: Fix assertion bug Jan Wielkiewicz
2020-07-12 19:36 ` [bug#42229] [[PATCH v3] 1/4] gnu: jami-client-gnome: Remove deprecated package Christopher Baines
2021-03-31 5:27 ` bug#42229: [PATCH 0/9] Jami update and refactor Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zh7bdnwm.fsf@hurd.i-did-not-set--mail-host-address--so-tickle-me \
--to=maxim.cournoyer@gmail.com \
--cc=42229@debbugs.gnu.org \
--cc=tona_kosmicznego_smiecia@interia.pl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.