mirror of
https://github.com/urbit/shrub.git
synced 2024-12-25 13:04:17 +03:00
1dd274fec3
This writes the SSL certs to a temporary file on startup and then uses environment variables to control OpenSSL and curl so that they use them. We have to do this because OSX no longer ships the normal ca pems, and we statically link with these libraries.
46 lines
1.1 KiB
Nix
46 lines
1.1 KiB
Nix
let
|
|
|
|
nixpkgs = import ./nixpkgs.nix;
|
|
nixcrpkgs = import ./nixcrpkgs.nix;
|
|
crossdeps = import ./crossdeps.nix;
|
|
|
|
release =
|
|
env_name: env: {
|
|
inherit env env_name;
|
|
deps = crossdeps env;
|
|
};
|
|
|
|
linux64 = release "linux64" nixcrpkgs.linux64;
|
|
darwin = release "darwin" nixcrpkgs.mac;
|
|
|
|
ent = env:
|
|
import ./pkgs/ent/cross.nix env;
|
|
|
|
ge-additions = env:
|
|
import ./pkgs/ge-additions/cross.nix env;
|
|
|
|
urbit = env:
|
|
import ./pkgs/urbit/release.nix env
|
|
{ ent = ent env; ge-additions = ge-additions env; cacert = nixpkgs.cacert;
|
|
xxd = nixpkgs.xxd; debug = false; name = "urbit"; };
|
|
|
|
builds-for-platform = plat:
|
|
plat.deps // {
|
|
inherit (plat.env) curl libgmp libsigsegv ncurses openssl zlib lmdb;
|
|
inherit (plat.env) cmake_toolchain;
|
|
ent = ent plat;
|
|
ge-additions = ge-additions plat;
|
|
urbit = urbit plat;
|
|
};
|
|
|
|
darwin_extra = {
|
|
inherit (darwin.env) ranlib ld sdk ar toolchain tapi strip;
|
|
};
|
|
|
|
in
|
|
|
|
{
|
|
linux64 = builds-for-platform linux64;
|
|
darwin = darwin_extra // builds-for-platform darwin;
|
|
}
|