Homebrew / install

📥 Homebrew (un)installer
https://brew.sh
BSD 2-Clause "Simplified" License
2.14k stars 1.01k forks source link

Inaccurate post-install instructions #808

Closed uvlad7 closed 10 months ago

uvlad7 commented 11 months ago
vladimir@np940x5n:~$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.3 LTS"
vladimir@np940x5n:~$ brew config
HOMEBREW_VERSION: 4.1.13
ORIGIN: https://github.com/Homebrew/brew
HEAD: a8519f78fb63f2f2266950bdd8141037da69f8bd
Last commit: 8 hours ago
Core tap JSON: 25 Sep 18:10 UTC
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: :0
HOMEBREW_MAKE_JOBS: 8
HOMEBREW_SORBET_RUNTIME: set
no_proxy: localhost,127.0.0.0/8,::1
Homebrew Ruby: 2.6.10 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.10_1/bin/ruby
CPU: octa-core 64-bit skylake
Clang: N/A
Git: 2.34.1 => /bin/git
Curl: 7.81.0 => /bin/curl
Kernel: Linux 5.15.0-84-generic x86_64 GNU/Linux
OS: Ubuntu 22.04.3 LTS (jammy)
Host glibc: 2.35
/usr/bin/gcc: 11.4.0
/usr/bin/ruby: 3.0.2
glibc: N/A
gcc@11: N/A
gcc: 13.2.0
xorg: N/A
vladimir@np940x5n:~$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
  /usr/local/include/ImageMagick-7/Magick++.h
  /usr/local/include/ImageMagick-7/Magick++/Blob.h
  /usr/local/include/ImageMagick-7/Magick++/CoderInfo.h
  /usr/local/include/ImageMagick-7/Magick++/Color.h
  /usr/local/include/ImageMagick-7/Magick++/Drawable.h
  /usr/local/include/ImageMagick-7/Magick++/Exception.h
  /usr/local/include/ImageMagick-7/Magick++/Functions.h
  /usr/local/include/ImageMagick-7/Magick++/Geometry.h
  /usr/local/include/ImageMagick-7/Magick++/Image.h
  /usr/local/include/ImageMagick-7/Magick++/Include.h
  /usr/local/include/ImageMagick-7/Magick++/Montage.h
  /usr/local/include/ImageMagick-7/Magick++/Pixels.h
  /usr/local/include/ImageMagick-7/Magick++/ResourceLimits.h
  /usr/local/include/ImageMagick-7/Magick++/STL.h
  /usr/local/include/ImageMagick-7/Magick++/SecurityPolicy.h
  /usr/local/include/ImageMagick-7/Magick++/Statistic.h
  /usr/local/include/ImageMagick-7/Magick++/TypeMetric.h
  /usr/local/include/ImageMagick-7/MagickCore/MagickCore.h
  /usr/local/include/ImageMagick-7/MagickCore/animate.h
  /usr/local/include/ImageMagick-7/MagickCore/annotate.h
  /usr/local/include/ImageMagick-7/MagickCore/artifact.h
  /usr/local/include/ImageMagick-7/MagickCore/attribute.h
  /usr/local/include/ImageMagick-7/MagickCore/blob.h
  /usr/local/include/ImageMagick-7/MagickCore/cache-view.h
  /usr/local/include/ImageMagick-7/MagickCore/cache.h
  /usr/local/include/ImageMagick-7/MagickCore/channel.h
  /usr/local/include/ImageMagick-7/MagickCore/cipher.h
  /usr/local/include/ImageMagick-7/MagickCore/client.h
  /usr/local/include/ImageMagick-7/MagickCore/coder.h
  /usr/local/include/ImageMagick-7/MagickCore/color.h
  /usr/local/include/ImageMagick-7/MagickCore/colormap.h
  /usr/local/include/ImageMagick-7/MagickCore/colorspace.h
  /usr/local/include/ImageMagick-7/MagickCore/compare.h
  /usr/local/include/ImageMagick-7/MagickCore/composite.h
  /usr/local/include/ImageMagick-7/MagickCore/compress.h
  /usr/local/include/ImageMagick-7/MagickCore/configure.h
  /usr/local/include/ImageMagick-7/MagickCore/constitute.h
  /usr/local/include/ImageMagick-7/MagickCore/decorate.h
  /usr/local/include/ImageMagick-7/MagickCore/delegate.h
  /usr/local/include/ImageMagick-7/MagickCore/deprecate.h
  /usr/local/include/ImageMagick-7/MagickCore/display.h
  /usr/local/include/ImageMagick-7/MagickCore/distort.h
  /usr/local/include/ImageMagick-7/MagickCore/distribute-cache.h
  /usr/local/include/ImageMagick-7/MagickCore/draw.h
  /usr/local/include/ImageMagick-7/MagickCore/effect.h
  /usr/local/include/ImageMagick-7/MagickCore/enhance.h
  /usr/local/include/ImageMagick-7/MagickCore/exception.h
  /usr/local/include/ImageMagick-7/MagickCore/feature.h
  /usr/local/include/ImageMagick-7/MagickCore/fourier.h
  /usr/local/include/ImageMagick-7/MagickCore/fx.h
  /usr/local/include/ImageMagick-7/MagickCore/gem.h
  /usr/local/include/ImageMagick-7/MagickCore/geometry.h
  /usr/local/include/ImageMagick-7/MagickCore/histogram.h
  /usr/local/include/ImageMagick-7/MagickCore/identify.h
  /usr/local/include/ImageMagick-7/MagickCore/image-view.h
  /usr/local/include/ImageMagick-7/MagickCore/image.h
  /usr/local/include/ImageMagick-7/MagickCore/layer.h
  /usr/local/include/ImageMagick-7/MagickCore/linked-list.h
  /usr/local/include/ImageMagick-7/MagickCore/list.h
  /usr/local/include/ImageMagick-7/MagickCore/locale_.h
  /usr/local/include/ImageMagick-7/MagickCore/log.h
  /usr/local/include/ImageMagick-7/MagickCore/magic.h
  /usr/local/include/ImageMagick-7/MagickCore/magick-baseconfig.h
  /usr/local/include/ImageMagick-7/MagickCore/magick-config.h
  /usr/local/include/ImageMagick-7/MagickCore/magick-type.h
  /usr/local/include/ImageMagick-7/MagickCore/magick.h
  /usr/local/include/ImageMagick-7/MagickCore/matrix.h
  /usr/local/include/ImageMagick-7/MagickCore/memory_.h
  /usr/local/include/ImageMagick-7/MagickCore/method-attribute.h
  /usr/local/include/ImageMagick-7/MagickCore/methods.h
  /usr/local/include/ImageMagick-7/MagickCore/mime.h
  /usr/local/include/ImageMagick-7/MagickCore/module.h
  /usr/local/include/ImageMagick-7/MagickCore/monitor.h
  /usr/local/include/ImageMagick-7/MagickCore/montage.h
  /usr/local/include/ImageMagick-7/MagickCore/morphology.h
  /usr/local/include/ImageMagick-7/MagickCore/nt-base.h
  /usr/local/include/ImageMagick-7/MagickCore/opencl.h
  /usr/local/include/ImageMagick-7/MagickCore/option.h
  /usr/local/include/ImageMagick-7/MagickCore/paint.h
  /usr/local/include/ImageMagick-7/MagickCore/pixel-accessor.h
  /usr/local/include/ImageMagick-7/MagickCore/pixel.h
  /usr/local/include/ImageMagick-7/MagickCore/policy.h
  /usr/local/include/ImageMagick-7/MagickCore/prepress.h
  /usr/local/include/ImageMagick-7/MagickCore/profile.h
  /usr/local/include/ImageMagick-7/MagickCore/property.h
  /usr/local/include/ImageMagick-7/MagickCore/quantize.h
  /usr/local/include/ImageMagick-7/MagickCore/quantum.h
  /usr/local/include/ImageMagick-7/MagickCore/random_.h
  /usr/local/include/ImageMagick-7/MagickCore/registry.h
  /usr/local/include/ImageMagick-7/MagickCore/resample.h
  /usr/local/include/ImageMagick-7/MagickCore/resize.h
  /usr/local/include/ImageMagick-7/MagickCore/resource_.h
  /usr/local/include/ImageMagick-7/MagickCore/segment.h
  /usr/local/include/ImageMagick-7/MagickCore/semaphore.h
  /usr/local/include/ImageMagick-7/MagickCore/shear.h
  /usr/local/include/ImageMagick-7/MagickCore/signature.h
  /usr/local/include/ImageMagick-7/MagickCore/splay-tree.h
  /usr/local/include/ImageMagick-7/MagickCore/static.h
  /usr/local/include/ImageMagick-7/MagickCore/statistic.h
  /usr/local/include/ImageMagick-7/MagickCore/stream.h
  /usr/local/include/ImageMagick-7/MagickCore/string_.h
  /usr/local/include/ImageMagick-7/MagickCore/studio.h
  /usr/local/include/ImageMagick-7/MagickCore/threshold.h
  /usr/local/include/ImageMagick-7/MagickCore/timer.h
  /usr/local/include/ImageMagick-7/MagickCore/token.h
  /usr/local/include/ImageMagick-7/MagickCore/transform.h
  /usr/local/include/ImageMagick-7/MagickCore/type.h
  /usr/local/include/ImageMagick-7/MagickCore/utility.h
  /usr/local/include/ImageMagick-7/MagickCore/version.h
  /usr/local/include/ImageMagick-7/MagickCore/vision.h
  /usr/local/include/ImageMagick-7/MagickCore/visual-effects.h
  /usr/local/include/ImageMagick-7/MagickCore/widget.h
  /usr/local/include/ImageMagick-7/MagickCore/xml-tree.h
  /usr/local/include/ImageMagick-7/MagickCore/xwindow.h
  /usr/local/include/ImageMagick-7/MagickWand/MagickWand.h
  /usr/local/include/ImageMagick-7/MagickWand/animate.h
  /usr/local/include/ImageMagick-7/MagickWand/compare.h
  /usr/local/include/ImageMagick-7/MagickWand/composite.h
  /usr/local/include/ImageMagick-7/MagickWand/conjure.h
  /usr/local/include/ImageMagick-7/MagickWand/convert.h
  /usr/local/include/ImageMagick-7/MagickWand/deprecate.h
  /usr/local/include/ImageMagick-7/MagickWand/display.h
  /usr/local/include/ImageMagick-7/MagickWand/drawing-wand.h
  /usr/local/include/ImageMagick-7/MagickWand/identify.h
  /usr/local/include/ImageMagick-7/MagickWand/import.h
  /usr/local/include/ImageMagick-7/MagickWand/magick-cli.h
  /usr/local/include/ImageMagick-7/MagickWand/magick-image.h
  /usr/local/include/ImageMagick-7/MagickWand/magick-property.h
  /usr/local/include/ImageMagick-7/MagickWand/method-attribute.h
  /usr/local/include/ImageMagick-7/MagickWand/mogrify.h
  /usr/local/include/ImageMagick-7/MagickWand/montage.h
  /usr/local/include/ImageMagick-7/MagickWand/operation.h
  /usr/local/include/ImageMagick-7/MagickWand/pixel-iterator.h
  /usr/local/include/ImageMagick-7/MagickWand/pixel-wand.h
  /usr/local/include/ImageMagick-7/MagickWand/stream.h
  /usr/local/include/ImageMagick-7/MagickWand/wand-view.h
  /usr/local/include/ImageMagick-7/MagickWand/wandcli.h
  /usr/local/include/graphqlparser/Ast.h
  /usr/local/include/graphqlparser/AstNode.h
  /usr/local/include/graphqlparser/AstVisitor.h
  /usr/local/include/graphqlparser/GraphQLParser.h
  /usr/local/include/graphqlparser/JsonVisitor.h
  /usr/local/include/graphqlparser/c/GraphQLAst.h
  /usr/local/include/graphqlparser/c/GraphQLAstForEachConcreteType.h
  /usr/local/include/graphqlparser/c/GraphQLAstNode.h
  /usr/local/include/graphqlparser/c/GraphQLAstToJSON.h
  /usr/local/include/graphqlparser/c/GraphQLAstVisitor.h
  /usr/local/include/graphqlparser/c/GraphQLParser.h
  /usr/local/include/graphqlparser/lexer.h
  /usr/local/include/graphqlparser/syntaxdefs.h
  /usr/local/include/hiredis/adapters/ae.h
  /usr/local/include/hiredis/adapters/glib.h
  /usr/local/include/hiredis/adapters/ivykis.h
  /usr/local/include/hiredis/adapters/libev.h
  /usr/local/include/hiredis/adapters/libevent.h
  /usr/local/include/hiredis/adapters/libuv.h
  /usr/local/include/hiredis/adapters/macosx.h
  /usr/local/include/hiredis/adapters/qt.h
  /usr/local/include/hiredis/alloc.h
  /usr/local/include/hiredis/async.h
  /usr/local/include/hiredis/hiredis.h
  /usr/local/include/hiredis/read.h
  /usr/local/include/hiredis/sds.h
  /usr/local/include/node/js_native_api.h
  /usr/local/include/node/js_native_api_types.h
  /usr/local/include/node/libplatform/libplatform-export.h
  /usr/local/include/node/libplatform/libplatform.h
  /usr/local/include/node/libplatform/v8-tracing.h
  /usr/local/include/node/node.h
  /usr/local/include/node/node_api.h
  /usr/local/include/node/node_api_types.h
  /usr/local/include/node/node_buffer.h
  /usr/local/include/node/node_object_wrap.h
  /usr/local/include/node/node_version.h
  /usr/local/include/node/openssl/aes.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm/include/progs.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/BSD-x86/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/BSD-x86/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/BSD-x86/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm/include/progs.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/BSD-x86_64/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN32/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/VC-WIN64A/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/aix-gcc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/aix-gcc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/aix-gcc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/aix-gcc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/aix-gcc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/aix-gcc/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/aix64-gcc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/aix64-gcc/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/darwin-i386-cc/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-aarch64/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-armv4/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-armv4/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-armv4/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-armv4/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-elf/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-elf/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-elf/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-elf/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc64/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc64/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-ppc64le/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-x32/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-x32/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-x32/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-x32/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-x32/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-x32/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-x32/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-x32/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux-x86_64/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux32-s390x/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux64-mips64/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm/include/progs.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/linux64-s390x/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/progs.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/progs.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/progs.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/include/internal/bn_conf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/include/internal/dso_conf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h
  /usr/local/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/progs.h
  /usr/local/include/node/openssl/asn1.h
  /usr/local/include/node/openssl/asn1_mac.h
  /usr/local/include/node/openssl/asn1err.h
  /usr/local/include/node/openssl/asn1t.h
  /usr/local/include/node/openssl/async.h
  /usr/local/include/node/openssl/asyncerr.h
  /usr/local/include/node/openssl/bio.h
  /usr/local/include/node/openssl/bioerr.h
  /usr/local/include/node/openssl/blowfish.h
  /usr/local/include/node/openssl/bn.h
  /usr/local/include/node/openssl/bn_conf.h
  /usr/local/include/node/openssl/bn_conf_asm.h
  /usr/local/include/node/openssl/bn_conf_no-asm.h
  /usr/local/include/node/openssl/bnerr.h
  /usr/local/include/node/openssl/buffer.h
  /usr/local/include/node/openssl/buffererr.h
  /usr/local/include/node/openssl/camellia.h
  /usr/local/include/node/openssl/cast.h
  /usr/local/include/node/openssl/cmac.h
  /usr/local/include/node/openssl/cms.h
  /usr/local/include/node/openssl/cmserr.h
  /usr/local/include/node/openssl/comp.h
  /usr/local/include/node/openssl/comperr.h
  /usr/local/include/node/openssl/conf.h
  /usr/local/include/node/openssl/conf_api.h
  /usr/local/include/node/openssl/conferr.h
  /usr/local/include/node/openssl/crypto.h
  /usr/local/include/node/openssl/cryptoerr.h
  /usr/local/include/node/openssl/ct.h
  /usr/local/include/node/openssl/cterr.h
  /usr/local/include/node/openssl/des.h
  /usr/local/include/node/openssl/dh.h
  /usr/local/include/node/openssl/dherr.h
  /usr/local/include/node/openssl/dsa.h
  /usr/local/include/node/openssl/dsaerr.h
  /usr/local/include/node/openssl/dso_conf.h
  /usr/local/include/node/openssl/dso_conf_asm.h
  /usr/local/include/node/openssl/dso_conf_no-asm.h
  /usr/local/include/node/openssl/dtls1.h
  /usr/local/include/node/openssl/e_os2.h
  /usr/local/include/node/openssl/ebcdic.h
  /usr/local/include/node/openssl/ec.h
  /usr/local/include/node/openssl/ecdh.h
  /usr/local/include/node/openssl/ecdsa.h
  /usr/local/include/node/openssl/ecerr.h
  /usr/local/include/node/openssl/engine.h
  /usr/local/include/node/openssl/engineerr.h
  /usr/local/include/node/openssl/err.h
  /usr/local/include/node/openssl/evp.h
  /usr/local/include/node/openssl/evperr.h
  /usr/local/include/node/openssl/hmac.h
  /usr/local/include/node/openssl/idea.h
  /usr/local/include/node/openssl/kdf.h
  /usr/local/include/node/openssl/kdferr.h
  /usr/local/include/node/openssl/lhash.h
  /usr/local/include/node/openssl/md2.h
  /usr/local/include/node/openssl/md4.h
  /usr/local/include/node/openssl/md5.h
  /usr/local/include/node/openssl/mdc2.h
  /usr/local/include/node/openssl/modes.h
  /usr/local/include/node/openssl/obj_mac.h
  /usr/local/include/node/openssl/objects.h
  /usr/local/include/node/openssl/objectserr.h
  /usr/local/include/node/openssl/ocsp.h
  /usr/local/include/node/openssl/ocsperr.h
  /usr/local/include/node/openssl/opensslconf.h
  /usr/local/include/node/openssl/opensslconf_asm.h
  /usr/local/include/node/openssl/opensslconf_no-asm.h
  /usr/local/include/node/openssl/opensslv.h
  /usr/local/include/node/openssl/ossl_typ.h
  /usr/local/include/node/openssl/pem.h
  /usr/local/include/node/openssl/pem2.h
  /usr/local/include/node/openssl/pemerr.h
  /usr/local/include/node/openssl/pkcs12.h
  /usr/local/include/node/openssl/pkcs12err.h
  /usr/local/include/node/openssl/pkcs7.h
  /usr/local/include/node/openssl/pkcs7err.h
  /usr/local/include/node/openssl/rand.h
  /usr/local/include/node/openssl/rand_drbg.h
  /usr/local/include/node/openssl/randerr.h
  /usr/local/include/node/openssl/rc2.h
  /usr/local/include/node/openssl/rc4.h
  /usr/local/include/node/openssl/rc5.h
  /usr/local/include/node/openssl/ripemd.h
  /usr/local/include/node/openssl/rsa.h
  /usr/local/include/node/openssl/rsaerr.h
  /usr/local/include/node/openssl/safestack.h
  /usr/local/include/node/openssl/seed.h
  /usr/local/include/node/openssl/sha.h
  /usr/local/include/node/openssl/srp.h
  /usr/local/include/node/openssl/srtp.h
  /usr/local/include/node/openssl/ssl.h
  /usr/local/include/node/openssl/ssl2.h
  /usr/local/include/node/openssl/ssl3.h
  /usr/local/include/node/openssl/sslerr.h
  /usr/local/include/node/openssl/stack.h
  /usr/local/include/node/openssl/store.h
  /usr/local/include/node/openssl/storeerr.h
  /usr/local/include/node/openssl/symhacks.h
  /usr/local/include/node/openssl/tls1.h
  /usr/local/include/node/openssl/ts.h
  /usr/local/include/node/openssl/tserr.h
  /usr/local/include/node/openssl/txt_db.h
  /usr/local/include/node/openssl/ui.h
  /usr/local/include/node/openssl/uierr.h
  /usr/local/include/node/openssl/whrlpool.h
  /usr/local/include/node/openssl/x509.h
  /usr/local/include/node/openssl/x509_vfy.h
  /usr/local/include/node/openssl/x509err.h
  /usr/local/include/node/openssl/x509v3.h
  /usr/local/include/node/openssl/x509v3err.h
  /usr/local/include/node/uv.h
  /usr/local/include/node/uv/aix.h
  /usr/local/include/node/uv/android-ifaddrs.h
  /usr/local/include/node/uv/bsd.h
  /usr/local/include/node/uv/darwin.h
  /usr/local/include/node/uv/errno.h
  /usr/local/include/node/uv/linux.h
  /usr/local/include/node/uv/os390.h
  /usr/local/include/node/uv/posix.h
  /usr/local/include/node/uv/stdint-msvc2008.h
  /usr/local/include/node/uv/sunos.h
  /usr/local/include/node/uv/threadpool.h
  /usr/local/include/node/uv/tree.h
  /usr/local/include/node/uv/unix.h
  /usr/local/include/node/uv/version.h
  /usr/local/include/node/uv/win.h
  /usr/local/include/node/v8-internal.h
  /usr/local/include/node/v8-platform.h
  /usr/local/include/node/v8-profiler.h
  /usr/local/include/node/v8-testing.h
  /usr/local/include/node/v8-util.h
  /usr/local/include/node/v8-value-serializer-version.h
  /usr/local/include/node/v8-version-string.h
  /usr/local/include/node/v8-version.h
  /usr/local/include/node/v8-wasm-trap-handler-posix.h
  /usr/local/include/node/v8-wasm-trap-handler-win.h
  /usr/local/include/node/v8.h
  /usr/local/include/node/v8config.h
  /usr/local/include/node/zconf.h
  /usr/local/include/node/zlib.h
  /usr/local/include/pocketsphinx/cmdln_macro.h
  /usr/local/include/pocketsphinx/pocketsphinx.h
  /usr/local/include/pocketsphinx/pocketsphinx_export.h
  /usr/local/include/pocketsphinx/ps_lattice.h
  /usr/local/include/pocketsphinx/ps_mllr.h
  /usr/local/include/pocketsphinx/ps_search.h
  /usr/local/include/sphinxbase/ad.h
  /usr/local/include/sphinxbase/agc.h
  /usr/local/include/sphinxbase/bio.h
  /usr/local/include/sphinxbase/bitarr.h
  /usr/local/include/sphinxbase/bitvec.h
  /usr/local/include/sphinxbase/byteorder.h
  /usr/local/include/sphinxbase/case.h
  /usr/local/include/sphinxbase/ckd_alloc.h
  /usr/local/include/sphinxbase/clapack_lite.h
  /usr/local/include/sphinxbase/cmd_ln.h
  /usr/local/include/sphinxbase/cmn.h
  /usr/local/include/sphinxbase/err.h
  /usr/local/include/sphinxbase/f2c.h
  /usr/local/include/sphinxbase/fe.h
  /usr/local/include/sphinxbase/feat.h
  /usr/local/include/sphinxbase/filename.h
  /usr/local/include/sphinxbase/fixpoint.h
  /usr/local/include/sphinxbase/fsg_model.h
  /usr/local/include/sphinxbase/genrand.h
  /usr/local/include/sphinxbase/glist.h
  /usr/local/include/sphinxbase/hash_table.h
  /usr/local/include/sphinxbase/heap.h
  /usr/local/include/sphinxbase/jsgf.h
  /usr/local/include/sphinxbase/listelem_alloc.h
  /usr/local/include/sphinxbase/logmath.h
  /usr/local/include/sphinxbase/matrix.h
  /usr/local/include/sphinxbase/mmio.h
  /usr/local/include/sphinxbase/ngram_model.h
  /usr/local/include/sphinxbase/pio.h
  /usr/local/include/sphinxbase/prim_type.h
  /usr/local/include/sphinxbase/priority_queue.h
  /usr/local/include/sphinxbase/profile.h
  /usr/local/include/sphinxbase/sbthread.h
  /usr/local/include/sphinxbase/sphinx_config.h
  /usr/local/include/sphinxbase/sphinxbase_export.h
  /usr/local/include/sphinxbase/strfuncs.h
  /usr/local/include/sphinxbase/yin.h
  /usr/local/include/sphinxtrain/acmod_set.h
  /usr/local/include/sphinxtrain/best_q.h
  /usr/local/include/sphinxtrain/ck_seg.h
  /usr/local/include/sphinxtrain/common.h
  /usr/local/include/sphinxtrain/corpus.h
  /usr/local/include/sphinxtrain/cvt2triphone.h
  /usr/local/include/sphinxtrain/div.h
  /usr/local/include/sphinxtrain/dtree.h
  /usr/local/include/sphinxtrain/file.h
  /usr/local/include/sphinxtrain/gauden.h
  /usr/local/include/sphinxtrain/heap.h
  /usr/local/include/sphinxtrain/itree.h
  /usr/local/include/sphinxtrain/kdtree.h
  /usr/local/include/sphinxtrain/kmeans.h
  /usr/local/include/sphinxtrain/lexicon.h
  /usr/local/include/sphinxtrain/metric.h
  /usr/local/include/sphinxtrain/misc.h
  /usr/local/include/sphinxtrain/mk_phone_list.h
  /usr/local/include/sphinxtrain/mk_phone_seq.h
  /usr/local/include/sphinxtrain/mk_sseq.h
  /usr/local/include/sphinxtrain/mk_trans_seq.h
  /usr/local/include/sphinxtrain/mk_ts2ci.h
  /usr/local/include/sphinxtrain/mllr.h
  /usr/local/include/sphinxtrain/mllr_class_io.h
  /usr/local/include/sphinxtrain/mllr_io.h
  /usr/local/include/sphinxtrain/model_def.h
  /usr/local/include/sphinxtrain/model_def_io.h
  /usr/local/include/sphinxtrain/model_inventory.h
  /usr/local/include/sphinxtrain/pset_io.h
  /usr/local/include/sphinxtrain/quest.h
  /usr/local/include/sphinxtrain/remap.h
  /usr/local/include/sphinxtrain/s3.h
  /usr/local/include/sphinxtrain/s3acc_io.h
  /usr/local/include/sphinxtrain/s3cb2mllr_io.h
  /usr/local/include/sphinxtrain/s3gau_io.h
  /usr/local/include/sphinxtrain/s3io.h
  /usr/local/include/sphinxtrain/s3lamb_io.h
  /usr/local/include/sphinxtrain/s3map_io.h
  /usr/local/include/sphinxtrain/s3mixw_io.h
  /usr/local/include/sphinxtrain/s3phseg_io.h
  /usr/local/include/sphinxtrain/s3tmat_io.h
  /usr/local/include/sphinxtrain/s3ts2cb_io.h
  /usr/local/include/sphinxtrain/segdmp.h
  /usr/local/include/sphinxtrain/state.h
  /usr/local/include/sphinxtrain/state_seq.h
  /usr/local/include/sphinxtrain/swap.h
  /usr/local/include/sphinxtrain/time.h
  /usr/local/include/sphinxtrain/topo_read.h
  /usr/local/include/sphinxtrain/ts2cb.h
  /usr/local/include/sphinxtrain/vector.h
  /usr/local/include/sphinxtrain/was_added.h

