nginx / unit

NGINX Unit - universal web app server - a lightweight and versatile open source server that simplifies the application stack by natively executing application code across eight different programming language runtimes.
https://unit.nginx.org
Apache License 2.0
5.4k stars 330 forks source link

Incorrect detect ruby version #349

Closed Izorkin closed 4 years ago

Izorkin commented 4 years ago

When building a unit with multiple ruby ​​versions, the version is incorrectly detect:

configuring Ruby module
checking for Ruby library ... found
checking for Ruby version ... 2.4.9
 + Ruby module: ruby24.unit.so
configuring Ruby module
checking for Ruby library ... found
checking for Ruby version ... 2.4.9
 + Ruby module: ruby25.unit.so
configuring Ruby module
checking for Ruby library ... found
checking for Ruby version ... 2.4.9
 + Ruby module: ruby26.unit.so

ldd ./result/modules/ruby24.unit.so | grep ruby

libruby.so.2.4 => /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/libruby.so.2.4 (0x0000708222fb5000)

ldd ./result/modules/ruby25.unit.so | grep ruby

libruby.so.2.4 => /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/libruby.so.2.4 (0x00007544ccdb9000)

ldd ./result/modules/ruby26.unit.so | grep ruby

libruby.so.2.4 => /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/libruby.so.2.4 (0x0000756de2990000)

Configure module:

./configure ruby   --module=ruby24   --ruby=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin/ruby
./configure ruby   --module=ruby25   --ruby=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin/ruby
./configure ruby   --module=ruby26   --ruby=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin/ruby
VBart commented 4 years ago
/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin/ruby -r rbconfig -e 'puts RbConfig::CONFIG'
/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin/ruby -r rbconfig -e 'puts RbConfig::CONFIG'
/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin/ruby -r rbconfig -e 'puts RbConfig::CONFIG'

Could you provide the output of these three commands?

Izorkin commented 4 years ago

