veracrypt: Add version 1.26.24#16881
Conversation
WalkthroughThis pull request introduces a new package manifest file for VeraCrypt 1.26.24, a Windows encryption application. The manifest defines metadata, architecture-specific installation procedures including MSI extraction and file renaming, binary mappings, configuration file persistence across uninstall, and automatic version detection and update mechanisms. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested labels
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (5 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
All changes look good. Wait for review from human collaborators. veracrypt
|
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
bucket/veracrypt.json
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: o-l-a-v
Repo: ScoopInstaller/Extras PR: 16378
File: bucket/compactgui.json:20-22
Timestamp: 2025-10-19T13:58:23.389Z
Learning: In the ScoopInstaller/Extras repository, the CompactGUI manifest removed hash verification from the autoupdate block because the hash verification mechanism (scraping SHA-256 from release page HTML) is no longer available in newer CompactGUI releases. GitHub asset digests exist in beta releases but not in v3.8.0, and Scoop doesn't have built-in support for extracting from GitHub API asset digests.
📚 Learning: 2025-10-19T13:58:23.389Z
Learnt from: o-l-a-v
Repo: ScoopInstaller/Extras PR: 16378
File: bucket/compactgui.json:20-22
Timestamp: 2025-10-19T13:58:23.389Z
Learning: In the ScoopInstaller/Extras repository, the CompactGUI manifest removed hash verification from the autoupdate block because the hash verification mechanism (scraping SHA-256 from release page HTML) is no longer available in newer CompactGUI releases. GitHub asset digests exist in beta releases but not in v3.8.0, and Scoop doesn't have built-in support for extracting from GitHub API asset digests.
Applied to files:
bucket/veracrypt.json
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: WindowsPowerShell
🔇 Additional comments (6)
bucket/veracrypt.json (6)
1-8: Metadata looks good.The homepage and license URL are correctly pointing to official VeraCrypt resources. While VeraCrypt uses a multi-license approach (TrueCrypt License + Apache 2.0), using
Apache-2.0as the identifier with the full license URL is a reasonable approximation for Scoop's license field.
15-20: Pre-install logic is well-designed.The persistence approach is thoughtful:
- Config files are moved (copy then delete) from
persist_dirto$dirduring install- This avoids leaving sensitive configuration data in the persist directory while the app is running
-ErrorAction SilentlyContinuecorrectly handles fresh installs where no persisted files existThe file renaming to add
-x64suffix matches the official Portable installer structure as described.
21-36: Bin and shortcuts are correctly configured.The executables are properly aliased with lowercase names for command-line use. The renamed
-x64executables from pre_install are correctly referenced here.
37-40: Pre-uninstall correctly completes the persistence cycle.The
ensurehelper createspersist_dirif needed, then config files are copied back for preservation. This pairs well with the pre_install logic that moves them back during reinstall/upgrade.
41-44: Checkver regex is correctly configured and matches the page content.The regex pattern "Latest Stable Release - ([\d.]+)" successfully captures the version number from the Downloads page. Live verification confirms the pattern matches "Latest Stable Release - 1.26.24" on the current page.
9-14: No changes needed. The manifest correctly includes only 64-bit architecture. VeraCrypt 1.26.24 dropped 32-bit Windows support—only x64 MSI and EXE installers are provided by the official release.Likely an incorrect or invalid review comment.
| "autoupdate": { | ||
| "architecture": { | ||
| "64bit": { | ||
| "url": "https://launchpad.net/veracrypt/trunk/$version/+download/VeraCrypt_Setup_x64_$version.msi#/dl.msi_", | ||
| "hash": { | ||
| "url": "https://launchpad.net/veracrypt/trunk/$version/+download/veracrypt-$version-sha512sum.txt", | ||
| "find": "$sha512\\s+$basename" | ||
| } | ||
| } | ||
| } | ||
| } |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Fetch the actual sha512sum.txt to verify format matches the expected pattern
curl -sL "https://launchpad.net/veracrypt/trunk/1.26.24/+download/veracrypt-1.26.24-sha512sum.txt" | head -20Repository: ScoopInstaller/Extras
Length of output: 3366
Fix autoupdate hash extraction: sha512sum.txt does not contain MSI file entries.
The sha512sum.txt file does not list any .msi files. The hash find pattern expects to match $basename (resolving to VeraCrypt_Setup_x64_1.26.24.msi), but the hash file only contains entries for .exe, .AppImage, .rpm, .deb, and documentation files. The autoupdate hash extraction will fail for every version update.
Remove the hash block or verify if Launchpad provides MSI hashes elsewhere.
🤖 Prompt for AI Agents
In bucket/veracrypt.json around lines 45 to 55, the autoupdate hash extraction
is using a sha512sum.txt which does not contain MSI filenames so the current
"find" pattern will never match; remove the "hash" block under the 64bit
architecture (or replace it with a valid source that actually contains MSI
hashes) and either rely on the URL alone for autoupdate or point "hash.url" and
"hash.find" to a file that lists the MSI SHA512 for the MSI basename.
Closes #2381
To match the file structure of the official Portable installer:
"-x64" has been added to filenames
The COMReg.exe file has been removed
This makes the installation identical to the official Portable installer, except for some files that are not included in the MSI installer:
Missing donation.js and SM4.html files in docs\html
Missing ARM64 version
Everything else matches the official Portable version, including file names and file hashes.
<manifest-name[@version]|chore>: <general summary of the pull request>Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.