gnu: Add wl-clipboard.
[jackhill/guix/guix.git] / gnu / packages / syndication.scm
CommitLineData
1779aaa0 1;;; GNU Guix --- Functional package management for GNU
bbcfd80a 2;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
9d8fb0e3 3;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
15abcabe 4;;;
1779aaa0
TGR
5;;; This file is part of GNU Guix.
6;;;
15abcabe
EF
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages syndication)
21 #:use-module ((guix licenses) #:prefix license:)
22 #:use-module (guix download)
23 #:use-module (guix packages)
24 #:use-module (guix build-system gnu)
d9f15d7e 25 #:use-module (gnu packages)
15abcabe
EF
26 #:use-module (gnu packages curl)
27 #:use-module (gnu packages databases)
0c6f4bec 28 #:use-module (gnu packages documentation)
15abcabe
EF
29 #:use-module (gnu packages gettext)
30 #:use-module (gnu packages ncurses)
15abcabe 31 #:use-module (gnu packages pkg-config)
f26fa354
TGR
32 #:use-module (gnu packages web)
33 #:use-module (gnu packages xml))
0c6f4bec
EF
34
35(define-public newsboat
36 (package
0c6f4bec 37 (name "newsboat")
87c39618 38 (version "2.13")
0c6f4bec 39 (source
9d8fb0e3
TGR
40 (origin
41 (method url-fetch)
42 (uri (string-append "https://newsboat.org/releases/" version
43 "/newsboat-" version ".tar.xz"))
44 (sha256
45 (base32
87c39618 46 "0pik1d98ydzqi6055vdbkjg5krwifbk2hy2f5jp5p1wcy2s16dn7"))))
9d8fb0e3
TGR
47 (build-system gnu-build-system)
48 (native-inputs
49 `(("gettext" ,gettext-minimal)
50 ("pkg-config" ,pkg-config)
51 ;; For building documentation.
52 ("asciidoc" ,asciidoc)))
53 (inputs
54 `(("curl" ,curl)
7240b4a9 55 ("json-c" ,json-c)
9d8fb0e3
TGR
56 ("libxml2" ,libxml2)
57 ("ncurses" ,ncurses)
58 ("stfl" ,stfl)
59 ("sqlite" ,sqlite)))
0c6f4bec 60 (arguments
9d8fb0e3
TGR
61 '(#:phases
62 (modify-phases %standard-phases
63 (delete 'configure) ; no configure script
64 (add-after 'build 'build-documentation
65 (lambda _
8cd14622 66 (invoke "make" "doc"))))
9d8fb0e3
TGR
67 #:make-flags
68 (list (string-append "prefix=" (assoc-ref %outputs "out")))
0c6f4bec 69 #:test-target "test"))
7240b4a9
MB
70 (native-search-paths
71 ;; Newsboat respects CURL_CA_BUNDLE.
72 (package-native-search-paths curl))
0c6f4bec 73 (home-page "https://newsboat.org/")
9d8fb0e3
TGR
74 (synopsis "Text-mode RSS and Atom feed reader with podcast support")
75 (description "Newsboat is a feed reader for @dfn{RSS} and @dfn{Atom}, XML
76formats widely used to transmit, publish, and syndicate news or blog articles.
77It's designed for use on text terminals, and to have a coherent and easy-to-use
78interface that might look familiar to @command{mutt} or @command{slrn} users.
79
80Newsboat supports OPML import/exports, HTML rendering, podcasts (with
81@command{podboat}), off-line reading, searching and storing articles to your
82file system, and many more features.
83
84It started life as a fork of the currently unmaintained Newsbeuter.")
85 (license (list license:gpl2+ ; filter/*
86 license:expat)))) ; everything else
f26fa354
TGR
87
88(define-public newsbeuter
89 ;; Newsbeuter is unmaintained with multiple CVEs, and was forked as Newsboat.
90 (deprecated-package "newsbeuter" newsboat))