Warning: Unbrewed '.la' files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected '.la' files:
  /usr/local/lib/libMagick++-7.Q16HDRI.la
  /usr/local/lib/libMagickCore-7.Q16HDRI.la
  /usr/local/lib/libMagickWand-7.Q16HDRI.la
  /usr/local/lib/libpocketsphinx.la
  /usr/local/lib/libsphinxad.la
  /usr/local/lib/libsphinxbase.la

Warning: Unbrewed '.pc' files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected '.pc' files:
  /usr/local/lib/pkgconfig/ImageMagick-7.Q16HDRI.pc
  /usr/local/lib/pkgconfig/ImageMagick.pc
  /usr/local/lib/pkgconfig/Magick++-7.Q16HDRI.pc
  /usr/local/lib/pkgconfig/Magick++.pc
  /usr/local/lib/pkgconfig/MagickCore-7.Q16HDRI.pc
  /usr/local/lib/pkgconfig/MagickCore.pc
  /usr/local/lib/pkgconfig/MagickWand-7.Q16HDRI.pc
  /usr/local/lib/pkgconfig/MagickWand.pc
  /usr/local/lib/pkgconfig/hiredis.pc
  /usr/local/lib/pkgconfig/libgraphqlparser.pc
  /usr/local/lib/pkgconfig/pocketsphinx.pc
  /usr/local/lib/pkgconfig/sphinxbase.pc

Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
  /usr/local/lib/libMagick++-7.Q16HDRI.a
  /usr/local/lib/libMagickCore-7.Q16HDRI.a
  /usr/local/lib/libMagickWand-7.Q16HDRI.a
  /usr/local/lib/libhiredis.a
  /usr/local/lib/libpocketsphinx.a
  /usr/local/lib/libsphinxad.a
  /usr/local/lib/libsphinxbase.a

