[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
16/26: gnu: Add soju.
From: |
guix-commits |
Subject: |
16/26: gnu: Add soju. |
Date: |
Tue, 7 May 2024 18:24:51 -0400 (EDT) |
sharlatan pushed a commit to branch master
in repository guix.
commit 243ff411958759c941f90362c178ab073b1b5ada
Author: Jesse Eisses <jesse@eisses.email>
AuthorDate: Fri Apr 26 10:02:00 2024 +0200
gnu: Add soju.
* gnu/packages/irc.scm (soju): New variable..
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Change-Id: I18b7e574339e98fdf2623338aac1635c8e727699
---
gnu/packages/irc.scm | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index 33cf3e8043..d639b4c5ef 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -70,6 +70,7 @@
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check)
+ #:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
@@ -1084,3 +1085,75 @@ server written in C++ for Unix-like operating systems.")
now). It has some basic functionality only, such as seen, tell, and
what.")
(license license:gpl3+)))
+
+(define-public soju
+ (package
+ (name "soju")
+ (version "0.7.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~emersion/soju")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1a0mp8f5i1ajh67y6fasmzgca3w1ccaiz19sx87rflbyi1mrhdlz"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:go go-1.19
+ #:install-source? #f
+ #:import-path "git.sr.ht/~emersion/soju"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'adjust-makefile
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* "Makefile"
+ ;; Do not set dfault config path.
+ ((".*config_path.*:.*") "")
+ (("-X.*=.*config_path.*' ") "")
+ ((".*cp -f.*config_path.*") "")
+ ;; Prevent creating /var/lib/soju.
+ ((".*sharedstatedir.*") "")))))
+ (replace 'build
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ ;; To use an alternative SQLite library that does not require
+ ;; CGO and build with PAM.
+ (setenv "GOFLAGS" "-v -x -trimpath -tags=moderncsqlite
-tags=pam")
+ (setenv "SYSCONFDIR" (string-append #$output "/etc"))
+ (invoke "make"))))
+ (replace 'install
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (setenv "PREFIX" #$output)
+ (invoke "make" "install")))))))
+ (native-inputs
+ (list go-git-sr-ht-emersion-go-scfg
+ go-git-sr-ht-emersion-go-sqlite3-fts5
+ go-git-sr-ht-sircmpwn-go-bare
+ go-github-com-emersion-go-sasl
+ go-github-com-lib-pq
+ go-github-com-mattn-go-sqlite3
+ go-github-com-msteinert-pam
+ go-github-com-pires-go-proxyproto
+ go-github-com-prometheus-client-golang
+ go-github-com-sherclockholmes-webpush-go
+ go-golang-org-x-crypto
+ go-golang-org-x-time
+ go-google-golang-org-protobuf
+ go-gopkg-in-irc-v4
+ go-nhooyr-io-websocket
+ scdoc))
+ (home-page "https://git.sr.ht/~emersion/soju")
+ (synopsis "User-friendly IRC bouncer")
+ (description
+ "Connects to upstream IRC servers on behalf of the user to provide
+extra functionality. soju supports many features
+such as multiple users, numerous @@url{https://ircv3.net/,IRCv3} extensions,
+chat history playback and detached channels. It is well-suited for both small
+and large deployments.")
+ (license license:agpl3)))
+
- 11/26: gnu: Add go-gopkg-in-irc-v4., (continued)
- 11/26: gnu: Add go-gopkg-in-irc-v4., guix-commits, 2024/05/07
- 17/26: gnu: Add go-github-com-msteinert-pam-v2., guix-commits, 2024/05/07
- 14/26: gnu: go-github-com-prometheus-client-golang: Update to 1.17.0., guix-commits, 2024/05/07
- 19/26: gnu: tmsu: Enable test suite., guix-commits, 2024/05/07
- 23/26: gnu: go-git-sr-ht-emersion-gqlclient: Move to golang-web., guix-commits, 2024/05/07
- 01/26: gnu: Add go-github-com-golang-jwt-jwt., guix-commits, 2024/05/07
- 08/26: gnu: Add go-git-sr-ht-emersion-go-sqlite3-fts5., guix-commits, 2024/05/07
- 06/26: gnu: go-github-com-mattn-go-sqlite3: Update to 1.14.22., guix-commits, 2024/05/07
- 13/26: gnu: go-github-com-prometheus-common: Update to 0.45.0., guix-commits, 2024/05/07
- 10/26: gnu: go-gopkg-in-irc-v3: Enable tests., guix-commits, 2024/05/07
- 16/26: gnu: Add soju.,
guix-commits <=
- 18/26: gnu: sqls: Use go-1.21., guix-commits, 2024/05/07
- 20/26: gnu: go-github-com-nbrownus-go-metrics-prometheus: Disable tests., guix-commits, 2024/05/07
- 24/26: gnu: go-git-sr-ht-emersion-go-scfg: Move to golang-xyz., guix-commits, 2024/05/07
- 02/26: gnu: Add go-github-com-sherclockholmes-webpush-go., guix-commits, 2024/05/07
- 04/26: gnu: Add go-nhooyr-io-websocket., guix-commits, 2024/05/07
- 15/26: gnu: go-github-com-matttproud-golang-protobuf-extensions-pbutil: Update to 2.0.0., guix-commits, 2024/05/07
- 22/26: gnu: go-git-sr-ht-sircmpwn-getopt: Move to golang-xyz., guix-commits, 2024/05/07
- 21/26: gnu: web: Remove syncthing module from used modules., guix-commits, 2024/05/07
- 26/26: gnu: kubo: Unbundle go-bazil-org-fuse., guix-commits, 2024/05/07
- 07/26: gnu: Add go-git-sr-ht-sircmpwn-go-bare., guix-commits, 2024/05/07