Files
LEDMatrix/docs/MIGRATION_GUIDE.md
T
ChuckandClaude Opus 5.5 bc553b69d6 chore(scripts): delete unreferenced helper scripts
None of these is referenced by an installer, systemd unit, CI workflow,
test, the web UI or src/:

- utils/cleanup_venv.sh removes venv_web_v2, which nothing creates
- utils/clear_python_cache.sh hardcodes ~/LEDMatrix and a .webassets-cache
  nothing uses
- install/migrate_config.sh only copies the template, which the installer
  and ConfigManager already do
- install/debug_install.sh, debug/debug_web_manual.py
- diagnose_web_ui.sh and verify_web_ui.sh overlap diagnose_web_interface.sh,
  which the docs point to
- fix_internet_connectivity.sh is iptables-only (stale on nftables)
- diagnose_plugin_permissions.sh, dev/validate_python.py
- download_nba_logos.py + README_NBA_LOGOS.md: logo_downloader fetches
  logos on demand
- setup_plugin_repos.py linked into the production plugin-repos/ dir; the
  dev workflow is scripts/dev/dev_plugin_setup.sh, and
  MULTI_ROOT_WORKSPACE_SETUP.md now uses it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-22 16:15:59 -04:00

3.2 KiB

Migration Guide

This guide helps you migrate from older versions of LEDMatrix to the latest version.

Breaking Changes

Script Path Reorganization

Scripts have been reorganized into subdirectories for better organization. If you have automation, cron jobs, or custom tooling that references old script paths, you must update them.

Installation Scripts

All installation scripts have been moved from the project root to scripts/install/:

Old Path New Path
install_service.sh scripts/install/install_service.sh
install_web_service.sh scripts/install/install_web_service.sh
install_wifi_monitor.sh scripts/install/install_wifi_monitor.sh
setup_cache.sh scripts/install/setup_cache.sh
configure_web_sudo.sh scripts/install/configure_web_sudo.sh

Permission Fix Scripts

All permission fix scripts have been moved to scripts/fix_perms/:

Old Path New Path
fix_assets_permissions.sh scripts/fix_perms/fix_assets_permissions.sh
fix_cache_permissions.sh scripts/fix_perms/fix_cache_permissions.sh
fix_plugin_permissions.sh scripts/fix_perms/fix_plugin_permissions.sh
fix_web_permissions.sh scripts/fix_perms/fix_web_permissions.sh

Action Required

  1. Update cron jobs: If you have any cron jobs that call these scripts, update the paths.
  2. Update automation scripts: Any custom scripts or automation that references the old paths must be updated.
  3. Update documentation: Update any internal documentation or runbooks that reference these scripts.

Example Updates

Before:

# Old cron job or script
0 2 * * * /path/to/LEDMatrix/fix_cache_permissions.sh
sudo ./install_service.sh

After:

# Updated paths
0 2 * * * /path/to/LEDMatrix/scripts/fix_perms/fix_cache_permissions.sh
sudo ./scripts/install/install_service.sh

Verification

After updating your scripts, verify they still work:

# Check the installation scripts are at their new paths
ls scripts/install/*.sh
./scripts/install/install_service.sh --help   # prints usage only
# Note: running install_service.sh for real (with sudo, no --help)
# reinstalls, enables and restarts ledmatrix.service, ledmatrix-web.service
# and the update-verify units.

# Test permission scripts
ls scripts/fix_perms/*.sh
sudo ./scripts/fix_perms/fix_cache_permissions.sh

Other Changes

Configuration File Location

No changes to configuration file locations. The configuration system remains backward compatible.

Plugin System

The plugin system has been enhanced but remains backward compatible with existing plugins.


Getting Help

If you encounter issues during migration:

  1. Check the project root README for current installation and usage instructions
  2. Review script README files:
  3. Check system logs: journalctl -u ledmatrix -f or journalctl -u ledmatrix-web -f
  4. Review the troubleshooting section in the main README