Skip to content

Pass --force to winetricks for the vcrun verbs - #237

Merged
frankea merged 1 commit into
frankea:mainfrom
slevin-7:vcrun-force
Aug 29, 2026
Merged

Pass --force to winetricks for the vcrun verbs#237
frankea merged 1 commit into
frankea:mainfrom
slevin-7:vcrun-force

Conversation

@slevin-7

Copy link
Copy Markdown
Contributor

First of the three changes agreed in #233.

Microsoft rotates the vc_redist binaries in place, so the SHA256 sums pinned in the bundled winetricks go stale between releases (upstream: Winetricks/winetricks#2195). In unattended mode winetricks aborts with exit 1 on the mismatch, and the Dependencies panel just flips back to "Not Installed".

This passes --force to winetricks for verbs with the vcrun prefix only — everything else keeps checksum enforcement. Verified the argument order against the bundled winetricks: options must precede the verb.

Includes a CHANGELOG entry.

Microsoft rotates the vc_redist binaries in place, so the SHA256 sums
pinned in the bundled winetricks go stale between releases. In
unattended mode winetricks then aborts with exit 1 on the checksum
mismatch and the Dependencies panel silently stays on "Not Installed"
(frankea#233, upstream Winetricks/winetricks#2195).

Scoped to verbs with the vcrun prefix; everything else keeps checksum
enforcement.
@codecov

codecov Bot commented Aug 29, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 5 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
Whisky/Utils/Winetricks+Install.swift 0.00% 5 Missing ⚠️

📢 Thoughts on this report? Let us know!

@frankea frankea left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified hands-on against the bundled winetricks (20260125) rather than from the diff. Sourcing it in library mode with a wrong checksum and stdin closed the way Whisky's Process leaves it: without --force, w_askpermission reads EOF and w_die exits 1, which is exactly the silent failure in #233; with WINETRICKS_FORCE=1, w_verify_sha256sum warns "caveat emptor" and returns 0. Option order holds too (the pre-init loop at winetricks:5378 consumes leading options), so ["--force", verb] is right. The merged tree builds the app, passes the full kit suite and both lints.

Two things I learned on the way, neither yours to fix here: cabextract has been bundled and on the install PATH since 2024, so the "Cannot find cabextract" in the issue came from running winetricks by hand in a terminal; and the install is not unattended (no -q), so the vc_redist wizard appears and waits, which is the likely "installer hangs after installing". I will follow up on #233.

Merging.

@frankea
frankea merged commit 88e51ae into frankea:main Aug 29, 2026
10 checks passed
dappermint pushed a commit to dappermint/Whisky that referenced this pull request Aug 30, 2026
…ankea#237)

Microsoft rotates the vc_redist binaries in place, so the SHA256 sums
pinned in the bundled winetricks go stale between releases. In
unattended mode winetricks then aborts with exit 1 on the checksum
mismatch and the Dependencies panel silently stays on "Not Installed"
(frankea#233, upstream Winetricks/winetricks#2195).

Scoped to verbs with the vcrun prefix; everything else keeps checksum
enforcement.

(cherry picked from commit 88e51ae)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants