Skip to content

Conversation

@SorYoshino
Copy link
Contributor

@SorYoshino SorYoshino commented Jan 27, 2026

Summary

Refactors the hwinfo manifest to use architecture-specific binaries, simplifies installation logic.

Related issues or pull requests

Changes

  • Refactor bin and shortcuts into architecture-specific blocks to use original file names (HWiNFO64.exe, HWiNFO32.exe, HWiNFO_ARM64.exe) instead of renaming them.
  • Simplify pre_install scripts by removing complex regex renaming logic and focusing on cleaning up irrelevant architecture binaries.
  • Standardize configuration persistence by using persist_data and adding persist_permission to ensure the application can write to its INI file.
  • Migrate persistence unlinking logic to a dedicated uninstaller block for better lifecycle management.

Testing

The test results are as follows:
┏[ D:\Software\Scoop\Local\buckets\Unofficial][ master ≡]
└─> scoop install Unofficial/hwinfo -g
Installing 'hwinfo' (8.40-5900) [64bit] from 'Unofficial' bucket.
Loading hwi_840.zip from cache.
Checking hash of hwi_840.zip... OK.
Extracting hwi_840.zip... Done.
Running pre_install script... Done.
Running installer script... Persisting HWiNFO64.INI
Done.
Linking D:\Software\Scoop\Global\apps\hwinfo\current => D:\Software\Scoop\Global\apps\hwinfo\8.40-5900
Creating shim for 'HWiNFO'.
Making D:\Software\Scoop\Global\shims\hwinfo.exe a GUI binary.
Creating shortcut for HWiNFO (HWiNFO64.exe)
'hwinfo' (8.40-5900) was installed successfully!

┏[ D:\Software\Scoop\Local\buckets\Unofficial][ master ≡]
└─> scoop which hwinfo
D:\Software\Scoop\Global\apps\hwinfo\current\HWiNFO64.exe
  • Use conventional PR title: <manifest-name[@version]|chore>: <general summary of the pull request>
  • I have read the Contributing Guide

Summary by CodeRabbit

  • Chores
    • Reorganized package manifest for improved architecture-specific support (64-bit, 32-bit, ARM64).
    • Enhanced installation and uninstallation procedures with improved configuration persistence and management.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Jan 27, 2026

Walkthrough

The PR restructures the HWiNFO manifest configuration, moving architecture-specific binary mappings (bin and shortcuts) from root level into per-architecture blocks, converting pre_install arrays to single strings per architecture, and introducing new pre_uninstall and uninstaller logic for persist data management.

Changes

Cohort / File(s) Summary
Architecture-Specific Binary Mappings
bucket/hwinfo.json
Moved bin and shortcuts declarations from root level into each architecture block (64bit, 32bit, arm64), mapping executable names (HWiNFO64.exe, HWiNFO32.exe, HWiNFO_ARM64.exe) to unified HWiNFO entry point.
Pre-Install Command Simplification
bucket/hwinfo.json
Converted per-architecture pre_install from multi-command arrays to single string statements; arm64 now uses exclude pattern.
Persistence and Uninstaller Logic
bucket/hwinfo.json
Enhanced installer script with ensure $persist_dir and persist_dir copy operations; added top-level pre_uninstall command sequence and new uninstaller object with script block for persist data cleanup.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested labels

review-needed

Suggested reviewers

  • z-Fng

Poem

🐰 A rabbit hops through manifests with glee,
Reorganizing bins from root and free,
Architecture paths now clearly divide,
With persist files safely tucked inside,
HWiNFO runs smooth—fixed at last, hooray! 🎉

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'hwinfo: Refactor architecture handling' accurately reflects the main change—restructuring architecture-specific binary handling and simplification of installation logic.
Description check ✅ Passed The description follows the template structure with a clear summary, related issues, detailed changes, and testing results. The required checklist items are marked complete.
Linked Issues check ✅ Passed The PR successfully addresses the core requirement of issue #17095 by restoring original binary names (HWiNFO64.exe, HWiNFO32.exe, HWiNFO_ARM64.exe) instead of renaming them, which resolves the compatibility issue with dependent software.
Out of Scope Changes check ✅ Passed All changes are directly scoped to the hwinfo manifest refactor: architecture-specific binary handling, pre_install simplification, persistence standardization, and uninstaller migration as specified in the linked issues.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Contributor

All changes look good.

Wait for review from human collaborators.

hwinfo

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate

Check the full log for details.

@SorYoshino
Copy link
Contributor Author

SorYoshino commented Jan 27, 2026

I also implemented a more concise approach that dynamically creates architecture-specific shims and Start Menu shortcuts using create_shims and create_startmenu_shortcuts, avoiding hard-coded definitions for each architecture.

However, I am not certain whether this approach is appropriate for the Extras bucket.

@z-Fng z-Fng self-assigned this Feb 7, 2026
Copy link
Member

@z-Fng z-Fng left a comment

Choose a reason for hiding this comment

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

Thanks for your contribution!

@z-Fng z-Fng removed their assignment Feb 9, 2026
@z-Fng z-Fng merged commit c29b8a1 into ScoopInstaller:master Feb 9, 2026
3 checks passed
@SorYoshino SorYoshino deleted the hwinfo branch February 9, 2026 21:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: SilverAzide's Gadgets Rainmeter skin stopped work with HWiNFO after 8.40 update

2 participants