diff options
Diffstat (limited to 'gnu/packages/irc.scm')
-rw-r--r-- | gnu/packages/irc.scm | 191 |
1 files changed, 98 insertions, 93 deletions
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 3b88e8d4d2..72f9fd5c96 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -2,10 +2,10 @@ ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com> ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net> ;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Nikita <nikita@n0.is> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> -;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017–2022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> @@ -28,6 +28,7 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages irc) + #:use-module (guix gexp) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix git-download) @@ -46,6 +47,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages backup) + #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages code) #:use-module (gnu packages compression) @@ -89,53 +91,54 @@ (define-public quassel (package (name "quassel") - (version "0.13.1") + (version "0.14.0") (source (origin (method url-fetch) (uri (string-append "https://quassel-irc.org/pub/quassel-" - version ".tar.bz2")) + version ".tar.xz")) (sha256 (base32 - "0mg8jydc70vlylppzich26q4s40kr78r3ysfyjwisfvlg2byxvs8")) - (patches (search-patches "quassel-qt-514-compat.patch")) + "042fzssydvv35jjknziph8iyyjsyrsb2hp3d0ix0bqbagbrpf1q9")) (modules '((guix build utils))) ;; We don't want to install the bundled inxi script. (snippet '(begin - (delete-file "data/scripts/inxi") - #t)))) + (delete-file "data/scripts/inxi"))))) (build-system qt-build-system) (arguments ;; The three binaries are not mutually exlusive, and are all built ;; by default. - '(#:configure-flags '(;;"-DWANT_QTCLIENT=OFF" ; 6.1 MiB - ;;"-DWANT_CORE=OFF" ; 3.0 MiB - ;;"-DWANT_MONO=OFF" ; 7.6 MiB - "-DWITH_KDE=OFF" ; no to kde integration ... - "-DWITH_BUNDLED_ICONS=ON" ; so we install bundled icons - "-DWITH_OXYGEN_ICONS=ON" ; also the oxygen ones - "-DWITH_WEBENGINE=OFF") ; we don't depend on qtwebengine + '(#:configure-flags '("-DBUILD_TESTING=ON" + ;;"-DWANT_QTCLIENT=OFF" + ;;"-DWANT_CORE=OFF" + ;;"-DWANT_MONO=OFF" + "-DWITH_KDE=OFF" + "-DWITH_BUNDLED_ICONS=ON" + "-DWITH_OXYGEN_ICONS=ON" + ;; This disables link previews. + "-DWITH_WEBENGINE=OFF") #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-inxi-reference (lambda* (#:key inputs #:allow-other-keys) (let ((inxi (search-input-file inputs "/bin/inxi"))) - (symlink inxi "data/scripts/inxi") - #t)))) - #:tests? #f)) ; no test target + (symlink inxi "data/scripts/inxi"))))))) (native-inputs (list extra-cmake-modules pkg-config qttools)) (inputs - `(("inxi" ,inxi-minimal) - ("libdbusmenu-qt" ,libdbusmenu-qt) - ("qca" ,qca) - ("qtbase" ,qtbase-5) - ("qtmultimedia" ,qtmultimedia) - ("qtscript" ,qtscript) - ("qtsvg" ,qtsvg) - ("snorenotify" ,snorenotify) - ("zlib" ,zlib))) + (list boost + inxi-minimal + libdbusmenu-qt + perl + qca + qtbase-5 + qtmultimedia + qtscript + qtsvg + snorenotify + sonnet + zlib)) (home-page "https://quassel-irc.org/") (synopsis "Distributed IRC client") (description "Quassel is a distributed IRC client, meaning that one or more @@ -187,27 +190,30 @@ SILC and ICB protocols via plugins.") (define-public weechat (package (name "weechat") - (version "3.3") + (version "3.4") (source (origin (method url-fetch) (uri (string-append "https://weechat.org/files/src/weechat-" version ".tar.xz")) (sha256 (base32 - "1pyb1yaw61cbdg1g4cc22px1wsh8wm0gsx1yzp684idyz25apzna")))) + "0k5rgdy0c4dnxvsqjzyrr5czz1lmfk1vrsqkkvj8v24y0b3xrlvw")))) (build-system cmake-build-system) (outputs '("out" "doc")) (native-inputs - `(("gettext" ,gettext-minimal) + `(("gettext-minimal" ,gettext-minimal) ("pkg-config" ,pkg-config) - ("ruby-asciidoctor" ,ruby-asciidoctor) + ,@(if (or (target-x86-64?) + (target-x86-32?)) + `(("ruby-asciidoctor" ,ruby-asciidoctor)) + '()) ;; For tests. ("cpputest" ,cpputest))) (inputs (list aspell curl gnutls - `(,libgcrypt "out") + libgcrypt ncurses zlib ;; Scripting language plug-ins. @@ -220,24 +226,25 @@ SILC and ICB protocols via plugins.") (arguments `(#:configure-flags (list "-DENABLE_PHP=OFF" - "-DENABLE_MAN=ON" - "-DENABLE_DOC=ON" + ,@(if (or (target-x86-64?) + (target-x86-32?)) + '("-DENABLE_MAN=ON" + "-DENABLE_DOC=ON") + '()) "-DENABLE_TESTS=ON") ; ‘make test’ fails otherwise #:phases (modify-phases %standard-phases - (add-after 'install 'move-doc - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc")) - (from (string-append out "/share/doc/weechat")) - (to (string-append doc "/share/doc/weechat"))) - (mkdir-p (string-append doc "/share/doc")) - (rename-file from to))))) - ;; Tests hang indefinitely on non-Intel platforms. - #:tests? ,(if (any (cute string-prefix? <> (or (%current-target-system) - (%current-system))) - '("i686" "x86_64")) - '#t '#f))) + ,@(if (or (target-x86-64?) + (target-x86-32?)) + '((add-after 'install 'move-doc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc")) + (from (string-append out "/share/doc/weechat")) + (to (string-append doc "/share/doc/weechat"))) + (mkdir-p (string-append doc "/share/doc")) + (rename-file from to))))) + '())))) (synopsis "Extensible chat client") (description "WeeChat (Wee Enhanced Environment for Chat) is an @dfn{Internet Relay Chat} (IRC) client, which is designed to be light and fast. @@ -246,13 +253,13 @@ Qt, Android, and Emacs. Everything in WeeChat can be done with the keyboard, though it also supports using a mouse. It is customizable and extensible with plugins and scripts.") - (home-page "https://www.weechat.org/") + (home-page "https://weechat.org/") (license license:gpl3))) (define-public srain (package (name "srain") - (version "1.3.0") + (version "1.3.1") (source (origin (method git-fetch) @@ -261,7 +268,7 @@ using a mouse. It is customizable and extensible with plugins and scripts.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "14s0h5wgvlkdylnjis2fa7m835142jzw0d0yqjnir1wqnwmq1rld")))) + (base32 "1xjk3fa3fkmsczif1bzcmi79k4z3jfdgcljfdiyn4iv5bh778swc")))) (build-system meson-build-system) (arguments `(#:tests? #f ;there are no tests @@ -278,7 +285,7 @@ using a mouse. It is customizable and extensible with plugins and scripts.") gtk+ libconfig libsecret - libsoup + libsoup-minimal-2 openssl)) (home-page "https://srain.im") (synopsis "Modern IRC client written in GTK") @@ -377,14 +384,14 @@ highlighted. (define-public ii (package (name "ii") - (version "1.8") + (version "1.9") (source (origin (method url-fetch) (uri (string-append "http://dl.suckless.org/tools/" name "-" version ".tar.gz")) (sha256 (base32 - "1lk8vjl7i8dcjh4jkg8h8bkapcbs465sy8g9c0chfqsywbmf3ndr")))) + "05wcaszm9hap5gqf58bciqm3ad1kfgp976fs3fsn3ll3nliv6345")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests @@ -610,7 +617,7 @@ but can also be used independently as a logging bot.") (define-public inspircd (package (name "inspircd") - (version "3.8.1") + (version "3.12.0") (source (origin (method git-fetch) @@ -619,47 +626,45 @@ but can also be used independently as a logging bot.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1i30649dw84iscxa5as81g96f393mn1i883aq4za5ypdinr5x65g")))) + (base32 "0xlfs269iaw7dfryzl6vjzqsn2g4nqh6kpf5xfgk3zbjhqaczknx")))) (build-system gnu-build-system) (arguments - `(#:configure-flags (map (lambda (module) - (string-append "--enable-extras=" module)) - '("m_argon2.cpp" - "m_geo_maxmind.cpp" - "m_ldap.cpp" - "m_mysql.cpp" - "m_pgsql.cpp" - "m_regex_pcre.cpp" - "m_regex_posix.cpp" - "m_regex_stdlib.cpp" - "m_regex_re2.cpp" - "m_regex_tre.cpp" - "m_sqlite3.cpp" - "m_ssl_gnutls.cpp" - "m_ssl_openssl.cpp" - "m_ssl_mbedtls.cpp" - "m_sslrehashsignal.cpp")) - #:tests? #f ; Figure out later. - #:phases - (modify-phases %standard-phases - (add-before 'configure 'module-configure - (lambda* (#:key configure-flags #:allow-other-keys) - (apply invoke "./configure" - configure-flags) - #t)) - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (out-lib (string-append out "/lib/")) - (out-bin (string-append out "/bin/")) - (out-etc (string-append out "/etc/")) - (name "inspircd")) - (invoke "./configure" - (string-append "--prefix=" out-lib name) - (string-append "--binary-dir=" out-bin) - (string-append "--module-dir=" out-lib name "/modules/") - (string-append "--config-dir=" out-etc name))) - #t))))) + (list #:configure-flags + #~(map (lambda (module) + (string-append "--enable-extras=" module)) + '("m_argon2.cpp" + "m_geo_maxmind.cpp" + "m_ldap.cpp" + "m_mysql.cpp" + "m_pgsql.cpp" + "m_regex_pcre.cpp" + "m_regex_posix.cpp" + "m_regex_stdlib.cpp" + "m_regex_re2.cpp" + "m_regex_tre.cpp" + "m_sqlite3.cpp" + "m_ssl_gnutls.cpp" + "m_ssl_openssl.cpp" + "m_ssl_mbedtls.cpp" + "m_sslrehashsignal.cpp")) + #:tests? #f ; XXX figure out later + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'module-configure + (lambda* (#:key configure-flags #:allow-other-keys) + (apply invoke "./configure" + configure-flags))) + (replace 'configure + (lambda _ + (let ((lib (string-append #$output "/lib/")) + (bin (string-append #$output "/bin/")) + (etc (string-append #$output "/etc/")) + (name "inspircd")) + (invoke "./configure" + (string-append "--prefix=" lib name) + (string-append "--binary-dir=" bin) + (string-append "--module-dir=" lib name "/modules/") + (string-append "--config-dir=" etc name)))))))) (native-inputs (list pkg-config)) (inputs |