{
    "schema": "eupdate-package-specification-v1",
    "author": "PB <pavel.bartos.pb@gmail.com>",
    "project_id": "016eff0ebb83789e",
    "software_id": "eweb-server",
    "software": "eWeb",
    "module": null,
    "release_id": "2b80c83d6baeb336cb7dbfcdbe80640f",
    "version": "0.8.39",
    "release_date": "2026-09-15",
    "published_at": "2026-09-15T11:46:21+00:00",
    "bytes": 3781303,
    "sha256": "f20d96452605e663d83b6e004ea459406d0252822e80fa4a10181c702f9afff1",
    "file_count": 763,
    "languages": {
        "Python": {
            "bytes": 1569622,
            "files": 152
        },
        "JavaScript": {
            "bytes": 1242565,
            "files": 29
        },
        "PHP": {
            "bytes": 1114322,
            "files": 50
        },
        "Shell": {
            "bytes": 304803,
            "files": 66
        },
        "CSS": {
            "bytes": 93659,
            "files": 2
        },
        "Java": {
            "bytes": 1918,
            "files": 1
        },
        "Rust": {
            "bytes": 1036,
            "files": 1
        },
        "Go": {
            "bytes": 540,
            "files": 1
        },
        "C#": {
            "bytes": 365,
            "files": 1
        }
    },
    "installation_url": "https://update.estudium.eu/package.php?software_id=eweb-server&version=0.8.39",
    "update_url": "https://update.estudium.eu/package.php?software_id=eweb-server",
    "install_json": {
        "schema": "eweb-install-manifest-v1",
        "schema_version": 1,
        "software": "eWeb",
        "software_id": "eweb-server",
        "version": "0.8.39",
        "package_revision": 1,
        "package_type": "zip",
        "description": {
            "cs": "HTTP-01 jako výchozí ověření SSL nezávisle na správě Cloudflare; explicitní volba DNS-01 a zachovaná automatická obnova.",
            "en": "HTTP-01 certificate validation by default, independent of Cloudflare DNS management; explicit DNS-01 choice and automatic renewal."
        },
        "compatibility": {
            "os_types": [
                "linux"
            ],
            "distribution_ids": [
                "debian",
                "ubuntu"
            ],
            "os_versions": [
                "12",
                "24.04",
                "26.04"
            ],
            "distributions": [
                {
                    "id": "debian",
                    "name": "Debian",
                    "versions": [
                        "12"
                    ]
                },
                {
                    "id": "ubuntu",
                    "name": "Ubuntu",
                    "versions": [
                        "24.04",
                        "26.04"
                    ]
                }
            ],
            "detection": {
                "file": "/etc/os-release",
                "distribution_field": "ID",
                "version_field": "VERSION_ID"
            },
            "matching": "Match distribution ID and version together using distributions; os_versions is only an aggregate list.",
            "compatibility_basis": "OS combinations allowed by install.sh; this declaration is not a certification of every hardware/deployment combination.",
            "init_system": "systemd",
            "package_manager": "apt",
            "native_windows_supported": false,
            "native_macos_supported": false,
            "any_linux_distribution": false
        },
        "installation": {
            "working_directory": ".",
            "package_directory": "eweb-server-0.8.39",
            "entrypoint": "./eweb-server-0.8.39/install.sh",
            "shell": "bash",
            "requires_root": true,
            "requires_internet": true,
            "interactive": true,
            "languages": [
                "cs",
                "en"
            ],
            "commands": {
                "linux": {
                    "supported": true,
                    "command": "sudo bash ./eweb-server-0.8.39/install.sh",
                    "command_as_root": "bash ./eweb-server-0.8.39/install.sh",
                    "command_from_package_directory": "sudo bash ./install.sh",
                    "mode": "automatic"
                },
                "windows": {
                    "supported": false,
                    "command": null,
                    "reason": {
                        "cs": "Nativní instalace ve Windows není podporována. Instalujte na server s uvedenou podporovanou distribucí Linuxu.",
                        "en": "Native Windows installation is not supported. Install on a server running a listed supported Linux distribution."
                    },
                    "mode": "unsupported"
                },
                "macos": {
                    "command": null,
                    "supported": false,
                    "mode": "unsupported"
                },
                "other": {
                    "command": null,
                    "supported": false,
                    "mode": "unsupported"
                },
                "source": {
                    "command": null,
                    "supported": false,
                    "mode": "unsupported"
                }
            },
            "extraction_required": true,
            "extract_entire_archive": true,
            "recommended_resources": {
                "cpu_cores": 2,
                "ram_mib": 2048,
                "free_disk_gib": 10,
                "note": "Installer preflight recommendations; hosted data and log retention need additional capacity."
            },
            "reboot": "No unconditional reboot is requested by install.sh; OS package updates may independently require one.",
            "web_root": "."
        },
        "upgrade": {
            "supported": true,
            "command": "sudo bash ./eweb-server-0.8.39/install.sh",
            "working_directory": ".",
            "documentation": "eweb-server-0.8.39/UPGRADE-0.8.39.md",
            "cluster_order": "one_node_at_a_time",
            "automatic": {
                "supported": true,
                "command": "sudo eweb-release apply",
                "check_command": "sudo eweb-release check",
                "interval_seconds": 3600,
                "protocol": 1
            },
            "gui": {
                "path": "/?page=updates",
                "module_installation": true,
                "individual_modules": true
            },
            "database_wait_seconds": 300
        },
        "installed_paths": {
            "application": "/opt/eweb",
            "version_file": "/opt/eweb/VERSION",
            "configuration": "/etc/eweb",
            "logs": "/var/log/eweb",
            "websites": "/var/www",
            "backups": "/var/www/backup",
            "release_date_file": "/opt/eweb/RELEASE_DATE",
            "installation_history": "/var/lib/eweb/installation.json"
        },
        "dependencies": {
            "required_packages_file": "eweb-server-0.8.39/packages.txt",
            "optional_packages_file": "eweb-server-0.8.39/packages-optional.txt",
            "hosting_packages_helper": "eweb-server-0.8.39/bin/eweb-hosting-packages.sh"
        },
        "documentation": {
            "readme": "eweb-server-0.8.39/README.md",
            "changelog": "eweb-server-0.8.39/CHANGELOG-0.8.39.md",
            "validation": "eweb-server-0.8.39/VALIDATION-0.8.39.md",
            "audit": "eweb-server-0.8.39/AUDIT-0.8.39.md",
            "manual_cs": "eweb-server-0.8.39/docs/MANUAL-CS.md",
            "manual_en": "eweb-server-0.8.39/docs/MANUAL-EN.md"
        },
        "integrity": {
            "algorithm": "sha256",
            "installer_sha256": "50977bf89224d1adbf102501680475e12e52b91bbeafcdbe971613765dce0651",
            "payload_checksums_file": "eweb-server-0.8.39/SHA256SUMS",
            "payload_checksums_base_directory": "eweb-server-0.8.39",
            "payload_checksums_sha256": "d08578aea248ec615164e0a0d8635ee3d9d83fd7788315c1e723aab26687d1bc",
            "note": "Payload checksums cover files inside the package directory. This root manifest is outside that inventory. Hashes verify consistency, not publisher authenticity."
        },
        "release_date": "2026-09-15",
        "homepage": "https://www.estudium.eu",
        "author": {
            "name": "PB",
            "email": "pavel.bartos.pb@gmail.com",
            "website": "https://www.estudium.eu"
        },
        "project": {
            "name": "eWeb",
            "website": "https://www.estudium.eu",
            "updates_url": "https://update.estudium.eu/project.php?software_id=eweb-server"
        },
        "archive_metadata": {
            "working_directory": ".",
            "publisher": "dcf6d41fbcdf0e16",
            "updated_at": "2026-09-15T11:46:21+00:00",
            "application_author": "PB <pavel.bartos.pb@gmail.com>"
        },
        "package": {
            "type": "release",
            "visibility": "public",
            "modules_included": false,
            "target": "software"
        },
        "modules": {
            "distribution": "separate",
            "automatic_requires_license": true,
            "module_ids": [
                "cluster",
                "ips",
                "loganalyzer",
                "serverdiag",
                "snapshots",
                "staging"
            ],
            "free_module_initial_installation": "manual",
            "free_installed_module_updates": true,
            "access_source": "current-eupdate-catalog-and-checkin",
            "package_os_types": [
                "source"
            ]
        },
        "requirements": [],
        "license": "MIT",
        "license_custom": ""
    },
    "readme": "# eWeb 0.8.39 — SSL opět přes web\n\nVýchozí získání a obnova certifikátů domén opět používá HTTP-01: ověření webové výzvy na portu 80, následně Let’s Encrypt a při neúspěchu ZeroSSL. Zapnutí správy Cloudflare již nepřepíná metodu ověření certifikátu a HTTP-01 nevyžaduje žádný Cloudflare token.\n\n## Aktualizace\n\nRozbalte komplet a v jeho složce spusťte `sudo bash aktualizovat.sh`. V clusteru aktualizujte postupně všechny uzly. Pro eUpdate použijte vnitřní `eweb-server-0.8.39.zip`.\n\nV eWebu otevřete Domény → eduradio.cz → SSL a spusťte novou kontrolu. U starého výsledku lze použít Ověřit touto metodou s vybranou volbou Přes web (HTTP-01) — výchozí. Poté potvrďte žádost pro vybrané názvy. Staré výsledky, které odvozovaly DNS-01 ze zapnutí Cloudflare, je třeba přepočítat.\n\nPřípadně na serveru:\n\n```bash\nsudo eweb-ssl preflight-json eduradio.cz http-01\nsudo eweb-ssl issue-selected eduradio.cz --validation http-01 eduradio.cz www.eduradio.cz\n```\n\nDo žádosti zahrňte jen názvy, které mají odpovídající DNS a dostupnou webovou výzvu. WWW není povinné; hlavní doména povinná je.\n\n## Chování\n\n- HTTP-01 je výchozí i pro již existující domény se zapnutým Cloudflare, chybějícím tokenem nebo nefunkčním tokenem. Cloudflare API ani jeho Certbot plugin se při HTTP žádosti nekontrolují.\n- DNS-01 přes Cloudflare zůstává výslovnou volbou v SSL formuláři. Volba se uloží až potvrzením žádosti a používá se pro další obnovy; spuštění samotného náhledu nic nemění.\n- Certifikačními autoritami zůstávají Let’s Encrypt a ZeroSSL. HTTP-01 nespadne při chybě automaticky na DNS API.\n- Zachované jsou kontroly DNS, CAA, obsahu výzvy, certifikátu a klíče, plánování obnovy a převzetí certifikátu v clusteru. Správa a editace DNS záznamů Cloudflare funguje samostatně.\n- Platný certifikát se nevydává znovu jen kvůli změně metody. Pokud má starou uloženou obnovu dns-cloudflare, eWeb použije certbot reconfigure pro kontrolu a uložení HTTP-01 obnovy. Kontrola je omezená na 180 sekund. Selhání ponechá certifikát i původní konfiguraci a automatický pokus opakuje nejdříve po šesti hodinách; ruční potvrzení žádosti umožňuje nový pokus.\n\nHTTP-01 vyžaduje dostupnost `http://doména/.well-known/acme-challenge/...` na veřejném portu 80. DNS provider token nepotřebuje. Pokud je v cestě reverzní proxy, musí výzvu předat webu.\n\nBalíček obsahuje plné jádro, šest dosavadních modulů, příklad aplikace, dokumentaci a výsledky lokálních testů. Na váš server nebyl automaticky nasazen a skutečné veřejné vydání certifikátu nebylo z tohoto prostředí provedeno.",
    "download_url": "https://update.estudium.eu/download.php?project=016eff0ebb83789e&release=2b80c83d6baeb336cb7dbfcdbe80640f",
    "package_target": "software",
    "requirements": [],
    "license": {
        "id": "MIT",
        "name": "MIT",
        "custom_text": ""
    },
    "deployment": {
        "archive_root": ".",
        "web_root": "."
    },
    "project_type": "application",
    "hosting": null
}