What you were trying to do (and why)

I installed brew with the following command

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

and added this line

eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

into my .bash_profile file, just like it suggested. Then, I evaluated

eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

and brew worked just fine. Then I logged out and logged in back, expecting brew to work, but it didn't

What happened (include command output)

brew wasn't found in the path

Command output

vladimir@np940x5n:~$ brew
Command 'brew' not found, did you mean:
  command 'qbrew' from deb qbrew (0.4.1-8build1)
  command 'brec' from deb bplay (0.991-10build1)
Try: sudo apt install 
  

What you expected to happen

I expected brew to be in the path

Step-by-step reproduction instructions (by running brew commands)

It looks like I described it above, and I've found why it happened - Ubuntu doesn't source .bash_profile on login into Xorg session, it sources .profile, despite $SHELL is /bin/bash, here is a bug. And I found that your docs says to add brew via .profile on Ubuntu/Debian, so you must have been aware of this problem. But the Next steps instructions in the install script don't highlight it.

uvlad7 commented 11 months ago

IMHO, this instruction should be updated too. UPD: Completions still don't work when added into .profile:

vladimir@np940x5n:~$ shopt -q login_shell && echo 'Login shell' || echo 'Not login shell'
Not login shell
vladimir@np940x5n:~$ complete -p | grep brew
vladimir@np940x5n:~$ . .profile 
vladimir@np940x5n:~$ complete -p | grep brew
complete -o bashdefault -o default -F _brew brew

