You can now kiss the frog!
[mudsync.git] / guix.scm
1 ;;; mudsync --- Live hackable MUDs in Guile
2 ;;; Copyright (C) 2016 Jan Nieuwenhuizen <janneke@gnu.org>
3 ;;; Copyright (C) 2017 Christine Lemmer-Webber <cwebber@dustycloud.org>
4 ;;;
5 ;;; This program is free software: you can redistribute it and/or modify
6 ;;; it under the terms of the GNU General Public License as published by
7 ;;; the Free Software Foundation, either version 3 of the License, or
8 ;;; (at your option) any later version.
9 ;;;
10 ;;; This program is distributed in the hope that it will be useful,
11 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ;;; GNU General Public License for more details.
14 ;;; 
15 ;;; You should have received a copy of the GNU General Public License
16 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18 ;;; Commentary:
19 ;;
20 ;; GNU Guix development package.  To build and install, run:
21 ;;
22 ;;   guix package -f guix.scm
23 ;;
24 ;; To build it, but not install it, run:
25 ;;
26 ;;   guix build -f guix.scm
27 ;;
28 ;; To use as the basis for a development environment, run:
29 ;;
30 ;;   guix environment -l guix.scm
31 ;;
32 ;;; Code:
33
34 (use-modules (srfi srfi-1)
35              (srfi srfi-26)
36              (ice-9 popen)
37              (ice-9 match)
38              (ice-9 rdelim)
39              (guix download)
40              (guix packages)
41              (guix licenses)
42              (guix gexp)
43              (guix git-download)
44              (guix build-system gnu)
45              ((guix build utils) #:select (with-directory-excursion))
46              (gnu packages)
47              (gnu packages autotools)
48              (gnu packages guile)
49              (gnu packages guile-xyz)
50              (gnu packages pkg-config)
51              (gnu packages texinfo))
52
53 (define %source-dir (dirname (current-filename)))
54
55 (package
56   (name "guile-mudsync")
57   (version "git")
58   (source (local-file %source-dir
59                       #:recursive? #t
60                       #:select? (git-predicate %source-dir)))
61   (build-system gnu-build-system)
62   (native-inputs `(("autoconf" ,autoconf)
63                    ("automake" ,automake)
64                    ("pkg-config" ,pkg-config)
65                    ("texinfo" ,texinfo)))
66   (inputs `(("guile" ,guile-3.0)
67             ("guile-8sync" ,guile-8sync)
68             ("guile-irregex" ,guile-irregex)))
69   (arguments
70    `(#:phases (modify-phases %standard-phases
71                 (add-before 'configure 'bootstrap
72                             (lambda _
73                               (zero? (system* "./bootstrap.sh"))))
74                 (add-before 'configure 'setenv
75                             (lambda _
76                               (setenv "GUILE_AUTO_COMPILE" "0"))))))
77   (home-page "https://notabug.org/cwebber/mudsync/")
78   (synopsis "Live hackable MUD system")
79   (description
80    "Mudsync is a live hackable MUD system built on top of GNU 8sync.")
81   (license gpl3+))