Commit Graph

3 Commits

Author SHA1 Message Date
Your Name 956797f75b feat(ci): add GitLab CE + Jenkins LTS one-click generators
Add 'ci' category with two service generators (gitlab, jenkins),
following project conventions (quoted heredocs, PKG_INSTALL, bash_header,
warnings + post_steps). Jenkins WAR URLs pinned in a class dict to
avoid 404s. app.py + generators/__init__.py updated to register.
2026-08-07 15:57:56 +08:00
Your Name bee37565e1 fix(bash_header): PKG_INSTALL string → function + export DEBIAN_FRONTEND
The previous definition assigned a multi-word string to PKG_INSTALL:
  PKG_INSTALL="DEBIAN_FRONTEND=noninteractive apt-get install -y"
Downstream generators expand it as '$PKG_INSTALL pkg…', which bash
parses as 'DEBIAN_FRONTEND=noninteractive apt-get install -y pkg…'
— the leading assignment is treated as a command name, producing
'DEBIAN_FRONTEND=noninteractive: command not found' (e.g. docker.sh
line 40). The DEBIAN_FRONTEND variable was also never set, so apt
could fall into interactive mode for tzdata / debconf prompts.

Fix: turn PKG_INSTALL into a shell function and export
DEBIAN_FRONTEND separately. All ~50 call sites keep the existing
$PKG_INSTALL pkg… syntax unchanged.

Verified: bash -n OK; mock Ubuntu 22.04 run exits 0 with no
'command not found'; mock apt-get receives the correct args.
All 44 generators still render successfully.
2026-08-07 13:14:34 +08:00
cnbug 319f683a16 Initial commit: 50 shell-script generators with web UI
- 8 categories / 50 generators covering middleware, databases, runtimes,
  systemd services, system tools, network, monitoring, security
- VNC supports XFCE / GNOME / KDE Plasma / MATE / LXQt desktops
- Node.js versions 18-26 (incl. current LTS 24 Krypton and current 26)
- Live preview, copy / download / multi-script bundle in web UI
- Distro-aware (Ubuntu/Debian/CentOS/RHEL/Rocky/Alma/Fedora)
- All 50 generators pass bash -n syntax check
- Zero pip dependencies (Flask stdlib only)
2026-08-04 00:36:35 +08:00