aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/w3m.scm
blob: f87cab998b86635b30c319ca9beba37f43ff2aac (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2016, 2017, 2018, 2023 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>>
;;;
;;; 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 w3m)
  #:use-module ((guix licenses) #:select (x11-style))
  #:use-module (gnu packages gettext)
  #:use-module (gnu packages bdw-gc)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages gtk)
  #:use-module (gnu packages image)
  #:use-module (gnu packages ncurses)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages tls)
  #:use-module (gnu packages xorg)
  #:use-module (gnu packages)
  #:use-module (guix packages)
  #:use-module (guix git-download)
  #:use-module (guix build-system gnu))

(define-public w3m
  (package
    (name "w3m")
    ;; When updating, be careful not to change the derivation of w3m-for-tests,
    ;; unless you mean to. Changing w3m-for-tests will cause thousands of
    ;; rebuilds via the reverse dependency graph of xdg-utils.
    (version "0.5.3+git20230121")
    (source (origin
              (method git-fetch)
              ;; Debian's fork of w3m is the only one that is still maintained.
              (uri (git-reference
                    (url "https://salsa.debian.org/debian/w3m.git")
                    (commit (string-append "v" version))))
              (file-name (git-file-name name version))
              (sha256
               (base32
                "0nvhxsqxgxjrr62mvxzhhfzvbvg56g19vlqcgb8mh2x1daazk5ms"))))
    (build-system gnu-build-system)
    (arguments
     '(#:tests? #f  ; no check target
       ;; Use $EDITOR instead of a hard-coded value.
       #:configure-flags (list "--with-editor="
                               "--with-imagelib=imlib2"
                               "--enable-image=fb,x11")
       #:phases
       (modify-phases %standard-phases
         (add-before 'configure 'fix-perl
           (lambda _ (substitute* '("scripts/w3mmail.cgi.in"
                                    "scripts/dirlist.cgi.in")
                       (("@PERL@") (which "perl"))))))))
    (inputs
     (list gdk-pixbuf
           imlib2
           libgc
           libx11
           ncurses
           openssl
           zlib))
    (native-inputs
     (list gettext-minimal perl pkg-config))
    (home-page "https://w3m.sourceforge.net/")
    (synopsis "Text-mode web browser")
    (description
     "w3m is a text-based web browser as well as a pager like @code{more} or
@code{less}.  With w3m you can browse web pages through a terminal emulator
window.  Moreover, w3m can be used as a text formatting tool which
typesets HTML into plain text.")
    (license (x11-style "file://doc/README"
                        "See 'doc/README' in the distribution."))))

;; Used in the test suite of xdg-utils
(define-public w3m-for-tests
  (hidden-package
   (package
     (inherit w3m)
     (name "w3m")
     (version "0.5.3+git20230121")
     (source (origin
               (method git-fetch)
               ;; Debian's fork of w3m is the only one that is still maintained.
               (uri (git-reference
                     (url "https://salsa.debian.org/debian/w3m.git")
                     (commit (string-append "v" version))))
               (file-name (git-file-name name version))
               (sha256
                (base32
                 "0nvhxsqxgxjrr62mvxzhhfzvbvg56g19vlqcgb8mh2x1daazk5ms")))))))
/td>Mathieu Othacehe 2022-09-25etc: teams: Add regular expression support to scopes....* etc/teams.scm (find-teams-by-scope): Differentiate between raw strings and regexps. Make raw string matches strict. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Liliana Marie Prikler 2022-09-25etc: teams: Add scope support....Add a scope list to each team. This list defines all the files and directories that are mentored by the team. Also add a cc-members command that takes two Git revision strings as input, add returns the members that should be CC'ed given the files impacted between the two revisions. * etc/teams.scm.in (<team>)[scope]: New field. (team, list-teams): Adapt those procedures. (find-team-by-scope, diff-revisions): New procedures. (main): Add a "cc-members" command. * doc/contributing.texi ("Teams"): Document it. ("Sending a Patch Series"): Adapt it. Mathieu Othacehe 2022-09-14etc: teams: Add entry for Andrew Tropin....* etc/teams.scm.in ("Andrew Tropin"): New member. Andrew Tropin 2022-09-09etc: teams: Add entry for Guillaume Le Vaillant....* etc/teams.scm.in ("Guillaume Le Vaillant"): New member. Guillaume Le Vaillant 2022-09-04etc: teams: Add entry for Philip McGrath....* etc/teams.scm.in ("Philip McGrath"): New member. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Philip McGrath 2022-09-04etc: teams: Add racket team....* etc/teams.scm.in (racket): New team. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Philip McGrath 2022-08-11etc: teams: Add Mathieu Othacehe to mentors....* etc/teams.scm.in (mentors): New member. Mathieu Othacehe 2022-08-05etc: teams: Add entry for Mathieu Othacehe....* etc/teams.scm.in ("Mathieu Othacehe"): New member. Mathieu Othacehe 2022-08-05etc: teams: Add entry for Eric Bavier....* etc/teams.scm.in ("Eric Bavier"): New member. (mozilla): Add #:description keyword before description. Eric Bavier 2022-07-13etc: teams: Add entry for Jonathan Brielmaier....* etc/teams.scm.in ("Jonathan Brielmaier"): New member. Jonathan Brielmaier 2022-07-13etc: teams: Add mozilla team....* etc/teams.scm.in (mozilla): New team. Jonathan Brielmaier 2022-07-10etc: teams: Add entry for Thiago Jung Bauermann....* etc/teams.scm.in ("Thiago Jung Bauermann"): New member. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Thiago Jung Bauermann 2022-07-08etc: teams: Add entry for Christopher Baines....* etc/teams.scm.in ("Christopher Baines"): New member. Christopher Baines 2022-07-08etc: teams: Add entry for Björn Höfling....* etc/teams.scm.in ("Björn Höfling"): New member. Björn Höfling 2022-07-07etc: teams: Add entry for jgart....* etc/teams.scm.in ("jgart"): New member. Signed-off-by: Lars-Dominik Braun <lars@6xq.net> jgart via Guix-patches via 2022-07-07etc: teams: Add entry for Lars-Dominik Braun....* etc/teams.scm.in ("Lars-Dominik Braun"): New member. Lars-Dominik Braun 2022-07-07etc: teams: Add entry for Florian Pelz....* etc/teams.scm.in ("Florian Pelz"): New member. Florian Pelz 2022-07-06etc: teams: Add entry for Julien Lepiller....* etc/teams.scm.in ("Julien Lepiller"): New member. Julien Lepiller 2022-07-04etc: teams: Add entry for Efraim Flashner....* etc/teams.scm.in ("Efraim Flashner"): New member. Efraim Flashner 2022-07-03teams: Add leo Famulari....* etc/teams.scm.in ("Leo Famulari"): New member. Leo Famulari 2022-07-03etc: teams: Add entry for Liliana Prikler....* etc/teams.scm.in ("Liliana Marie Prikler"): New member. Liliana Marie Prikler 2022-07-03etc: teams: Sort members lexicographically by last name....* etc/teams.scm.in: Sort members lexicographically by last name. Liliana Marie Prikler 2022-07-03etc: Update teams....* etc/teams.scm.in: Rename maths team to science and add myself to it. Andreas Enge 2022-07-03etc: Add teams.scm....* etc/teams.scm.in: New file. * configure.ac: Generate executable. * .gitignore: Ignore generated file. Ricardo Wurmus