Commit Graph

492 Commits

Author SHA1 Message Date
Yury Kossakovsky
531d34a328 fix: run permission fix after every update
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.
2025-12-17 11:18:07 -07:00
Yury Kossakovsky
86d0783ec5 refactor(welcome): standardize service link presentation
- 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
2025-12-17 10:52:23 -07:00
Yury Kossakovsky
fbfa2563c2 fix: enable universe repository for fail2ban and python3-dotenv
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.
2025-12-17 10:35:06 -07:00
Yury Kossakovsky
bd52d9f72b docs: update cloudflare tunnel instructions with current ui paths
- 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
2025-12-17 10:24:06 -07:00
Yury Kossakovsky
ec46f4badc revert: replace --wait flag with sleep delays for service startup
supabase-realtime healthcheck lacks start_period, causing
docker compose --wait to fail before container becomes healthy
2025-12-16 16:58:41 -07:00
Yury Kossakovsky
ea30650109 feat(welcome): add urlSuffix support for service links 2025-12-16 16:38:07 -07:00
Yury Kossakovsky
7a429ede7a refactor: remove redundant log message from update script 2025-12-16 16:38:03 -07:00
Yury Kossakovsky
09c439fa6d style: update report header to include update scenario 2025-12-16 16:37:59 -07:00
Yury Kossakovsky
f3c178858c fix: increase docker compose wait timeout to 180s 2025-12-16 16:37:55 -07:00
Yury Kossakovsky
20106f21f8 feat: fix file ownership after sudo installation
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
2025-12-16 16:07:08 -07:00
Yury Kossakovsky
f9ea7783a0 docs: add community port for arch-based linux 2025-12-15 13:57:56 -07:00
Yury Kossakovsky
3134eee354 refactor: remove N8N_VERSION env variable, hardcode stable 2025-12-15 10:06:13 -07:00
Yury Kossakovsky
b4dbead6f3 chore: change default n8n version from beta to stable 2025-12-15 10:03:02 -07:00
Yury Kossakovsky
e4613e652c style(welcome): increase skeleton loaders count for services and quickstart 2025-12-14 15:48:07 -07:00
Yury Kossakovsky
1ac993a44c refactor: remove --remove-orphans flag from docker compose commands 2025-12-14 14:32:01 -07:00
Yury Kossakovsky
fd953c3e56 fix(supabase): include external compose files in start_local_ai()
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.
2025-12-14 14:19:50 -07:00
Yury Kossakovsky
78e2306a5a feat(supabase): add PG_META_CRYPTO_KEY secret generation 2025-12-14 13:25:04 -07:00
Yury Kossakovsky
e14288611e style(wizard): switch whiptail theme to solarized dark 2025-12-13 09:43:29 -07:00
Yury Kossakovsky
eb119e67bf fix(update): redirect backup logs to stderr
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.
2025-12-13 09:37:11 -07:00
Yury Kossakovsky
7711fdbf89 feat(update): preserve user directories during git reset
backup and restore user-customizable directories (like python-runner/)
during update to prevent data loss from git reset --hard

