Some hosting providers (CLOUD.RU, etc.) reset file permissions during
updates, leaving .env and generated files owned by root. This prevents
normal users from reading configuration.
Now 08_fix_permissions.sh runs after each update to restore proper
ownership and permissions.
- remove urlSuffix feature, external links now always point to root hostname
- add service name prefix to extra links (e.g., "Qdrant Dashboard" instead of "Dashboard")
- keeps internal/external/dashboard links clearly separated
on minimal ubuntu installations (especially cloud vps), the universe
repository may be disabled by default, causing apt to fail installing
packages like fail2ban and python3-dotenv which are only available in
universe. this adds software-properties-common and enables universe
before installing packages.
- update navigation paths to match nov 2025 cloudflare dashboard changes
- add 9 missing services (lightrag, docling, libretranslate, etc.)
- fix authentication status labels (prometheus, comfyui have caddy auth)
- correct ip list naming to lowercase per cloudflare requirements
- condense waf rules section for better readability
- mark dify/supabase as external services
add step 8 to installation that restores file ownership to the invoking
user when running with sudo. also adds cleanup for legacy n8n worker
containers during updates.
- add 08_fix_permissions.sh script to detect real user and fix ownership
- add get_real_user() utility with multiple fallback detection methods
- add cleanup_legacy_n8n_workers() to remove old container naming format
- set restrictive permissions (600) on .env file for security
The --remove-orphans flag was killing Supabase and Dify containers
because their compose files were not included when starting local AI
services. Now we include them conditionally if they are enabled.
log_info/log_error were writing to stdout, which corrupted the
backup path returned by backup_preserved_dirs() via command
substitution. this caused restore to fail silently.
Open-WebUI can take a long time to initialize on first run, causing
the docker compose --wait to fail. Added explicit healthcheck with
120s start_period to allow proper initialization time.
- remove min-height from card headers for natural sizing
- remove duplicate postgres credentials from postgresus card
- consolidate python-runner info into single multiline note
- add spacing between credential rows and support for line breaks
- move extra info from header to bottom section with credentials
- display links (docs, dashboard, admin, ui) as compact "Link" buttons
- move password toggle button to left of masked value
- add python runner mount/entry info to data generation
- remove redundant postgresus note
- reduce vertical spacing in bottom section
- add official brand colors for all services
- add documentation urls with clickable icons
- fix responsive layout on mobile devices
- deduplicate quick start steps for postgresus
- show internal urls in card header to avoid duplication
- add adaptive terminal sizing for all whiptail dialogs (wt_get_size)
- add new wrapper functions: wt_checklist, wt_radiolist, wt_menu
- add safe parser wt_parse_choices to replace eval
- improve NEWT_COLORS theme with better contrast (brightgreen/brightcyan)
- add new logging functions: log_header, log_subheader, log_divider, log_box
- add spinner animation utilities for progress indication
- expand color palette with bright variants and text styles
- update 04_wizard.sh to use new whiptail wrappers
- remove quick start mode from wizard, always show service selection
- add --wait flag to docker compose up for proper sequencing
- remove hardcoded time.sleep delays in favor of --wait
- clean up unused imports
- add click-to-toggle password visibility (replaces hold-to-reveal)
- add copy button for username fields
- add "keeping up to date" section with update commands
- remove switch-beta/switch-stable from commands list and docs
- fix password reveal button not working (add preventDefault)
- update n8n and flowise to show "create account on first login"
- change redis internal info to combined host:port format
- add dynamic quick_start array based on active profiles
- rename "make commands" section to "useful commands"
- fix json generation bug in generate_welcome_page.sh (missing commas)
- add supabase-style dark theme with green accents (#3ECF8E)
- add make commands section to welcome page
- move make commands from final report to welcome page
- make next steps conditional based on active profiles
- update poweredby to yury kossakovsky
- format generated json with proper indentation for readability
replace terminal-based final report with web-based welcome page that
displays service credentials, hostnames, and quick start guide.
- add welcome/index.html with tailwind css and dark mode support
- add welcome/app.js with service metadata and password toggle/copy
- add scripts/generate_welcome_page.sh to generate data.json from env
- simplify 07_final_report.sh to show welcome page url and make commands
- add welcome page basic auth credentials to caddy and secret generation
- update add-new-service documentation with new welcome page steps
- add make doctor command for system diagnostics (dns, ssl, containers, disk, memory)
- add make update-preview for dry-run update checks without applying changes
- add service groups to wizard with quick start pack (n8n + monitoring + postgresus + portainer)
- add make switch-beta and switch-stable commands for branch switching
- update readme with organized commands table