ndev-stack 0.3.2__tar.gz → 0.3.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/PKG-INFO +1 -1
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/__init__.py +1 -1
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/setup.py +56 -22
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev_stack.egg-info/PKG-INFO +1 -1
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/pyproject.toml +1 -1
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/README.md +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/__main__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/cli.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/__init__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/config.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/constants.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/github.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/logger.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/manifest.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/__init__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/base.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/mailpit/manifest.json +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/mailpit/module.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/mongodb/manifest.json +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/mongodb/module.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/postgres/manifest.json +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/postgres/module.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/redis/manifest.json +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/builtin/redis/module.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/modules/manager.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/common/utils.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/__init__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/chroot/manager.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/chroot/packages.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/chroot/shell.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/cli.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/available.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/clean.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/ctl.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/current.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/db.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/doctor.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/grok.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/install.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/list.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/logs.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/mailpit.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/modules.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/mongodb.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/postgres.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/reload.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/restart.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/setup.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/start.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/status.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/stop.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/uninstall.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/update.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/upgrade.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/use.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/commands/vhost.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/php/builder.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/php/downloader.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/php/extensions.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/php/installer.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/php/resolver.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/php/templates.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/runtime/fpm.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/runtime/mailpit.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/runtime/pma.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/runtime/process.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/runtime/sockets.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/runtime/upgrade.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/linux/tui.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/main.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/tui.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/__init__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/bin/shim.exe +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/cli.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/commands/__init__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/__init__.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/db.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/elevate.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/ext.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/fcgi.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/grok.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/logs.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/mailpit.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/mkcert.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/paths.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/php.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/pma.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/redis_core.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/services.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/shim.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/upgrade.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/core/vhost.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/templates/vhost.conf.tmpl +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/templates/vhost_ssl.conf.tmpl +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev/win/tui.py +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev_stack.egg-info/SOURCES.txt +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev_stack.egg-info/dependency_links.txt +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev_stack.egg-info/entry_points.txt +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev_stack.egg-info/requires.txt +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/ndev_stack.egg-info/top_level.txt +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/setup.cfg +0 -0
- {ndev_stack-0.3.2 → ndev_stack-0.3.3}/tests/test_shim.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ndev-stack
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.3
|
|
4
4
|
Summary: Cross-platform developer stack manager for PHP, FastCGI/PHP-FPM, MariaDB, Redis, PostgreSQL, MongoDB, Nginx, SSL, and Mailpit on Linux and Windows
|
|
5
5
|
Author-email: Ankit Karan <ankit.karan99@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/ankitkaran99/ndev
|
|
@@ -113,7 +113,7 @@ def install_nginx(version: str = DEFAULT_NGINX_VERSION) -> Path:
|
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
def _include_vhosts_in_main_conf() -> None:
|
|
116
|
-
"""
|
|
116
|
+
"""Ensure vhost includes, proxy mapping maps, and fastcgi_params are configured."""
|
|
117
117
|
# Ensure default fallback vhost exists so Nginx never fails wildcard glob
|
|
118
118
|
default_conf = paths.NGINX_CONF_D / "_default.conf"
|
|
119
119
|
if not default_conf.exists():
|
|
@@ -127,27 +127,61 @@ def _include_vhosts_in_main_conf() -> None:
|
|
|
127
127
|
)
|
|
128
128
|
|
|
129
129
|
conf = paths.NGINX_DIR / "conf" / "nginx.conf"
|
|
130
|
-
if
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
130
|
+
if conf.exists():
|
|
131
|
+
text = conf.read_text(encoding="utf-8", errors="ignore")
|
|
132
|
+
changed = False
|
|
133
|
+
|
|
134
|
+
# Add forwarded header map directives if not already present
|
|
135
|
+
if "$fcgi_host" not in text:
|
|
136
|
+
map_block = (
|
|
137
|
+
"\n # Map forwarded headers from reverse proxies (e.g. ngrok) to FastCGI params\n"
|
|
138
|
+
" map $http_x_forwarded_host $fcgi_host {\n"
|
|
139
|
+
" default $http_x_forwarded_host;\n"
|
|
140
|
+
' "" $host;\n'
|
|
141
|
+
" }\n\n"
|
|
142
|
+
" map $http_x_forwarded_proto $fcgi_scheme {\n"
|
|
143
|
+
" default $http_x_forwarded_proto;\n"
|
|
144
|
+
' "" $scheme;\n'
|
|
145
|
+
" }\n\n"
|
|
146
|
+
" map $http_x_forwarded_proto $fcgi_https {\n"
|
|
147
|
+
' default "on";\n'
|
|
148
|
+
' "" $https;\n'
|
|
149
|
+
" }\n\n"
|
|
150
|
+
)
|
|
151
|
+
http_start = text.find("http {")
|
|
152
|
+
if http_start != -1:
|
|
153
|
+
brace_pos = text.find("{", http_start)
|
|
154
|
+
text = text[:brace_pos + 1] + map_block + text[brace_pos + 1:]
|
|
155
|
+
changed = True
|
|
156
|
+
|
|
157
|
+
if "ndev-vhosts" not in text:
|
|
158
|
+
include_line = " include ndev-vhosts/*.conf;\n"
|
|
159
|
+
http_start = text.find("http {")
|
|
160
|
+
if http_start != -1:
|
|
161
|
+
brace_depth = 0
|
|
162
|
+
i = text.find("{", http_start)
|
|
163
|
+
for idx in range(i, len(text)):
|
|
164
|
+
if text[idx] == "{":
|
|
165
|
+
brace_depth += 1
|
|
166
|
+
elif text[idx] == "}":
|
|
167
|
+
brace_depth -= 1
|
|
168
|
+
if brace_depth == 0:
|
|
169
|
+
text = text[:idx] + include_line + text[idx:]
|
|
170
|
+
changed = True
|
|
171
|
+
break
|
|
172
|
+
|
|
173
|
+
if changed:
|
|
174
|
+
conf.write_text(text, encoding="utf-8")
|
|
175
|
+
|
|
176
|
+
# Update fastcgi_params to forward $fcgi_host and $fcgi_scheme
|
|
177
|
+
fcgi_params_path = paths.NGINX_DIR / "conf" / "fastcgi_params"
|
|
178
|
+
if fcgi_params_path.exists():
|
|
179
|
+
fcgi_text = fcgi_params_path.read_text(encoding="utf-8", errors="ignore")
|
|
180
|
+
if "HTTP_HOST" not in fcgi_text or "$fcgi_host" not in fcgi_text:
|
|
181
|
+
fcgi_text = fcgi_text.replace("fastcgi_param REQUEST_SCHEME $scheme;", "fastcgi_param REQUEST_SCHEME $fcgi_scheme;")
|
|
182
|
+
fcgi_text = fcgi_text.replace("fastcgi_param HTTPS $https if_not_empty;", "fastcgi_param HTTPS $fcgi_https if_not_empty;")
|
|
183
|
+
fcgi_text = fcgi_text.replace("fastcgi_param SERVER_NAME $server_name;", "fastcgi_param SERVER_NAME $fcgi_host;\nfastcgi_param HTTP_HOST $fcgi_host;")
|
|
184
|
+
fcgi_params_path.write_text(fcgi_text, encoding="utf-8")
|
|
151
185
|
|
|
152
186
|
|
|
153
187
|
# ---- MariaDB ------------------------------------------------------------------
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ndev-stack
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.3
|
|
4
4
|
Summary: Cross-platform developer stack manager for PHP, FastCGI/PHP-FPM, MariaDB, Redis, PostgreSQL, MongoDB, Nginx, SSL, and Mailpit on Linux and Windows
|
|
5
5
|
Author-email: Ankit Karan <ankit.karan99@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/ankitkaran99/ndev
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "ndev-stack"
|
|
7
|
-
version = "0.3.
|
|
7
|
+
version = "0.3.3"
|
|
8
8
|
description = "Cross-platform developer stack manager for PHP, FastCGI/PHP-FPM, MariaDB, Redis, PostgreSQL, MongoDB, Nginx, SSL, and Mailpit on Linux and Windows"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|