Profpatsch/third_party/overlays/sam/overlay.nix
 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
final: prev:
let
  inherit (final) lib;
  callPackage = final.newScope final.alt.sam;
in
{
  _toString = _: "${prev._toString or (_: "unknown") prev}:alt.sam";

  alt = prev.alt or { } // {
    sam =
      import ./pkgs/by-name
        {
          inherit lib callPackage;
        }
      // {
        _toString = _: "Syndicate Actor Model Packages";

        lib = prev.lib.extend (import ./pkgs/lib);

        inherit callPackage;

        fetchFromSyndicateLang =
          args:
          prev.fetchFromGitea (
            {
              domain = "git.syndicate-lang.org";
              owner = "syndicate-lang";
            }
            // args
          );

        formats = callPackage ./pkgs/pkgs-lib/formats { };

        python3Packages = prev.python3Packages.overrideScope (import ./pkgs/python);

        tclPackages = prev.tclPackages.overrideScope (import ./pkgs/tcl-modules);

        tcl9Packages =
          (prev.tclPackages.override {
            tcl = final.tcl-9_0;
            tk = final.tk-9_0;
          }).overrideScope
            (import ./pkgs/tcl-modules);
      };
  };
}