Files
LEDMatrix/docs/MIGRATION_GUIDE.md
T
ChuckandClaude Opus 5 9378901054 docs(install): what install_service.sh installs; verify script port; no sudo for --help
install_service.sh installs and starts ledmatrix, ledmatrix-web and the
update-verify units, not only ledmatrix.service (systemd/README.md,
README.md). MIGRATION_GUIDE presented 'sudo install_service.sh --help'
as a harmless check; it now shows --help without sudo and warns what a
real run does. SSH_UNAVAILABLE_AFTER_INSTALL: verify_installation.sh
checks the web interface on port 5000.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 08:58:37 -04:00

3.3 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
migrate_config.sh scripts/install/migrate_config.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