back to home

paolo-projects / auto-unlocker

Unlocker for VMWare macOS

4,843 stars
580 forks
101 issues
C++CMakeC

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing paolo-projects/auto-unlocker in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/paolo-projects/auto-unlocker)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

Auto-Unlocker A one-click Unlocker for VMWare Player and Workstation. **A C++ port of the DrDonk Python Unlocker** The tool This project is born to provide a native solution, mainly on Windows, to the original Unlocker project. Since the original project requires python, and it's not installed by default on windows, this tool has been coded to provide an all-in-one solution with no additional dependencies needed. It relies on libcurl for the networking (get requests and file download) and libzip for the zip extraction. The tar extraction, being relatively easy to implement, has been coded from scratch. The libraries are linked statically to provide one final executable for the sake of simplicity. The Windows target features a GUI implemented throught the Win32 API. Although this solution brings more complexity than using one of the many GUI libraries out there, the resulting executable will be smaller and with better compatibility. For the linux target, it is still shell-based, given the better-instructed user base running this tool on linux os-es. DrDonk Unlocker Unlocker 3 is designed for VMware Workstation 11-15 and Player 7-15. The patch code carries out the following modifications dependent on the product being patched: • Fix vmware-vmx and derivatives to allow macOS to boot • Fix vmwarebase .dll or .so to allow Apple to be selected during VM creation • Download a copy of the latest VMware Tools for macOS Note that not all products recognise the darwin.iso via install tools menu item. You will have to manually mount the darwin.iso for example on Workstation 11 and Player 7. In all cases make sure VMware is not running, and any background guests have been shutdown. How to use **Windows (GUI):** just download from the *releases* section, extract to a folder (store it if you want to be able to uninstall later) and run the executable. **Linux (shell):** You need to compile the program first. After you compiled it, if needed and run . Refer to the next section for more info about compiling the tool. **Command line options (linux):** • *(Default behavior when called with no arguments)* Installs the patch. • Uninstalls the patch. Works only if the patch was previously installed and the *backup* folder is intact • Downloads the tools in the folder • Shows a list of the available options Compile The program can be compiled on Windows with CMake, provided you get or compile the needed libraries first. Run CMake on the source dir and it will generate a ready to build project. The program needs the following libraries: • libcurl • libzip The tar extraction is handled internally, while the zip decompression needs the library. is used for downloading the tools. **Windows:** Run *CMake* on the source folder to generate a Visual Studio Project. The CMakeList is set up to compile with static libraries, if you have shared ones change *CMakeLists.txt* file accordingly (**UNLOCKER_STATIC_LIBS_WIN** variable). Point the CMake utility to the proper library/headers paths when prompted or add them to your PATH. **Linux:** Use the embedded Makefile. Get needed libraries (or compile them and install) first, then run On Ubuntu: