gnu: petsc: Use HTTPS home page.
[jackhill/guix/guix.git] / gnu / packages / easyrpg.scm
CommitLineData
b779dbac
SB
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
da2a145b 3;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
b779dbac
SB
4;;;
5;;; This file is part of GNU Guix.
6;;;
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages easyrpg)
21 #:use-module (guix packages)
22 #:use-module ((guix licenses) #:prefix license:)
23 #:use-module (guix download)
24 #:use-module (guix build-system gnu)
1f1d6af7
SB
25 #:use-module (gnu packages audio)
26 #:use-module (gnu packages compression)
27 #:use-module (gnu packages fontutils)
28 #:use-module (gnu packages gtk)
b779dbac 29 #:use-module (gnu packages icu4c)
1f1d6af7
SB
30 #:use-module (gnu packages image)
31 #:use-module (gnu packages mp3)
b779dbac 32 #:use-module (gnu packages pkg-config)
1f1d6af7
SB
33 #:use-module (gnu packages pulseaudio)
34 #:use-module (gnu packages sdl)
35 #:use-module (gnu packages xdisorg)
36 #:use-module (gnu packages xiph)
b779dbac
SB
37 #:use-module (gnu packages xml))
38
39(define-public liblcf
40 (package
41 (name "liblcf")
da2a145b 42 (version "0.6.0")
b779dbac
SB
43 (source (origin
44 (method url-fetch)
45 (uri (string-append
46 "https://easyrpg.org/downloads/player/" version
47 "/liblcf-" version ".tar.gz"))
48 (sha256
49 (base32
da2a145b 50 "0dcw9l800314f5c29mqrcg64rkcb6cwqjfnpvwsmvc2l2q5hwlag"))))
b779dbac
SB
51 (build-system gnu-build-system)
52 (native-inputs
53 `(("pkg-config" ,pkg-config)))
54 (propagated-inputs
55 ;; Required by 'liblcf.pc'.
56 `(("expat" ,expat)
57 ("icu" ,icu4c)))
58 (home-page "https://easyrpg.org/")
59 (synopsis "Library to handle RPG Maker 2000 and 2003 game data")
60 (description
61 "@code{liblcf} is a library to handle RPG Maker 2000 and 2003 game data.
62It can read and write LCF and XML files.")
63 ;; It includes a copy of Boost Preprocessor Cat and Stringize (boost-1.0):
64 ;; src/boost/preprocessor/config.hpp
65 ;; src/boost/preprocessor/cat.hpp
66 ;; src/boost/preprocessor/stringize.hpp
67 ;; and a copy of inih (bsd-3):
68 ;; src/ini.h
69 ;; src/ini.cpp
70 ;; src/inireader.h
71 ;; src/inireader.cpp
72 ;; TODO: Unbundle them.
73 (license license:expat)))
1f1d6af7
SB
74
75(define-public easyrpg-player
76 (package
77 (name "easyrpg-player")
f54de09b 78 (version "0.6.0")
1f1d6af7
SB
79 (source (origin
80 (method url-fetch)
81 (uri (string-append
82 "https://easyrpg.org/downloads/player/" version
83 "/easyrpg-player-" version ".tar.gz"))
84 (sha256
85 (base32
f54de09b 86 "0zdzp64sshjdl943jklsvzwzzja1fnapslvbd7xss51ym9ra4r6k"))))
1f1d6af7
SB
87 (build-system gnu-build-system)
88 (arguments
89 '(#:configure-flags
90 (list (string-append "--with-bash-completion-dir="
91 %output "/etc/bash_completion.d/"))))
92 (native-inputs
93 `(("pkg-config" ,pkg-config)))
94 (inputs
95 `(("freetype" ,freetype)
96 ("harfbuzz" ,harfbuzz)
97 ("liblcf" ,liblcf)
98 ("libpng" ,libpng)
99 ("libsndfile" ,libsndfile)
100 ("libvorbis" ,libvorbis)
101 ("libxmp" ,libxmp)
102 ("mpg123" ,mpg123)
103 ("opusfile" ,opusfile)
104 ("pixman" ,pixman)
105 ("sdl2-mixer" ,sdl2-mixer)
106 ("sdl2" ,sdl2)
107 ("speexdsp" ,speexdsp)
108 ;; ("wildmidi" ,wildmidi) ; TODO: package it
109 ("zlib" ,zlib)))
110 (home-page "https://easyrpg.org/")
111 (synopsis "Play RPG Maker 2000 and 2003 games")
112 (description
113 "EasyRPG Player is a game interpreter to play RPG Maker 2000, 2003 and
114EasyRPG games. It uses the LCF parser library (liblcf) to read RPG Maker game
115data.")
116 ;; It bundles FMMidi YM2608 FM synthesizer emulator (bsd-3):
117 ;; src/midisynth.h
118 ;; src/midisynth.cpp
119 ;; and PicoJSON JSON parser/serializer (bsd-2):
120 ;; src/picojson.h
121 ;; TODO: Unbundle them.
122 (license license:gpl3+)))