and it looks like that .bashrc is a right place for the completions (standart /etc/bash_completion is sourced there, for example)

MikeMcQuaid commented 11 months ago

Thanks for the issue @uvlad7!

CC @Homebrew/maintainers folks for thoughts and help. My experience here is that there is the "proper location" (.*profile) and "the location that consistently works across all Linux distros and macOS versions/shells" and we should probably always do the latter.

XuehaiPan commented 11 months ago

I think ~/.bashrc or ~/.zshrc may be the better location to place the brew initialization command.

~/.bash_profile is read by bash when it is invoked as a login shell, i.e.:

bash --login

Usually, the login shell mode can be configured by the terminal simulator. It is similar to zsh for ~/.zprofile over ~/.zshrc with the --login option. Here is the pseudo-code:

if is login shell:
    if ~/.bash_profile exists; then
        source ~/.bash_profile
    elif ~/.profile exists; then
        source ~/.profile  # ~/.profile will not be read if ~/.bash_profile exists
    fi
else
    if ~/.bashrc exists; then
        source ~/.bashrc   # bash will not read ~/.bash_profile on non-login shell mode
    fi
fi

In the default configuration, ~/.bash_profile will contain a statement to source ~/.bashrc.

# ~/.bash_profile

if [[ -f ~/.bashrc ]]; then
    source ~/.bashrc
