2017-05-15 15:30:33 +00:00
|
|
|
{ pkgs }:
|
|
|
|
|
2018-03-14 18:11:13 +00:00
|
|
|
with pkgs;
|
|
|
|
|
2017-05-15 15:30:33 +00:00
|
|
|
rec {
|
2018-02-05 17:28:27 +00:00
|
|
|
# Use "busybox-sandbox-shell" if present,
|
|
|
|
# if not (legacy) fallback and hope it's sufficient.
|
2018-03-14 18:11:13 +00:00
|
|
|
sh = pkgs.busybox-sandbox-shell or (busybox.override {
|
2017-05-15 15:30:33 +00:00
|
|
|
useMusl = true;
|
|
|
|
enableStatic = true;
|
|
|
|
enableMinimal = true;
|
|
|
|
extraConfig = ''
|
2018-02-05 16:25:26 +00:00
|
|
|
CONFIG_FEATURE_FANCY_ECHO y
|
|
|
|
CONFIG_FEATURE_SH_MATH y
|
|
|
|
CONFIG_FEATURE_SH_MATH_64 y
|
|
|
|
|
2017-05-15 15:30:33 +00:00
|
|
|
CONFIG_ASH y
|
2018-02-05 16:25:26 +00:00
|
|
|
CONFIG_ASH_OPTIMIZE_FOR_SIZE y
|
|
|
|
|
|
|
|
CONFIG_ASH_ALIAS y
|
|
|
|
CONFIG_ASH_BASH_COMPAT y
|
|
|
|
CONFIG_ASH_CMDCMD y
|
2017-10-07 12:43:55 +00:00
|
|
|
CONFIG_ASH_ECHO y
|
2018-02-05 16:25:26 +00:00
|
|
|
CONFIG_ASH_GETOPTS y
|
|
|
|
CONFIG_ASH_INTERNAL_GLOB y
|
|
|
|
CONFIG_ASH_JOB_CONTROL y
|
|
|
|
CONFIG_ASH_PRINTF y
|
2017-10-07 12:43:55 +00:00
|
|
|
CONFIG_ASH_TEST y
|
2017-05-15 15:30:33 +00:00
|
|
|
'';
|
2018-02-05 17:28:27 +00:00
|
|
|
});
|
2017-05-15 15:30:33 +00:00
|
|
|
|
|
|
|
configureFlags =
|
|
|
|
[ "--disable-init-state"
|
|
|
|
"--enable-gc"
|
2018-03-14 18:11:13 +00:00
|
|
|
] ++ lib.optionals stdenv.isLinux [
|
2017-05-15 15:30:33 +00:00
|
|
|
"--with-sandbox-shell=${sh}/bin/busybox"
|
|
|
|
];
|
2018-03-14 18:11:13 +00:00
|
|
|
|
|
|
|
tarballDeps =
|
|
|
|
[ bison
|
|
|
|
flex
|
|
|
|
libxml2
|
|
|
|
libxslt
|
|
|
|
docbook5
|
|
|
|
docbook5_xsl
|
|
|
|
autoconf-archive
|
|
|
|
autoreconfHook
|
|
|
|
];
|
|
|
|
|
|
|
|
buildDeps =
|
|
|
|
[ curl
|
|
|
|
bzip2 xz brotli
|
|
|
|
openssl pkgconfig sqlite boehmgc
|
|
|
|
boost
|
|
|
|
|
|
|
|
# Tests
|
|
|
|
git
|
|
|
|
mercurial
|
|
|
|
]
|
|
|
|
++ lib.optional stdenv.isLinux libseccomp
|
|
|
|
++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
|
|
|
|
++ lib.optional (stdenv.isLinux || stdenv.isDarwin)
|
|
|
|
(aws-sdk-cpp.override {
|
|
|
|
apis = ["s3"];
|
|
|
|
customMemoryManagement = false;
|
|
|
|
});
|
|
|
|
|
|
|
|
perlDeps =
|
|
|
|
[ perl
|
|
|
|
perlPackages.DBDSQLite
|
|
|
|
];
|
2017-05-15 15:30:33 +00:00
|
|
|
}
|