fix: harden and simplify Linux system install

Tighten shim detection, profile repair, and install ordering while
trimming over-specific doctor/info hints from the system-install path.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Sahilb315
2026-07-11 02:19:59 +05:30
co-authored by Cursor
parent 7922606644
commit ffd0e7e759
13 changed files with 227 additions and 105 deletions
+9 -20
View File
@@ -37,30 +37,19 @@ func TestErrIfSystemInstallAllowed(t *testing.T) {
}
}
func TestInstallSystemRequiresLinuxAndRoot(t *testing.T) {
func TestInstallSystemRequiresRoot(t *testing.T) {
orig := setupGeteuid
t.Cleanup(func() {
setupGeteuid = orig
setupInstallSystem = false
})
t.Cleanup(func() { setupGeteuid = orig })
setupInstallSystem = true
setupGeteuid = func() int { return 0 }
err := install()
if runtime.GOOS == "linux" {
if err != nil {
usefulErr, ok := usefulerror.AsUsefulError(err)
if ok {
assert.NotEqual(t, errcodes.UnsupportedPlatform, usefulErr.Code())
assert.NotEqual(t, errcodes.PermissionDenied, usefulErr.Code())
}
}
return
}
setupGeteuid = func() int { return 1000 }
err := install(true)
require.Error(t, err)
usefulErr, ok := usefulerror.AsUsefulError(err)
require.True(t, ok)
assert.Equal(t, errcodes.UnsupportedPlatform, usefulErr.Code())
if runtime.GOOS == "linux" {
assert.Equal(t, errcodes.PermissionDenied, usefulErr.Code())
} else {
assert.Equal(t, errcodes.UnsupportedPlatform, usefulErr.Code())
}
}