Code Monkey home page Code Monkey logo

adobelzma2unpackerscript's Introduction

Adobe LZMA2 Unpacker Script

A .bat script that unpacks LZMA2-compressed Adobe HyperDrive installers to desired location.

CAUTION!

Please, don't use this script for piracy things. I wrote this script for who wants to store LZMA2-compressed HyperDrive Adobe application installers as unpacked for various reasons. My reason was maximize deduplication ratings on my Windows Server Storage Spaces storage to store more programs. That's why I wrote this script. I will improve this script day by day.

Credits

  • John Henckel for script that I found on here.
  • Me for editing above script to use RoboCopy instead of XCopy.
  • Adobe Systems Incorporated for providing Zip-Lzma2-compressed applications.

What does this script do?

Normally, packed assets with Zip-Lzma2 method, folder and file structure can be seen via any archiving software, but cannot be directly unpacked via 7-Zip or other archive software that I know in existence. And these packages expanded size and compressed size are equal and compression method is Store on these packages (i.e. Adobe XD 42.0.22.11 as it's the first Adobe XD version to use Zip-Lzma2 compression below).

image

But they will be extracted to adobeTemp folder during installation as raw into bunch of folders starting with ETR prefix into C:\adobeTemp or maybe another adobeTemp folder on other drives root that depends on Creative Cloud settings. They can be tricky to get these installer files as when install of specific package was finished, they will be deleted. This script constantly summons robocopy with no cooldown as any file enters to C:\adobeTemp or any folder you specified in script and copies unpacked Adobe assets from adobeTemp folder to desired location, so be sure to have beefy computer if you can. It copies only new files so new files instantly copied to desired location as Adobe Installer copies unpacked assets to adobeTemp directory.

Instructions

  • Run this script as admin. You'll see robocopy doing it's work. Script will create folders depending on your entries.
  • Run your desired Zip-Lzma2-compressed Adobe installer.
  • Wait to install to be complete.
  • You'll see destination directory contains bunch of folders starting with ETR. These are the unpacked assets copied from adobeTemp directory.
    • Be sure to verify file and folder count from 7-Zip or other archiving software. Sometimes even with constant spawning of robocopy, some files may missing. You can try to find these missing files from installed location of Adobe program and copy it to appropriate location on extracted installer assets.
      • Especially on Adobe XD and Fresco (Very especially CSDKConfigurator.exe (this file and icons directory)).
        • These files can be found on C:\Program Files\Common Files\Adobe ([AdobeCommon] variable).
        • Under that directory, look for app name that you're gonna unpack (i.e. Adobe Fresco).
          • Or you can delete every file under C:\Program Files\Common Files\Adobe\ (app name you're gonna unpack) if you're gonna want unpack packages in one-go.

Special Note

  • Be sure to change Zip-Lzma2 to Zip-Deflated on application.json to install these unpacked assets.
  • I suggest run this script on freshly installed Windows due to HyperDrive installer will skip already installed packages. Therefore, some packages may not be unpacked.
  • Some installers have resources\AppInfo.json file (i.e. Photoshop and Premiere Elements 2023). If this file exists, probably application.json and other crucial files are cannot be altered due to HyperDrive installer engine's version (>=5.6.0.788) and HyperDrive installer gives "Installer is corrupt" error. To solve this, use HyperDrive installer engine with older version from one of the installers (4.5.0.300=<x<=5.5.0.617 should work.).
    • If you ignore this, you'll see this screen:

      image

    • Or if you want most up to date HyperDrive installer engine, you can just replace Set-up.exe on root of the installer media with version 4.5.0.300=<x<=5.5.0.617.

    • AppInfo.json can be generated with some tool if I understand algorithm of these strings, above steps will be unnecassary. If you know how to generate these strings, let me know :).

  • If you're gonna use 5.3.5.518(or 5.3.5.499 if it's first pre-release ARM 64-Bit release)=<x<=5.5.0.617, be sure to put contents of packages folder to common/win64/packages (or winarm64 if you're gonna use ARM 64-bit version of Creative Cloud) and contents of resources folder (except content directory) to resources/win64 (or winarm64 if you're gonna use ARM 64-bit version of Creative Cloud) inside installation media. Changed sections marked as bold.
    Old install structure (<5.3.5.518) New install structure (>=5.3.5.518)
    packages common\win64(or winarm64)\packages
    products products
    resources resources\win64(or winarm64)(Only AdobePIM.dll and UpdateRedirector.dat moved here.)
    Set-up.exe Set-up.exe
    • If you skip this, the installer will say "Installer file may be damaged" as it can't find "common" directory inside of installation media.

      image

      • Or you can use Set-up.exe from 4.5.0.300=<x<=5.3.1.470.

adobelzma2unpackerscript's People

Contributors

eflanili7881 avatar

Stargazers

Tianmi avatar Angelo DeLuca avatar Cade Furnas avatar

Watchers

 avatar

Forkers

luoxueqwq

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.