fi

So ~/.bashrc will always be sourced for both login shell and non-login shell cases.

MikeMcQuaid commented 11 months ago

I think ~/.bashrc or ~/.zshrc may be the better location to place the brew initialization command.

@XuehaiPan Agreed. Could you open a PR for this to Homebrew/install and Homebrew/brew? 🙇🏻

XuehaiPan commented 11 months ago

Opened a PR to resolve this.

uvlad7 commented 11 months ago

@XuehaiPan, but profile files are sourced only once, just a little performance optimization. And guidelines say that .*profile files are the place to configure things like PATH variable. It's not true about completions, they don't work in subshells, so they should be configured in rcfiles.

I've added this into my .profile file

+# <<< brew configure <<<
+eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
+# <<< brew configure <<<

and it works just fine. It's just important not to forget to activate it before sourcing .bashrc files if brew is called inside it.

XuehaiPan commented 11 months ago

I've added this into my .profile file and it works just fine.

@uvlad7 On Ubuntu, it will source the ~/.profile file when you log in to the GNOME session (if you have a GUI). If I understand correctly, all your terminal emulator sessions will be the child process of the GNOME GUI session. Correct me if I'm wrong.

For subshell, for example run bash in a shell session:

$ # in a bash login session
$ bash  # enter a subshell
bash:~$ # this is not a login shell and will only source `~/.bashrc`

