blob: b6c44eb66e8ac7663ea0e86605aa7dd3943b1c50 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
;;; Chickadee Game Toolkit
;;; Copyright © 2016 David Thompson <dthompson2@worcester.edu>
;;;
;;; Licensed under the Apache License, Version 2.0 (the "License");
;;; you may not use this file except in compliance with the License.
;;; You may obtain a copy of the License at
;;;
;;; http://www.apache.org/licenses/LICENSE-2.0
;;;
;;; Unless required by applicable law or agreed to in writing, software
;;; distributed under the License is distributed on an "AS IS" BASIS,
;;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
;;; See the License for the specific language governing permissions and
;;; limitations under the License.
;;; Commentary:
;;
;; Development environment for GNU Guix.
;;
;; To setup the development environment, run the following:
;;
;; guix shell
;; ./bootstrap && ./configure;
;;
;; To build the development snapshot, run:
;;
;; guix build -f guix.scm
;;
;; To install the development snapshot, run:
;;
;; guix install -f guix.scm
;;
;;; Code:
(use-modules (ice-9 match)
(srfi srfi-1)
(guix packages)
((guix licenses) #:prefix license:)
(guix download)
(guix git)
(guix git-download)
(guix build-system gnu)
(guix utils)
(gnu packages)
(gnu packages audio)
(gnu packages autotools)
(gnu packages fontutils)
(gnu packages image)
(gnu packages pkg-config)
(gnu packages readline)
(gnu packages texinfo)
(gnu packages guile)
(gnu packages guile-xyz)
(gnu packages gl)
(gnu packages sdl)
(gnu packages maths)
(gnu packages mp3)
(gnu packages xiph))
(define target-guile guile-3.0-latest)
(define guile-sdl2
(let ((commit "b4f168ee72fecd8cc97d87ee032ea47283585f46"))
(package
(name "guile-sdl2")
(version (string-append "0.7.0-1." (string-take commit 7)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.dthompson.us/guile-sdl2.git")
(commit commit)))
(sha256
(base32
"07rl7ll03wh6n6yshlcw6l6hz73iwwai3r6xhvmnywpx8wpkxfhv"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0")))
(native-inputs
(list autoconf automake pkg-config texinfo))
(inputs
(list target-guile sdl2))
(synopsis "Guile bindings for SDL2")
(description "Guile-sdl2 provides pure Guile Scheme bindings to the
SDL2 C shared library via the foreign function interface.")
(home-page "https://git.dthompson.us/guile-sdl2.git")
(license license:lgpl3+))))
(package
(name "chickadee")
(version "0.10.0-git")
(source (git-checkout (url (dirname (current-filename)))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0")))
(native-inputs
(list autoconf automake guile-syntax-highlight pkg-config texinfo))
(inputs
(list freetype
target-guile
libjpeg-turbo
libpng
libvorbis
mpg123
openal
readline))
(propagated-inputs
(list guile3.0-opengl guile-sdl2))
(synopsis "Game development toolkit for Guile Scheme")
(description "Chickadee is a game development toolkit for Guile
Scheme. It contains all of the basic components needed to develop
2D/3D video games.")
(home-page "https://dthompson.us/projects/chickadee.html")
(license license:gpl3+))
|