diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a87232c..a042cbb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -31,7 +31,38 @@ jobs: run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)" - name: Install brew - run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + run: | + /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + brew uninstall --force --ignore-dependencies node + brew cleanup -s node + brew cleanup --prune-prefix + brew uninstall --force --ignore-dependencies python@3.11 + brew cleanup -s python@3.11 + brew cleanup --prune-prefix + brew uninstall --force --ignore-dependencies python@3.12 + brew cleanup -s python@3.12 + brew cleanup --prune-prefix + sudo rm -rf /System/Library/Frameworks/Python.framework/ + brew cleanup --prune-prefix + sudo rm -rf /usr/local/bin/2to3 + sudo rm -rf /usr/local/bin/2to3-3.11 + sudo rm -rf /usr/local/bin/2to3-3.12 + sudo rm -rf /usr/local/bin/idle3 + sudo rm -rf /usr/local/bin/idle3.11 + sudo rm -rf /usr/local/bin/idle3.12 + sudo rm -rf /usr/local/bin/pydoc3 + sudo rm -rf /usr/local/bin/pydoc3.11 + sudo rm -rf /usr/local/bin/pydoc3.12 + sudo rm -rf /usr/local/bin/python3 + sudo rm -rf /usr/local/bin/python3-config + sudo rm -rf /usr/local/bin/python3.11 + sudo rm -rf /usr/local/bin/python3.12 + sudo rm -rf /usr/local/bin/python3.11-config + sudo rm -rf /usr/local/bin/python3.12-config + brew uninstall --force --ignore-dependencies ruby + brew cleanup -s ruby + brew cleanup --prune-prefix + sudo rm -rf $(brew --repo homebrew/core) # Build Homebrew recipe - name: Build diff --git a/metacall.rb b/metacall.rb index c550a98..a56070a 100644 --- a/metacall.rb +++ b/metacall.rb @@ -164,26 +164,26 @@ def install system "cmake", "--build", ".", "--target", "clean" end - # NPM Post Install - def post_install - node_modules = HOMEBREW_PREFIX/"lib/node_modules" - node_modules.mkpath - # Kill npm but preserve all other modules across node updates/upgrades. - rm_r node_modules/"npm" if (node_modules/"npm").exist? - - cp_r libexec/"lib/node_modules/npm", node_modules - # This symlink doesn't hop into homebrew_prefix/bin automatically so - # we make our own. This is a small consequence of our - # bottle-npm-and-retain-a-private-copy-in-libexec setup - # All other installs **do** symlink to homebrew_prefix/bin correctly. - # We ln rather than cp this because doing so mimics npm's normal install. - ln_sf node_modules/"npm/bin/npm-cli.js", bin/"npm" - ln_sf node_modules/"npm/bin/npx-cli.js", bin/"npx" - ln_sf bin/"npm", HOMEBREW_PREFIX/"bin/npm" - ln_sf bin/"npx", HOMEBREW_PREFIX/"bin/npx" - - (node_modules/"npm/npmrc").atomic_write("prefix = #{HOMEBREW_PREFIX}\n") - end + # # NPM Post Install + # def post_install + # node_modules = HOMEBREW_PREFIX/"lib/node_modules" + # node_modules.mkpath + # # Kill npm but preserve all other modules across node updates/upgrades. + # rm_r node_modules/"npm" if (node_modules/"npm").exist? + + # cp_r libexec/"lib/node_modules/npm", node_modules + # # This symlink doesn't hop into homebrew_prefix/bin automatically so + # # we make our own. This is a small consequence of our + # # bottle-npm-and-retain-a-private-copy-in-libexec setup + # # All other installs **do** symlink to homebrew_prefix/bin correctly. + # # We ln rather than cp this because doing so mimics npm's normal install. + # ln_sf node_modules/"npm/bin/npm-cli.js", bin/"npm" + # ln_sf node_modules/"npm/bin/npx-cli.js", bin/"npx" + # ln_sf bin/"npm", HOMEBREW_PREFIX/"bin/npm" + # ln_sf bin/"npx", HOMEBREW_PREFIX/"bin/npx" + + # (node_modules/"npm/npmrc").atomic_write("prefix = #{HOMEBREW_PREFIX}\n") + # end test do (testpath/"test.js").write <<~EOS