the subshell will not source ~/.profile anymore.

uvlad7 commented 11 months ago

@XuehaiPan

If I understand correctly, all your terminal emulator sessions will be the child process of the GNOME GUI session. Correct me if I'm wrong. Yep, it works like so, despite the fact that it's actually a child of a systemd process

$ pstree -s $$
systemd───systemd───gnome-terminal-───bash───pstree

the subshell will not source ~/.profile anymore. Yep. Actually, terminal emulators can be configured to run command as a login shell, and, as far as I know, Mac OS X’s Terminal.app is configured this way by default, but usually subshells aren't login shells. And it's OK for PATH or other exported variables configuration:

vladimir@np940x5n:~$ export DEBUG=true
vladimir@np940x5n:~$ DEBUG=fasle
vladimir@np940x5n:~$ echo $DEBUG
fasle
vladimir@np940x5n:~$ bash
vladimir@np940x5n:~$ echo $DEBUG
fasle
vladimir@np940x5n:~$ 
exit
vladimir@np940x5n:~$

but


vladimir@np940x5n:~$ DEBUG=fasle
vladimir@np940x5n:~$ echo $DEBUG
fasle
vladimir@np940x5n:~$ bash
vladimir@np940x5n:~$ echo $DEBUG

vladimir@np940x5n:~$ exit vladimir@np940x5n:~$


