fix(installer): enforce Windows setup requirements - #2505
Conversation
✅ Deploy Preview for viteplus-preview canceled.
|
Native binary sizes (
|
| Artifact | Format | Base | PR | Change |
|---|---|---|---|---|
vp (Linux x64) |
Binary | 10.69 MiB | 10.69 MiB | 0 B (0.00%) |
vp (Linux x64) |
gzip -9 | 4.63 MiB | 4.63 MiB | +335 B (+0.01%) |
| NAPI (Linux x64) | Binary | 32.19 MiB | 32.19 MiB | 0 B (0.00%) |
| NAPI (Linux x64) | gzip -9 | 12.69 MiB | 12.69 MiB | +18 B (+0.00%) |
vp (macOS ARM64) |
Binary | 7.98 MiB | 7.98 MiB | 0 B (0.00%) |
vp (macOS ARM64) |
gzip -9 | 4.03 MiB | 4.04 MiB | +6.17 KiB (+0.15%) |
| NAPI (macOS ARM64) | Binary | 39.79 MiB | 39.79 MiB | +16 B (+0.00%) |
| NAPI (macOS ARM64) | gzip -9 | 16.97 MiB | 16.98 MiB | +935 B (+0.01%) |
vp (Windows x64) |
Binary | 8.58 MiB | 8.58 MiB | +4.50 KiB (+0.05%) |
vp (Windows x64) |
gzip -9 | 3.74 MiB | 3.74 MiB | +1.34 KiB (+0.03%) |
| NAPI (Windows x64) | Binary | 27.03 MiB | 27.03 MiB | +512 B (+0.00%) |
| NAPI (Windows x64) | gzip -9 | 10.75 MiB | 10.75 MiB | +101 B (+0.00%) |
| Trampoline (Windows x64) | Binary | 216.50 KiB | 216.50 KiB | 0 B (0.00%) |
| Trampoline (Windows x64) | gzip -9 | 104.34 KiB | 104.34 KiB | 0 B (0.00%) |
| Installer (Windows x64) | Binary | 4.48 MiB | 4.48 MiB | -5.00 KiB (-0.11%) |
| Installer (Windows x64) | gzip -9 | 2.10 MiB | 2.10 MiB | -763 B (-0.03%) |
b0ecb3c to
42de16f
Compare
Registry bridge build (
|
| Package | Version |
|---|---|
vite-plus |
0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737 |
@voidzero-dev/vite-plus-core |
0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737 |
Install the Vite+ CLI built from this commit, then migrate a project:
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/voidzero-dev/vite-plus/9726a197fb80371c6bb44d9482a4e556303bb737/packages/cli/install.sh | VP_PR_VERSION=2505 bash# Windows (PowerShell)
$env:VP_PR_VERSION="2505"; irm https://raw.githubusercontent.com/voidzero-dev/vite-plus/9726a197fb80371c6bb44d9482a4e556303bb737/packages/cli/install.ps1 | iexOr download the standalone Windows installer built from this commit:
| Architecture | Installer |
|---|---|
| x64 | vp-setup-x86_64-pc-windows-msvc.exe |
| Arm64 | vp-setup-aarch64-pc-windows-msvc.exe |
GitHub requires you to sign in and downloads each installer as a ZIP artifact. Extract vp-setup.exe, then run it against this preview build:
.\vp-setup.exe --version "0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737" --registry "https://registry-bridge.viteplus.dev/"After installing, upgrade the current project's vite-plus to this test build with:
vp migrateOr point your package manager at the bridge registry https://registry-bridge.viteplus.dev/:
| Package manager | Registry config |
|---|---|
| npm / pnpm / Bun | .npmrc: registry=https://registry-bridge.viteplus.dev/ |
| Yarn (v2+) | .yarnrc.yml: npmRegistryServer: "https://registry-bridge.viteplus.dev/" |
Then pin the build (vite aliases to vite-plus-core; pnpm can use a catalog, npm an overrides entry):
{
"devDependencies": {
"vite-plus": "0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737",
"vite": "npm:@voidzero-dev/vite-plus-core@0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737"
}
}
🐳 Docker preview imageBuilt from this PR's registry bridge build:
# remove any stale local copy from a previous run, then pull fresh
docker rmi ghcr.io/voidzero-dev/vite-plus:pr-2505 2>/dev/null; docker pull ghcr.io/voidzero-dev/vite-plus:pr-2505Quick check: docker run --rm ghcr.io/voidzero-dev/vite-plus:pr-2505 vp --versionSee docs/guide/docker.md for usage. |
42de16f to
d3f9560
Compare
|
✅ Staging deployment successful! Preview: https://viteplus-staging.void.app/ |
9726a19 to
ec0d0f3
Compare
ec0d0f3 to
663cabd
Compare
`install.sh` now hides shell configuration warnings and instructions
when `CI=true`. CI runners set `PATH` through the job environment.
Changes to shell files do not change later job steps.
The examples show only the relevant output lines.
Before:
```text
warn: Cannot write to /home/runner/.bashrc (permission denied), skipping.
warn: Cannot write to /home/runner/.profile (permission denied), skipping.
Shell configuration:
- bash: failed ~/.bashrc, ~/.profile
note: Some shells still need manual setup.
Manual setup instructions:
```
After:
```text
Install locations:
Data directory: <data-directory>
Bin directory: <bin-directory>
```
Set `VP_LOG=trace` to show the hidden shell file errors. Installations
outside CI keep the warnings and manual setup instructions.
This PR is stacked on #2505.
Closes voidzero-dev/setup-vp#87
vp-setup.exe now validates directory variables before it resolves a version or creates an installation root. VP_HOME is the single-root override. Users must set VP_BIN_DIR, VP_DATA_DIR, and VP_CACHE_DIR together. Each value must be an absolute path. Users can set each XDG_* variable independently. The installer no longer provides the redundant
--install-diroption.vp-setup.exe accepts Vite+ 0.3.0 or later. CI can also install internal 0.0.0-commit. builds. The installer rejects all other 0.0.0 versions and earlier releases before it downloads a payload. It no longer probes payloads or uses the monolithic layout.
vp_shared owns directory validation. vp_setup owns version support checks. vp-setup and vp upgrade use these shared checks.
The Windows installer now replaces a dangling current junction. It also removes ANSI output when NO_COLOR is set. The Windows workflow tests invalid directory variables, unsupported versions, junction repair, and NO_COLOR output.