-
-
Notifications
You must be signed in to change notification settings - Fork 51
docs: instructions for injecting Windows exe metadata #174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: instructions for injecting Windows exe metadata #174
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds comprehensive documentation for injecting Windows executable metadata into pkg-generated binaries. The documentation addresses the common issue where packaged executables inherit Node.js binary metadata instead of application-specific information.
Key changes:
- Adds a new section explaining why Windows exe metadata customization is important
- Provides detailed instructions for using
reseditto post-process executables - Includes both Node.js API and command-line usage examples
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| ``` | ||
|
|
||
| As an alternative to the Node.js API, | ||
| [`resedit`](https://www.npmjs.com/package/resedit) also supports command–line |
Copilot
AI
Sep 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] Use an em dash (—) instead of an en dash with spaces (– ) for better typographical consistency.
| [`resedit`](https://www.npmjs.com/package/resedit) also supports command–line | |
| [`resedit`](https://www.npmjs.com/package/resedit) also supports command-line |
README.md
Outdated
| npx resedit dist/bin/app.exe dist/bin/app_with_metadata.exe ` | ||
| --icon 1,dist/favicon.ico ` | ||
| --company-name "ACME Corporation" ` | ||
| --file-description "ACME CLI Tool" ` | ||
| --product-name "ACME Application" ` | ||
| --file-version 1.2.3.4 |
Copilot
AI
Sep 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The PowerShell example shows line continuation with backticks, but lacks explanation that this is PowerShell-specific syntax. Consider adding a note that this is PowerShell syntax or provide cross-platform alternatives for bash/cmd users.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Considering that there might be users that cross compile this maybe it's worth adding also a linux version of this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@robertsLando I am not having much experience with Linux binaries, not sure if the same metadata principles will apply there. And especially resedit (which the documented approach is based on) is designed for Windows binaries only:
resedit-js is a library that manipulates resouces contained by Windows Executable files.
(https://www.npmjs.com/package/resedit)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@chroberino you may have mis-understood my comment, I simply said that someone may want to cross compile windows binaries on linux and still be able to customize the exe under Linux, so I proposed to create a linux version of rsedit command that actually you did with powershell syntax :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ohhh, got it.
Well, I see two options to address this:
- Provide two variants of this comand line example which differ only in the line continuation characters (
`vs.\) - Remove the line continuation characters and make the comand line example a one-liner
Which one do you prefer?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would go for option 1 🙏🏼
robertsLando
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
No description provided.