about summary refs log tree commit diff
path: root/pkgs/development/lisp-modules-new-obsolete/examples/bordeaux-threads.nix
blob: 31a53b0f949b54eca1596b6668da16bea95277d3 (plain) (blame)
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
# To run this example from the command line, run this command:
#
# $ nix-build ./bordeaux-threads.nix
# $ ls ./result/
#
# To run from a nix repl, run:
# $ nix repl
# nix-repl> bt = import ./bordeaux-threads.nix
# nix-repl> :b bt
#
# In the `result` directory you can find .fasl files of the
# bordeaux-threads library:
#
#  $ ls -l ./result/src/

let

  pkgs = import ../../../../default.nix {};

  sbcl = "${pkgs.sbcl}/bin/sbcl --script";

  alexandria = pkgs.lispPackages_new.build-asdf-system {
    pname = "alexandria";
    version = "v1.4";
    src = pkgs.fetchzip {
      url = "https://gitlab.common-lisp.net/alexandria/alexandria/-/archive/v1.4/alexandria-v1.4.tar.gz";
      sha256 = "0r1adhvf98h0104vq14q7y99h0hsa8wqwqw92h7ghrjxmsvz2z6l";
    };
    lisp = sbcl;
  };

  bordeaux-threads = pkgs.lispPackages_new.build-asdf-system {
    pname = "bordeaux-threads";
    version = "0.8.8";
    src = pkgs.fetchzip {
      url = "https://github.com/sionescu/bordeaux-threads/archive/v0.8.8.tar.gz";
      sha256 = "19i443fz3488v1pbbr9x24y8h8vlyhny9vj6c9jk5prm702awrp6";
    };
    lisp = sbcl;
    lispLibs = [ alexandria ];
  };

in bordeaux-threads