Repository navigation
Releases: goloveshko/totalplug
Release list
TotalPlug v1.0.0
🇬🇧 English
The first public release: TotalPlug scans a Total Commander installation, works
out the real version of every plugin it finds, compares it against an open
community catalog, and updates the ones that fall behind. Windows x64, Go,
Wails v2, MIT.
In the archive
totalplug-v1.0.0-win-x64.zip holds both programs at the archive root, plus the
license:
totalplug.exe— the desktop GUI. No installer; run it from any folder.totalplug-cli.exe— the command-line scanner and updater.
Extract the whole archive rather than running an exe out of it: Windows keeps the
download marker on the zip and repeats the warning for every file inside. The
GUI renders through WebView2, which ships with Windows 11 and current Windows 10
updates. Nothing needs Total Commander to be running to audit it.
What it does
- Finds
wincmd.iniand the installation path through the registry (HKCU/HKLM,
32- and 64-bit) or%APPDATA%, resolving%COMMANDER_PATH%; an install the
registry does not know about can be named by hand. - Collects Packer (WCX), Lister (WLX), File System (WFX) and Content (WDX)
plugins, merging duplicate archive extensions into one logical plugin. - Determines versions in four passes — PE resources, companion DLLs, then
pluginst.inf/readme.txt/history.txt, and finally an explicit
confidence label on every row, so[Unknown]never looks like a fact. - Checks updates against the open
totalplug-catalog. The
cached copy is revalidated by ETag, so an unchanged catalog costs a 304, and it
is what answers when the network does not. - Applies updates by package format detected from magic bytes — ZIP, RAR and 7z —
and refuses an unsupported container instead of leaving a half-extracted folder.
Every plugin folder it touches is backed up next to it. - GUI: update-all queue, per-plugin update, a plugin card with a manual
version/source override editor, an update history, light/dark/system theme,
English and Russian interface, remembered window size. About shows the running
version and the data folder in use. - CLI, for scripting and for a quick look:
--refresh-cache,--ini <path>,
--updateand--update-all(y / all / n per plugin),--version. - Data folder is chosen at every start: portable (
totalplugnext to the exe,
so the setup travels on a USB stick) or per-user (%APPDATA%\totalplug) when
the executable sits somewhere read-only.TOTALPLUG_DATA_DIRpins it.
Not in this release
- Installing a plugin from the catalog. TotalPlug updates plugins you already
have; it does not add new ones from the catalog yet. - Self-update. The app never replaces its own files — About checks for a newer
release and opens the release page. - Code signing. The binaries are unsigned, so SmartScreen shows "Windows
protected your PC" on the first run: More info → Run anyway.
Check the download
totalplug-v1.0.0-win-x64.zip.sha256 is in the format sha256sum -c reads:
sha256sum -c totalplug-v1.0.0-win-x64.zip.sha256
Please close Total Commander before applying updates. Its process holds the
plugin files, so the first locked file stops the queue and the rest is skipped.
🇷🇺 Русский
Первый публичный релиз: TotalPlug сканирует установку Total Commander, определяет
реальную версию каждого найденного плагина, сравнивает её с открытым сообществом
каталогом и обновляет те, что отстали. Windows x64, Go, Wails v2, MIT.
В архиве
totalplug-v1.0.0-win-x64.zip — обе программы в корне архива плюс лицензия:
totalplug.exe— настольный GUI. Установщика нет: запускайте из любой папки.totalplug-cli.exe— консольный сканер и обновление.
Распаковывайте архив целиком, а не запускайте exe из него: Windows помнит метку
загрузки zip и повторяет предупреждение для каждого вложенного файла. GUI рисуется
через WebView2 — он есть в Windows 11 и в актуальных обновлениях Windows 10.
Для проверки сам Total Commander может быть закрыт.
Что умеет
- Находит
wincmd.iniи путь к установке через реестр (HKCU/HKLM, 32- и 64-бит)
либо%APPDATA%, раскрывая%COMMANDER_PATH%; установку, о которой реестр не
знает, можно указать вручную. - Собирает плагины Packer (WCX), Lister (WLX), File System (WFX) и Content (WDX),
сливая дубли расширений архивов в один логический плагин. - Определяет версии в четыре прохода — ресурсы PE, сопутствующие DLL, затем
pluginst.inf/readme.txt/history.txt, и в конце явная метка
достоверности в каждой строке, чтобы[Unknown]не выглядел как факт. - Сверяет обновления с открытым
totalplug-catalog. Кэш
перепроверяется по ETag: неизменившийся каталог стоит один 304, а когда сети
нет — отвечает именно он. - Обновляет по формату пакета, определённого по магическим байтам: ZIP, RAR, 7z.
Неподдерживаемый контейнер отклоняется с внятным сообщением, а не превращается в
распадованную наполовину папку. Каждая затрагиваемая папка плагина копируется
рядом. - GUI: очередь «Обновить все», обновление отдельного плагина, карточка плагина с
ручным переопределением версии и источника, история обновлений, темы
светлая/тёмная/системная, русский интерфейс, запоминаемый размер окна. В About
— текущая версия и путь к папке данных. - CLI:
--refresh-cache,--ini <path>,--updateи--update-all(y / all / n
на каждый плагин),--version. - Папка данных выбирается при каждом запуске: portable (папка
totalplugрядом с
exe — набор переезжает на флешку целиком) или пользовательская
(%APPDATA%\totalplug), если exe лежит где-то только для чтения. Переменная
TOTALPLUG_DATA_DIRзадаёт её явно.
Чего в этом релизе нет
- Установка плагинов из каталога. TotalPlug обновляет уже имеющиеся плагины и пока
не добавляет новые из каталога. - Самообновления. Приложение не заменяет собственные файлы: About проверяет
наличие новой версии и открывает страницу релиза. - Подписи кода. Бинарники не подписаны, поэтому при первом запуске SmartScreen
покажет «Windows защитил ваш компьютер»: Дополнительно → Выполнить всё равно.
Проверка загрузки
totalplug-v1.0.0-win-x64.zip.sha256 в формате, который читает sha256sum -c:
sha256sum -c totalplug-v1.0.0-win-x64.zip.sha256
Перед применением обновлений закройте Total Commander. Его процесс держит
файлы плагинов, поэтому первый заблокированный файл останавливает очередь, а
остальное пропускается.