summary refs log tree commit diff
path: root/pkgs/development/guile-modules/guile-lib/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/guile-modules/guile-lib/default.nix')
-rw-r--r--pkgs/development/guile-modules/guile-lib/default.nix38
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/development/guile-modules/guile-lib/default.nix b/pkgs/development/guile-modules/guile-lib/default.nix
new file mode 100644
index 00000000000..cc26c458a06
--- /dev/null
+++ b/pkgs/development/guile-modules/guile-lib/default.nix
@@ -0,0 +1,38 @@
+{stdenv, fetchurl, guile}:
+
+stdenv.mkDerivation rec {
+  name = "guile-lib-0.1.6";
+  src = fetchurl {
+    url = "http://download.gna.org/guile-lib/" + name + ".tar.gz";
+    sha256 = "827744c7954078f1f37e0bf70252ec70b4d60c1482a3542a49bd09723cf65d12";
+  };
+
+  buildInputs = [guile];
+
+  postInstall = ''
+    # Remove modules already provided by Guile.
+    if "${guile}/bin/guile" -c '(use-modules (srfi srfi-34))'
+    then
+	rm -f "$out/share/guile/site/srfi/srfi-34.scm"
+    fi
+    if "${guile}/bin/guile" -c '(use-modules (srfi srfi-35))'
+    then
+	rm -f "$out/share/guile/site/srfi/srfi-35.scm"
+    fi
+
+    # Make modules available under `/lib/site-guile' to comply with Guile's
+    # setup-hook.
+    mkdir -p "$out/lib/site-guile"
+    for f in "$out/share/guile/site"/*
+    do
+      ln -s "$f" "$out/lib/site-guile/"
+    done
+  '';
+
+  meta = {
+    description = ''Guile-Library, a set of various useful
+                    Guile Scheme modules.'';
+    homepage = http://home.gna.org/guile-lib/;
+    license = "GPL";
+  };
+}