But it's not OK for competions. Look, I've removed them from my .bashrc and added into .profile, it doesn't work, because completions don't work in child processes

vladimir@np940x5n:~$ complete | grep brew vladimir@np940x5n:~$ if type brew &>/dev/null; then HOMEBREW_PREFIX="$(brew --prefix)"; if [[ -r "${HOMEBREW_PREFIX}/etc/profile.d/bash_completion.sh" ]]; then source "${HOMEBREW_PREFIX}/etc/profile.d/bash_completion.sh"; else for COMPLETION in "${HOMEBREW_PREFIX}/etc/bash_completion.d/"*; do [[ -r "${COMPLETION}" ]] && source "${COMPLETION}"; done; fi; fi vladimir@np940x5n:~$ complete | grep brew complete -o bashdefault -o default -F _brew brew vladimir@np940x5n:~$ bash vladimir@np940x5n:~$ complete | grep brew vladimir@np940x5n:~$

XuehaiPan commented 11 months ago
vladimir@np940x5n:~$ export DEBUG=true
vladimir@np940x5n:~$ DEBUG=fasle
vladimir@np940x5n:~$ echo $DEBUG
fasle
vladimir@np940x5n:~$ bash
vladimir@np940x5n:~$ echo $DEBUG
fasle
vladimir@np940x5n:~$ 
exit
vladimir@np940x5n:~$

but

vladimir@np940x5n:~$ DEBUG=fasle
vladimir@np940x5n:~$ echo $DEBUG
fasle
vladimir@np940x5n:~$ bash
vladimir@np940x5n:~$ echo $DEBUG

vladimir@np940x5n:~$ 
exit
vladimir@np940x5n:~$

@uvlad7 Only exported variables are environment variables that can be inherited to subshells. In your second example, the variable without export keyword will have no effect in the new bash session. That's why we usually see export PATH=....

But it's not OK for competions.

