feat(identity): rename user-visible identity to voculinux with one-time legacy import
The fork takes its own name everywhere a user can see it: binaries (voculinux, voculinux-gui), desktop entry, autostart, tray, D-Bus namespace (com.voculinux.Voculinux, no alias for the old name), config/data/cache dirs, single-instance lock, IBus engine identity, tray icons, resource prefixes, VOCULINUX_* environment names, and the update-checker user agent. The internal Python module stays vocalinux and the distribution metadata keeps the upstream URLs as provenance. On first run a previous Vocalinux install's config.json, custom dictionary, and portal restore token are copied once into the new locations (new config always wins, no merge, no write-back); models re-resolve through the pinned-checksum download path. An offline naming-sweep test proves no old-name strings remain on user-visible surfaces outside the allowlist. Refs #18
This commit is contained in:
@@ -52,17 +52,17 @@ echo "== installed: $PKG"
|
||||
# before check_dependencies() touches GTK, so it proves the wrapper, the
|
||||
# PYTHONPATH layout and the entry module's import chain — the dependency
|
||||
# typelibs are exercised by the import smoke below.
|
||||
vocalinux --version
|
||||
vocalinux-gui --version
|
||||
voculinux --version
|
||||
voculinux-gui --version
|
||||
|
||||
# Import smoke in the shape of the AUR gate: the app modules, the vendored
|
||||
# pywhispercpp wheel, and the distro gi/GTK typelibs, all through the same
|
||||
# interpreter and environment the launcher sets up. pynput is only checked
|
||||
# for presence: its __init__ selects a display backend and raises ImportError
|
||||
# with no DISPLAY, which is why the app guards it with PYNPUT_AVAILABLE.
|
||||
PYTHONPATH="/usr/lib/vocalinux/app:/usr/lib/vocalinux/vendor" \
|
||||
PYTHONPATH="/usr/lib/voculinux/app:/usr/lib/voculinux/vendor" \
|
||||
PYTHONNOUSERSITE=1 \
|
||||
LD_LIBRARY_PATH="/usr/lib/vocalinux/vendor/pywhispercpp.libs" \
|
||||
LD_LIBRARY_PATH="/usr/lib/voculinux/vendor/pywhispercpp.libs" \
|
||||
/usr/bin/python3 - <<'PY'
|
||||
import importlib
|
||||
import importlib.util
|
||||
@@ -83,11 +83,11 @@ for module in MODULES:
|
||||
importlib.import_module(module)
|
||||
|
||||
spec = importlib.util.find_spec("pynput")
|
||||
assert spec and spec.origin and spec.origin.startswith("/usr/lib/vocalinux/vendor/"), \
|
||||
assert spec and spec.origin and spec.origin.startswith("/usr/lib/voculinux/vendor/"), \
|
||||
f"vendored pynput not found on sys.path: {spec}"
|
||||
|
||||
tag = f"cpython-{sys.version_info.major}{sys.version_info.minor}-"
|
||||
exts = [p.name for p in Path("/usr/lib/vocalinux/vendor").glob("_pywhispercpp.*.so")]
|
||||
exts = [p.name for p in Path("/usr/lib/voculinux/vendor").glob("_pywhispercpp.*.so")]
|
||||
assert any(tag in name for name in exts), \
|
||||
f"no _pywhispercpp extension for {tag[:-1]} among {exts}"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user