From 09746bd8021235c7c27bae10b4574011ea4e7f2b Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 17 Sep 2016 00:37:52 +0000 Subject: [PATCH] gnu: Add bbs100. * gnu/packages/bbs.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add bbs.scm. --- gnu/local.mk | 1 + gnu/packages/bbs.scm | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 gnu/packages/bbs.scm diff --git a/gnu/local.mk b/gnu/local.mk index 8599e6d3a..e75058d29 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -63,6 +63,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/backup.scm \ %D%/packages/base.scm \ %D%/packages/bash.scm \ + %D%/packages/bbs.scm \ %D%/packages/bdw-gc.scm \ %D%/packages/benchmark.scm \ %D%/packages/bioinformatics.scm \ diff --git a/gnu/packages/bbs.scm b/gnu/packages/bbs.scm new file mode 100644 index 000000000..894c64721 --- /dev/null +++ b/gnu/packages/bbs.scm @@ -0,0 +1,75 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 ng0 +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages bbs) + #:use-module (gnu packages) + #:use-module (gnu packages admin) + #:use-module (gnu packages base) + #:use-module (gnu packages perl) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public bbs100 + (package + (name "bbs100") + (version "3.3.1") + (source (origin + (method url-fetch) + (uri (string-append "http://www.heiho.net/bbs100/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1wjqyxw5wpxgzwx83vx2c56v0jjq62bsj1xn4livm0crjbi4mdqb")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:parallel-build? #f + #:phases + ;; FIXME: the install phase creates a symlink 'bin' to 'bin-3.3.1'. + ;; FIXME: the log directory is hardcoded without prefix. + (modify-phases %standard-phases + (add-before 'configure 'patch-param-file + (lambda _ + (substitute* "etc/param" + (("/usr/share/zoneinfo/") "") + (("^zoneinfodir") + (string-append "zoneinfodir " + (assoc-ref %build-inputs "tzdata") + "/share/zoneinfo"))) + #t)) + (add-before 'configure 'chdir + (lambda _ + (chdir "src") + #t))))) + (inputs + `(("perl" ,perl))) + (native-inputs + `(("tzdata" ,tzdata) + ("inetutils" ,inetutils))) + (home-page "http://www.heiho.net/bbs100/") + (synopsis "DOC style telnet BBS") + (description + "@code{bbs100} is a @dfn{Bulletin Board System} (BBS) in the style of +DOC (which remotely resembles @code{Citadel}). +It is a single process daemon that handles all connections at once, while +consuming very low cpu resources (< 1%). Bbs100 can handle over a thousand +simultaneous users, is highly customizable, easy to setup, and has +many configurable features.") + (license license:gpl2+))) -- 2.12.2