Skip to content

Releases: altzone/phpBorg

v1.0.36 - Fresh Install Ready

01 Dec 12:31

Choose a tag to compare

🎉 Release v1.0.36

Cette release corrige de nombreux bugs et améliore significativement l'installeur et le setup wizard.

✨ Nouvelles fonctionnalités

  • Setup Wizard SMTP - Sélecteur de provider email (Gmail, Microsoft 365, Outlook) avec auto-configuration
  • Instant Recovery - Détection améliorée MySQL/MariaDB pour choisir le bon moteur Docker
  • Maintenance - Action "Rebuild Docker Adminer" dans les settings
  • i18n - Messages de mise à jour traduits (FR, EN, DE)
  • Sudoers - Refactoring vers templates pour une meilleure maintenabilité

🐛 Corrections

  • Installeur Debian 13 - Corrige le build Go agent (-buildvcs=false), l'ordre de création des utilisateurs, et les prompts SSL avec curl | bash
  • SSL/TLS - setup-ssl.sh utilise maintenant les mêmes templates nginx que le SslService PHP
  • Adminer Auth - Utilise HTTPS pour éviter la perte du body POST lors de la redirection 301
  • SMTP Test - Ne décrypte plus le mot de passe pour les configs inline du wizard
  • Logrotate - Crée les logs avec le bon groupe (www-data)

🔧 Améliorations techniques

  • Auto-rebuild des images Docker pendant les mises à jour phpBorg
  • Meilleure gestion des permissions pour les opérations Borg locales
  • Templates sudoers séparés et modulaires

🤖 Generated with Claude Code

v1.0.35 - Self-Backup & Auto-Update System

25 Nov 17:13

Choose a tag to compare

✨ Nouvelles fonctionnalités

Système de sauvegarde interne phpBorg

  • Sauvegarde complète de phpBorg (code, base de données, clés SSH, configuration)
  • Interface de gestion des sauvegardes avec téléchargement et restauration
  • Script de restauration d'urgence en CLI (bin/emergency-restore.php)
  • Nettoyage automatique des anciennes sauvegardes

Système de mise à jour automatique

  • Vérification des mises à jour depuis le dépôt Git
  • Affichage du badge de notification sur l'onglet "Mise à jour"
  • Changelog des commits entre les versions
  • Sauvegarde automatique avant mise à jour
  • Rollback automatique en cas d'échec
  • Redémarrage des services via systemd path unit

Assistant d'ajout de serveur

  • Wizard complet pour ajouter des serveurs
  • Test de connexion en temps réel via SSE
  • Support de l'installation par mot de passe ou clé SSH
  • Détection automatique des capacités du serveur

Assistant de configuration initiale

  • Setup Wizard pour la première configuration
  • Configuration des politiques de rétention avec sliders
  • Test d'envoi d'email SMTP intégré

🐛 Corrections de bugs

Base de données et workers

  • Reconnexion automatique MySQL pour les workers longue durée
  • Correction du deadlock des workers pendant les sauvegardes
  • Fallback automatique --skip-routines si mysql.proc est corrompu

Services systemd

  • Correction des permissions filesystem dans les installations fraîches
  • Support de PrivateTmp=true pour l'isolation des services
  • Path unit systemd pour le redémarrage automatique après mise à jour
  • Correction des chemins de clés SSH (/var/lib/phpborg/.ssh)

Interface utilisateur

  • Correction du compteur de reconnexion SSE
  • Traductions i18n manquantes pour les types de backup
  • Support complet du mode clair pour tous les composants
  • Styles des modales et boutons

Sécurité

  • Mise à jour de Vite vers v6.4.1 (vulnérabilité esbuild)
  • Ajout de ProtectSystem=strict dans les services systemd

🔧 Améliorations

Installation

  • Bootstrap robuste pour installation via curl | bash
  • Affichage de la progression en temps réel
  • Détection intelligente de MariaDB/MySQL existant
  • Installation rapide de Composer via .phar direct
  • Ajout de sshpass aux dépendances
  • Construction de l'image Docker Adminer

Traductions

  • Traduction complète en allemand (Deutsch)
  • Corrections des clés i18n (snake_case → camelCase)

Architecture

  • Réorganisation de la structure du projet (layout PRO)
  • Suppression du code legacy et des doublons
  • Nettoyage du .gitignore

v1.0.34 - Setup Wizard & Codebase Cleanup

21 Nov 11:45

Choose a tag to compare

What's New

Features

  • Setup Wizard: First-run configuration wizard with:
    • Application name, timezone, language settings
    • Network IP auto-detection (internal/external)
    • Email/SMTP configuration (optional)
    • Retention policy with interactive sliders (daily/weekly/monthly/yearly)
    • Fullscreen onboarding experience
    • Bilingual support (FR/EN)

