all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add lynx
@ 2014-03-05  8:29 Mark H Weaver
  2014-03-05  9:00 ` Andreas Enge
  2014-03-05 18:47 ` Mark H Weaver
  0 siblings, 2 replies; 6+ messages in thread
From: Mark H Weaver @ 2014-03-05  8:29 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: [PATCH] gnu: Add lynx --]
[-- Type: text/x-patch, Size: 4510 bytes --]

From f357eb3e00edf494430c1d2d42541b3646643a9f Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Wed, 5 Mar 2014 02:16:06 -0500
Subject: [PATCH] gnu: Add lynx.

* gnu/packages/lynx.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
---
 gnu-system.am         |  1 +
 gnu/packages/lynx.scm | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 81 insertions(+)
 create mode 100644 gnu/packages/lynx.scm

diff --git a/gnu-system.am b/gnu-system.am
index becadaa..7b620c3 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -139,6 +139,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/lsof.scm				\
   gnu/packages/lua.scm				\
   gnu/packages/lvm.scm				\
+  gnu/packages/lynx.scm				\
   gnu/packages/m4.scm				\
   gnu/packages/mail.scm				\
   gnu/packages/make-bootstrap.scm		\
diff --git a/gnu/packages/lynx.scm b/gnu/packages/lynx.scm
new file mode 100644
index 0000000..4fe6009
--- /dev/null
+++ b/gnu/packages/lynx.scm
@@ -0,0 +1,80 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages lynx)
+  #:use-module ((guix licenses) #:select (gpl2))
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages libidn)
+  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages zip)
+  #:use-module (gnu packages compression))
+
+(define-public lynx
+  (package
+    (name "lynx")
+    (version "2.8.8")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://lynx.isc.org/lynx" version
+                                  "/lynx" version ".tar.bz2"))
+              (sha256
+               (base32 "00jcfmx4bxnrzywzzlllz3z45a2mc4fl91ca5lrzz1pyr1s1qnm2"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("pkg-config" ,pkg-config)))
+    (inputs `(("ncurses" ,ncurses)
+              ("libidn" ,libidn)
+              ("openssl" ,openssl)
+              ("unzip" ,unzip)
+              ("zlib" ,zlib)
+              ("gzip" ,gzip)
+              ("bzip2" ,bzip2)))
+    (arguments
+     `(#:configure-flags '("--with-pkg-config"
+                           "--with-screen=ncurses"
+                           "--with-zlib"
+                           "--with-bzlib"
+                           ;; "--with-socks5"    ; XXX TODO
+                           "--with-ssl" ; lynx has poor support for gnutls
+                           "--enable-widec"
+                           "--enable-gzip-help"
+                           "--enable-local-docs"
+                           "--enable-nls"
+                           "--enable-ipv6")
+       #:tests? #f  ; no check target
+       #:phases (alist-replace
+                 'install
+                 (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                   (zero? (apply system* "make" "install-full" make-flags)))
+                 %standard-phases)))
+    (synopsis "Text Web Browser")
+    (description
+     "Lynx is a fully-featured World Wide Web (WWW) client for users running
+cursor-addressable, character-cell display devices.  It will display Hypertext
+Markup Language (HTML) documents containing links to files on the local
+system, as well as files on remote systems running http, gopher, ftp, wais,
+nntp, finger, or cso/ph/qi servers.  Lynx can be used to access information on
+the WWW, or to build information systems intended primarily for local
+access.")
+    (home-page "http://lynx.isc.org/")
+    (license gpl2)))
+
+;;; lynx.scm ends here
-- 
1.8.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add lynx
  2014-03-05  8:29 [PATCH] gnu: Add lynx Mark H Weaver
@ 2014-03-05  9:00 ` Andreas Enge
  2014-03-05  9:34   ` Mark H Weaver
  2014-03-05 18:47 ` Mark H Weaver
  1 sibling, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2014-03-05  9:00 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

How about putting the package into web.scm?

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add lynx
  2014-03-05  9:00 ` Andreas Enge
@ 2014-03-05  9:34   ` Mark H Weaver
  2014-03-05 10:04     ` Andreas Enge
  0 siblings, 1 reply; 6+ messages in thread
From: Mark H Weaver @ 2014-03-05  9:34 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Andreas Enge <andreas@enge.fr> writes:
> How about putting the package into web.scm?

It's fine with me, but what about w3m.scm, wget.scm, and gnuzilla.scm?
Should these all be moved as well?

     Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add lynx
  2014-03-05  9:34   ` Mark H Weaver
@ 2014-03-05 10:04     ` Andreas Enge
  2014-03-05 18:31       ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2014-03-05 10:04 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

On Wed, Mar 05, 2014 at 04:34:35AM -0500, Mark H Weaver wrote:
> It's fine with me, but what about w3m.scm, wget.scm, and gnuzilla.scm?
> Should these all be moved as well?

I noticed wget as probably misplaced. w3m would be good in web.scm as well.
gnuzilla, as a gnu project, is one that I would leave in its own file.

But all this is more an expression of taste than really argumented. So far,
we have no coherent policy on which package goes into which file. Personally,
I tend to regroup several packages into one file. So in the end, feel free
to do as you prefer.

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add lynx
  2014-03-05 10:04     ` Andreas Enge
@ 2014-03-05 18:31       ` Ludovic Courtès
  0 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2014-03-05 18:31 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Andreas Enge <andreas@enge.fr> skribis:

> But all this is more an expression of taste than really argumented. So far,
> we have no coherent policy on which package goes into which file. Personally,
> I tend to regroup several packages into one file. So in the end, feel free
> to do as you prefer.

Yeah, in this case I’d favor lynx.scm (because of w3m.scm), but perhaps
we should have browsers.scm eventually, or maybe web.scm is good enough?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add lynx
  2014-03-05  8:29 [PATCH] gnu: Add lynx Mark H Weaver
  2014-03-05  9:00 ` Andreas Enge
@ 2014-03-05 18:47 ` Mark H Weaver
  1 sibling, 0 replies; 6+ messages in thread
From: Mark H Weaver @ 2014-03-05 18:47 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 497 bytes --]

Here's an improved version of this patch that uses GnuTLS instead of
OpenSSL.  Note that even when GnuTLS is configured to support a system
trust store, lynx never uses it.  Instead, you must set the
SSL_CERT_FILE environment variable (even though GnuTLS itself doesn't
look at that variable, but OpenSSL does).

I'm still open to the idea of merging some or all the web clients
(e.g. wget, curl, w3m, icecat) into a single file, but I guess that
should be done in a separate commit.

     Mark



[-- Attachment #2: [PATCH] gnu: Add lynx (v2) --]
[-- Type: text/x-patch, Size: 4737 bytes --]

From 57f3f6ba9efe72bd98bfed44c922e16e6b7398bd Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Wed, 5 Mar 2014 02:16:06 -0500
Subject: [PATCH] gnu: Add lynx.

* gnu/packages/lynx.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
---
 gnu-system.am         |  1 +
 gnu/packages/lynx.scm | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 87 insertions(+)
 create mode 100644 gnu/packages/lynx.scm

diff --git a/gnu-system.am b/gnu-system.am
index becadaa..7b620c3 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -139,6 +139,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/lsof.scm				\
   gnu/packages/lua.scm				\
   gnu/packages/lvm.scm				\
+  gnu/packages/lynx.scm				\
   gnu/packages/m4.scm				\
   gnu/packages/mail.scm				\
   gnu/packages/make-bootstrap.scm		\
diff --git a/gnu/packages/lynx.scm b/gnu/packages/lynx.scm
new file mode 100644
index 0000000..a873166
--- /dev/null
+++ b/gnu/packages/lynx.scm
@@ -0,0 +1,86 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages lynx)
+  #:use-module ((guix licenses) #:select (gpl2))
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages libidn)
+  #:use-module (gnu packages gnutls)
+  #:use-module (gnu packages gnupg)
+  #:use-module (gnu packages zip)
+  #:use-module (gnu packages compression))
+
+(define-public lynx
+  (package
+    (name "lynx")
+    (version "2.8.8")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://lynx.isc.org/lynx" version
+                                  "/lynx" version ".tar.bz2"))
+              (sha256
+               (base32 "00jcfmx4bxnrzywzzlllz3z45a2mc4fl91ca5lrzz1pyr1s1qnm2"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("pkg-config" ,pkg-config)
+                     ("perl" ,perl)))
+    (inputs `(("ncurses" ,ncurses)
+              ("libidn" ,libidn)
+              ("gnutls" ,gnutls)
+              ("libgcrypt" ,libgcrypt)
+              ("unzip" ,unzip)
+              ("zlib" ,zlib)
+              ("gzip" ,gzip)
+              ("bzip2" ,bzip2)))
+    (arguments
+     `(#:configure-flags '("--with-pkg-config"
+                           "--with-screen=ncurses"
+                           "--with-zlib"
+                           "--with-bzlib"
+                           "--with-gnutls"
+                           ;; "--with-socks5"    ; XXX TODO
+                           "--enable-widec"
+                           "--enable-ascii-ctypes"
+                           "--enable-local-docs"
+                           "--enable-htmlized-cfg"
+                           "--enable-gzip-help"
+                           "--enable-nls"
+                           "--enable-ipv6")
+       #:tests? #f  ; no check target
+       #:phases (alist-replace
+                 'install
+                 (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                   (zero? (apply system* "make" "install-full" make-flags)))
+                 %standard-phases)))
+    (synopsis "Text Web Browser")
+    (description
+     "Lynx is a fully-featured World Wide Web (WWW) client for users running
+cursor-addressable, character-cell display devices.  It will display Hypertext
+Markup Language (HTML) documents containing links to files on the local
+system, as well as files on remote systems running http, gopher, ftp, wais,
+nntp, finger, or cso/ph/qi servers.  Lynx can be used to access information on
+the WWW, or to build information systems intended primarily for local
+access.")
+    (home-page "http://lynx.isc.org/")
+    (license gpl2)))
+
+;;; lynx.scm ends here
-- 
1.8.4


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-03-05 18:49 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-05  8:29 [PATCH] gnu: Add lynx Mark H Weaver
2014-03-05  9:00 ` Andreas Enge
2014-03-05  9:34   ` Mark H Weaver
2014-03-05 10:04     ` Andreas Enge
2014-03-05 18:31       ` Ludovic Courtès
2014-03-05 18:47 ` Mark H Weaver

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.