Restructure into freemkv-unlock workspace (ld member + room for more)

libfreemkv owns the Unlocker trait + registry; this repo holds the concrete
unlocker plugins. LibreDrive moves to the ld/ member (package freemkv-unlock-ld
unchanged). Workspace root + repo README describe the general-unlocker model;
adding an unlocker = a new member + one register_unlocker line in the consumer.
libfreemkv dep is the crates.io version; local dev resolves it via the
gitignored .cargo/config.toml patch.
This commit is contained in:
Matthew Jackson
2026-06-22 16:02:57 -07:00
parent 47d5d1e0b9
commit 607782ab64
11 changed files with 91 additions and 55 deletions
+13 -15
View File
@@ -1,15 +1,13 @@
[package]
name = "freemkv-unlock-ld"
version = "1.0.0-rc.2"
edition = "2024"
rust-version = "1.86"
license = "AGPL-3.0-only"
description = "LibreDrive unlocker plugin for libfreemkv (firmware unlock for MediaTek MT1959 drives)"
repository = "https://github.com/freemkv/freemkv-unlock-ld"
[dependencies]
libfreemkv = "1.0.0-rc.2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
base64 = "0.22.1"
tracing = "0.1"
# freemkv-unlock — unlocker plugins for libfreemkv.
#
# libfreemkv ships only the `Unlocker` trait + registry and stays firmware-clean.
# Each member here is one concrete unlocker, registered into libfreemkv by a
# single `register_unlocker(...)` line in the consuming binary — so dropping an
# unlocker is deleting that one line plus the dependency (delete-to-comply).
#
# Members:
# ld — LibreDrive (MediaTek MT1959 firmware unlock)
# (future unlockers go here as additional members)
[workspace]
resolver = "2"
members = ["ld"]