mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-03-10 16:00:18 +00:00
Updated the Meson post-install script to import shutil and add a helper that checks tool availability before invoking post-install commands. This prevents hard failures when optional desktop tooling is not installed (e.g., on macOS/Homebrew CI). Replaced direct subprocess.call(...) calls for gtk-update-icon-cache and update-desktop-database with guarded calls that emit a clear “Skipping …: command not found” message when absent, while preserving existing behavior when present.
27 lines
795 B
Python
27 lines
795 B
Python
#!/usr/bin/env python3
|
|
|
|
import os
|
|
import sys
|
|
import subprocess
|
|
import shutil
|
|
|
|
prefix = os.environ.get('MESON_INSTALL_PREFIX', '/usr/local')
|
|
datadir = os.path.join(prefix, 'share')
|
|
|
|
# Packaging tools define DESTDIR and this isn't needed for them
|
|
if 'DESTDIR' not in os.environ:
|
|
def run_if_available(command, *args):
|
|
if shutil.which(command) is None:
|
|
print(f'Skipping {command}: command not found')
|
|
return
|
|
|
|
subprocess.call([command, *args])
|
|
|
|
print('Updating icon cache...')
|
|
run_if_available('gtk-update-icon-cache', '-qtf',
|
|
os.path.join(datadir, 'icons', 'hicolor'))
|
|
|
|
print('Updating desktop database...')
|
|
run_if_available('update-desktop-database', '-q',
|
|
os.path.join(datadir, 'applications'))
|