Skip to main content

Surgical Binary Metadata Editing. Powered by Rust.

Project description

MetaEdit

Surgical Binary Metadata Editing. Powered by Rust.

Python Rust PyPI

MetaEdit is a high-performance, cross-platform library and CLI tool designed for surgical binary manipulation. It allows you to patch executable metadata (icons, version strings, manifests) with 1:1 precision, without re-compiling your source.

Originally built for the CactusCat framework, MetaEdit is now available as a standalone power-tool for any Python or Rust project that needs to brand and identify binaries post-build.


Features

  • Rust-Native Performance: Zero-overhead metadata patching. No reliance on legacy .exe tools like rcedit.
  • 1:1 Binary Surgery: Directly manipulates PE resources (Windows), Info.plist (macOS), and Desktop entries (Linux).
  • Icon Injection: High-fidelity icon patching with multi-resolution support.
  • Fluent API: Modern, chainable Python API for complex branding sequences.
  • Unified CLI: A single command to rule all platforms.

💻 Python Usage

MetaEdit provides three distinct ways to brand your binaries:

1. Dictionary-based (Clean & Pythonic)

Best for dynamic configuration files or settings blocks.

import metaedit

metaedit.edit("app.exe", {
    "icon": "app.ico",
    "version": "1.2.3.4",
    "CompanyName": "CactusCat Industries",
    "FileDescription": "The Next Big Thing",
    "LegalCopyright": "© 2026"
}).apply()

2. Direct Update (Fast & Simple)

One-liner for quick patches.

metaedit.update("app.exe", icon="logo.ico", version="1.0.0.1")

3. Fluent API (Chainable)

Maximum control and readability.

metaedit.edit("app.exe") \
    .set_icon("app.ico") \
    .set_version("1.2.3.4") \
    .set_string("ProductName", "CactusCat Engine") \
    .apply()

📟 CLI Usage

MetaEdit is its own standalone power-tool. Install globally and brand anything.

metaedit app.exe --icon logo.ico --version 2.0.0.0 --company "Acme Corp"

🌍 Platform Specifics

Platform Technique Result
Windows Direct PE Resource Patching Built-in Icons & Version Info (Task Manager ready)
macOS Bundle Synthesis Full .app structure with Info.plist and .icns
Linux Desktop Integration .desktop entry generation and Icon distribution

📦 Installation

pip install metaedit

MetaEdit ships with pre-compiled Rust wheels. You do not need a Rust compiler installed to use it.


⚖️ License

MetaEdit is open-source software licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

metaedit-0.1.0.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

metaedit-0.1.0-cp310-abi3-manylinux_2_34_x86_64.whl (286.1 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.34+ x86-64

File details

Details for the file metaedit-0.1.0.tar.gz.

File metadata

  • Download URL: metaedit-0.1.0.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for metaedit-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e7793f66043081cef8bf3f11216a14d3e545f2e6e99befbbf9282d60e854b6da
MD5 8d2e3b900c0b98601cd1867975651bc7
BLAKE2b-256 eeb60199ae62a595728d6dce5b5e393b9a8999b98b60270b6e0d16015a22a6c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for metaedit-0.1.0.tar.gz:

Publisher: pypi-publish.yml on Ghua8088/metaedit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file metaedit-0.1.0-cp310-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for metaedit-0.1.0-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9b6870d7c9a6169efece8709a9ce13dfbfecd04d7d4e66c3a58dcc917b2439ff
MD5 8501c522edd11d71ec597fec083e3213
BLAKE2b-256 fc2e4a70f390546f43d7ed0bd857706b10be8d330d0b6b773d08b5015d61c170

See more details on using hashes here.

Provenance

The following attestation bundles were made for metaedit-0.1.0-cp310-abi3-manylinux_2_34_x86_64.whl:

Publisher: pypi-publish.yml on Ghua8088/metaedit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page