mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-11-09 05:24:49 +09:00
Move serverkit-gpu from CONVERTED_BUILTIN_SLUGS into GATED_BUILTIN_SLUGS behind
a _gpu_present() predicate (shutil.which('nvidia-smi')), mirroring the email
gate: fresh installs stay marketplace-only, upgraded panels without a GPU no
longer get it, upgraded panels with a GPU keep it (D3 continuity). Rewrite the
12 builtin + baked extension descriptions that used em dashes into plain
sentences, keeping every pair in sync. New test_extension_manifests.py walks
both manifest trees to assert no em/en dashes and per-slug description parity.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
54 lines
2.0 KiB
JSON
54 lines
2.0 KiB
JSON
{
|
|
"name": "serverkit-mail",
|
|
"display_name": "Mail Server",
|
|
"version": "1.0.0",
|
|
"description": "Self-hosted mail server powered by Stalwart in a managed Docker container, providing domains, mailboxes, forwarders, and autoresponders, with automatic DKIM/SPF/DMARC/MX record deployment, a deliverability preflight (PTR, port-25 egress, RBL) that gates outbound sending, brute-force jails, and maildir backups. Most panels never run a mail server, so it ships as an opt-in extension.",
|
|
"author": "ServerKit",
|
|
"license": "MIT",
|
|
"category": "integration",
|
|
"homepage": "https://github.com/jhd3197/ServerKit",
|
|
"permissions": ["shell", "filesystem", "network", "docker"],
|
|
"min_panel_version": "1.7.0",
|
|
"entry_point": "mail:mail_bp",
|
|
"url_prefix": "/api/v1/mail",
|
|
"models": "models:register",
|
|
"lifecycle": {
|
|
"install": "lifecycle:on_install",
|
|
"uninstall": "lifecycle:on_uninstall"
|
|
},
|
|
"jobs": [
|
|
{ "kind": "mail.preflight.run", "handler": "jobs:run_preflight" },
|
|
{ "kind": "mail.queue.flush", "handler": "jobs:flush_queue" }
|
|
],
|
|
"schedules": [
|
|
{ "name": "mail-preflight-daily", "kind": "mail.preflight.run", "cron": "0 6 * * *" }
|
|
],
|
|
"icon": "<rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/>",
|
|
"contributions": {
|
|
"nav": [
|
|
{
|
|
"id": "mail",
|
|
"label": "Mail Server",
|
|
"route": "/mail",
|
|
"category": "operations",
|
|
"icon": "<rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/>"
|
|
}
|
|
],
|
|
"routes": [
|
|
{ "path": "mail", "component": "MailPage" },
|
|
{ "path": "mail/:tab", "component": "MailPage" }
|
|
],
|
|
"page_titles": {
|
|
"/mail": "Mail Server"
|
|
},
|
|
"command_palette": [
|
|
{
|
|
"label": "Mail Server",
|
|
"path": "/mail",
|
|
"category": "Pages",
|
|
"keywords": "mail smtp imap stalwart mailbox domain dkim spf dmarc mx deliverability forwarder autoresponder queue"
|
|
}
|
|
]
|
|
}
|
|
}
|