gnu: upower: Enable GObject introspection.
[jackhill/guix/guix.git] / gnu / packages / weechat.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19 ;; TODO: Add ruby
20
21 (define-module (gnu packages weechat)
22 #:use-module (gnu packages ncurses)
23 #:use-module (gnu packages base)
24 #:use-module (gnu packages gettext)
25 #:use-module (gnu packages gnupg)
26 #:use-module (gnu packages file)
27 #:use-module (gnu packages compression)
28 #:use-module (gnu packages lua)
29 #:use-module (gnu packages python)
30 #:use-module (gnu packages perl)
31 #:use-module (gnu packages tcl)
32 #:use-module (gnu packages aspell)
33 #:use-module (gnu packages curl)
34 #:use-module (gnu packages guile)
35 #:use-module (gnu packages cyrus-sasl)
36 #:use-module (gnu packages autogen)
37 #:use-module (gnu packages autotools)
38 #:use-module (gnu packages pkg-config)
39 #:use-module (gnu packages tls)
40 #:use-module (guix packages)
41 #:use-module (guix download)
42 #:use-module (guix build-system gnu)
43 #:use-module ((guix licenses) #:select (gpl3)))
44
45 (define-public weechat
46 (package
47 (name "weechat")
48 (version "1.3")
49 (source (origin
50 (method url-fetch)
51 (uri (string-append "http://weechat.org/files/src/weechat-"
52 version ".tar.gz"))
53 (sha256
54 (base32 "13b7dfs3sn71c51fi0bli5rzlsppil6gg1lzik3k8l43yhhqyv2w"))))
55 (build-system gnu-build-system)
56 (native-inputs `(("autoconf" ,autoconf)
57 ("pkg-config" ,pkg-config)
58 ("file" ,file)
59 ("autogen" ,autogen)
60 ("automake" ,automake)
61 ("libtool" ,libtool)))
62 (inputs `(("ncurses" ,ncurses)
63 ("diffutils" ,diffutils)
64 ("gettext" ,gnu-gettext)
65 ("libltdl" ,libltdl)
66 ("libgcrypt" ,libgcrypt "out")
67 ("zlib" ,zlib)
68 ("aspell" ,aspell)
69 ("curl" ,curl)
70 ("gnutls" ,gnutls)
71 ("guile" ,guile-2.0)
72 ("openssl" ,openssl)
73 ("cyrus-sasl" ,cyrus-sasl)
74 ("lua" ,lua-5.1)
75 ("python" ,python-2)
76 ("perl" ,perl)
77 ("tcl" ,tcl)))
78 (arguments `(#:configure-flags (list
79 (string-append
80 "--with-tclconfig="
81 (assoc-ref %build-inputs "tcl") "/lib"))
82 #:phases (alist-cons-after
83 'autogen 'fix-file
84 (lambda _
85 (substitute* "configure"
86 (("/usr/bin/file") (which "file"))))
87 (alist-cons-before
88 'configure 'autogen
89 (lambda _
90 (zero? (system* "./autogen.sh")))
91 %standard-phases))))
92 (synopsis "Extensible chat client")
93 (description "WeeChat (Wee Enhanced Environment for Chat) is an
94 Internet Relay Chat client, which is designed to be light and fast.
95 The client uses a curses frontend, and there are remote interfaces
96 for Web, Qt, Android and Emacs. In WeeChat everything can be done
97 with a keyboard, though it also supports mouse. It is customizable
98 and extensible with plugins and scripts.")
99 (home-page "http://www.weechat.org/")
100 (license gpl3)))