Security

Code Quality

  • Removed 4000+ lines of orphan/legacy code
    • Legacy v1.x files (phpborg.php.legacy, lib.legacy/, etc.)
    • Unused Vue components
    • Duplicate documentation
  • Reorganized project structure (PRO layout)
    • Technical docs moved to docs/architecture/
    • Nginx configs moved to config/nginx/
    • Clean root with only essential files
  • Updated .gitignore with comprehensive rules

Breaking Changes

  • None

🤖 Generated with Claude Code

v1.0.33 - Universal Installer (Production Ready)

20 Nov 17:51

Choose a tag to compare

phpBorg v1.0.33 - Universal Installer (Production Ready)

🎉 First Production-Ready Release

This is the first fully functional production release of the phpBorg universal installer for Ubuntu 22.04/24.04.

✨ What's New

Critical Fixes (v1.0.32 - v1.0.33)

  • Fix PHP-FPM pool working directory - Added chdir directive to ensure proper autoload resolution
  • Fix Nginx API routing - Corrected paths from public/ to api/public/
  • Fix PHP-FPM socket usage - Use custom phpborg-8.3-fpm.sock instead of system default

Major Features

  • Universal installer - Auto-detects existing services (Apache/Nginx, MySQL/MariaDB)
  • Idempotent installation - Safe to run multiple times without breaking existing setup
  • PHP 8.3 isolation - Explicit php8.3 binary usage to avoid system conflicts
  • Worker pool architecture - Scheduler + 4 parallel workers via systemd
  • Custom PHP-FPM pool - Isolated phpborg pool with proper permissions
  • Frontend + API deployment - Vue.js SPA + PHP API on single domain
  • Automatic service management - Systemd services for scheduler, workers, and SSE
  • SSH key generation - ED25519 keys for remote server backups
  • BorgBackup integration - Automated installation and configuration
  • Storage pool setup - Automatic /opt/backups creation and configuration

📦 Installation

# Clone repository
git clone https://github.com/altzone/phpBorg.git
cd phpBorg

# Run installer (interactive)
sudo bash install/install.sh

# Or automated install
sudo bash install/install.sh --auto \
  --domain=phpborg.example.com \
  --db-password=secure_password \
  --borg-passphrase=secure_passphrase

🔧 System Requirements

  • Ubuntu 22.04 or 24.04 LTS
  • Root or sudo access
  • Internet connection for package installation

📋 What Gets Installed

  • PHP 8.3 + Extensions (FPM, CLI, MySQL, Redis, etc.)
  • Nginx or Apache (uses existing if available)
  • MariaDB Server
  • Redis Server
  • Node.js 20 (via NVM)
  • BorgBackup 1.2+
  • Composer 2.x

🚀 Post-Installation

After installation completes:

  1. Access web interface: http://your-domain/
  2. Check services status:
    sudo systemctl status phpborg-scheduler
    sudo systemctl status phpborg-worker@{1..4}
  3. View logs:
    sudo journalctl -u phpborg-scheduler -f
    tail -f /var/log/phpborg/phpborg.log

🐛 Bug Fixes (v1.0.1 - v1.0.33)

Complete changelog of all fixes
  • v1.0.33: Add chdir to PHP-FPM pool config (critical for autoload)
  • v1.0.32: Use phpborg-8.3-fpm.sock instead of php8.3-fpm.sock in Nginx
  • v1.0.31: Fix Nginx root path for frontend (dist/) and API routing
  • v1.0.30: Add ReadWritePaths for /var/log/phpborg in systemd services
  • v1.0.29: Create log file with proper permissions
  • v1.0.28: Fix MySQL user password on idempotent reinstall (ALTER USER)
  • v1.0.27: Fix LOG_PATH vs LOG_FILE variable name
  • v1.0.26: Add missing BORG_* variables to .env template
  • v1.0.25: Add EnvironmentFile to systemd services
  • v1.0.24: Change bin/console to bin/phpborg in systemd services
  • v1.0.23: Use versioned PHP-FPM socket (phpborg-8.3-fpm.sock)
  • v1.0.22: Fix composer, NVM, and git permissions
  • v1.0.21: Use explicit php8.3 binary throughout installer
  • v1.0.20: Fix frontend build with npx vite build
  • v1.0.19: Fix detect_webserver to prioritize running service
  • ...and many more bootstrap fixes

🙏 Credits

Developed with assistance from Claude (Anthropic) using the Claude Code CLI.

📝 License

See LICENSE file for details.


Full Changelog: v1.0.0...v1.0.33

phpBorg v1.0.0 - First Stable Release

20 Nov 09:47

Choose a tag to compare