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:
+14
-14
@@ -7,8 +7,8 @@ install_desktop_entry() {
|
||||
print_info "Installing desktop entry..."
|
||||
|
||||
# Check if desktop entry file exists
|
||||
if [ ! -f "vocalinux.desktop" ]; then
|
||||
print_error "Desktop entry file not found: vocalinux.desktop"
|
||||
if [ ! -f "voculinux.desktop" ]; then
|
||||
print_error "Desktop entry file not found: voculinux.desktop"
|
||||
return 1
|
||||
fi
|
||||
|
||||
@@ -19,27 +19,27 @@ install_desktop_entry() {
|
||||
}
|
||||
|
||||
# Copy desktop entry
|
||||
cp vocalinux.desktop "$DESKTOP_DIR/" || {
|
||||
cp voculinux.desktop "$DESKTOP_DIR/" || {
|
||||
print_error "Failed to copy desktop entry to $DESKTOP_DIR"
|
||||
return 1
|
||||
}
|
||||
|
||||
# Update the desktop entry to use the wrapper script with GI_TYPELIB_PATH
|
||||
WRAPPER_SCRIPT="$HOME/.local/bin/vocalinux-gui"
|
||||
WRAPPER_SCRIPT="$HOME/.local/bin/voculinux-gui"
|
||||
if [ ! -f "$WRAPPER_SCRIPT" ]; then
|
||||
print_warning "Wrapper script not found at $WRAPPER_SCRIPT"
|
||||
print_warning "Desktop entry may not work correctly"
|
||||
else
|
||||
# Update Exec line to include GI_TYPELIB_PATH for PyGObject
|
||||
# Use the detected path for cross-distro compatibility
|
||||
sed -i "s|^Exec=vocalinux|Exec=env GI_TYPELIB_PATH=$GI_TYPELIB_DETECTED $WRAPPER_SCRIPT|" "$DESKTOP_DIR/vocalinux.desktop" || {
|
||||
sed -i "s|^Exec=voculinux|Exec=env GI_TYPELIB_PATH=$GI_TYPELIB_DETECTED $WRAPPER_SCRIPT|" "$DESKTOP_DIR/voculinux.desktop" || {
|
||||
print_warning "Failed to update desktop entry path"
|
||||
}
|
||||
print_info "Updated desktop entry to use wrapper script with GI_TYPELIB_PATH"
|
||||
fi
|
||||
|
||||
# Make desktop entry executable
|
||||
chmod +x "$DESKTOP_DIR/vocalinux.desktop" || {
|
||||
chmod +x "$DESKTOP_DIR/voculinux.desktop" || {
|
||||
print_warning "Failed to make desktop entry executable"
|
||||
}
|
||||
|
||||
@@ -64,10 +64,10 @@ install_icons() {
|
||||
|
||||
# List of icons to install
|
||||
local ICONS=(
|
||||
"vocalinux.svg"
|
||||
"vocalinux-microphone.svg"
|
||||
"vocalinux-microphone-off.svg"
|
||||
"vocalinux-microphone-process.svg"
|
||||
"voculinux.svg"
|
||||
"voculinux-microphone.svg"
|
||||
"voculinux-microphone-off.svg"
|
||||
"voculinux-microphone-process.svg"
|
||||
)
|
||||
|
||||
# Install each icon
|
||||
@@ -85,10 +85,10 @@ install_icons() {
|
||||
done
|
||||
|
||||
if [ "$INSTALLED_COUNT" -eq "${#ICONS[@]}" ]; then
|
||||
print_success "Installed all custom Vocalinux icons"
|
||||
print_success "Installed all custom Voculinux icons"
|
||||
return 0
|
||||
elif [ "$INSTALLED_COUNT" -gt 0 ]; then
|
||||
print_warning "Installed $INSTALLED_COUNT/${#ICONS[@]} custom Vocalinux icons"
|
||||
print_warning "Installed $INSTALLED_COUNT/${#ICONS[@]} custom Voculinux icons"
|
||||
return 0
|
||||
else
|
||||
print_error "Failed to install any icons"
|
||||
@@ -125,8 +125,8 @@ update_icon_cache() {
|
||||
install_resources_to_venv() {
|
||||
print_info "Installing resources to virtual environment..."
|
||||
|
||||
# Target directory: $VENV_DIR/share/vocalinux/resources
|
||||
local VENV_RESOURCES_DIR="$VENV_DIR/share/vocalinux/resources"
|
||||
# Target directory: $VENV_DIR/share/voculinux/resources
|
||||
local VENV_RESOURCES_DIR="$VENV_DIR/share/voculinux/resources"
|
||||
|
||||
# Create directories
|
||||
mkdir -p "$VENV_RESOURCES_DIR/icons/scalable" || {
|
||||
|
||||
Reference in New Issue
Block a user