netdata: do not persist ./configure flags to decrease closure size

Before:

    $ nix path-info -r ./result | wc -l
    76
    $ nix path-info -Sh ./result
    ...-netdata-1.34.1       366.8M

After:

    $ nix path-info -r ./result | wc -l
    30
    $ nix path-info -Sh ./result
    ...-netdata-1.34.1       205.7M
This commit is contained in:
Sergei Trofimovich 2022-06-01 10:25:14 +01:00
parent 13785fcc8f
commit 3773e35a21
2 changed files with 20 additions and 0 deletions

View File

@ -49,6 +49,10 @@ in stdenv.mkDerivation rec {
# Therefore we put it into `/run/netdata`, which is owned
# by netdata only.
./ipc-socket-in-run.patch
# Avoid build-only inputs in closure leaked by configure command:
# https://github.com/NixOS/nixpkgs/issues/175693#issuecomment-1143344162
./skip-CONFIGURE_COMMAND.patch
];
NIX_CFLAGS_COMPILE = optionalString withDebug "-O1 -ggdb -DNETDATA_INTERNAL_CHECKS=1";

View File

@ -0,0 +1,16 @@
Shrink closure size by avoiding paths embedded from configure call.
https://github.com/NixOS/nixpkgs/issues/175693
--- a/daemon/buildinfo.c
+++ b/daemon/buildinfo.c
@@ -248,7 +248,9 @@ void print_build_info(void) {
char *prebuilt_distro = NULL;
get_install_type(&install_type, &prebuilt_arch, &prebuilt_distro);
- printf("Configure options: %s\n", CONFIGURE_COMMAND);
+ // To minimize closure size do not persist configure options
+ // with build-time inputs.
+ printf("Configure options: REMOVED\n");
if (install_type == NULL) {
printf("Install type: unknown\n");