From a8f3dd954070a706803523e67f90c9413d7a9bf5 Mon Sep 17 00:00:00 2001 From: Lars Kanis Date: Thu, 5 Nov 2026 10:42:12 +0100 Subject: [PATCH 1/4] Print environment variables for debugging CI --- lib/ruby_installer/build/components/01_msys2.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ruby_installer/build/components/01_msys2.rb b/lib/ruby_installer/build/components/01_msys2.rb index f34dcbd1..c0cad18c 100644 --- a/lib/ruby_installer/build/components/01_msys2.rb +++ b/lib/ruby_installer/build/components/01_msys2.rb @@ -10,7 +10,7 @@ def needed?(try_kill: true) begin autorebase - if msys.with_msys_apps_enabled(if_no_msys: :raise) { run_verbose("sh", "-lc", "true") } + if msys.with_msys_apps_enabled(if_no_msys: :raise) { run_verbose("sh", "-lc", "set") } puts "MSYS2 seems to be " + green("properly installed") false else From 75c96a3029329cd10900972337eb2bdd3118cb2b Mon Sep 17 00:00:00 2001 From: Lars Kanis Date: Thu, 5 Nov 2026 22:09:14 +0100 Subject: [PATCH 2/4] Also remove POSIXLY_CORRECT env var, which blocks MSYS2 init --- lib/ruby_installer/build/components/base.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/ruby_installer/build/components/base.rb b/lib/ruby_installer/build/components/base.rb index dc517774..04e62fa5 100644 --- a/lib/ruby_installer/build/components/base.rb +++ b/lib/ruby_installer/build/components/base.rb @@ -48,8 +48,9 @@ def shell_join(array) def run_verbose(*args) puts "> #{ cyan(shell_join(args)) }" # Unset HOME, which is set by ruby.exe to HOMEDRIVE+HOMEPATH but MSYS2 has it's own HOME. - # The HOME must be missing initially to trigger MSYYS2 initialization. - system({ "HOME" => nil }, *args) + # The HOME must be missing initially to trigger MSYS2 initialization. + # POSIXLY_CORRECT is set in GHA and also blocks MSYS2 initialization. + system({ "HOME" => nil, "POSIXLY_CORRECT" => nil }, *args) end def puts(*args) From 3a22b695f4e1074755c1cfd57ad85bde0c56c961 Mon Sep 17 00:00:00 2001 From: Lars Kanis Date: Fri, 6 Nov 2026 20:23:17 +0100 Subject: [PATCH 3/4] Show env vars and home dir for debug --- lib/ruby_installer/build/components/01_msys2.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ruby_installer/build/components/01_msys2.rb b/lib/ruby_installer/build/components/01_msys2.rb index c0cad18c..ee019d33 100644 --- a/lib/ruby_installer/build/components/01_msys2.rb +++ b/lib/ruby_installer/build/components/01_msys2.rb @@ -10,7 +10,7 @@ def needed?(try_kill: true) begin autorebase - if msys.with_msys_apps_enabled(if_no_msys: :raise) { run_verbose("sh", "-lc", "set") } + if msys.with_msys_apps_enabled(if_no_msys: :raise) { system "set"; run_verbose("sh", "-lc", "set"); run_verbose("sh", "-c", "ls -la ~") } puts "MSYS2 seems to be " + green("properly installed") false else From e7c57d61251565ec0dcd993f133fa79ccc0633a2 Mon Sep 17 00:00:00 2001 From: Lars Kanis Date: Fri, 6 Nov 2026 21:32:08 +0100 Subject: [PATCH 4/4] Also disable certain env keys from MSYS2 init at build time --- recipes/msys2/50-init-msys.rake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/recipes/msys2/50-init-msys.rake b/recipes/msys2/50-init-msys.rake index 5eb64dab..04dfbbb2 100644 --- a/recipes/msys2/50-init-msys.rake +++ b/recipes/msys2/50-init-msys.rake @@ -3,7 +3,10 @@ file self.after_init_filelist => [self.before_init_filelist] do |t| # initialize MSYS2 RubyInstaller::Build.msys2_installation.with_msys_apps_disabled do sh "autorebase.bat" if sandboxdir=~/\/msys32$/ - sh "usr/bin/sh", "-lc", "true" + # Unset HOME, which is set by ruby.exe to HOMEDRIVE+HOMEPATH but MSYS2 has it's own HOME. + # The HOME must be missing initially to trigger MSYS2 initialization. + # POSIXLY_CORRECT is set in GHA and also blocks MSYS2 initialization. + sh({ "HOME" => nil, "POSIXLY_CORRECT" => nil }, "usr/bin/sh", "-lc", "true") end sh "find > #{File.basename self.after_init_filelist}"