closes #22
2025-12-13 09:21:14 -07:00
Yury Kossakovsky
85d6730151 fix(open-webui): add healthcheck with longer start_period
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.
2025-12-12 18:56:23 -07:00
Yury Kossakovsky
f84a15e305 chore: make scripts executable 2025-12-12 18:39:02 -07:00
Yury Kossakovsky
bfc1e3671c refactor(welcome): simplify service cards and remove duplicates
- 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
2025-12-12 18:14:25 -07:00
Yury Kossakovsky
4c153bca58 refactor(welcome): reorganize service card layout
- 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
2025-12-12 18:00:46 -07:00
Yury Kossakovsky
f3c2754a85 style(wizard): unify whiptail theme to green-only supabase palette 2025-12-12 16:32:11 -07:00
Yury Kossakovsky
fb31ec292e feat: add n8n-compatible metadata to downloaded workflows 2025-12-12 16:14:02 -07:00
Yury Kossakovsky
d1137190ee feat: add script to download popular n8n workflow templates 2025-12-12 16:03:56 -07:00
Yury Kossakovsky
e87555a152 feat(welcome): make service titles clickable to open docs 2025-12-12 16:03:51 -07:00
Yury Kossakovsky
4f6677bddc refactor(welcome): improve service cards with brand colors and docs links
- 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
2025-12-12 15:44:09 -07:00
Yury Kossakovsky
0425c61d89 chore: update default compose profiles 2025-12-12 14:19:18 -07:00
Yury Kossakovsky
5fd292c506 chore(deps): remove unused system packages 2025-12-12 14:03:49 -07:00
Yury Kossakovsky
81b8eb3352 fix(n8n): add versionId to workflow json files for v2 compatibility 2025-12-12 13:55:55 -07:00
Yury Kossakovsky
04e70cee2d refactor(utils): improve whiptail dialogs and logging utilities
- 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
2025-12-12 13:43:20 -07:00
Yury Kossakovsky
7d922c4e67 refactor(welcome): simplify hover effects and remove unused code
remove glow effects in favor of simple border/background hover states,
delete unused showError function, error-toast element, and css variables
2025-12-12 12:59:32 -07:00
Yury Kossakovsky
1f3b4de3ef feat: improve welcome page with animations and alphabetical sorting 2025-12-12 11:50:16 -07:00
Yury Kossakovsky
c58b759135 refactor: unify logging and remove emoji in configure script 2025-12-12 10:20:56 -07:00
Yury Kossakovsky
0b0bcbdc80 style: add blank line before all log output 2025-12-12 10:14:27 -07:00
Yury Kossakovsky
b62eefa4da refactor: simplify wizard and improve docker compose startup
- 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
2025-12-12 10:10:59 -07:00
Yury Kossakovsky
7645c02562 fix: ensure_file_exists returns 0 when file exists 2025-12-12 10:02:54 -07:00
Yury Kossakovsky
e0018f2b2d refactor: consolidate shared utilities and add script documentation
- move common functions to utils.sh: init_paths, read_env_var, write_env_var,
  is_profile_active, load_env, gen_password, gen_hex, gen_base64, generate_bcrypt_hash
- add documentation headers to all installation scripts
- replace duplicate code with shared utility calls
- consolidate bcrypt hash generation loop in 03_generate_secrets.sh
- add DEBIAN_FRONTEND save/restore helpers for whiptail scripts
- standardize path initialization across all scripts
2025-12-12 09:58:12 -07:00
Yury Kossakovsky
e297ff27ef feat: improve welcome page ux and remove beta/stable switch commands
- 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
2025-12-12 08:47:34 -07:00
Yury Kossakovsky
323d0cb02c fix: improve welcome page ux and add dynamic quick start
- 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"
2025-12-11 17:46:01 -07:00
Yury Kossakovsky
97b9cb1d05 feat: redesign welcome page with supabase-inspired theme
- 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
2025-12-11 17:28:59 -07:00
Yury Kossakovsky
366865ad4c feat: add welcome page dashboard for post-install credentials
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
2025-12-11 17:09:42 -07:00
Yury Kossakovsky
ab4ab149ad feat: add system improvements - doctor diagnostics, update preview, and wizard service groups
- 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
2025-12-11 16:44:39 -07:00
Yury Kossakovsky
ccfad96202 chore: remove unused files and tooling configurations
remove speckit cursor commands, specify templates/scripts,
flowise example json files, and n8n_pipe.py integration example
2025-12-11 15:20:04 -07:00
Yury Kossakovsky
f74e3af697 chore: use beta tag instead of fixed version for develop branch 2025-12-11 14:17:08 -07:00
Yury Kossakovsky
5a786f9a15 chore: bump n8n version to 2.0.1 2025-12-11 14:15:58 -07:00
Yury Kossakovsky
5d03eb1715 docs: document ffmpeg availability in n8n docker image 2025-12-11 13:58:04 -07:00
Yury Kossakovsky
9c3bb203d0 feat: add generic_timezone env variable for n8n services 2025-12-11 11:39:01 -07:00