boban
814776d1ff
Fix: Tags nach shallow clone explizit fetchen für Version-Datei
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 13:20:19 +02:00
boban
01e7db589a
Fix: Installer + Wizard Step 5 robuster gegen IPv6/SSL-Fehler
...
- installer.sh: mailwolt-apply-domains mit 3-Phasen certbot (HTTP → LE → SSL),
IPv6-Check vor certbot, Zertifikat-Ablauf-Check (10 Tage), Version-Datei schreiben
- WizardDomains: noipv6-Status aus Helper-Output erkennen
- Wizard: retryDomains()-Methode für Wiederholung ohne neuen Wizard-Durchlauf
- Step 5 Blade: Hints pro Fehlerstatus, Retry-Button, "Trotzdem zum Login"
- UpdatePage: Version aus Datei, Fallback auf git describe (kein "dev" mehr)
- UpdatePage: refreshLowLevelState behandelt fehlende State-Datei als idle
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 13:16:42 +02:00
boban
3c8eaa16df
Fix: Installer bricht bei nicht-kritischen Fehlern nicht mehr ab
...
- || true für Services (postfix, dovecot, redis, nginx)
- || true für artisan config/route/view:cache
- npm run build: Warnung statt Abbruch, Hinweis zum manuellen Nachholen
- Monit ist bereits aktiviert (systemctl enable --now)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 23:01:06 +02:00
boban
e833ab72c6
Fix: WizardDomains übergibt SSL-Handling komplett an mailwolt-apply-domains
...
- Kein certbot --nginx mehr im Wizard (scheitert an catch-all server_name)
- mailwolt-apply-domains erstellt Vhosts zuerst, dann certbot --webroot
- sudoers-Eintrag für certbot im Installer
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 22:48:47 +02:00
boban
d5d5fd819c
Fix: mailwolt-apply-domains Helper + sudoers + Monit aktiviert
...
- mailwolt-apply-domains Script im Installer erstellt
- sudoers-Eintrag für www-data (certbot + apply-domains ohne Passwort)
- Wizard State-Dir Owner www-data
- Monit standardmäßig aktiviert (nicht mehr disabled)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 22:24:28 +02:00
boban
19618746ba
Fix: Installer komplett bereinigt für sauberen Erstdurchlauf
...
- acl-Paket ergänzt (setfacl)
- DB_NAME/DB_USER Doppel-Assignment entfernt
- VITE_REVERB_HOST nutzt jetzt tatsächliche SERVER_IP
- BROADCAST_CONNECTION=reverb gesetzt
- COMPOSER_ALLOW_SUPERUSER entfernt
- config:cache / route:cache / view:cache nach Migration
- /var/lib/mailwolt/wizard Verzeichnis angelegt
- git safe.directory gesetzt
- Footer zeigt /setup URL statt Login
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 22:08:42 +02:00
boban
94cddb7987
Fix: Pusher-Key-Fehler + wire:model remember + Reverb-Keys im Installer
...
- connection.js: Echo nur initialisieren wenn VITE_REVERB_APP_KEY gesetzt
- LoginForm: $remember Property ergänzt
- installer.sh: Reverb-Keys automatisch generieren und in .env schreiben
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:58:21 +02:00
boban
75d1f136a3
Fix: Installer-Cleanup (PHP-FPM-Socket dynamisch, Arg-Parsing oben, APP_PW früh, doppelter setfacl entfernt)
...
- PHPV-Erkennung vor nginx-Config verschoben, Socket-Pfad dynamisch
- Argument-Parsing (-dev/-stag) ganz an den Anfang
- APP_PW früh generieren damit es überall verfügbar ist
- Doppelten setfacl-Block entfernt
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:38:35 +02:00
boban
b9c2eb5eef
Refactor: Installer-Reihenfolge korrigiert (Git-Clone zuerst, dann .env/composer/migrate)
...
- composer create-project entfernt (wir klonen das eigene Repo)
- .env wird nach dem Clone auf dem echten Codebase gesetzt
- composer install, key:generate, migrate und storage:link nach Clone
- nodesource curl|bash durch Datei-Download ersetzt (stdin-safe)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:33:53 +02:00
boban
a07a0d1a98
Fix: APP_DIR vor git clone leeren wenn kein .git vorhanden
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:19:48 +02:00
boban
8e8dff39c9
Fix: git zu Paketliste hinzugefügt
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:16:49 +02:00
boban
d271c96828
Fix: trailing > auf Zeile 512 entfernt (BOOTSTRAP_ADMIN_EMAIL redirect)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:14:32 +02:00
boban
b8d121f251
Fix: unclosed quote in installer (BOOTSTRAP_EMAIL) verursachte Syntax Error
...
php-sqlite3 ergänzt um composer post-install migrate-Warning zu vermeiden.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:08:01 +02:00
boban
45e762be7f
Fix: \$uri escape in Nginx heredoc verhindert set -u Abbruch
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 21:00:23 +02:00
boban
2ae126cf20
Fix: Gitea-Repo URL im installer.sh eingetragen
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 01:32:10 +02:00
boban
7bb922191f
Feature: Update-System, Backup-Cron, SSL-Workflow, UI-Verbesserungen
...
- Update-Seite (/system/update) mit Log-Viewer, Fortschrittsbalken und goldenem Nav-Badge
- /usr/local/sbin/mailwolt-update Wrapper + backup:scheduled Cron-Command
- SSL: Checkbox entfernt, immer automatisch in Prod; local-Modus überspringt certbot mit manuellem Erzwingen-Modal
- Domain-Felder: live Validierung via updatedUiDomain/updatedMailDomain/updatedWebmailDomain
- DNS-Check in applyDomains() wiederhergestellt
- Backup-Cron: BackupScheduled Command + Laravel-Scheduler Eintrag in console.php
- /etc/cron.d/mailwolt-scheduler angelegt für schedule:run
- mailwolt-installer als regulärer Ordner (kein Submodule)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 01:23:43 +02:00