Skip to content
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

[Feature Request] Unpack UPX-compressed packages #4743

Open
hu3rror opened this issue Feb 17, 2022 · 11 comments
Open

[Feature Request] Unpack UPX-compressed packages #4743

hu3rror opened this issue Feb 17, 2022 · 11 comments

Comments

@hu3rror
Copy link

hu3rror commented Feb 17, 2022

I'm working on a manifest for an app that uses the bitrock installer creation tool.
What parameters should I use to unpack such .exe installation package of this tree structure? I still wasn't sure what to do after looking at Scoop's wiki (T_T)

.
├── [0]
├── CERTIFICATE
├── .rsrc
├── UPX0
└── UPX1

image

installer download link: https://scrivener.s3.amazonaws.com/Scapple-installer.exe

Thanks for reading and hope you can help me :)

@hu3rror hu3rror added the bug label Feb 17, 2022
@rashil2000
Copy link
Member

Can you try any one of these unpackers - #3502

@hu3rror
Copy link
Author

hu3rror commented Feb 17, 2022

Can you try any one of these unpackers - #3502

thank you, I'll take a look later

@hu3rror
Copy link
Author

hu3rror commented Feb 18, 2022

I referenced the contents of extras/bucket/ida-free.json and the parameters of bitrock installer, currently the installer can be extracted and installed. And this is my code blow:

    "installer": {
        "args": [
            "--mode unattended",
            "--unattendedmodeui minimal",
            "--prefix \"$dir\""
        ]
    },
    "uninstaller": {
        "file": "uninstall.exe",
        "args": [
            "--mode unattended"
        ]
    },

However, two new problems have emerged.

  1. The uninstaller does not work properly, when input scoop uninstall xxxprompting that uninstall.dat cannot be found.
    图片

  2. The desktop icon and the additional start menu icon are generated by default during installation. I can't find the relevant parameters to implement a way to remove the corresponding icon from the user side.

It looks a little difficult.

@rashil2000
Copy link
Member

rashil2000 commented Feb 18, 2022

Looks like extraction is the only clean way. So it doesn't work with either NSIS, Inno or Wix?

@hu3rror
Copy link
Author

hu3rror commented Feb 18, 2022

Looks like extraction is the only clean way. So it doesn't work with either NSIS, Inno or Wix?

It seems that scoop does not support upx package decompression. This may have to be put on hold for now, thanks for the reply!

@rashil2000
Copy link
Member

We can turn this into a feature request. UPX can be used to decompress these.

@rashil2000 rashil2000 changed the title [Question for manifest] How to unpack this type of installation package? [Feature Request] Unpack UPX-compressed packages Feb 18, 2022
@niheaven
Copy link
Member

UPX just encode and compress single exe, and it is not related with program installation.

@rashil2000
Copy link
Member

But it might be possible to uncompress it after decoding with UPX, right.

@HUMORCE
Copy link
Member

HUMORCE commented Feb 18, 2022

first, does Scoop need to handle(provides special decompression/installation method) each non-common compression/installation package?

install scripts can handle them if the packages can be unpacked with some utils.

@rashil2000
Copy link
Member

Depends on the popularity of UPX. If it's not that popular, we can just do depends: upx and use UPX command in the pre_install script.

@niheaven
Copy link
Member

Give some examples that the installers are compressed by UPX and could be extracted by 7zip later. Few developers compress installer with UPX which are mostly used by final executables.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants