63fe828120
Some of the improvements here include: * rocksdb can actually use jemalloc now instead of just pulling in a second rocksdb for no reason * "complement-runtime" factored back out into shell file * complement image no longer uses `mkDerivation` for `copyToRoot` because that's what `buildEnv` is for * complement image no longer sets `SERVER_NAME`, complement already does that * all packages were factored out into `callPackage`-able files for use with a custom `lib.makeScope pkgs.newScope` * new version of `mkPackage` has options that are easier to use and override such as `features`
28 lines
516 B
Nix
28 lines
516 B
Nix
{ inputs
|
|
|
|
# Dependencies
|
|
, dockerTools
|
|
, lib
|
|
, main
|
|
, stdenv
|
|
, tini
|
|
}:
|
|
|
|
dockerTools.buildLayeredImage {
|
|
name = main.pname;
|
|
tag = "main";
|
|
created = "@${toString inputs.self.lastModified}";
|
|
contents = [
|
|
dockerTools.caCertificates
|
|
];
|
|
config = {
|
|
Entrypoint = if !stdenv.isDarwin
|
|
# Use the `tini` init system so that signals (e.g. ctrl+c/SIGINT)
|
|
# are handled as expected
|
|
then [ "${lib.getExe' tini "tini"}" "--" ]
|
|
else [];
|
|
Cmd = [
|
|
"${lib.getExe main}"
|
|
];
|
|
};
|
|
}
|