Upgrade and reinstall
Update HWD POS to a new version, safely re-run the installer, or start over from scratch.
Updating HWD POS
Updates are done from inside the system, not with the installer.
Sign in to HWD POS with an account that has administrative permissions.
Make a database backup from System → Database backups (Sistema → Respaldos de base de datos) and download it to another machine.
Go to System → Updates (Sistema → Actualizaciones). It checks whether a new version is available and downloads it; you can also upload an update package provided by your vendor.
Wait while HWD POS validates the package, makes a backup of the database and files, and applies the update.
Check that the system works correctly afterwards.
What an update changes
An update only touches the system code (app, config, resources, public, database, scripts). It does not touch plugins/ or their data, the configuration, or uploaded files. Plugins are updated from their own screen by uploading their .zip.
After an update that changes the background services, restart them once: sudo hwdpanel → option 17 (restart everything). See hwdpanel.
Do not use bootstrap.sh with HWPOS_ZIP to update. On an installed system it refuses on purpose. Use System → Updates.
Running the installer again
It is safe. Running the installer again does not delete data: it puts permissions, web server configuration, services and firewall rules back in place. It is the quickest way to fix a server someone has changed, and it is also how you change the site port (WEB_PORT=).
curl -fsSL https://3r.com.pa/hwdpos_inst/bootstrap.sh | sudo bashor, using the local copy:
sudo bash /var/www/HWDPOS/deploy/install-ubuntu.sh # Ubuntu / Debian
sudo bash /var/www/HWDPOS/deploy/install-almalinux.sh # AlmaLinux / Rocky / RHELIt does not change a database password that already works. It reuses the one in the system configuration (storage/config.php) or, if that does not exist yet, the one in the credentials file, and applies it to the database user. That way DB-CREDENTIALS.txt and the database always match. Only if it finds none does it generate a new one, and it applies that one too. To set one by hand, use DB_PASS=YOUR_NEW_PASSWORD.
Replacing the installation with a new package
To replace an installed system with a package (instead of updating it), add HWPOS_REPLACE=1:
curl -fsSL https://3r.com.pa/hwdpos_inst/bootstrap.sh | sudo HWPOS_ZIP=/root/HWDPOS-v1.5.0.zip HWPOS_REPLACE=1 bashThe previous folder is kept as HWDPOS.anterior-DATE; it is not deleted.
Reinstalling from scratch
This deletes all store data
Only do this on a test server or if you really want to start over. Make a backup first.
Remove the installation marker (and, if you also want to re-enter the database connection, the configuration file):
sudo rm -f /var/www/HWDPOS/storage/installed.lock
sudo rm -f /var/www/HWDPOS/storage/config.phpDrop the database:
sudo mysql -e "DROP DATABASE hwd_pos;"Open http://SERVER-IP/install again and complete the setup wizard.