From: Amar Singh <nly@disroot.org>
To: 37094@debbugs.gnu.org
Cc: mike.rosset@gmail.com
Subject: [bug#37094] [PATCH 1-3/3] Add nomad
Date: Wed, 21 Aug 2019 14:04:47 +0530 [thread overview]
Message-ID: <855zmqsyqg.fsf@disroot.org> (raw)
In-Reply-To: <85sgpwcoqz.fsf@disroot.org>
[-- Attachment #1: Type: text/plain, Size: 154 bytes --]
After a few suggestions from Mike and Janneke:
1. Rename guile-emacsy --> emacsy-minimal
2. Removed glib-or-gtk-build-system in patch 004
cheers,
amar
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-emacsy-minimal.patch --]
[-- Type: text/x-patch, Size: 2067 bytes --]
From 7040563cb1386c672c75ddb141b235d5895adfdf Mon Sep 17 00:00:00 2001
From: Amar Singh <nly@disroot.org>
Date: Mon, 8 Jul 2019 12:04:56 +0530
Subject: [PATCH 1/4] gnu: Add emacsy-minimal.
* (guile-emacsy): New variable.
Emacsy is a library for Guile. Emacsy package is too heavy for use as a
dependency for other packages:
$ guix size emacsy ... total: 1136.3 MiB
versus:
$ guix size guile-emacsy ... total: 132.3 MiB
---
gnu/packages/guile-xyz.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 16e30b9de7..77a765b52c 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2377,6 +2377,36 @@ comes with a simple counter example using FreeGLUT and browser examples
in C using Gtk+-3 and WebKitGtk.")
(license license:gpl3+)))
+(define-public emacsy-minimal
+ (let ((commit "f3bf0dbd803d7805b6ae8303253507ad13922293"))
+ (package
+ (inherit emacsy)
+ (name "emacsy-minimal")
+ (version (git-version "v0.4.1" "19" commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/emacsy.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ivy28km1p7nlrf63xx3hvrpxf5ld5amk1wcan3k7sqv1kq9mqdb"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("guile" ,guile-2.2)
+ ("guile-lib" ,guile-lib)
+ ("guile-readline" ,guile-readline)))
+ (propagated-inputs '())
+ (arguments
+ `(#:configure-flags '("--without-examples")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'setenv
+ (lambda _
+ (setenv "GUILE_AUTO_COMPILE" "0")
+ #t))))))))
+
(define-public guile-jpeg
(let ((commit "6a1673578b297c2c1b28e44a76bd5c49e76a5046")
(revision "0"))
--
2.22.1
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-shroud-Update-to-0.1.2.patch --]
[-- Type: text/x-patch, Size: 2638 bytes --]
From faba8ff1ef7ceedd4b3dc861d77d4a16a8f2fa0d Mon Sep 17 00:00:00 2001
From: Amar Singh <nly@disroot.org>
Date: Sun, 11 Aug 2019 03:44:16 +0530
Subject: [PATCH 2/4] gnu: shroud: Update to 0.1.2.
* gnu/packages/password-utils.scm (shroud): Update to 0.1.2.
Shroud now builds with Guile-2.2. Remove hardcoded '2.0' string.
---
gnu/packages/password-utils.scm | 24 ++++++++++++++++++------
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 49024b26c4..6ca16025ef 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -236,28 +236,40 @@ platforms.")
(define-public shroud
(package
(name "shroud")
- (version "0.1.1")
+ (version "0.1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dthompson.us/shroud/shroud-"
version ".tar.gz"))
(sha256
(base32
- "1y43yhgy2zbrk5bqj3qyx9rkcz2bma9sinlrg7dip3jqms9gq4lr"))))
+ "1l2shrhvcwfzkar9qiwb75nhcqmx25iz55lzmz0c187nbjhqzi9p"))))
(build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
(arguments
- '(#:phases
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 popen)
+ (ice-9 rdelim))
+ #:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-shroud
- (lambda* (#:key outputs #:allow-other-keys)
+ (lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
- (ccachedir (string-append out "/lib/guile/2.0/ccache"))
+ (guile (assoc-ref inputs "guile"))
+ (effective (read-line
+ (open-pipe* OPEN_READ
+ (string-append guile "/bin/guile")
+ "-c" "(display (effective-version))")))
+ (ccachedir (string-append out
+ "/lib/guile/" effective "/site-ccache"))
(prog (string-append out "/bin/shroud")))
(wrap-program prog
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,ccachedir)))
#t))))))
(inputs
- `(("guile" ,guile-2.0)
+ `(("guile" ,guile-2.2)
("gnupg" ,gnupg)
("xclip" ,xclip)))
(synopsis "GnuPG-based secret manager")
--
2.22.1
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0003-gnu-Add-nomad.patch --]
[-- Type: text/x-patch, Size: 5240 bytes --]
From ede5e0fd3234d82bd7158f0a58f58efc27d26850 Mon Sep 17 00:00:00 2001
From: Amar Singh <nly@disroot.org>
Date: Wed, 10 Jul 2019 16:46:35 +0530
Subject: [PATCH 3/4] gnu: Add nomad.
* gnu/packages/guile-xyz.scm (nomad): New variable.
---
gnu/packages/guile-xyz.scm | 91 ++++++++++++++++++++++++++++++++++++++
1 file changed, 91 insertions(+)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 77a765b52c..573dd461ad 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -58,6 +58,7 @@
#:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages hurd)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
@@ -70,6 +71,7 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages noweb)
+ #:use-module (gnu packages password-utils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -2440,3 +2442,92 @@ in C using Gtk+-3 and WebKitGtk.")
"Guile-JPEG is a Scheme library to parse JPEG image files and to
perform geometrical transforms on JPEG images.")
(license license:gpl3+))))
+
+(define-public nomad
+ (package
+ (name "nomad")
+ (version "v0.1.0-alpha")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/nomad.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0bffysgq3swpx2qyi8fnkyjfsla92haqhdq17m31wa3yzkpqq3a6"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("bash" ,bash)
+ ("pkg-config" ,pkg-config)
+ ("libtool" ,libtool)
+ ("guile" ,guile-2.2)
+ ("glib:bin" ,glib "bin")))
+ (inputs
+ `(("guile" ,guile-2.2)
+ ("guile-lib" ,guile-lib)
+ ("guile-gcrypt" ,guile-gcrypt)
+ ("guile-readline" ,guile-readline)
+ ("gnutls" ,gnutls)
+ ("shroud" ,shroud)
+ ("emacsy" ,emacsy-minimal)
+ ("glib" ,glib)
+ ("dbus-glib" ,dbus-glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("webkitgtk" ,webkitgtk)
+ ("xorg-server" ,xorg-server)))
+ (propagated-inputs
+ `(("glib-networking" ,glib-networking)
+ ("gsettings-desktop-schemas"
+ ,gsettings-desktop-schemas)))
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 popen)
+ (ice-9 rdelim)
+ (srfi srfi-26))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'start-xorg-server
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; The test suite requires a running X server.
+ (system (format #f "~a/bin/Xvfb :1 &"
+ (assoc-ref inputs "xorg-server")))
+ (setenv "DISPLAY" ":1")
+ #t))
+ (add-after 'install 'wrap-binaries
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (gio-deps (map (cut assoc-ref inputs <>) '("glib-networking" "glib")))
+ (gio-mod-path (map (cut string-append <> "/lib/gio/modules")
+ gio-deps))
+ (effective (read-line (open-pipe* OPEN_READ
+ "guile" "-c"
+ "(display (effective-version))")))
+ (deps (map (cut assoc-ref inputs <>) '("emacsy" "guile-lib"
+ "guile-readline" "shroud")))
+ (scm-path (map (cut string-append <>
+ "/share/guile/site/" effective)
+ `(,out ,@deps)))
+ (go-path (map (cut string-append <>
+ "/lib/guile/" effective "/site-ccache")
+ `(,out ,@deps)))
+ (progs (map (cut string-append out "/bin/" <>)
+ '("nomad"))))
+ (map (cut wrap-program <>
+ `("GIO_EXTRA_MODULES" ":" prefix ,gio-mod-path)
+ `("GUILE_LOAD_PATH" ":" prefix ,scm-path)
+ `("GUILE_LOAD_COMPILED_PATH" ":"
+ prefix ,go-path))
+ progs)
+ #t))))))
+ (home-page "https://savannah.nongnu.org/projects/nomad/")
+ (synopsis "Extensible Web Browser in Guile Scheme")
+ (description "Nomad is an Emacs-like Web Browser built using Webkitgtk and
+Emacsy. It has a small C layer and most browser features are fully
+programmable in Guile. It has hooks, keymaps, and self documentation
+features.")
+ (license license:gpl3+)))
--
2.22.1
[-- Attachment #5: 0004-gnu-emacsy-cleanup-build.patch --]
[-- Type: text/x-patch, Size: 3697 bytes --]
From b082d2b141f87f91330e8416c40622b6213c9c9c Mon Sep 17 00:00:00 2001
From: Amar Singh <nly@disroot.org>
Date: Wed, 10 Jul 2019 16:45:50 +0530
Subject: [PATCH 4/4] gnu: emacsy: cleanup build
fix conflicts; emacsy requires guile-2.2.4 but found guile-2.2.6 in profile etc.
build: add phase 'wrap-binaries
bulid: glib-or-gtk-build-system wraps binaries to work with glib or gtk
propagated-inputs: remove all but glib-network and gsettings
---
gnu/packages/guile-xyz.scm | 37 ++++++++++++++++++++++++++++++++-----
1 file changed, 32 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 573dd461ad..88fc2eef2a 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -21,6 +21,7 @@
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 swedebugia <swedebugia@riseup.net>
+;;; Copyright (C) 2019 by Amar Singh<nly@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2352,22 +2353,48 @@ more expressive and flexible than the traditional @code{format} procedure.")
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)
("texlive" ,(texlive-union (list texlive-generic-epsf)))))
- (propagated-inputs
+ (inputs
`(("dbus-glib" ,dbus-glib)
("guile" ,guile-2.2)
("guile-lib" ,guile-lib)
("guile-readline" ,guile-readline)
- ("glib-networking" ,glib-networking)
("freeglut" ,freeglut)
- ("gssettings-desktop-schemas" ,gsettings-desktop-schemas)
("webkitgtk" ,webkitgtk)))
+ (propagated-inputs
+ `(("glib-networking" ,glib-networking)
+ ("gssettings-desktop-schemas" ,gsettings-desktop-schemas)))
(arguments
- `(#:phases
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 popen)
+ (ice-9 rdelim)
+ (ice-9 regex)
+ (ice-9 ftw)
+ (srfi srfi-26))
+ #:phases
(modify-phases %standard-phases
(add-before 'configure 'setenv
(lambda _
(setenv "GUILE_AUTO_COMPILE" "0")
- #t)))))
+ #t))
+ (add-after 'install 'wrap-binaries
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (effective (read-line
+ (open-pipe* OPEN_READ
+ "guile" "-c"
+ "(display (effective-version))")))
+ (deps (map (cut assoc-ref inputs <>) '("guile-lib" "guile-readline")))
+ (scm-path (map (cut string-append <> "/share/guile/site/" effective) `(,out ,@deps)))
+ (go-path (map (cut string-append <> "/lib/guile/" effective "/site-ccache/") `(,out ,@deps)))
+ (examples (filter (cut string-match "emacsy" <>)
+ (scandir (string-append out "/bin/"))))
+ (progs (map (cut string-append out "/bin/" <>)
+ examples)))
+ (map (cut wrap-program <>
+ `("GUILE_LOAD_PATH" ":" prefix ,scm-path)
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix ,go-path)) progs)
+ #t))))))
(home-page "https://savannah.nongnu.org/projects/emacsy")
(synopsis "Embeddable GNU Emacs-like library using Guile")
(description
--
2.22.1
next prev parent reply other threads:[~2019-08-21 8:36 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-20 6:52 [bug#37094] [PATCH 1-3/3] gnu: Add nomad Amar Singh
2019-08-21 1:27 ` [bug#37094] [PATCH 1-1] " Amar Singh
2019-08-21 8:34 ` Amar Singh [this message]
2019-08-21 16:53 ` [bug#37094] [PATCH 1-3/3] " Mike Rosset
2019-08-22 16:47 ` Mike Rosset
2019-08-25 20:48 ` Ludovic Courtès
2019-08-27 15:09 ` Jan Nieuwenhuizen
2019-08-27 15:06 ` bug#37094: " Jan Nieuwenhuizen
2019-08-27 15:25 ` [bug#37094] " Amar Singh
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=855zmqsyqg.fsf@disroot.org \
--to=nly@disroot.org \
--cc=37094@debbugs.gnu.org \
--cc=mike.rosset@gmail.com \
/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 public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).