guile-modules: stylistic nix expression changes to modules with sole

maintainer vyp
This commit is contained in:
xd1le 2017-09-24 21:03:56 +10:00
parent 796b69318f
commit 3579d7e2b2
6 changed files with 110 additions and 105 deletions

View File

@ -1,7 +1,8 @@
{ fetchurl, stdenv, guile, pkgconfig, cairo, expat, guile-lib }: { stdenv, fetchurl, pkgconfig, guile, guile-lib, cairo, expat }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "guile-cairo-1.4.1"; name = "guile-cairo-${version}";
version = "1.4.1";
src = fetchurl { src = fetchurl {
url = "http://download.gna.org/guile-cairo/${name}.tar.gz"; url = "http://download.gna.org/guile-cairo/${name}.tar.gz";
@ -13,25 +14,20 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
meta = { meta = with stdenv.lib; {
description = "Guile-Cairo, Cairo bindings for GNU Guile"; description = "Cairo bindings for GNU Guile";
longDescription = ''
Guile-Cairo wraps the Cairo graphics library for Guile Scheme.
longDescription = Guile-Cairo is complete, wrapping almost all of the Cairo API. It is API
'' Guile-Cairo wraps the Cairo graphics library for Guile Scheme. stable, providing a firm base on which to do graphics work. Finally, and
importantly, it is pleasant to use. You get a powerful and well
Guile-Cairo is complete, wrapping almost all of the Cairo API. It maintained graphics library with all of the benefits of Scheme: memory
is API stable, providing a firm base on which to do graphics work. management, exceptions, macros, and a dynamic programming environment.
Finally, and importantly, it is pleasant to use. You get a powerful '';
and well-maintained graphics library with all of the benefits of homepage = "http://home.gna.org/guile-cairo/";
Scheme: memory management, exceptions, macros, and a dynamic license = licenses.lgpl3Plus;
programming environment. maintainers = with maintainers; [ vyp ];
''; platforms = platforms.linux;
license = stdenv.lib.licenses.lgpl3Plus;
homepage = http://home.gna.org/guile-cairo/;
maintainers = [ stdenv.lib.maintainers.vyp ];
platforms = stdenv.lib.platforms.linux;
}; };
} }

View File

@ -1,44 +1,45 @@
{stdenv, fetchurl, guile, texinfo, pkgconfig}: { stdenv, fetchurl, guile, texinfo, pkgconfig }:
assert stdenv ? cc && stdenv.cc.isGNU; assert stdenv ? cc && stdenv.cc.isGNU;
stdenv.mkDerivation rec { let
name = "guile-lib-0.2.2"; name = "guile-lib-${version}";
version = "0.2.2";
in stdenv.mkDerivation {
inherit name;
src = fetchurl { src = fetchurl {
url = "mirror://savannah/guile-lib/${name}.tar.gz"; url = "mirror://savannah/guile-lib/${name}.tar.gz";
sha256 = "1f9n2b5b5r75lzjinyk6zp6g20g60msa0jpfrk5hhg4j8cy0ih4b"; sha256 = "1f9n2b5b5r75lzjinyk6zp6g20g60msa0jpfrk5hhg4j8cy0ih4b";
}; };
nativeBuildInputs = [pkgconfig]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [guile texinfo]; buildInputs = [ guile texinfo ];
# One test doesn't seem to be compatible with guile_2_2 # One test doesn't seem to be compatible with guile_2_2.
patchPhase = '' patchPhase = ''
sed -i -e '/sxml.ssax.scm/d' unit-tests/Makefile* sed -i -e '/sxml.ssax.scm/d' unit-tests/Makefile*
''; '';
doCheck = true; doCheck = true;
preCheck = preCheck = ''
# Make `libgcc_s.so' visible for `pthread_cancel'. # Make `libgcc_s.so' visible for `pthread_cancel'.
'' export LD_LIBRARY_PATH="$(dirname $(echo ${stdenv.cc.cc.lib}/lib*/libgcc_s.so)):$LD_LIBRARY_PATH" export LD_LIBRARY_PATH=\
"$(dirname $(echo ${stdenv.cc.cc.lib}/lib*/libgcc_s.so)):$LD_LIBRARY_PATH"
'';
meta = with stdenv.lib; {
description = "A collection of useful Guile Scheme modules";
longDescription = ''
guile-lib is intended as an accumulation place for pure-scheme Guile
modules, allowing for people to cooperate integrating their generic Guile
modules into a coherent library. Think "a down-scaled, limited-scope CPAN
for Guile".
''; '';
homepage = "http://www.nongnu.org/guile-lib/";
meta = { license = licenses.gpl3Plus;
description = "Guile-Library, a collection of useful Guile Scheme modules"; maintainers = with maintainers; [ vyp ];
platforms = platforms.gnu;
longDescription =
'' guile-lib is intended as an accumulation place for pure-scheme Guile
modules, allowing for people to cooperate integrating their generic
Guile modules into a coherent library. Think "a down-scaled,
limited-scope CPAN for Guile".
'';
homepage = http://www.nongnu.org/guile-lib/;
license = stdenv.lib.licenses.gpl3Plus;
maintainers = [ stdenv.lib.maintainers.vyp ];
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
}; };
} }

View File