Completions are usually defined by functions rather than environment variables. They are not inherited. You need to eval the brew shellenv command to enable it.

Bo98 commented 11 months ago

In the default configuration, ~/.bash_profile will contain a statement to source ~/.bashrc.

# ~/.bash_profile

if [[ -f ~/.bashrc ]]; then
    source ~/.bashrc
fi

I don't think this is universally the case. It's not on macOS. We should not be relying on the user having this, which makes .bashrc largely not suitable for macOS (and yes people still use Bash on macOS).

You need to eval the brew shellenv command to enable it.

shellenv doesn't touch completions. It's purely about environment variables.

uvlad7 commented 11 months ago

Only exported variables are environment variables that can be inherited to subshells. In your second example, the variable without export keyword will have no effect in the new bash session. That's why we usually see export PATH=....

Completions are usually defined by functions rather than environment variables. They are not inherited. You need to eval the brew shellenv command to enable it.

@XuehaiPan , that's exactly what I wanted to highlight in the examples

uvlad7 commented 11 months ago

I don't think this is universally the case. It's not on macOS. shellenv doesn't touch completions. It's purely about environment variables.

@Bo98 that's why rcfiles aren't the right place for shellenv, and profile files are. It's about selecting the right profile file, not about moving everything into rcfiles, at least because there is no rc file for pure sh and people may want to use brew from it.

vladimir@np940x5n:~$ sh -x
$ 
XuehaiPan commented 11 months ago

I don't think this is universally the case. It's not on macOS. We should not be relying on the user having this, which makes .bashrc largely not suitable for macOS (and yes people still use Bash on macOS).

@Bo98 If the .bash_profile is not loading .bashrc, we need to add the shellenv command in both .bash_profile and .bashrc to support both login shell and non-login shell cases.

MikeMcQuaid commented 11 months ago

It's not on macOS. We should not be relying on the user having this, which makes .bashrc largely not suitable for macOS (and yes people still use Bash on macOS).

I wonder if we should just make this output vary definitely per-OS and perhaps per-distro as it seems there's no single option that works consistently everywhere.

If we really must pick one option, though: macOS takes priority: it has dramatically more users than Linux.

MikeMcQuaid commented 11 months ago

at least because there is no rc file for pure sh and people may want to use brew from it.

@uvlad7 We actively do not support this. This type of edge-case optimisation is not the right call here, sorry.

uvlad7 commented 10 months ago

Just noticed an interesting thing that cat complicate debug process. So, eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" was in my .profile. I tried to move it into .bash_profile (noticed that .profile was sourced twice and thought that it was sourced from .bash_profile, and it was, but because I forgot to deactivate 'Run as login shell' option in my terminal emulator). So, I moved this line, logged out and logged back in - ooops, brew still was in my PATH. I was trying understand why hadn't it worked before, and finally decided to reboot my computer - ooops, brew wasn't in my PATH after that.

So, you can't just relogin to check your changes. I reproduced that behavior again: I moved initialization back into .profile and added this

now=$(date +"%T")
echo "Current time : $now" >> debug
echo 'sourced .bash_profile' >> debug
echo $(ps -o args= $PPID) >> debug
echo $SHELL >> debug
echo >> debug

into .profile, .bash_profile and .bashrc (default .bash_profile sources .profile and .profile sources .bashrc if shell is bash). Then, I rebooted the computer, checked that brew was in the path, did the same after a relogin, and finally rebooted the computer again and checked that brew wasn't in the path that time. Here is what I got in debug (with comments)

# First reboot, login
Current time : 22:02:39
Sourced .profile
/usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
/bin/bash

Current time : 22:02:39
sourced .bashrc
/usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
/bin/bash

# Start gnome-terminal
Current time : 22:02:49
sourced .bashrc
/usr/libexec/gnome-terminal-server
/bin/bash

# Relogin
Current time : 22:03:37
Sourced .profile
/usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
/bin/bash

Current time : 22:03:37
sourced .bashrc
/usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
/bin/bash

# Start gnome-terminal
Current time : 22:03:47
sourced .bashrc
/usr/libexec/gnome-terminal-server
/bin/bash

# Second reboot, login
Current time : 22:04:31
Sourced .profile
/usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
/bin/bash

Current time : 22:04:31
sourced .bashrc
/usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
/bin/bash

Current time : 22:04:41
sourced .bashrc
/usr/libexec/gnome-terminal-server
/bin/bash

So, .profile is sourced on relogin, but changes are ignored for some reason.

UPD: ENVs set during login are kept. I just added export DEBUG1=1 into the .profile, relogged, changed it to export DEBUG2=2`, relogged, removed it, checked in terminal:

vladimir@np940x5n:~$ echo $DEBUG1 $DEBUG2
1 2
XuehaiPan commented 10 months ago

I wonder if we should just make this output vary definitely per-OS and perhaps per-distro as it seems there's no single option that works consistently everywhere.

I made profile as default on macOS and rcfile as default on Linux in PR #809.

carlocab commented 10 months ago

@gromgit may have thoughts here.

gromgit commented 10 months ago

I'd have to agree that the rcfile is the most pragmatic place to add brew shellenv on Linux, because:

As for macOS, unless folks have been complaining that brew shellenv doesn't work for them in .profile, I think we should keep it as-is. I believe that's the state of play in #809?