/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin/ruby -r rbconfig -e 'puts RbConfig::CONFIG' {"DESTDIR"=>"", "MAJOR"=>"2", "MINOR"=>"4", "TEENY"=>"9", "PATCHLEVEL"=>"362", "INSTALL"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "EXEEXT"=>"", "prefix"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9", "ruby_install_name"=>"ruby", "RUBY_INSTALL_NAME"=>"ruby", "RUBY_SO_NAME"=>"ruby", "exec"=>"exec", "ruby_pc"=>"ruby-2.4.pc", "PACKAGE"=>"ruby", "BUILTIN_TRANSSRCS"=>" enc/trans/newline.c", "USE_RUBYGEMS"=>"YES", "MANTYPE"=>"doc", "vendorarchhdrdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/ruby-2.4.0/vendor_ruby/x86_64-linux", "sitearchhdrdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/ruby-2.4.0/site_ruby/x86_64-linux", "rubyarchhdrdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/ruby-2.4.0/x86_64-linux", "vendorhdrdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/ruby-2.4.0/vendor_ruby", "sitehdrdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/ruby-2.4.0/site_ruby", "rubyhdrdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/ruby-2.4.0", "RUBY_SEARCH_PATH"=>"", "UNIVERSAL_INTS"=>"", "UNIVERSAL_ARCHNAMES"=>"", "configure_args"=>" '--prefix=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9' '--bindir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin' '--sbindir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/sbin' '--includedir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include' '--oldincludedir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include' '--mandir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/man' '--infodir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/info' '--docdir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/doc/' '--libdir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib' '--libexecdir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/libexec' '--localedir=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/locale' '--enable-shared' '--enable-pthread' 'CC=gcc' 'CXX=g++'", "CONFIGURE"=>"configure", "vendorarchdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/vendor_ruby/2.4.0/x86_64-linux", "vendorlibdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/vendor_ruby/2.4.0", "vendordir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/vendor_ruby", "sitearchdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby/2.4.0/x86_64-linux", "sitelibdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby/2.4.0", "sitedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby", "rubyarchdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/2.4.0/x86_64-linux", "rubylibdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/2.4.0", "ruby_version"=>"2.4.0", "sitearch"=>"x86_64-linux", "arch"=>"x86_64-linux", "sitearchincludedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/x86_64-linux", "archincludedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include/x86_64-linux", "sitearchlibdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/x86_64-linux", "archlibdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/x86_64-linux", "libdirname"=>"libdir", "RUBY_EXEC_PREFIX"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9", "RUBY_LIB_VERSION"=>"", "RUBY_LIB_VERSION_STYLE"=>"3\t/* full */", "RI_BASE_NAME"=>"ri", "ridir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/ri/share/ri", "rubysitearchprefix"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/x86_64-linux", "rubyarchprefix"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/x86_64-linux", "MAKEFILES"=>"Makefile GNUmakefile", "PLATFORM_DIR"=>"", "THREAD_MODEL"=>"pthread", "SYMBOL_PREFIX"=>"", "EXPORT_PREFIX"=>"", "COMMON_HEADERS"=>"", "COMMON_MACROS"=>"", "COMMON_LIBS"=>"", "MAINLIBS"=>"", "ENABLE_SHARED"=>"yes", "DLDLIBS"=>" -lc", "SOLIBS"=>"-lpthread -ldl -lcrypt -lm ", "LIBRUBYARG_SHARED"=>"-Wl,-rpath,/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -lruby", "LIBRUBYARG_STATIC"=>"-Wl,-rpath,/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -lruby-static", "LIBRUBYARG"=>"-Wl,-rpath,/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -lruby", "LIBRUBY"=>"libruby.so.2.4.9", "LIBRUBY_ALIASES"=>"libruby.so.2.4 libruby.so", "LIBRUBY_SO"=>"libruby.so.2.4.9", "LIBRUBY_A"=>"libruby-static.a", "RUBYW_INSTALL_NAME"=>"", "rubyw_install_name"=>"", "EXTDLDFLAGS"=>"", "EXTLDFLAGS"=>"", "strict_warnflags"=>"-std=gnu99", "warnflags"=>"-Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0", "debugflags"=>"-ggdb3", "optflags"=>"-O3 -fno-fast-math", "NULLCMD"=>":", "DLNOBJ"=>"dln.o", "INSTALL_STATIC_LIBRARY"=>"no", "EXECUTABLE_EXTS"=>"", "ARCHFILE"=>"", "LIBRUBY_RELATIVE"=>"no", "EXTOUT"=>".ext", "PREP"=>"miniruby", "CROSS_COMPILING"=>"no", "TEST_RUNNABLE"=>"yes", "rubylibprefix"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby", "setup"=>"Setup", "ENCSTATIC"=>"", "EXTSTATIC"=>"", "STRIP"=>"strip -S -x", "TRY_LINK"=>"", "PRELOADENV"=>"LD_PRELOAD", "LIBPATHENV"=>"LD_LIBRARY_PATH", "RPATHFLAG"=>" -Wl,-rpath,%1$-s", "LIBPATHFLAG"=>" -L%1$-s", "LINK_SO"=>"", "ASMEXT"=>"S", "LIBEXT"=>"a", "DLEXT2"=>"", "DLEXT"=>"so", "LDSHAREDXX"=>"g++ -shared", "LDSHARED"=>"gcc -shared", "CCDLFLAGS"=>"-fPIC", "STATIC"=>"", "ARCH_FLAG"=>"", "DLDFLAGS"=>"-Wl,--compress-debug-sections=zlib", "ALLOCA"=>"", "codesign"=>"", "POSTLINK"=>":", "WERRORFLAG"=>"-Werror", "CHDIR"=>"cd -P", "RMALL"=>"rm -fr", "RMDIRS"=>"rmdir --ignore-fail-on-non-empty -p", "RMDIR"=>"rmdir --ignore-fail-on-non-empty", "CP"=>"cp", "RM"=>"rm -f", "PKG_CONFIG"=>"", "PYTHON"=>"", "DOXYGEN"=>"", "DOT"=>"", "MAKEDIRS"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/mkdir -p", "MKDIR_P"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/mkdir -p", "INSTALL_DATA"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c -m 644", "INSTALL_SCRIPT"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "INSTALL_PROGRAM"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "SET_MAKE"=>"", "LN_S"=>"ln -s", "NM"=>"nm", "DLLWRAP"=>"", "WINDRES"=>"", "OBJCOPY"=>":", "OBJDUMP"=>"objdump", "ASFLAGS"=>"", "AS"=>"as", "ARFLAGS"=>"rcD ", "AR"=>"ar", "RANLIB"=>"ranlib", "try_header"=>"", "CC_VERSION_MESSAGE"=>"gcc (GCC) 8.3.0\nCopyright (C) 2018 Free Software Foundation, Inc.\nThis is free software; see the source for copying conditions. There is NO\nwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.", "CC_VERSION"=>"gcc --version", "CSRCFLAG"=>"", "COUTFLAG"=>"-o ", "OUTFLAG"=>"-o ", "CPPOUTFILE"=>"-o conftest.i", "GNU_LD"=>"yes", "LD"=>"ld", "GCC"=>"yes", "EGREP"=>"/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin/grep -E", "GREP"=>"/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin/grep", "CPP"=>"gcc -E", "CXXFLAGS"=>"-O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0", "OBJEXT"=>"o", "CPPFLAGS"=>" ", "LDFLAGS"=>"-L. -fstack-protector -rdynamic -Wl,-export-dynamic", "CFLAGS"=>"-O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -fPIC", "CXX"=>"g++", "CC"=>"gcc", "NACL_LIB_PATH"=>"", "NACL_SDK_VARIANT"=>"", "NACL_SDK_ROOT"=>"", "NACL_TOOLCHAIN"=>"", "target_os"=>"linux", "target_vendor"=>"unknown", "target_cpu"=>"x86_64", "target"=>"x86_64-unknown-linux-gnu", "host_os"=>"linux-gnu", "host_vendor"=>"unknown", "host_cpu"=>"x86_64", "host"=>"x86_64-unknown-linux-gnu", "RUBY_VERSION_NAME"=>"ruby-2.4.0", "RUBYW_BASE_NAME"=>"rubyw", "RUBY_BASE_NAME"=>"ruby", "build_os"=>"linux-gnu", "build_vendor"=>"unknown", "build_cpu"=>"x86_64", "build"=>"x86_64-unknown-linux-gnu", "RUBY_PROGRAM_VERSION"=>"2.4.9", "cxxflags"=>"-O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0", "cppflags"=>"", "cflags"=>"-O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0", "target_alias"=>"", "host_alias"=>"", "build_alias"=>"", "LIBS"=>"-lpthread -ldl -lcrypt -lm ", "ECHO_T"=>"", "ECHO_N"=>"-n", "ECHO_C"=>"", "DEFS"=>"", "mandir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/man", "localedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/locale", "libdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib", "psdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/doc", "pdfdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/doc", "dvidir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/doc", "htmldir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/doc", "infodir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/info", "docdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share/doc", "oldincludedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include", "includedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include", "localstatedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/var", "sharedstatedir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/com", "sysconfdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/etc", "datadir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share", "datarootdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/share", "libexecdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/libexec", "sbindir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/sbin", "bindir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin", "exec_prefix"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9", "PACKAGE_URL"=>"", "PACKAGE_BUGREPORT"=>"", "PACKAGE_STRING"=>"", "PACKAGE_VERSION"=>"", "PACKAGE_TARNAME"=>"", "PACKAGE_NAME"=>"", "PATH_SEPARATOR"=>":", "SHELL"=>"/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash", "UNICODE_VERSION"=>"9.0.0", "archdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/2.4.0/x86_64-linux", "topdir"=>"/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/2.4.0/x86_64-linux"}

/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin/ruby -r rbconfig -e 'puts RbConfig::CONFIG' {"DESTDIR"=>"", "MAJOR"=>"2", "MINOR"=>"5", "TEENY"=>"7", "PATCHLEVEL"=>"206", "INSTALL"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "EXEEXT"=>"", "prefix"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7", "ruby_install_name"=>"ruby", "RUBY_INSTALL_NAME"=>"ruby", "RUBY_SO_NAME"=>"ruby", "exec"=>"exec", "ruby_pc"=>"ruby-2.5.pc", "PACKAGE"=>"ruby", "BUILTIN_TRANSSRCS"=>" enc/trans/newline.c", "USE_RUBYGEMS"=>"YES", "MANTYPE"=>"doc", "vendorarchhdrdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/ruby-2.5.0/vendor_ruby/x86_64-linux", "sitearchhdrdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/ruby-2.5.0/site_ruby/x86_64-linux", "rubyarchhdrdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/ruby-2.5.0/x86_64-linux", "vendorhdrdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/ruby-2.5.0/vendor_ruby", "sitehdrdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/ruby-2.5.0/site_ruby", "rubyhdrdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/ruby-2.5.0", "RUBY_SEARCH_PATH"=>"", "UNIVERSAL_INTS"=>"", "UNIVERSAL_ARCHNAMES"=>"", "configure_args"=>" '--prefix=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7' '--bindir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin' '--sbindir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/sbin' '--includedir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include' '--oldincludedir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include' '--mandir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/man' '--infodir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/info' '--docdir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/doc/' '--libdir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib' '--libexecdir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/libexec' '--localedir=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/locale' '--enable-shared' '--enable-pthread' 'CC=gcc' 'CXX=g++'", "CONFIGURE"=>"configure", "vendorarchdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/vendor_ruby/2.5.0/x86_64-linux", "vendorlibdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/vendor_ruby/2.5.0", "vendordir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/vendor_ruby", "sitearchdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby/2.5.0/x86_64-linux", "sitelibdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby/2.5.0", "sitedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby", "rubyarchdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/2.5.0/x86_64-linux", "rubylibdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/2.5.0", "ruby_version"=>"2.5.0", "sitearch"=>"x86_64-linux", "arch"=>"x86_64-linux", "sitearchincludedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/x86_64-linux", "archincludedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include/x86_64-linux", "sitearchlibdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/x86_64-linux", "archlibdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/x86_64-linux", "libdirname"=>"libdir", "RUBY_EXEC_PREFIX"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7", "RUBY_LIB_VERSION"=>"", "RUBY_LIB_VERSION_STYLE"=>"3\t/* full */", "RI_BASE_NAME"=>"ri", "ridir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/ri/share/ri", "rubysitearchprefix"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/x86_64-linux", "rubyarchprefix"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/x86_64-linux", "MAKEFILES"=>"Makefile GNUmakefile", "PLATFORM_DIR"=>"", "THREAD_MODEL"=>"pthread", "SYMBOL_PREFIX"=>"", "EXPORT_PREFIX"=>"", "COMMON_HEADERS"=>"", "COMMON_MACROS"=>"", "COMMON_LIBS"=>"", "MAINLIBS"=>"", "ENABLE_SHARED"=>"yes", "DLDLIBS"=>" -lc", "SOLIBS"=>"-lpthread -ldl -lcrypt -lm ", "LIBRUBYARG_SHARED"=>"-Wl,-rpath,/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -lruby", "LIBRUBYARG_STATIC"=>"-Wl,-rpath,/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -lruby-static", "LIBRUBYARG"=>"-Wl,-rpath,/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -lruby", "LIBRUBY"=>"libruby.so.2.5.7", "LIBRUBY_ALIASES"=>"libruby.so.2.5 libruby.so", "LIBRUBY_SONAME"=>"libruby.so.2.5", "LIBRUBY_SO"=>"libruby.so.2.5.7", "LIBRUBY_A"=>"libruby-static.a", "RUBYW_INSTALL_NAME"=>"", "rubyw_install_name"=>"", "EXTDLDFLAGS"=>"", "EXTLDFLAGS"=>"", "strict_warnflags"=>"-std=gnu99", "warnflags"=>"-Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wmisleading-indentation -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -Wduplicated-cond -Wrestrict", "debugflags"=>"-ggdb3", "optflags"=>"-O3", "NULLCMD"=>":", "ENABLE_DEBUG_ENV"=>"", "DLNOBJ"=>"dln.o", "INSTALL_STATIC_LIBRARY"=>"no", "EXECUTABLE_EXTS"=>"", "ARCHFILE"=>"", "LIBRUBY_RELATIVE"=>"no", "EXTOUT"=>".ext", "PREP"=>"miniruby", "CROSS_COMPILING"=>"no", "TEST_RUNNABLE"=>"yes", "rubylibprefix"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby", "setup"=>"Setup", "ENCSTATIC"=>"", "EXTSTATIC"=>"", "STRIP"=>"strip -S -x", "SOEXT"=>"so", "TRY_LINK"=>"", "PRELOADENV"=>"LD_PRELOAD", "LIBPATHENV"=>"LD_LIBRARY_PATH", "RPATHFLAG"=>" -Wl,-rpath,%1$-s", "LIBPATHFLAG"=>" -L%1$-s", "LINK_SO"=>"", "ASMEXT"=>"S", "LIBEXT"=>"a", "DLEXT2"=>"", "DLEXT"=>"so", "LDSHAREDXX"=>"g++ -shared", "LDSHARED"=>"gcc -shared", "CCDLFLAGS"=>"-fPIC", "STATIC"=>"", "ARCH_FLAG"=>"", "DLDFLAGS"=>"-Wl,--compress-debug-sections=zlib", "ALLOCA"=>"", "dsymutil"=>"", "codesign"=>"", "POSTLINK"=>":", "WERRORFLAG"=>"-Werror", "CHDIR"=>"cd -P", "RMALL"=>"rm -fr", "RMDIRS"=>"rmdir --ignore-fail-on-non-empty -p", "RMDIR"=>"rmdir --ignore-fail-on-non-empty", "CP"=>"cp", "RM"=>"rm -f", "PKG_CONFIG"=>"", "DOXYGEN"=>"", "DOT"=>"", "MAKEDIRS"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/mkdir -p", "MKDIR_P"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/mkdir -p", "INSTALL_DATA"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c -m 644", "INSTALL_SCRIPT"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "INSTALL_PROGRAM"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "SET_MAKE"=>"", "LN_S"=>"ln -s", "NM"=>"nm", "DLLWRAP"=>"", "WINDRES"=>"", "OBJCOPY"=>":", "OBJDUMP"=>"objdump", "ASFLAGS"=>"", "AS"=>"as", "ARFLAGS"=>"rcD ", "AR"=>"ar", "RANLIB"=>"ranlib", "try_header"=>"", "CC_VERSION_MESSAGE"=>"gcc (GCC) 8.3.0\nCopyright (C) 2018 Free Software Foundation, Inc.\nThis is free software; see the source for copying conditions. There is NO\nwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.", "CC_VERSION"=>"gcc --version", "CSRCFLAG"=>"", "COUTFLAG"=>"-o ", "OUTFLAG"=>"-o ", "CPPOUTFILE"=>"-o conftest.i", "GNU_LD"=>"yes", "LD"=>"ld", "GCC"=>"yes", "EGREP"=>"/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin/grep -E", "GREP"=>"/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin/grep", "CPP"=>"gcc -E", "CXXFLAGS"=>"-O3 -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wmisleading-indentation -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -Wduplicated-cond -Wrestrict", "CXX"=>"g++", "OBJEXT"=>"o", "CPPFLAGS"=>" ", "LDFLAGS"=>"-L. -fstack-protector -rdynamic -Wl,-export-dynamic", "CFLAGS"=>"-O3 -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wmisleading-indentation -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -Wduplicated-cond -Wrestrict -fPIC", "CC"=>"gcc", "target_os"=>"linux", "target_vendor"=>"unknown", "target_cpu"=>"x86_64", "target"=>"x86_64-unknown-linux-gnu", "host_os"=>"linux-gnu", "host_vendor"=>"unknown", "host_cpu"=>"x86_64", "host"=>"x86_64-unknown-linux-gnu", "RUBY_VERSION_NAME"=>"ruby-2.5.0", "RUBYW_BASE_NAME"=>"rubyw", "RUBY_BASE_NAME"=>"ruby", "build_os"=>"linux-gnu", "build_vendor"=>"unknown", "build_cpu"=>"x86_64", "build"=>"x86_64-unknown-linux-gnu", "RUBY_API_VERSION"=>"2.5", "RUBY_PROGRAM_VERSION"=>"2.5.7", "HAVE_GIT"=>"no", "GIT"=>"git", "cxxflags"=>"-O3 -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wmisleading-indentation -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -Wduplicated-cond -Wrestrict", "cppflags"=>"", "cflags"=>"-O3 -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wmisleading-indentation -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -Wduplicated-cond -Wrestrict", "target_alias"=>"", "host_alias"=>"", "build_alias"=>"", "LIBS"=>"-lpthread -ldl -lcrypt -lm ", "ECHO_T"=>"", "ECHO_N"=>"-n", "ECHO_C"=>"", "DEFS"=>"", "mandir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/man", "localedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/locale", "libdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib", "psdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/doc", "pdfdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/doc", "dvidir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/doc", "htmldir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/doc", "infodir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/info", "docdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share/doc", "oldincludedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include", "includedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include", "localstatedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/var", "sharedstatedir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/com", "sysconfdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/etc", "datadir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share", "datarootdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/share", "libexecdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/libexec", "sbindir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/sbin", "bindir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin", "exec_prefix"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7", "PACKAGE_URL"=>"", "PACKAGE_BUGREPORT"=>"", "PACKAGE_STRING"=>"", "PACKAGE_VERSION"=>"", "PACKAGE_TARNAME"=>"", "PACKAGE_NAME"=>"", "PATH_SEPARATOR"=>":", "SHELL"=>"/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash", "UNICODE_VERSION"=>"10.0.0", "archdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/2.5.0/x86_64-linux", "topdir"=>"/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/2.5.0/x86_64-linux"}

/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin/ruby -r rbconfig -e 'puts RbConfig::CONFIG' {"DESTDIR"=>"", "MAJOR"=>"2", "MINOR"=>"6", "TEENY"=>"5", "PATCHLEVEL"=>"114", "INSTALL"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "EXEEXT"=>"", "prefix"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5", "ruby_install_name"=>"ruby", "RUBY_INSTALL_NAME"=>"ruby", "RUBY_SO_NAME"=>"ruby", "exec"=>"exec", "ruby_pc"=>"ruby-2.6.pc", "CC_WRAPPER"=>"", "PACKAGE"=>"ruby", "BUILTIN_TRANSSRCS"=>" enc/trans/newline.c", "MANTYPE"=>"doc", "vendorarchhdrdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/ruby-2.6.0/vendor_ruby/x86_64-linux", "sitearchhdrdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/ruby-2.6.0/site_ruby/x86_64-linux", "rubyarchhdrdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/ruby-2.6.0/x86_64-linux", "vendorhdrdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/ruby-2.6.0/vendor_ruby", "sitehdrdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/ruby-2.6.0/site_ruby", "rubyhdrdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/ruby-2.6.0", "RUBY_SEARCH_PATH"=>"", "UNIVERSAL_INTS"=>"", "UNIVERSAL_ARCHNAMES"=>"", "configure_args"=>" '--prefix=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5' '--bindir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin' '--sbindir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/sbin' '--includedir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include' '--oldincludedir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include' '--mandir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/man' '--infodir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/info' '--docdir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/doc/' '--libdir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib' '--libexecdir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/libexec' '--localedir=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/locale' '--enable-shared' '--enable-pthread' 'CC=gcc' 'CXX=g++'", "CONFIGURE"=>"configure", "vendorarchdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/vendor_ruby/2.6.0/x86_64-linux", "vendorlibdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/vendor_ruby/2.6.0", "vendordir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/vendor_ruby", "sitearchdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux", "sitelibdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0", "sitedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby", "rubyarchdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/2.6.0/x86_64-linux", "rubylibdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/2.6.0", "ruby_version"=>"2.6.0", "sitearch"=>"x86_64-linux", "arch"=>"x86_64-linux", "sitearchincludedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/x86_64-linux", "archincludedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include/x86_64-linux", "sitearchlibdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/x86_64-linux", "archlibdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/x86_64-linux", "libdirname"=>"libdir", "RUBY_EXEC_PREFIX"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5", "RUBY_LIB_VERSION"=>"", "RUBY_LIB_VERSION_STYLE"=>"3\t/* full */", "RI_BASE_NAME"=>"ri", "ridir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/ri/share/ri", "rubysitearchprefix"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/x86_64-linux", "rubyarchprefix"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/x86_64-linux", "MAKEFILES"=>"Makefile GNUmakefile", "PLATFORM_DIR"=>"", "THREAD_MODEL"=>"pthread", "SYMBOL_PREFIX"=>"", "EXPORT_PREFIX"=>"", "COMMON_HEADERS"=>"", "COMMON_MACROS"=>"", "COMMON_LIBS"=>"", "MAINLIBS"=>"-lz -lpthread -lrt -lrt -ldl -lcrypt -lm ", "ENABLE_SHARED"=>"yes", "DLDSHARED"=>"gcc -shared", "DLDLIBS"=>" -lc", "SOLIBS"=>"-lz -lpthread -lrt -lrt -ldl -lcrypt -lm ", "LIBRUBYARG_SHARED"=>"-Wl,-rpath,/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -lruby", "LIBRUBYARG_STATIC"=>"-Wl,-rpath,/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -lruby-static -lz -lpthread -lrt -lrt -ldl -lcrypt -lm ", "LIBRUBYARG"=>"-Wl,-rpath,/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -lruby", "LIBRUBY"=>"libruby.so.2.6.5", "LIBRUBY_ALIASES"=>"libruby.so.2.6 libruby.so", "LIBRUBY_SONAME"=>"libruby.so.2.6", "LIBRUBY_SO"=>"libruby.so.2.6.5", "LIBRUBY_A"=>"libruby-static.a", "RUBYW_INSTALL_NAME"=>"", "rubyw_install_name"=>"", "EXTDLDFLAGS"=>"", "EXTLDFLAGS"=>"", "strict_warnflags"=>"-std=gnu99", "warnflags"=>"-Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable", "debugflags"=>"-ggdb3", "optflags"=>"-O3", "NULLCMD"=>":", "ENABLE_DEBUG_ENV"=>"", "DLNOBJ"=>"dln.o", "INSTALL_STATIC_LIBRARY"=>"no", "MJIT_SUPPORT"=>"yes", "EXECUTABLE_EXTS"=>"", "ARCHFILE"=>"", "LIBRUBY_RELATIVE"=>"no", "EXTOUT"=>".ext", "PREP"=>"miniruby", "CROSS_COMPILING"=>"no", "TEST_RUNNABLE"=>"yes", "rubylibprefix"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby", "setup"=>"Setup", "ENCSTATIC"=>"", "EXTSTATIC"=>"", "STRIP"=>"strip -S -x", "SOEXT"=>"so", "TRY_LINK"=>"", "PRELOADENV"=>"LD_PRELOAD", "LIBPATHENV"=>"LD_LIBRARY_PATH", "RPATHFLAG"=>" -Wl,-rpath,%1$-s", "LIBPATHFLAG"=>" -L%1$-s", "LINK_SO"=>"", "ASMEXT"=>"S", "LIBEXT"=>"a", "DLEXT2"=>"", "DLEXT"=>"so", "LDSHAREDXX"=>"g++ -shared", "LDSHARED"=>"gcc -shared", "CCDLFLAGS"=>"-fPIC", "STATIC"=>"", "ARCH_FLAG"=>"", "DLDFLAGS"=>"-Wl,--compress-debug-sections=zlib", "ALLOCA"=>"", "MATHN"=>"yes", "dsymutil"=>"", "codesign"=>"", "POSTLINK"=>":", "WERRORFLAG"=>"-Werror", "CHDIR"=>"cd -P", "RMALL"=>"rm -fr", "RMDIRS"=>"rmdir --ignore-fail-on-non-empty -p", "RMDIR"=>"rmdir --ignore-fail-on-non-empty", "CP"=>"cp", "RM"=>"rm -f", "PKG_CONFIG"=>"", "DOXYGEN"=>"", "DOT"=>"", "MAKEDIRS"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/mkdir -p", "MKDIR_P"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/mkdir -p", "INSTALL_DATA"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c -m 644", "INSTALL_SCRIPT"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "INSTALL_PROGRAM"=>"/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin/install -c", "SET_MAKE"=>"", "LN_S"=>"ln -s", "NM"=>"nm", "DLLWRAP"=>"", "WINDRES"=>"", "OBJCOPY"=>":", "OBJDUMP"=>"objdump", "ASFLAGS"=>"", "AS"=>"as", "ARFLAGS"=>"rcD ", "AR"=>"ar", "RANLIB"=>"ranlib", "try_header"=>"", "CC_VERSION_MESSAGE"=>"gcc (GCC) 8.3.0\nCopyright (C) 2018 Free Software Foundation, Inc.\nThis is free software; see the source for copying conditions. There is NO\nwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.", "CC_VERSION"=>"gcc --version", "CSRCFLAG"=>"", "COUTFLAG"=>"-o ", "OUTFLAG"=>"-o ", "CPPOUTFILE"=>"-o conftest.i", "GNU_LD"=>"yes", "LD"=>"ld", "GCC"=>"yes", "EGREP"=>"/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin/grep -E", "GREP"=>"/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin/grep", "CPP"=>"gcc -E", "CXXFLAGS"=>"-O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable", "CXX"=>"g++", "OBJEXT"=>"o", "CPPFLAGS"=>" ", "LDFLAGS"=>"-L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic", "CFLAGS"=>"-O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC", "CC"=>"gcc", "target_os"=>"linux", "target_vendor"=>"unknown", "target_cpu"=>"x86_64", "target"=>"x86_64-unknown-linux-gnu", "host_os"=>"linux-gnu", "host_vendor"=>"unknown", "host_cpu"=>"x86_64", "host"=>"x86_64-unknown-linux-gnu", "RUBY_VERSION_NAME"=>"ruby-2.6.0", "RUBYW_BASE_NAME"=>"rubyw", "RUBY_BASE_NAME"=>"ruby", "build_os"=>"linux-gnu", "build_vendor"=>"unknown", "build_cpu"=>"x86_64", "build"=>"x86_64-unknown-linux-gnu", "RUBY_API_VERSION"=>"2.6", "RUBY_PROGRAM_VERSION"=>"2.6.5", "HAVE_GIT"=>"no", "GIT"=>"git", "cxxflags"=>"-O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable", "cppflags"=>"", "cflags"=>"-O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable", "target_alias"=>"", "host_alias"=>"", "build_alias"=>"", "LIBS"=>"-lm ", "ECHO_T"=>"", "ECHO_N"=>"-n", "ECHO_C"=>"", "DEFS"=>"", "mandir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/man", "localedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/locale", "libdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib", "psdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/doc", "pdfdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/doc", "dvidir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/doc", "htmldir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/doc", "infodir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/info", "docdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share/doc", "oldincludedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include", "includedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include", "localstatedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/var", "sharedstatedir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/com", "sysconfdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/etc", "datadir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share", "datarootdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/share", "libexecdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/libexec", "sbindir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/sbin", "bindir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin", "exec_prefix"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5", "PACKAGE_URL"=>"", "PACKAGE_BUGREPORT"=>"", "PACKAGE_STRING"=>"", "PACKAGE_VERSION"=>"", "PACKAGE_TARNAME"=>"", "PACKAGE_NAME"=>"", "PATH_SEPARATOR"=>":", "SHELL"=>"/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash", "UNICODE_VERSION"=>"12.1.0", "UNICODE_EMOJI_VERSION"=>"12.0", "archdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/2.6.0/x86_64-linux", "topdir"=>"/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/2.6.0/x86_64-linux"}

VBart commented 4 years ago

It looks like the problem is related to change in https://github.com/nginx/unit/commit/d500e29f8818247c1eb6fe38c0d802405aa2c283 and caused by the fact that in your case all three libraries have identical so-name ruby, but the first one is also included in the system search path. As a result it's always found by default.

Could you also provide the output of cat /etc/ld.so.conf /etc/ld.so.conf.d/* command?

Izorkin commented 4 years ago

In OS NixOS does not used /etc/ld.so.conf /etc/ld.so.conf.d/*

VBart commented 4 years ago

Do you know how to configure system libraries search paths in NixOS?

Here's a simple workaround that should help:

diff -r a6e91e732de7 auto/modules/ruby
--- a/auto/modules/ruby Thu Nov 14 19:30:44 2019 +0300
+++ b/auto/modules/ruby Sat Nov 16 19:52:28 2019 +0300
@@ -79,7 +79,7 @@ if /bin/sh -c "$NXT_RUBY -v" >> $NXT_AUT

     . auto/feature

-    if [ $nxt_found = no ]; then
+    if [ $nxt_found ]; then
         NXT_RUBY_LIBPATH=`$NXT_RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG["libdir"])'`
         NXT_RUBY_LIBS="-L$NXT_RUBY_LIBPATH -Wl,-rpath,${NXT_RUBY_LIBPATH} $NXT_RUBY_LIBS"
Izorkin commented 4 years ago

during build generated this variables:

declare -x AR="ar"
declare -x AS="as"
declare -x CC="gcc"
declare -x CONFIG_SHELL="/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash"
declare -x CXX="g++"
declare -x DETERMINISTIC_BUILD="1"
declare -x EDITOR="nano"
declare -x GEM_PATH="/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/gems/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/gems/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/gems/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/gems/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/gems/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/gems/2.6.0"
declare -x GTK_PATH="/home/user/.nix-profile/lib/gtk-2.0:/home/user/.nix-profile/lib/gtk-3.0:/etc/profiles/per-user/user/lib/gtk-2.0:/etc/profiles/per-user/user/lib/gtk-3.0:/nix/var/nix/profiles/default/lib/gtk-2.0:/nix/var/nix/profiles/default/lib/gtk-3.0:/run/current-system/sw/lib/gtk-2.0:/run/current-system/sw/lib/gtk-3.0"
declare -x HOME="/home/user"
declare -x HOST_PATH="/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/bin:/nix/store/xqymb40ydkyd6xc5m24zi0j0kf3i8gm7-php-7.3.11-dev/bin:/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/bin:/nix/store/hg39p7zj92hkgg8haspdmm8pv602zwb8-perl-5.30.0/bin:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin:/nix/store/j5lsmfbkzww2zzpk02c9lf396qjvcbvc-openssl-1.1.1d-bin/bin:/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin:/nix/store/5khv52whjiwr3ajszxqwz5rgjms8g3mb-findutils-4.7.0/bin:/nix/store/q2zk6af306rs2s11zbgf2iib65ch3jkk-diffutils-3.7/bin:/nix/store/sqwrm4jpc3j5ghfm1rv8rnkqvifqqbs2-gnused-4.7/bin:/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin:/nix/store/l38aff7a0xlr11kx1y0gxvbrjiz2hm3g-gawk-5.0.1/bin:/nix/store/c6wn39541hqfqb27jyn6vzw489i203n7-gnutar-1.32/bin:/nix/store/kx4rd2mfdzj52lpj236h6g5xinfwfw4d-gzip-1.10/bin:/nix/store/wsi2lylwdyihdprf01sd3lk3q19v9jgl-bzip2-1.0.6.0.1-bin/bin:/nix/store/4a2146gp8qxx1lcmb4lly3gi7jdlx3fj-gnumake-4.2.1/bin:/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin:/nix/store/y913s8qi44m2jfdyndr6pwjqnq9bg4hg-patch-2.7.6/bin:/nix/store/mvp51362x6kxsp01l4hl9d0q1af6f5ym-xz-5.2.4-bin/bin"
declare -x INFOPATH="/home/user/.nix-profile/info:/home/user/.nix-profile/share/info:/etc/profiles/per-user/user/info:/etc/profiles/per-user/user/share/info:/nix/var/nix/profiles/default/info:/nix/var/nix/profiles/default/share/info:/run/current-system/sw/info:/run/current-system/sw/share/info"
declare -x IN_NIX_SHELL="impure"
declare -x KDEDIRS="/home/user/.nix-profile:/etc/profiles/per-user/user:/nix/var/nix/profiles/default:/run/current-system/sw"
declare -x LANG="ru_RU.UTF-8"
declare -x LD="ld"
declare -x LESS="-R"
declare -x LIBEXEC_PATH="/home/user/.nix-profile/lib/libexec:/etc/profiles/per-user/user/lib/libexec:/nix/var/nix/profiles/default/lib/libexec:/run/current-system/sw/lib/libexec"
declare -x LOCALE_ARCHIVE="/run/current-system/sw/lib/locale/locale-archive"
declare -x LOGNAME="user"
declare -x LSCOLORS="Gxfxcxdxbxegedabagacad"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:"
declare -x MOZ_PLUGIN_PATH="/home/user/.nix-profile/lib/mozilla/plugins:/etc/profiles/per-user/user/lib/mozilla/plugins:/nix/var/nix/profiles/default/lib/mozilla/plugins:/run/current-system/sw/lib/mozilla/plugins"
declare -x NIXPKGS_CONFIG="/etc/nix/nixpkgs-config.nix"
declare -x NIX_BINTOOLS="/nix/store/f4lph3r576pav307cr08fjdb51pawcm6-binutils-wrapper-2.31.1"
declare -x NIX_BINTOOLS_WRAPPER_x86_64_unknown_linux_gnu_TARGET_HOST="1"
declare -x NIX_BUILD_CORES="24"
declare -x NIX_BUILD_TOP="/run/user/1737"
declare -x NIX_CC="/nix/store/65dk7wwwkn9cgim39k7p3823qdrqy8py-gcc-wrapper-8.3.0"
declare -x NIX_CC_WRAPPER_x86_64_unknown_linux_gnu_TARGET_HOST="1"
declare -x NIX_CFLAGS_COMPILE=" -isystem /nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/include -isystem /nix/store/xqymb40ydkyd6xc5m24zi0j0kf3i8gm7-php-7.3.11-dev/include -isystem /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include -isystem /nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include -isystem /nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include -isystem /nix/store/1ff6jxrjzzpsjpjyr10dc46krm51q3mq-openssl-1.1.1d-dev/include -isystem /nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/include -isystem /nix/store/xqymb40ydkyd6xc5m24zi0j0kf3i8gm7-php-7.3.11-dev/include -isystem /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/include -isystem /nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/include -isystem /nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/include -isystem /nix/store/1ff6jxrjzzpsjpjyr10dc46krm51q3mq-openssl-1.1.1d-dev/include"
declare -x NIX_ENFORCE_NO_NATIVE="1"
declare -x NIX_HARDENING_ENABLE="fortify stackprotector pic strictoverflow format relro bindnow"
declare -x NIX_INDENT_MAKE="1"
declare -x NIX_LDFLAGS="-rpath /nix/store/j5kdpfrszcscirv3k99ldbyfmhb2mq9a-unit-1.13.0/lib64 -rpath /nix/store/j5kdpfrszcscirv3k99ldbyfmhb2mq9a-unit-1.13.0/lib  -L/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib -L/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/z26dmlk813907qs472b1caj7pjdmv9bs-openssl-1.1.1d/lib -L/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib -L/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/z26dmlk813907qs472b1caj7pjdmv9bs-openssl-1.1.1d/lib"
declare -x NIX_PATH="nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs:nixos-config=/etc/nixos/configuration.nix:/nix/var/nix/profiles/per-user/root/channels"
declare -x NIX_PROFILES="/run/current-system/sw /nix/var/nix/profiles/default /etc/profiles/per-user/user /home/user/.nix-profile"
declare -x NIX_STORE="/nix/store"
declare -x NIX_USER_PROFILE_DIR="/nix/var/nix/profiles/per-user/user"
declare -x NM="nm"
declare -x NO_AT_BRIDGE="1"
declare -x OBJCOPY="objcopy"
declare -x OBJDUMP="objdump"
declare -x OLDPWD="/home/user"
declare -x PAGER="most"
declare -x PATH="/nix/store/m7v6p7yxqyhnc4sxp49zp857cjamp996-bash-interactive-4.4-p23/bin:/nix/store/3c1d5jd310w5bh9v1v3kghjcqqvl3rvs-which-2.21/bin:/nix/store/qjgifg6nzqmvl5814s2yiks7nj408ydi-patchelf-0.9/bin:/nix/store/65dk7wwwkn9cgim39k7p3823qdrqy8py-gcc-wrapper-8.3.0/bin:/nix/store/nrisqq65br52ys4w6nly7vkjb2j10yy4-gcc-8.3.0/bin:/nix/store/vl9ajbvls3y09i823cd66gsk9wrp6mw0-glibc-2.27-bin/bin:/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin:/nix/store/f4lph3r576pav307cr08fjdb51pawcm6-binutils-wrapper-2.31.1/bin:/nix/store/ngg9lxh4xpnwdidv9sc98dg83vypm78k-binutils-2.31.1/bin:/nix/store/vl9ajbvls3y09i823cd66gsk9wrp6mw0-glibc-2.27-bin/bin:/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin:/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/bin:/nix/store/xqymb40ydkyd6xc5m24zi0j0kf3i8gm7-php-7.3.11-dev/bin:/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/bin:/nix/store/hg39p7zj92hkgg8haspdmm8pv602zwb8-perl-5.30.0/bin:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin:/nix/store/j5lsmfbkzww2zzpk02c9lf396qjvcbvc-openssl-1.1.1d-bin/bin:/nix/store/gnw6yrqy249n62r4q8vy12ispviv3dav-coreutils-8.31/bin:/nix/store/5khv52whjiwr3ajszxqwz5rgjms8g3mb-findutils-4.7.0/bin:/nix/store/q2zk6af306rs2s11zbgf2iib65ch3jkk-diffutils-3.7/bin:/nix/store/sqwrm4jpc3j5ghfm1rv8rnkqvifqqbs2-gnused-4.7/bin:/nix/store/adg7sif4n4v679ibxqzjp59x15nplbnx-gnugrep-3.3/bin:/nix/store/l38aff7a0xlr11kx1y0gxvbrjiz2hm3g-gawk-5.0.1/bin:/nix/store/c6wn39541hqfqb27jyn6vzw489i203n7-gnutar-1.32/bin:/nix/store/kx4rd2mfdzj52lpj236h6g5xinfwfw4d-gzip-1.10/bin:/nix/store/wsi2lylwdyihdprf01sd3lk3q19v9jgl-bzip2-1.0.6.0.1-bin/bin:/nix/store/4a2146gp8qxx1lcmb4lly3gi7jdlx3fj-gnumake-4.2.1/bin:/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin:/nix/store/y913s8qi44m2jfdyndr6pwjqnq9bg4hg-patch-2.7.6/bin:/nix/store/mvp51362x6kxsp01l4hl9d0q1af6f5ym-xz-5.2.4-bin/bin:/home/user/bin:/run/wrappers/bin:/home/user/.nix-profile/bin:/etc/profiles/per-user/user/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin"
declare -x PERL5LIB="/nix/store/hg39p7zj92hkgg8haspdmm8pv602zwb8-perl-5.30.0/lib/perl5/site_perl:/nix/store/hg39p7zj92hkgg8haspdmm8pv602zwb8-perl-5.30.0/lib/perl5/site_perl"
declare -x PWD="/home/user/works/src-nix/nixpkgs"
declare -x PYTHONHASHSEED="0"
declare -x PYTHONNOUSERSITE="1"
declare -x PYTHONPATH="/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib/python2.7/site-packages:/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib/python2.7/site-packages"
declare -x QTWEBKIT_PLUGIN_PATH="/home/user/.nix-profile/lib/mozilla/plugins/:/etc/profiles/per-user/user/lib/mozilla/plugins/:/nix/var/nix/profiles/default/lib/mozilla/plugins/:/run/current-system/sw/lib/mozilla/plugins/"
declare -x QT_PLUGIN_PATH="/home/user/.nix-profile/lib/qt4/plugins:/home/user/.nix-profile/lib/kde4/plugins:/etc/profiles/per-user/user/lib/qt4/plugins:/etc/profiles/per-user/user/lib/kde4/plugins:/nix/var/nix/profiles/default/lib/qt4/plugins:/nix/var/nix/profiles/default/lib/kde4/plugins:/run/current-system/sw/lib/qt4/plugins:/run/current-system/sw/lib/kde4/plugins"
declare -x RANLIB="ranlib"
declare -x READELF="readelf"
declare -x RUBYLIB="/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby:/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/ruby/site_ruby:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby:/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0:/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/ruby/site_ruby/2.6.0/x86_64-linux"
declare -x SHELL="/nix/store/m7v6p7yxqyhnc4sxp49zp857cjamp996-bash-interactive-4.4-p23/bin/bash"
declare -x SHLVL="2"
declare -x SIZE="size"
declare -x SOURCE_DATE_EPOCH="1"
declare -x SSH_ASKPASS=""
declare -x SSH_AUTH_SOCK="/run/user/1737/ssh-agent"
declare -x SSH_CLIENT="192.168.248.141 65393 22"
declare -x SSH_CONNECTION="192.168.248.141 65393 192.168.248.100 22"
declare -x SSH_TTY="/dev/pts/2"
declare -x STRIGI_PLUGIN_PATH="/home/user/.nix-profile/lib/strigi/:/etc/profiles/per-user/user/lib/strigi/:/nix/var/nix/profiles/default/lib/strigi/:/run/current-system/sw/lib/strigi/"
declare -x STRINGS="strings"
declare -x STRIP="strip"
declare -x TEMP="/run/user/1737"
declare -x TEMPDIR="/run/user/1737"
declare -x TERM="xterm"
declare -x TERMINFO_DIRS="/home/user/.nix-profile/share/terminfo:/etc/profiles/per-user/user/share/terminfo:/nix/var/nix/profiles/default/share/terminfo:/run/current-system/sw/share/terminfo"
declare -x TMP="/run/user/1737"
declare -x TMPDIR="/run/user/1737"
declare -x TZDIR="/etc/zoneinfo"
declare -x USER="user"
declare -x XCURSOR_PATH="/home/user/.icons:/home/user/.local/share/icons:/home/user/.nix-profile/share/icons:/home/user/.nix-profile/share/pixmaps:/etc/profiles/per-user/user/share/icons:/etc/profiles/per-user/user/share/pixmaps:/nix/var/nix/profiles/default/share/icons:/nix/var/nix/profiles/default/share/pixmaps:/run/current-system/sw/share/icons:/run/current-system/sw/share/pixmaps"
declare -x XDG_CONFIG_DIRS="/etc/xdg:/home/user/.nix-profile/etc/xdg:/etc/profiles/per-user/user/etc/xdg:/nix/var/nix/profiles/default/etc/xdg:/run/current-system/sw/etc/xdg"
declare -x XDG_DATA_DIRS="/home/user/.nix-profile/share:/etc/profiles/per-user/user/share:/nix/var/nix/profiles/default/share:/run/current-system/sw/share"
declare -x XDG_RUNTIME_DIR="/run/user/1737"
declare -x XDG_SESSION_CLASS="user"
declare -x XDG_SESSION_ID="3"
declare -x XDG_SESSION_TYPE="tty"
declare -x ZSH="/nix/store/wkilqpp3ynpvrm5cc08vl80ipk39xf18-oh-my-zsh-2019-10-30/share/oh-my-zsh"
declare -x ZSH_COMMAND_TIME=""
declare -x __ETC_PROFILE_DONE="1"
declare -x __ETC_ZSHENV_SOURCED="1"
declare -x __NIXOS_SET_ENVIRONMENT_DONE="1"
declare -x buildInputs="/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17 /nix/store/xqymb40ydkyd6xc5m24zi0j0kf3i8gm7-php-7.3.11-dev /nix/store/hg39p7zj92hkgg8haspdmm8pv602zwb8-perl-5.30.0 /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9 /nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7 /nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5 /nix/store/1ff6jxrjzzpsjpjyr10dc46krm51q3mq-openssl-1.1.1d-dev"
declare -x builder="/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash"
declare -x configureFlags="--control=unix:/run/unit/control.unit.sock --pid=/run/unit/unit.pid --user=unit --group=unit --openssl"
declare -x depsBuildBuild=""
declare -x depsBuildBuildPropagated=""
declare -x depsBuildTarget=""
declare -x depsBuildTargetPropagated=""
declare -x depsHostHost=""
declare -x depsHostHostPropagated=""
declare -x depsTargetTarget=""
declare -x depsTargetTargetPropagated=""
declare -x doCheck=""
declare -x doInstallCheck=""
declare -x name="unit-1.13.0"
declare -x nativeBuildInputs="/nix/store/3c1d5jd310w5bh9v1v3kghjcqqvl3rvs-which-2.21"
declare -x out="/nix/store/j5kdpfrszcscirv3k99ldbyfmhb2mq9a-unit-1.13.0"
declare -x outputs="out"
declare -x patch="/nix/store/ad0pgcmwc5yv0pkinvw7p6hl2a5g2a9l-ruby.patch"
declare -x patches=""
declare -x pname="unit"
declare -x postConfigure="./configure python --module=python27 --config=/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/bin/python2.7-config   --lib-path=/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib

./configure php    --module=php73    --config=/nix/store/xqymb40ydkyd6xc5m24zi0j0kf3i8gm7-php-7.3.11-dev/bin/php-config        --lib-path=/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/lib

./configure perl   --module=perl530  --perl=/nix/store/hg39p7zj92hkgg8haspdmm8pv602zwb8-perl-5.30.0/bin/perl

./configure ruby   --module=ruby24   --ruby=/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/bin/ruby
./configure ruby   --module=ruby25   --ruby=/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/bin/ruby
./configure ruby   --module=ruby26   --ruby=/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/bin/ruby
"
declare -x propagatedBuildInputs=""
declare -x propagatedNativeBuildInputs=""
declare -x shell="/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash"
declare -x src="/nix/store/dljw0fzrk1fnm7yj74j9y32qn4wm4r66-source"
declare -x stdenv="/nix/store/fiaj00zrmb7dynd2q9xmcrh5rn0mjwj0-stdenv-linux"
declare -x strictDeps=""
declare -x system="x86_64-linux"
declare -x version="1.13.0"

Variables RUBYLIB includes all ruby versions.

This patch does not work. Adding the --lib-path option can fix the error?

VBart commented 4 years ago

RUBYLIB isn't related to this issue as it specifies search path for Ruby modules, not the library.

The problem is here:

declare -x NIX_LDFLAGS="-rpath /nix/store/j5kdpfrszcscirv3k99ldbyfmhb2mq9a-unit-1.13.0/lib64 -rpath /nix/store/j5kdpfrszcscirv3k99ldbyfmhb2mq9a-unit-1.13.0/lib  -L/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib -L/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/z26dmlk813907qs472b1caj7pjdmv9bs-openssl-1.1.1d/lib -L/nix/store/dmykj34lk5yf1n4k0i2p49jr91am0lwr-python-2.7.17/lib -L/nix/store/yg3h4sxyhwg1q7fm6lhc1qxkkz7pnwvf-php-7.3.11/lib -L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib -L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib -L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib -L/nix/store/z26dmlk813907qs472b1caj7pjdmv9bs-openssl-1.1.1d/lib"

It sets LDFLAGS to three paths containing identical libruby.so:

-L/nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib 
-L/nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib
-L/nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib

This can't work. Could you remove these lines from NIX_LDFLAGS and try again?

Izorkin commented 4 years ago

Could you remove these lines from NIX_LDFLAGS and try again?

This way works:

ldd ./source/build/ruby24.unit.so
        linux-vdso.so.1 (0x00007ffd745d9000)
        /nix/store/dn27lh4bixam5085fi6zy9x32s0lg219-malloc-provider-jemalloc/lib/libjemalloc.so (0x0000738bc8e5f000)
        libruby.so.2.4 => /nix/store/rmr84vhgd5x9rqmygwv2gvmwghsnj1pi-ruby-2.4.9/lib/libruby.so.2.4 (0x0000738bc8b6e000)
        libpthread.so.0 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libpthread.so.0 (0x0000738bc8b4d000)
        libdl.so.2 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libdl.so.2 (0x0000738bc8b48000)
        libcrypt.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libcrypt.so.1 (0x0000738bc8b0e000)
        libm.so.6 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libm.so.6 (0x0000738bc8976000)
        libc.so.6 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libc.so.6 (0x0000738bc87c0000)
        libstdc++.so.6 => /nix/store/1220kf6lvlswh677wvizp9p51c6rcp3x-gcc-8.3.0-lib/lib/libstdc++.so.6 (0x0000738bc8635000)
        libgcc_s.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libgcc_s.so.1 (0x0000738bc841f000)
        /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x0000738bc910c000)

ldd ./source/build/ruby25.unit.so
        linux-vdso.so.1 (0x00007ffeffbdc000)
        /nix/store/dn27lh4bixam5085fi6zy9x32s0lg219-malloc-provider-jemalloc/lib/libjemalloc.so (0x000076abbdffb000)
        libruby.so.2.5 => /nix/store/8ihqn72w2v0n02dd99i7x8r9z25xkhsb-ruby-2.5.7/lib/libruby.so.2.5 (0x000076abbdce6000)
        libpthread.so.0 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libpthread.so.0 (0x000076abbdcc5000)
        libdl.so.2 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libdl.so.2 (0x000076abbdcc0000)
        libcrypt.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libcrypt.so.1 (0x000076abbdc86000)
        libm.so.6 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libm.so.6 (0x000076abbdaee000)
        libc.so.6 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libc.so.6 (0x000076abbd938000)
        libstdc++.so.6 => /nix/store/1220kf6lvlswh677wvizp9p51c6rcp3x-gcc-8.3.0-lib/lib/libstdc++.so.6 (0x000076abbd7ad000)
        libgcc_s.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libgcc_s.so.1 (0x000076abbd597000)
        /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x000076abbe2a8000)

ldd ./source/build/ruby26.unit.so
        linux-vdso.so.1 (0x00007fffbfd41000)
        /nix/store/dn27lh4bixam5085fi6zy9x32s0lg219-malloc-provider-jemalloc/lib/libjemalloc.so (0x00007b9dad734000)
        libruby.so.2.6 => /nix/store/b3lhi1wlia02vyd94jk56bm3kvgf1yc0-ruby-2.6.5/lib/libruby.so.2.6 (0x00007b9dad3d2000)
        libm.so.6 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libm.so.6 (0x00007b9dad23c000)
        libc.so.6 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libc.so.6 (0x00007b9dad086000)
        libstdc++.so.6 => /nix/store/1220kf6lvlswh677wvizp9p51c6rcp3x-gcc-8.3.0-lib/lib/libstdc++.so.6 (0x00007b9dacefb000)
        libpthread.so.0 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libpthread.so.0 (0x00007b9daced8000)
        libdl.so.2 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libdl.so.2 (0x00007b9daced3000)
        libgcc_s.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libgcc_s.so.1 (0x00007b9daccbd000)
        /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x00007b9dad9e1000)
        libz.so.1 => /nix/store/cg9l4lrvfc9azjsdzgfaxkcbfsmyyzmg-zlib-1.2.11/lib/libz.so.1 (0x00007b9dacc9e000)
        librt.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/librt.so.1 (0x00007b9dacc94000)
        libcrypt.so.1 => /nix/store/qb6k4hp7gk331x9fydw0w7qj4dv09bwz-glibc-2.27/lib/libcrypt.so.1 (0x00007b9dacc58000)
VBart commented 4 years ago

@Izorkin I think the root cause of the problem is how Ruby packages are built in NixOS. In order to have multiple Ruby versions installed on the same system, the --with-soname= option must be specified to different values while configuring Ruby build. That's how other distributions handle it (e.g. if you check for example Ruby ebuilds in Gentoo, you will see this option set). But it seems in the NixOS package the option is missing. That may cause many other problems with having multiple Ruby versions, not only with NGINX Unit.

VBart commented 4 years ago

I even don't know a good way how to fix it from Unit side other than providing some option that will work in such broken environments. It's better to fix the environment, not the Unit configure scripts.

I'll mark it as "wontfix" for now.

VBart commented 4 years ago

Interesting that FreeBSD prefers to patch Ruby configure script instead: https://svnweb.freebsd.org/ports/head/lang/ruby25/files/patch-configure.ac?view=co

Izorkin commented 4 years ago

For php, perl, python need add option soname?

VBart commented 4 years ago

@Izorkin It's specific to Ruby. With other interpreters it's handled differently. The Ruby interpreter automatically provides the library path and its name. That's why Unit doesn't have --lib-path option, as we can get it from ruby:

% ruby -r rbconfig -e 'printf("%s",RbConfig::CONFIG["libdir"])'
/usr/lib64

as well as the library name:

% ruby -r rbconfig -e 'printf("%s",RbConfig::CONFIG["RUBY_SO_NAME"])'
ruby25

In your case the name of all three libraries is ruby and if they all are included in search path, then a linker picks up the first one. Either the name should be different, or they shouldn't be in the search path at the same time.

Izorkin commented 4 years ago

@VBart thanks for the help. Opened issues in OS NixOS.

VBart commented 4 years ago

@Izorkin Thank you for maintaining Nix package. I've set a task to our technical writer @artemkonev to add it to the installation guide.

Izorkin commented 4 years ago

@VBart i have an error adding modules go, java and nodejs.

VBart commented 4 years ago

@Izorkin what's the error?

Izorkin commented 4 years ago

error with build go module:

@nix { "action": "setPhase", "phase": "installPhase" }
installing
install flags: SHELL=/nix/store/wd1jazzawjk4w1d31ism7fm7vdg4ma9l-bash-4.4-p23/bin/bash install
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/sbin
install -p build/unitd /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/sbin/
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/state
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules
install -p build/python37.unit.so \
        /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules/
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules
install -p build/php73.unit.so \
        /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules/
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules
install -p build/perl530.unit.so \
        /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules/
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules
install -p build/ruby26.unit.so \
        /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/modules/
install -d /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/share/go/src/nginx/unit
install -p -m644 ./src/*.h ./build/*.h ./src/go/unit/*     ./src/nxt_unit.c ./src/nxt_lvlhsh.c ./src/nxt_murmur_hash.c     ./src/nxt_websocket.c     /nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13
.0/share/go/src/nginx/unit/
GOPATH=/nix/store/1rbyhczpj821hdr07isx2vlmxp5p45xz-unit-1.13.0/share/go /nix/store/g2wnjq13g1zm8x6gqs1i2dk41hivyx1m-go-1.13.4/bin/go build nginx/unit
failed to initialize build cache at /homeless-shelter/.cache/go-build: mkdir /homeless-shelter: permission denied
make: *** [build/Makefile:1818: /nix/store/g2wnjq13g1zm8x6gqs1i2dk41hivyx1m-go-1.13.4/bin/go-install-build] Error 1

Builded in sanbox mode.

Nginx/unit support to creatre issue in russian?

VBart commented 4 years ago

Nginx/unit support to creatre issue in russian?

Да, без проблем.

VBart commented 4 years ago

@Izorkin

failed to initialize build cache at /homeless-shelter/.cache/go-build: mkdir /homeless-shelter: permission denied make: *** [build/Makefile:1818: /nix/store/g2wnjq13g1zm8x6gqs1i2dk41hivyx1m-go-1.13.4/bin/go-install-build] Error 1

It seems that you have to specify GOCACHE properly, like this: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/compilers/go/1.13.nix#L178

VBart commented 4 years ago

@Izorkin Nix package instructions are added to the doc: https://unit.nginx.org/installation/#nixos-nix

Izorkin commented 4 years ago

@VBart с модулем Go добрался до этой стадии, надо еще добавить зависимости.

installing
install flags: SHELL=/nix/store/b34zjdmq5l8k6rwdykjx55yl9r9isl8k-bash-4.4-p23/bin/bash install
install -d /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/sbin
install -p build/unitd /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/sbin/
install -d /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/state
install -d /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/modules
install -p build/python37.unit.so \
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/modules/
install -d /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/modules
install -p build/php73.unit.so \
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/modules/
install -d /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit
install -p -m644 ./src/*.h ./build/*.h ./src/go/unit/*     ./src/nxt_unit.c ./src/nxt_lvlhsh.c ./src/nxt_murmur_hash.c     ./src/nxt_websocket.c     /nix/store/6ijqmpliq9rxpp5lll3$
GOPATH=/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go /nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/bin/go build nginx/unit
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/request.go:17:2: cannot find package "crypto/tls" in any of:
        /build/unit_go/src/crypto/tls (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/crypto/tls (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/unit.go:14:2: cannot find package "fmt" in any of:
        /build/unit_go/src/fmt (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/fmt (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/request.go:14:2: cannot find package "io" in any of:
        /build/unit_go/src/io (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/io (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/port.go:14:2: cannot find package "net" in any of:
        /build/unit_go/src/net (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/net (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/request.go:15:2: cannot find package "net/http" in any of:
        /build/unit_go/src/net/http (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/net/http (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/request.go:16:2: cannot find package "net/url" in any of:
        /build/unit_go/src/net/url (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/net/url (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/port.go:15:2: cannot find package "os" in any of:
        /build/unit_go/src/os (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/os (from $GOPATH)
package nginx/unit
        imports runtime/cgo: cannot find package "runtime/cgo" in any of:
        /build/unit_go/src/runtime/cgo (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/runtime/cgo (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/port.go:16:2: cannot find package "sync" in any of:
        /build/unit_go/src/sync (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/sync (from $GOPATH)
package nginx/unit
        imports syscall: cannot find package "syscall" in any of:
        /build/unit_go/src/syscall (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/syscall (from $GOPATH)
/nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/nginx/unit/port.go:17:2: cannot find package "unsafe" in any of:
        /build/unit_go/src/unsafe (from $GOROOT)
        /nix/store/6ijqmpliq9rxpp5lll3jgr9pphzdab93-unit-1.13.0/unit_go/src/unsafe (from $GOPATH)
make: *** [build/Makefile:1720: /nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/bin/go-install-build] Error 1

Службу unit в NixOS можно запустить такой конфигурацией в /etc/nixos/configuration.nix:

  services.unit = {
    enable = true;
    package = pkgs.unit;
    config = ''
      {
        "listeners": {
          "*:8300": {
            "application": "php_72"
          }
        },
        "applications": {
          "php_72": {
            "type": "php 7.2",
            "processes": 1,
            "user": "wwwrun",
            "group": "wwwrun",
            "root": "/var/www",
            "index": "index.php",
            "options": {
              "admin": {
                "max_execution_time": "30",
                "max_input_time": "30"
              }
            }
          }
        }
      }
    '';
  };

Включить режим отладки и отключить ненужные модули:

  nixpkgs.overlays = [
    (self: super: {
      unit = pkgs.unit.override {
        withDebug = true;
        withPHP73 = false;
      };
    })
  ];
VBart commented 4 years ago

@Izorkin Это всё стандартные модули из библиотеки самого Go. Видимо GOROOT не задан или задан неправильно.

Izorkin commented 4 years ago

Поправил, теперь собирается. Только я не понял, куда в итоге команда go build nginx/unit кладет бинарный файл. Нигде найти не могу.

VBart commented 4 years ago

@Izorkin А и нет никакого бинарного файла, это же Go-шный модуль для разработчиков на Go. Самому Unit-у этот модуль для запуска приложений не нужен. Разработчики на Go подключают его в свои приложения, собирают бинарник, и уже вот этот бинарник Unit и будет запускать. Т.е. он компилируется внутрь приложений на Go, которые уже будут в виде бинарников для запуска.

Izorkin commented 4 years ago

Понятно. Остался еще один вопрос по Go модулю При конфигурации ругается на

warning: GOPATH set to GOROOT (/nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/share/go) has no effect
 + go version go1.13.4 linux/amd64
 + Go package path: "/nix/store/js6ig291w1y139i2lpc64a5028m7h10a-unit-1.13.0/share/go"
warning: GOPATH set to GOROOT (/nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/share/go) has no effect
warning: GOPATH set to GOROOT (/nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/share/go) has no effect

Хотя я уже задал его:

installing
...
GOPATH=/nix/store/js6ig291w1y139i2lpc64a5028m7h10a-unit-1.13.0/share/go /nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/bin/go build nginx/unit`

Вручную добавляю переменную 'export GOPATH=/nix/store/js6ig291w1y139i2lpc64a5028m7h10a-unit-1.13.0/share/go' - варнинги пропадают.

Izorkin commented 4 years ago

Unit не поддерживает несколько версий go?

VBart commented 4 years ago

@Izorkin Unit делает обычный execv(), который выполняет указанный в конфигурации файл. На каком языке (и версии) был написан код из которого этот исполняемый бинарник собрали - ему не важно, важно лишь чтобы он подключился к Unit-у с помощью определенного интерфейса. Собрать такой бинарный файл можно хоть из Go 1.10, хоть из Go 1.12, а можно и из C++ (если на нем реализовать интерфейс для общения с Unit-ом), в общем из чего угодно, что способно создавать запускаемые файлы.

Модуль для Go реализует интерфейс для общения с Unit-ом, который со стороны Go выглядит как обертка поверх его родного net/http модуля. Сам Go-шный модуль не содержит ничего специфичного для определенной версии Go. Т.е. приложение с этим модулем можно брать и собирать любой версией Go. А самому Unit-у, как уже писал, не важно как и какой версией собрали этот бинарник. Он про Go вообще ничего не знает.

Чтобы запускать приложения собранные разными версиями Go самому юниту никакой модуль не требуется. Модуль нужен только чтобы собирать сами приложения и при этом модуль не зависит от версии Go.

VBart commented 4 years ago

@Izorkin

Понятно. Остался еще один вопрос по Go модулю При конфигурации ругается на

warning: GOPATH set to GOROOT (/nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/share/go) has no effect
 + go version go1.13.4 linux/amd64
 + Go package path: "/nix/store/js6ig291w1y139i2lpc64a5028m7h10a-unit-1.13.0/share/go"
warning: GOPATH set to GOROOT (/nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/share/go) has no effect
warning: GOPATH set to GOROOT (/nix/store/sym79yykwjsvcx1swdzn62kzd1qx5m05-go-1.13.4/share/go) has no effect

Это похоже go вываливает предупреждения, когда мы пытаемся вывести его версию, т.е. выполнить банальный go version. Наверное их надо бы просто заглушить там.

Izorkin commented 4 years ago

Ясно. Проверил работу go на этом примере без сборки - https://github.com/nginx/unit/blob/master/pkg/deb/debian/unit.example-go-app. Работает:

curl localhost:8301/example-go
Method : GET
URL    : /example-go
Host   : localhost

Тогда эту обертку над интерфейсом надо вынести в отдельный пакет "dev" с исходниками для сборки. Попробовал разделить пакет на саму программу на основной пакет "out" и на "dev" пакет с исходниками, выдает ошибку:

./configure: error: invalid option "--includedir=/nix/store/sm929gv3p1p6y9b59licb53skpwh2xbr-unit-1.13.0-dev/include".

Если не разделить пакет, то при сборке go программы в зависимостях будет еще пакет nginx/unit со всеми модулями. А для этого нужна все лишь папка c исходниками ${unit.dev}/share/go

Как корректно реализовать - не знаю.