@ -1,7 +1,10 @@
{ fetchurl, stdenv, pkgconfig, guile, ncurses, libffi }: { stdenv, fetchurl, pkgconfig, guile, ncurses, libffi }:
stdenv.mkDerivation rec { let
name = "guile-ncurses-1.7"; name = "guile-ncurses-${version}";
version = "1.7";
in stdenv.mkDerivation {
inherit name;
src = fetchurl { src = fetchurl {
url = "mirror://gnu/guile-ncurses/${name}.tar.gz"; url = "mirror://gnu/guile-ncurses/${name}.tar.gz";
@ -11,31 +14,31 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ guile ncurses libffi ]; buildInputs = [ guile ncurses libffi ];
preConfigure = preConfigure = ''
'' configureFlags="$configureFlags --with-guilesitedir=$out/share/guile/site" ''; configureFlags="$configureFlags --with-guilesitedir=$out/share/guile/site"
'';
postFixup = postFixup = ''
'' for f in $out/share/guile/site/ncurses/**.scm; do \ for f in $out/share/guile/site/ncurses/**.scm; do \
substituteInPlace $f \ substituteInPlace $f \
--replace "libguile-ncurses" "$out/lib/libguile-ncurses"; \ --replace "libguile-ncurses" "$out/lib/libguile-ncurses"; \
done done
'';
# XXX: 1 of 65 tests failed.
doCheck = false;
meta = with stdenv.lib; {
description = "Scheme interface to the NCurses libraries";
longDescription = ''
GNU Guile-Ncurses is a library for the Guile Scheme interpreter that
provides functions for creating text user interfaces. The text user
interface functionality is built on the ncurses libraries: curses, form,
panel, and menu.
''; '';
homepage = "https://www.gnu.org/software/guile-ncurses/";
doCheck = false; # XXX: 1 of 65 tests failed license = licenses.lgpl3Plus;
maintainers = with maintainers; [ vyp ];
meta = { platforms = platforms.gnu;
description = "GNU Guile-Ncurses, Scheme interface to the NCurses libraries";
longDescription =
'' GNU Guile-Ncurses is a library for the Guile Scheme interpreter that
provides functions for creating text user interfaces. The text user
interface functionality is built on the ncurses libraries: curses,
form, panel, and menu.
'';
license = stdenv.lib.licenses.lgpl3Plus;
maintainers = [ stdenv.lib.maintainers.vyp ];
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
}; };
} }

View File

@ -1,15 +1,10 @@
{ stdenv, fetchurl, pkgconfig, guile }: { stdenv, fetchurl, pkgconfig, guile }:
stdenv.mkDerivation rec { let
name = "guile-opengl-0.1.0"; name = "guile-opengl-${version}";
version = "0.1.0";
meta = with stdenv.lib; { in stdenv.mkDerivation {
description = "Guile binding for the OpenGL graphics API"; inherit name;
homepage = "http://gnu.org/s/guile-opengl";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;
};
src = fetchurl { src = fetchurl {
url = "mirror://gnu/guile-opengl/${name}.tar.gz"; url = "mirror://gnu/guile-opengl/${name}.tar.gz";
@ -17,4 +12,12 @@ stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ pkgconfig guile ]; nativeBuildInputs = [ pkgconfig guile ];
meta = with stdenv.lib; {
description = "Guile bindings for the OpenGL graphics API";
homepage = "http://gnu.org/s/guile-opengl";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;
};
} }

View File

@ -3,15 +3,8 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "guile-sdl-0.5.1"; name = "guile-sdl-${version}";
version = "0.5.1";
meta = with stdenv.lib; {
description = "Guile bindings for SDL";
homepage = "http://gnu.org/s/guile-sdl";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;
};
src = fetchurl { src = fetchurl {
url = "mirror://gnu/guile-sdl/${name}.tar.xz"; url = "mirror://gnu/guile-sdl/${name}.tar.xz";
@ -20,9 +13,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig guile ]; nativeBuildInputs = [ pkgconfig guile ];
buildInputs = [ buildInputs = [ SDL.dev SDL_image SDL_ttf SDL_mixer ];
SDL.dev SDL_image SDL_ttf SDL_mixer
];
GUILE_AUTO_COMPILE = 0; GUILE_AUTO_COMPILE = 0;
@ -32,4 +23,12 @@ stdenv.mkDerivation rec {
paths = buildInputs; paths = buildInputs;
}; };
in "SDLMINUSI=-I${sdl}/include/SDL"; in "SDLMINUSI=-I${sdl}/include/SDL";
meta = with stdenv.lib; {
description = "Guile bindings for SDL";
homepage = "http://gnu.org/s/guile-sdl";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;
};
} }

View File

@ -1,18 +1,13 @@
{ stdenv, fetchurl, pkgconfig, guile, texinfo }: { stdenv, fetchurl, pkgconfig, guile, texinfo }:
stdenv.mkDerivation { let
name = "guile-xcb-1.3"; name = "guile-xcb-${version}";
version = "1.3";
meta = with stdenv.lib; { in stdenv.mkDerivation {
description = "XCB bindings for Guile"; inherit name;
homepage = "http://www.markwitmer.com/guile-xcb/guile-xcb.html";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;
};
src = fetchurl { src = fetchurl {
url = "http://www.markwitmer.com/dist/guile-xcb-1.3.tar.gz"; url = "http://www.markwitmer.com/dist/${name}.tar.gz";
sha256 = "04dvbqdrrs67490gn4gkq9zk8mqy3mkls2818ha4p0ckhh0pm149"; sha256 = "04dvbqdrrs67490gn4gkq9zk8mqy3mkls2818ha4p0ckhh0pm149";
}; };
@ -24,4 +19,12 @@ stdenv.mkDerivation {
--with-guile-site-ccache-dir=$out/share/guile/site --with-guile-site-ccache-dir=$out/share/guile/site
"; ";
''; '';
meta = with stdenv.lib; {
description = "XCB bindings for Guile";
homepage = "http://www.markwitmer.com/guile-xcb/guile-xcb.html";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;
};
} }