From c2a9e13d3890f9e100d5a3b46a26dac16989894f Mon Sep 17 00:00:00 2001 From: David Thompson Date: Sat, 8 Nov 2014 17:32:46 -0500 Subject: Add guix environment. * package.scm: New file. * README.org (Developing): New section. --- README.org | 9 +++++++++ package.scm | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 package.scm diff --git a/README.org b/README.org index 4e56303..0526c67 100644 --- a/README.org +++ b/README.org @@ -288,6 +288,15 @@ See =INSTALL.org= for more detailed installation instructions. +** Developing + + Users of GNU Guix can quickly create a development environment by + running: + + #+BEGIN_SRC sh + guix environment -l package.scm + #+END_SRC + ** Running Examples To run an example when Sly has been installed: diff --git a/package.scm b/package.scm new file mode 100644 index 0000000..664e04c --- /dev/null +++ b/package.scm @@ -0,0 +1,62 @@ +;;; Sly +;;; Copyright (C) 2014 David Thompson +;;; +;;; Sly 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. +;;; +;;; Sly 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 this program. If not, see +;;; . + +;;; Commentary: +;; +;; Development environment for GNU Guix. +;; +;;; Code: + +(use-modules (guix packages) + (guix licenses) + (guix build-system gnu) + (gnu packages) + (gnu packages guile) + (gnu packages gl) + (gnu packages pkg-config) + (gnu packages sdl) + (gnu packages maths) + (gnu packages image)) + +;; The development environment needs a tweaked LD_LIBRARY_PATH for +;; finding libfreeimage. +(define freeimage + (package (inherit freeimage) + (native-search-paths + (list (search-path-specification + (variable "LD_LIBRARY_PATH") + (directories '("lib"))))))) + +(package + (name "sly") + (version "0.0") + (source ".") + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("guile" ,guile-2.0) + ("guile-sdl" ,guile-sdl) + ("guile-opengl" ,guile-opengl) + ("gsl" ,gsl) + ("freeimage" ,freeimage))) + (synopsis "2D/3D game engine for GNU Guile") + (description "Sly is a 2D/3D game engine written in Guile Scheme. +Sly differs from most game engines in that it emphasizes functional +reactive programming and live coding.") + (home-page "https://gitorious.org/sly/sly") + (license gpl3+)) -- cgit v1.2.3