You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
4.0 KiB

  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. ;; TODO: Add ruby
  19. (define-module (gnu packages weechat)
  20. #:use-module (gnu packages ncurses)
  21. #:use-module (gnu packages base)
  22. #:use-module (gnu packages gettext)
  23. #:use-module (gnu packages gnupg)
  24. #:use-module (gnu packages file)
  25. #:use-module (gnu packages compression)
  26. #:use-module (gnu packages lua)
  27. #:use-module (gnu packages python)
  28. #:use-module (gnu packages perl)
  29. #:use-module (gnu packages tcl)
  30. #:use-module (gnu packages aspell)
  31. #:use-module (gnu packages curl)
  32. #:use-module (gnu packages gnutls)
  33. #:use-module (gnu packages guile)
  34. #:use-module (gnu packages openssl)
  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 (guix packages)
  40. #:use-module (guix download)
  41. #:use-module (guix build-system gnu)
  42. #:use-module ((guix licenses) #:select (gpl3)))
  43. (define-public weechat
  44. (package
  45. (name "weechat")
  46. (version "1.0")
  47. (source (origin
  48. (method url-fetch)
  49. (uri (string-append "http://weechat.org/files/src/weechat-"
  50. version ".tar.gz"))
  51. (sha256
  52. (base32 "1z17wyrl5fp697qp44srpmzk79w37f5hm1r0krffbmga6sbzdj3x"))))
  53. (build-system gnu-build-system)
  54. (native-inputs `(("autoconf" ,autoconf)
  55. ("pkg-config" ,pkg-config)
  56. ("file" ,file)
  57. ("autogen" ,autogen)
  58. ("automake" ,automake)))
  59. (inputs `(("ncurses" ,ncurses)
  60. ("diffutils" ,diffutils)
  61. ("gettext" ,gnu-gettext)
  62. ("libtool" ,libtool "bin")
  63. ("libtool" ,libtool "out")
  64. ("libgcrypt" ,libgcrypt "out")
  65. ("zlib" ,zlib)
  66. ("aspell" ,aspell)
  67. ("curl" ,curl)
  68. ("gnutls" ,gnutls)
  69. ("guile" ,guile-2.0)
  70. ("openssl" ,openssl)
  71. ("cyrus-sasl" ,cyrus-sasl)
  72. ("lua" ,lua-5.1)
  73. ("python" ,python-2)
  74. ("perl" ,perl)
  75. ("tcl" ,tcl)))
  76. (arguments `(#:configure-flags (list
  77. (string-append
  78. "--with-tclconfig="
  79. (assoc-ref %build-inputs "tcl") "/lib"))
  80. #:phases (alist-cons-after
  81. 'autogen 'fix-file
  82. (lambda _
  83. (substitute* "configure"
  84. (("/usr/bin/file") (which "file"))))
  85. (alist-cons-before
  86. 'configure 'autogen
  87. (lambda _
  88. (zero? (system* "./autogen.sh")))
  89. %standard-phases))))
  90. (synopsis "Extensible chat client")
  91. (description "WeeChat (Wee Enhanced Environment for Chat) is an
  92. Internet Relay Chat client, which is designed to be light and fast.
  93. The client uses a curses frontend, and there are remote interfaces
  94. for Web, Qt, Android and Emacs. In WeeChat everything can be done
  95. with a keyboard, though it also supports mouse. It is customizable
  96. and extensible with plugins and scripts.")
  97. (home-page "http://www.weechat.org/")
  98. (license gpl3)))