updated from server

This commit is contained in:
cutemeli
2026-01-07 20:31:12 +01:00
parent 5cc6ef92c6
commit 57e70a7d09
121 changed files with 32219 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP74" yum_repo_name="PHP 7.4" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;Version: GnuPG v2.0.22 (GNU/Linux)&#x0A;&#x0A;mQGiBFXAUiARBAC9lDsyU9L2dZRyhOp27adDZ99+tfPq9L0aX1xmZvpF+rO6FEa1&#x0A;HCEi1blRq/icL784esCEuEe/k6eGeqKgOv6E05ZG9txvP/vhUofFJX6vAHsiScKN&#x0A;QXwZQQqM2Fz3oPqeN/7zOE/dfASrTC8fET7J7+d+KNOOnDSSxIG9XJbGTwCg0BCd&#x0A;2vNB4CduMm2oyTVNGcWXmCMEAIFJALIEEeNlevXvBxBPv86DB3eFdLUgYJNlwIfJ&#x0A;aDCFr9plRNb6O/MMGPFPsp113r4E+o1M8bW5RBfZgnxXH+6Xi3i/kMBh9GtovAv+&#x0A;qe4lMJQ+t7cFDedvsgsmigq7cl0cmSwe00zhYzT4t3lEg5F3l543Wwxk/kwQj2wp&#x0A;t5cCA/9rAUUCZ4ewdO74tiuF5nmTb+lHNvIq4EKXacgA5gsVVMTw/SH8G0m0z+YH&#x0A;3xJuVJaO18+6OrdCjGzmzJ78k8j6z1fuAZVWWaUK+XtjP6mn/ZsjwvrIGMxrbJ85&#x0A;B/v+j4W7MOjIHmD37PScSibK56ItlQHjd2y0S6jy+e4UFIOnA7QbUGxlc2sgVGVh&#x0A;bSA8aW5mb0BwbGVzay5jb20+iGAEExECACAFAlXAUiACGwMGCwkIBwMCBBUCCAME&#x0A;FgIDAQIeAQIXgAAKCRC9EaaqkUvfflh7AKCDstpjOFDR1FarF2BU/sA6+rFteQCg&#x0A;xHjO3vh+i2QiTnGlBhOUlCxuNFq5Ag0EVcBSJxAIAID5a6RrDkEIkaAc6u+BJJsp&#x0A;Rychg18z+IdHPUrBABEeT7vCmH5KISP1bdhur8vgeDdFanhLjTjC7mYJ5OJnb3ZM&#x0A;nl/L8B5uz/RQ8i7Sv/buwr69h/llVElkeOyx2SkkIdsHLPNXuxydZfADfz5B5Zjx&#x0A;R7IVepDxEeA755rCQd3alAwk6lA0Iy+LCdCaNIGpzzC6j7goLeGE1tAoG3J0Lvja&#x0A;xXGgTmqHHhImGjc875wngrDRo4yDu6Tfwi6b0RCfbkm6wgEWGvDwzSXz1+7iWRAC&#x0A;kyagGrZPOqKJiKBfj+hVMnflB3EFZd2j5hfWl35U4j18U6v6JkxKIn0DvD5+cz8A&#x0A;BAsH/RVWit+s/zXJbxd9U07EPbVS+ujZrhannBgV6xpMuGWDbl1QcMWXoQXU0zK4&#x0A;Gr44UmHbe3h1F38GeMzELjfMYi8XAMvOQkC5i8Clv9jHJwfHxt8wcA/tE4kPtRNx&#x0A;KhDhh3i2sZTg123h0EpEOlMvrVoboFyH8K7BN+KdEl3YtWgmbM9zhOO8R7LFGQ6m&#x0A;VxxL4BlX7QNZ9cpDQ5sNTiPu4pij++oFoSaquXZKGXOO3KvTBQHHceps+w1cpYXv&#x0A;EGzNjxvTvPmBYXZAVlu8dOInDMfl8wwctAmHXxPeh0kTGRlZT4QHJs1pJVgNuQbP&#x0A;pjqmxx1SGEnYmE/TNDP+J1F7GISISQQYEQIACQUCVcBSJwIbDAAKCRC9EaaqkUvf&#x0A;fmn2AJ9q31HpLe/9sHWQHAL/ul6qeSNIJwCeK2hBWeBcx0iC/ISo8T/EX8KTCcw=&#x0A;=NB3w&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php74">
<keypackages>
<keypackage>plesk-php74</keypackage>
</keypackages>
<release id="PHP_7_4" name="PHP v 7.4" version="7.4.33" upgrade_allowed_from="" />
</product>
<component name="php7.4" description="PHP 7.4 (outdated)" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php74" />
</keypackages>
<package name="plesk-php74" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="459800" buildtime="0" md5="0609f8256e28fd900dd4a913a60fc033" arch="amd64" />
<package name="plesk-php74-bcmath" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-bcmath_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="13864" buildtime="0" md5="4049d6eece77235fded76cde1a6beb10" arch="amd64" />
<package name="plesk-php74-cli" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-cli_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="3053764" buildtime="0" md5="c2122193546291ff9ebce33e250bfdf9" arch="amd64" />
<package name="plesk-php74-dba" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-dba_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="19580" buildtime="0" md5="6dabec4698762fb2f89f3e3674562c7e" arch="amd64" />
<package name="plesk-php74-enchant" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-enchant_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="7636" buildtime="0" md5="a4cb0ec8bbed4f853635f57454a0a185" arch="amd64" />
<package name="plesk-php74-fpm" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-fpm_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="1778504" buildtime="0" md5="09a7c6b49dc8a83fe986c4f2e19c757e" arch="amd64" />
<package name="plesk-php74-gd" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-gd_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="104092" buildtime="0" md5="312e69fd165ca518ecf38856894b1cf5" arch="amd64" />
<package name="plesk-php74-imagick" version="3.7.0" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-imagick_3.7.0-ubuntu.24.04.240507.1400_amd64.deb" size="91108" buildtime="0" md5="fe7389bb89b2e2576b7d41996f868211" arch="amd64" />
<package name="plesk-php74-imap" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-imap_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="29712" buildtime="0" md5="bd9bc918ad7f4fcf899e60c5170cdc80" arch="amd64" />
<package name="plesk-php74-intl" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-intl_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="129164" buildtime="0" md5="97ed184536deca29ecfcf8ef98ed28de" arch="amd64" />
<package name="plesk-php74-ioncube-loader" version="11.0.1" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-ioncube-loader_11.0.1-ubuntu.24.04.240507.1400_amd64.deb" size="436752" buildtime="0" md5="aaf4885de4fb9610bb046fecc17d6f45" arch="amd64" />
<package name="plesk-php74-ldap" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-ldap_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="29068" buildtime="0" md5="6d68b1cfb20f35104ea78d246bd88405" arch="amd64" />
<package name="plesk-php74-mbstring" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-mbstring_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="391452" buildtime="0" md5="428ca21ccaa4402da11502bd250ebb55" arch="amd64" />
<package name="plesk-php74-mysql" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-mysql_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="118852" buildtime="0" md5="72e079fc042723353efc6c7d44f9538d" arch="amd64" />
<package name="plesk-php74-odbc" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-odbc_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="29960" buildtime="0" md5="9fdf1eb189b477e7c0e6593b9b92becc" arch="amd64" />
<package name="plesk-php74-opcache" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-opcache_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="204668" buildtime="0" md5="7e62c50b7f1b87afd31df597dfd594de" arch="amd64" />
<package name="plesk-php74-pdo" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-pdo_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="59864" buildtime="0" md5="131c13e3983d4cc3ef0929e49f74d6e5" arch="amd64" />
<package name="plesk-php74-pear" version="1.10.13" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-pear_1.10.13-ubuntu.24.04.240507.1400_all.deb" size="272360" buildtime="0" md5="249d279dc1403c646514f75b92899512" arch="all" />
<package name="plesk-php74-pgsql" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-pgsql_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="54060" buildtime="0" md5="5671b802ebaf8e990f75c1cd127ff66a" arch="amd64" />
<package name="plesk-php74-process" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-process_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="19084" buildtime="0" md5="5504c63a666f0d8fb27877201643dac9" arch="amd64" />
<package name="plesk-php74-pspell" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-pspell_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="7244" buildtime="0" md5="0fb78030d25425fe429c236695db86ce" arch="amd64" />
<package name="plesk-php74-redis" version="5.3.7" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-redis_5.3.7-ubuntu.24.04.240507.1400_amd64.deb" size="146084" buildtime="0" md5="b7b1cdca3c295456322f8d1cd440a55b" arch="amd64" />
<package name="plesk-php74-snmp" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-snmp_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="17108" buildtime="0" md5="20e5ec04716b9a86bc0e29ccaa414032" arch="amd64" />
<package name="plesk-php74-soap" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-soap_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="117308" buildtime="0" md5="230e23963ecceb9efabc9484d5c7f86b" arch="amd64" />
<package name="plesk-php74-sodium" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-sodium_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="22604" buildtime="0" md5="e9e05e519921a1a1072ce41109a76ecd" arch="amd64" />
<package name="plesk-php74-tidy" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-tidy_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="16496" buildtime="0" md5="a42c879e93cb484f40cead589fde891d" arch="amd64" />
<package name="plesk-php74-xdebug" version="3.1.5" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-xdebug_3.1.5-ubuntu.24.04.240507.1400_amd64.deb" size="123528" buildtime="0" md5="775bc06720fcbc8525379bd8892b8453" arch="amd64" />
<package name="plesk-php74-xml" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-xml_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="68840" buildtime="0" md5="07ec6289a38f4b1035046d483a1fa4a9" arch="amd64" />
<package name="plesk-php74-xmlrpc" version="7.4.33" release="ubuntu.24.04.240507.1400" file="packages/plesk-php74-xmlrpc_7.4.33-ubuntu.24.04.240507.1400_amd64.deb" size="30644" buildtime="0" md5="ab1b97282bcbd031397da7ed7542b932" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php74" name="PHP v 7.4">
<release id="PHP_7_4" name="PHP v 7.4" version="7.4.33">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.21" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php74-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php74-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php74-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php74-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php74-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php74-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php74-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php74-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php74-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP80" yum_repo_name="PHP 8.0" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;Version: GnuPG v2.0.22 (GNU/Linux)&#x0A;&#x0A;mQGiBFXAUiARBAC9lDsyU9L2dZRyhOp27adDZ99+tfPq9L0aX1xmZvpF+rO6FEa1&#x0A;HCEi1blRq/icL784esCEuEe/k6eGeqKgOv6E05ZG9txvP/vhUofFJX6vAHsiScKN&#x0A;QXwZQQqM2Fz3oPqeN/7zOE/dfASrTC8fET7J7+d+KNOOnDSSxIG9XJbGTwCg0BCd&#x0A;2vNB4CduMm2oyTVNGcWXmCMEAIFJALIEEeNlevXvBxBPv86DB3eFdLUgYJNlwIfJ&#x0A;aDCFr9plRNb6O/MMGPFPsp113r4E+o1M8bW5RBfZgnxXH+6Xi3i/kMBh9GtovAv+&#x0A;qe4lMJQ+t7cFDedvsgsmigq7cl0cmSwe00zhYzT4t3lEg5F3l543Wwxk/kwQj2wp&#x0A;t5cCA/9rAUUCZ4ewdO74tiuF5nmTb+lHNvIq4EKXacgA5gsVVMTw/SH8G0m0z+YH&#x0A;3xJuVJaO18+6OrdCjGzmzJ78k8j6z1fuAZVWWaUK+XtjP6mn/ZsjwvrIGMxrbJ85&#x0A;B/v+j4W7MOjIHmD37PScSibK56ItlQHjd2y0S6jy+e4UFIOnA7QbUGxlc2sgVGVh&#x0A;bSA8aW5mb0BwbGVzay5jb20+iGAEExECACAFAlXAUiACGwMGCwkIBwMCBBUCCAME&#x0A;FgIDAQIeAQIXgAAKCRC9EaaqkUvfflh7AKCDstpjOFDR1FarF2BU/sA6+rFteQCg&#x0A;xHjO3vh+i2QiTnGlBhOUlCxuNFq5Ag0EVcBSJxAIAID5a6RrDkEIkaAc6u+BJJsp&#x0A;Rychg18z+IdHPUrBABEeT7vCmH5KISP1bdhur8vgeDdFanhLjTjC7mYJ5OJnb3ZM&#x0A;nl/L8B5uz/RQ8i7Sv/buwr69h/llVElkeOyx2SkkIdsHLPNXuxydZfADfz5B5Zjx&#x0A;R7IVepDxEeA755rCQd3alAwk6lA0Iy+LCdCaNIGpzzC6j7goLeGE1tAoG3J0Lvja&#x0A;xXGgTmqHHhImGjc875wngrDRo4yDu6Tfwi6b0RCfbkm6wgEWGvDwzSXz1+7iWRAC&#x0A;kyagGrZPOqKJiKBfj+hVMnflB3EFZd2j5hfWl35U4j18U6v6JkxKIn0DvD5+cz8A&#x0A;BAsH/RVWit+s/zXJbxd9U07EPbVS+ujZrhannBgV6xpMuGWDbl1QcMWXoQXU0zK4&#x0A;Gr44UmHbe3h1F38GeMzELjfMYi8XAMvOQkC5i8Clv9jHJwfHxt8wcA/tE4kPtRNx&#x0A;KhDhh3i2sZTg123h0EpEOlMvrVoboFyH8K7BN+KdEl3YtWgmbM9zhOO8R7LFGQ6m&#x0A;VxxL4BlX7QNZ9cpDQ5sNTiPu4pij++oFoSaquXZKGXOO3KvTBQHHceps+w1cpYXv&#x0A;EGzNjxvTvPmBYXZAVlu8dOInDMfl8wwctAmHXxPeh0kTGRlZT4QHJs1pJVgNuQbP&#x0A;pjqmxx1SGEnYmE/TNDP+J1F7GISISQQYEQIACQUCVcBSJwIbDAAKCRC9EaaqkUvf&#x0A;fmn2AJ9q31HpLe/9sHWQHAL/ul6qeSNIJwCeK2hBWeBcx0iC/ISo8T/EX8KTCcw=&#x0A;=NB3w&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php80">
<keypackages>
<keypackage>plesk-php80</keypackage>
</keypackages>
<release id="PHP_8_0" name="PHP v 8.0" version="8.0.30" upgrade_allowed_from="" />
</product>
<component name="php8.0" description="PHP 8.0 (outdated)" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php80" />
</keypackages>
<package name="plesk-php80" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="458452" buildtime="0" md5="3d88c50d53703ae1465f6b59a934717d" arch="amd64" />
<package name="plesk-php80-bcmath" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-bcmath_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="14312" buildtime="0" md5="84201a22c9daf156a4d4a7f0983b700e" arch="amd64" />
<package name="plesk-php80-cli" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-cli_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="3142504" buildtime="0" md5="f7d9c89d4cf2e5e14c719a46bae064e7" arch="amd64" />
<package name="plesk-php80-dba" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-dba_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="19532" buildtime="0" md5="c747aa174701699da4d13f0b017494b8" arch="amd64" />
<package name="plesk-php80-enchant" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-enchant_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="8304" buildtime="0" md5="e4755c3a6ffcf4e977ee22b780c108af" arch="amd64" />
<package name="plesk-php80-fpm" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-fpm_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="1826240" buildtime="0" md5="7fb3716ef157d6cb51e6c838b4c727bf" arch="amd64" />
<package name="plesk-php80-gd" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-gd_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="103164" buildtime="0" md5="4277880e9a07d2dbdc71339e87a7fca6" arch="amd64" />
<package name="plesk-php80-imagick" version="3.7.0" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-imagick_3.7.0-ubuntu.24.04.240507.1400_amd64.deb" size="91136" buildtime="0" md5="bcb87ed020abc5e4b5ff2397c60c9708" arch="amd64" />
<package name="plesk-php80-imap" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-imap_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="29764" buildtime="0" md5="cee0b2fb1f399094791fd98d38011b08" arch="amd64" />
<package name="plesk-php80-intl" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-intl_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="128740" buildtime="0" md5="2a46f02b87ba6f91cc9b5c5b54f0e0de" arch="amd64" />
<package name="plesk-php80-ldap" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-ldap_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="27972" buildtime="0" md5="bfda02e902d5af2dac4ca1f998f3fadb" arch="amd64" />
<package name="plesk-php80-mbstring" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-mbstring_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="389932" buildtime="0" md5="bb59a4db93a9765026986c8f87a2da80" arch="amd64" />
<package name="plesk-php80-mysql" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-mysql_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="118480" buildtime="0" md5="b69c38e20f487aa4d62dce1acf8d3397" arch="amd64" />
<package name="plesk-php80-odbc" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-odbc_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="29444" buildtime="0" md5="36cfcc2639840d7508ab80c5063b4df2" arch="amd64" />
<package name="plesk-php80-opcache" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-opcache_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="482276" buildtime="0" md5="176b10ca1c7f76a1acc386c53225f77d" arch="amd64" />
<package name="plesk-php80-pdo" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-pdo_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="62304" buildtime="0" md5="75271c4a9dc3102ef21bcc326099b8dd" arch="amd64" />
<package name="plesk-php80-pear" version="1.10.13" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-pear_1.10.13-ubuntu.24.04.240507.1400_all.deb" size="272408" buildtime="0" md5="3045cb569e9e51833429d0dc2e5d7a2e" arch="all" />
<package name="plesk-php80-pgsql" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-pgsql_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="53804" buildtime="0" md5="de11c90204d7c5f8de636f710b63ab68" arch="amd64" />
<package name="plesk-php80-process" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-process_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="20080" buildtime="0" md5="dfde93814dbb8c4e94a15b341e263dbb" arch="amd64" />
<package name="plesk-php80-pspell" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-pspell_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="7144" buildtime="0" md5="900b45bccaf7c982cb327205f9cd4619" arch="amd64" />
<package name="plesk-php80-redis" version="6.0.2" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-redis_6.0.2-ubuntu.24.04.240507.1400_amd64.deb" size="179588" buildtime="0" md5="b681e5ebce4123452c3c893596f95701" arch="amd64" />
<package name="plesk-php80-snmp" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-snmp_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="18476" buildtime="0" md5="f7aeac3072fff1a529f18ed0e44385ff" arch="amd64" />
<package name="plesk-php80-soap" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-soap_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="117588" buildtime="0" md5="9780941715984960222ad53eb264e5ba" arch="amd64" />
<package name="plesk-php80-sodium" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-sodium_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="23224" buildtime="0" md5="2e4cc6c7cdad1348d3588b652bf6fa21" arch="amd64" />
<package name="plesk-php80-tidy" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-tidy_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="17288" buildtime="0" md5="09b2dc73392e1b97c601eb01ce84778d" arch="amd64" />
<package name="plesk-php80-xdebug" version="3.2.2" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-xdebug_3.2.2-ubuntu.24.04.240507.1400_amd64.deb" size="126888" buildtime="0" md5="c4330b23273ca03165697d0d8960db11" arch="amd64" />
<package name="plesk-php80-xml" version="8.0.30" release="ubuntu.24.04.240507.1400" file="packages/plesk-php80-xml_8.0.30-ubuntu.24.04.240507.1400_amd64.deb" size="70372" buildtime="0" md5="9cd02e3b08043a1c1943779d77c562d9" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php80" name="PHP v 8.0">
<release id="PHP_8_0" name="PHP v 8.0" version="8.0.30">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.32" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php80-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php80-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php80-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="php80-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php80-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="php80-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php80-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php80-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php80-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php80-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php80-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php80-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="php80-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php80-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php80-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="php80-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php80-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php80-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php80-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php80-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php80-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php80-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="php80-cos7-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP81" yum_repo_name="PHP 8.1" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php81">
<keypackages>
<keypackage>plesk-php81</keypackage>
</keypackages>
<release id="PHP_8_1" name="PHP v 8.1" version="8.1.34" upgrade_allowed_from="" />
</product>
<component name="php8.1" description="PHP 8.1 (outdated)" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php81" />
</keypackages>
<package name="plesk-php81" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="478804" buildtime="0" md5="3915471dc151aa49b9bba637779df66d" arch="amd64" />
<package name="plesk-php81-bcmath" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-bcmath_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="14300" buildtime="0" md5="a89870456f3cd6dad385060db244f545" arch="amd64" />
<package name="plesk-php81-cli" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-cli_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="3380192" buildtime="0" md5="1e6fc3847caf5e6c4fbd32b7cff753e7" arch="amd64" />
<package name="plesk-php81-dba" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-dba_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="19548" buildtime="0" md5="05d48c72af53e904e683cd3fc4636829" arch="amd64" />
<package name="plesk-php81-enchant" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-enchant_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="8212" buildtime="0" md5="7a670d363e43c7e10664eb4e65301a9f" arch="amd64" />
<package name="plesk-php81-fpm" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-fpm_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="2029764" buildtime="0" md5="674918cfb8b1085f0f37c3330378779b" arch="amd64" />
<package name="plesk-php81-gd" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-gd_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="105868" buildtime="0" md5="ef07e3944d13cc0b5ab71e2a7a2ca53c" arch="amd64" />
<package name="plesk-php81-imagick" version="3.8.1" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-imagick_3.8.1-ubuntu.24.04.251222.0806_amd64.deb" size="92360" buildtime="0" md5="8038ac5df4dae9f502db474fc234b45d" arch="amd64" />
<package name="plesk-php81-imap" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-imap_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="30964" buildtime="0" md5="7babf7c88f72708ffd9f28dc1158e13b" arch="amd64" />
<package name="plesk-php81-intl" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-intl_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="130560" buildtime="0" md5="6e644f9981ca4ea234382304f7700e0e" arch="amd64" />
<package name="plesk-php81-ldap" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-ldap_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="29676" buildtime="0" md5="795f5eeb08d86162aa84190473848958" arch="amd64" />
<package name="plesk-php81-mbstring" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-mbstring_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="393732" buildtime="0" md5="2eb640972dc5f977ce6bf140cb0719d2" arch="amd64" />
<package name="plesk-php81-mysql" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-mysql_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="114612" buildtime="0" md5="eaf06189dee22c7bf3f402180cbb2325" arch="amd64" />
<package name="plesk-php81-odbc" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-odbc_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="30220" buildtime="0" md5="eca68c4d7e6fe0edf27d4f9e27289c61" arch="amd64" />
<package name="plesk-php81-opcache" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-opcache_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="352400" buildtime="0" md5="5d2adf5a22e9a4423f271cd9add9e896" arch="amd64" />
<package name="plesk-php81-pdo" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-pdo_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="62492" buildtime="0" md5="660f8f4f920ac187246f5cff29a62e46" arch="amd64" />
<package name="plesk-php81-pear" version="1.10.17" release="ubuntu.24.04.251222.0858" file="packages/plesk-php81-pear_1.10.17-ubuntu.24.04.251222.0858_all.deb" size="273036" buildtime="0" md5="441d62b91c4b705dfa836d5d753329de" arch="all" />
<package name="plesk-php81-pgsql" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-pgsql_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="55980" buildtime="0" md5="63ebd375ddfc2535badfc5391a4b8964" arch="amd64" />
<package name="plesk-php81-process" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-process_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="19984" buildtime="0" md5="7150dcbf114c7940b9e595ba101d2c81" arch="amd64" />
<package name="plesk-php81-pspell" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-pspell_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="7580" buildtime="0" md5="b68bb0f23efa3fc23899fa2bce110227" arch="amd64" />
<package name="plesk-php81-redis" version="6.3.0" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-redis_6.3.0-ubuntu.24.04.251222.0806_amd64.deb" size="177136" buildtime="0" md5="e757bde5a4a22fb48bc60a2eb190c582" arch="amd64" />
<package name="plesk-php81-snmp" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-snmp_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="19428" buildtime="0" md5="375c4494eef20bffcb952c816da0b7db" arch="amd64" />
<package name="plesk-php81-soap" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-soap_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="123480" buildtime="0" md5="d006123592637deb5d7547a973641736" arch="amd64" />
<package name="plesk-php81-sodium" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-sodium_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="25856" buildtime="0" md5="bf06d867b00c409b04cdc299d559650d" arch="amd64" />
<package name="plesk-php81-tidy" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-tidy_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="17272" buildtime="0" md5="720f42c6982ae1b903a7dae0baa1c703" arch="amd64" />
<package name="plesk-php81-xdebug" version="3.5.0" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-xdebug_3.5.0-ubuntu.24.04.251222.0806_amd64.deb" size="146420" buildtime="0" md5="bd1d7887c4d0238626259b9d458bbf24" arch="amd64" />
<package name="plesk-php81-xml" version="8.1.34" release="ubuntu.24.04.251222.0806" file="packages/plesk-php81-xml_8.1.34-ubuntu.24.04.251222.0806_amd64.deb" size="80416" buildtime="0" md5="8fe172b9951c1c0c2b3f160bb099d334" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php81" name="PHP v 8.1">
<release id="PHP_8_1" name="PHP v 8.1" version="8.1.34">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.40" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php81-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php81-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php81-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="php81-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php81-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="php81-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="php81-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php81-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php81-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php81-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php81-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php81-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php81-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="php81-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php81-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php81-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php81-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php81-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php81-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php81-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php81-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php81-ubt24.04-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP82" yum_repo_name="PHP 8.2" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php82">
<keypackages>
<keypackage>plesk-php82</keypackage>
</keypackages>
<release id="PHP_8_2" name="PHP v 8.2" version="8.2.30" upgrade_allowed_from="" />
</product>
<component name="php8.2" description="PHP 8.2" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php82" />
</keypackages>
<package name="plesk-php82" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="488916" buildtime="0" md5="6d6f07f95b4f10097dfb62f794afa6ff" arch="amd64" />
<package name="plesk-php82-bcmath" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-bcmath_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="14332" buildtime="0" md5="eff7e3c149066d703a98b5b60f03cd3e" arch="amd64" />
<package name="plesk-php82-cli" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-cli_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="3474412" buildtime="0" md5="fd309f908b4f2653d587e2a4c1e2e72c" arch="amd64" />
<package name="plesk-php82-dba" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-dba_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="19792" buildtime="0" md5="d62cd1bad9aefd482403f473380ecc31" arch="amd64" />
<package name="plesk-php82-enchant" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-enchant_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="8212" buildtime="0" md5="15912494c594591e0f2bf90530165a5d" arch="amd64" />
<package name="plesk-php82-fpm" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-fpm_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="2078440" buildtime="0" md5="f680217ffbe8a1a22bd7e8c77310a9fd" arch="amd64" />
<package name="plesk-php82-gd" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-gd_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="106280" buildtime="0" md5="ce7bb4c8795c995df91b2e5593ed267b" arch="amd64" />
<package name="plesk-php82-imagick" version="3.8.1" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-imagick_3.8.1-ubuntu.24.04.251218.2029_amd64.deb" size="91808" buildtime="0" md5="14ccfb753d22d431feb5fc2ceaf3b9b4" arch="amd64" />
<package name="plesk-php82-imap" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-imap_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="31252" buildtime="0" md5="d63abcb61c992bc8cf32a495ee98fec6" arch="amd64" />
<package name="plesk-php82-intl" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-intl_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="144328" buildtime="0" md5="40e7b3553a099cb940820adee3beb52f" arch="amd64" />
<package name="plesk-php82-ldap" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-ldap_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="30024" buildtime="0" md5="3af03803c983a1e69d65700b1cbbc1a4" arch="amd64" />
<package name="plesk-php82-mbstring" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-mbstring_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="436532" buildtime="0" md5="5e484253c69a97287b87a3e7349901ef" arch="amd64" />
<package name="plesk-php82-mysql" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-mysql_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="115300" buildtime="0" md5="4d5f508a5d74f61b89c1a4edeec6225f" arch="amd64" />
<package name="plesk-php82-odbc" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-odbc_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="31860" buildtime="0" md5="4882220feac7b6bee1864acbb1c0577b" arch="amd64" />
<package name="plesk-php82-opcache" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-opcache_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="353960" buildtime="0" md5="d05ffc50ad8737572ce65021e09211ad" arch="amd64" />
<package name="plesk-php82-pdo" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-pdo_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="65092" buildtime="0" md5="c12d32e94d725db876bfec6375819ba1" arch="amd64" />
<package name="plesk-php82-pear" version="1.10.17" release="ubuntu.24.04.251222.0858" file="packages/plesk-php82-pear_1.10.17-ubuntu.24.04.251222.0858_all.deb" size="272992" buildtime="0" md5="d2f3463ff9f23e64a1fba58c3897e85d" arch="all" />
<package name="plesk-php82-pgsql" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-pgsql_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="55916" buildtime="0" md5="780b44e4b195747dfd6817c7d13a90f1" arch="amd64" />
<package name="plesk-php82-process" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-process_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="20316" buildtime="0" md5="6ecaf5936c1e127d47e1383cf1e38dea" arch="amd64" />
<package name="plesk-php82-pspell" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-pspell_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="7608" buildtime="0" md5="68d10d378b1cad0a2e522df02edf92b2" arch="amd64" />
<package name="plesk-php82-redis" version="6.3.0" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-redis_6.3.0-ubuntu.24.04.251218.2029_amd64.deb" size="177332" buildtime="0" md5="23b55c2dae6142b0f815224189f2f746" arch="amd64" />
<package name="plesk-php82-snmp" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-snmp_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="20300" buildtime="0" md5="34c3cd7d4141a383977813bb0b11b373" arch="amd64" />
<package name="plesk-php82-soap" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-soap_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="126080" buildtime="0" md5="f51b798501fe36448a1f1cc3394e585c" arch="amd64" />
<package name="plesk-php82-sodium" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-sodium_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="27036" buildtime="0" md5="75135170a57fbb19419d1b4c90b3c4c8" arch="amd64" />
<package name="plesk-php82-tidy" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-tidy_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="17764" buildtime="0" md5="617b27afd3336dd34de3ec960daf0a90" arch="amd64" />
<package name="plesk-php82-xdebug" version="3.5.0" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-xdebug_3.5.0-ubuntu.24.04.251218.2029_amd64.deb" size="146952" buildtime="0" md5="701405939fda813aeb18fbf925d36c1b" arch="amd64" />
<package name="plesk-php82-xml" version="8.2.30" release="ubuntu.24.04.251218.2029" file="packages/plesk-php82-xml_8.2.30-ubuntu.24.04.251218.2029_amd64.deb" size="81700" buildtime="0" md5="f37e313bebdfb8de756ff221b4eb7a69" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php82" name="PHP v 8.2">
<release id="PHP_8_2" name="PHP v 8.2" version="8.2.30">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.48" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php82-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php82-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php82-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="php82-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php82-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="php82-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="php82-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php82-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php82-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php82-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php82-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php82-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php82-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="php82-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php82-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php82-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php82-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php82-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php82-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php82-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php82-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php82-ubt24.04-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP83" yum_repo_name="PHP 8.3" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php83">
<keypackages>
<keypackage>plesk-php83</keypackage>
</keypackages>
<release id="PHP_8_3" name="PHP v 8.3" version="8.3.29" upgrade_allowed_from="" />
</product>
<component name="php8.3" description="PHP 8.3" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php83" />
</keypackages>
<package name="plesk-php83" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="524812" buildtime="0" md5="3343ad9677eefef837d3edf056337eee" arch="amd64" />
<package name="plesk-php83-bcmath" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-bcmath_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="13940" buildtime="0" md5="c73b881a4883e3141f5f1910eb59016b" arch="amd64" />
<package name="plesk-php83-cli" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-cli_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="3549488" buildtime="0" md5="edae8e7417bd906872aef4576a6891e5" arch="amd64" />
<package name="plesk-php83-dba" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-dba_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="20140" buildtime="0" md5="3ca7661732b5f0b7b83619efb5dcf335" arch="amd64" />
<package name="plesk-php83-enchant" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-enchant_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="8188" buildtime="0" md5="7d96862e8052fc81a19ebdee29717359" arch="amd64" />
<package name="plesk-php83-fpm" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-fpm_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="2122700" buildtime="0" md5="8b5b5ba3518af7fdd6e66cb5987a7a73" arch="amd64" />
<package name="plesk-php83-gd" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-gd_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="106476" buildtime="0" md5="3d85fc0f7a6edf8abc1cc76ba3d722b3" arch="amd64" />
<package name="plesk-php83-imagick" version="3.8.1" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-imagick_3.8.1-ubuntu.24.04.251218.2005_amd64.deb" size="92100" buildtime="0" md5="1d84f1045fd1f96ccaf4627f6d532e4d" arch="amd64" />
<package name="plesk-php83-imap" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-imap_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="30988" buildtime="0" md5="ace60230b87237eee921270a227ba50d" arch="amd64" />
<package name="plesk-php83-intl" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-intl_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="145872" buildtime="0" md5="3128d8f3b297f3c8e94dcd66daaa6237" arch="amd64" />
<package name="plesk-php83-ldap" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-ldap_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="31128" buildtime="0" md5="993440b72e22f925696c16cfdbe68806" arch="amd64" />
<package name="plesk-php83-mbstring" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-mbstring_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="444028" buildtime="0" md5="64c9f69ec3b15f8990661012b77c11a3" arch="amd64" />
<package name="plesk-php83-mysql" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-mysql_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="114840" buildtime="0" md5="92a1d79ca06734619a9cd10219986f15" arch="amd64" />
<package name="plesk-php83-odbc" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-odbc_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="32012" buildtime="0" md5="860a890aefb4e6fb37c12f9bcb46b5c2" arch="amd64" />
<package name="plesk-php83-opcache" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-opcache_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="355060" buildtime="0" md5="05bdb8aec15565b47fd0fcc7f568df2a" arch="amd64" />
<package name="plesk-php83-pdo" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-pdo_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="66492" buildtime="0" md5="09bbcd0aba95faa760f8641a218f76d2" arch="amd64" />
<package name="plesk-php83-pear" version="1.10.17" release="ubuntu.24.04.251222.0858" file="packages/plesk-php83-pear_1.10.17-ubuntu.24.04.251222.0858_all.deb" size="273012" buildtime="0" md5="f84d4e13fec0e0edeb993024d0000c3f" arch="all" />
<package name="plesk-php83-pgsql" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-pgsql_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="56648" buildtime="0" md5="5b63fdee68fcc47d827fb4f15f2c66ca" arch="amd64" />
<package name="plesk-php83-process" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-process_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="21640" buildtime="0" md5="160aaee464880376c1e83b12caa40fa2" arch="amd64" />
<package name="plesk-php83-pspell" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-pspell_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="7604" buildtime="0" md5="7dc7f6e90759782f1051550291a11d93" arch="amd64" />
<package name="plesk-php83-redis" version="6.3.0" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-redis_6.3.0-ubuntu.24.04.251218.2005_amd64.deb" size="177480" buildtime="0" md5="151b3ad795bbebb7a4670bd1b92194e7" arch="amd64" />
<package name="plesk-php83-snmp" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-snmp_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="20596" buildtime="0" md5="c28776284504a84b14372b806b06a2c0" arch="amd64" />
<package name="plesk-php83-soap" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-soap_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="126792" buildtime="0" md5="fff151759330d21b00e75738104eb7d6" arch="amd64" />
<package name="plesk-php83-sodium" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-sodium_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="26960" buildtime="0" md5="3af0566b7d3c78b3d032b72eb9eccce0" arch="amd64" />
<package name="plesk-php83-tidy" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-tidy_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="18092" buildtime="0" md5="8566c76d9a32f1bb251abb99a1f79361" arch="amd64" />
<package name="plesk-php83-xdebug" version="3.5.0" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-xdebug_3.5.0-ubuntu.24.04.251218.2005_amd64.deb" size="146940" buildtime="0" md5="452c5bf0e37dfe6ea69074570b4804ce" arch="amd64" />
<package name="plesk-php83-xml" version="8.3.29" release="ubuntu.24.04.251218.2005" file="packages/plesk-php83-xml_8.3.29-ubuntu.24.04.251218.2005_amd64.deb" size="86060" buildtime="0" md5="45cc8b3c47572f0091132f0740eb5518" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php83" name="PHP v 8.3">
<release id="PHP_8_3" name="PHP v 8.3" version="8.3.29">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.57" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php83-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php83-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php83-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="php83-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php83-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="php83-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="php83-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php83-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php83-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php83-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php83-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php83-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php83-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="php83-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php83-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php83-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php83-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php83-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php83-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php83-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php83-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php83-ubt24.04-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP84" yum_repo_name="PHP 8.4" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php84">
<keypackages>
<keypackage>plesk-php84</keypackage>
</keypackages>
<release id="PHP_8_4" name="PHP v 8.4" version="8.4.16" upgrade_allowed_from="" />
</product>
<component name="php8.4" description="PHP 8.4" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php84" />
</keypackages>
<package name="plesk-php84" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="546056" buildtime="0" md5="968a39e51b141570a9bd1298d5011367" arch="amd64" />
<package name="plesk-php84-bcmath" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-bcmath_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="26016" buildtime="0" md5="960d99e0d20e35188c39f85d9c2c5110" arch="amd64" />
<package name="plesk-php84-cli" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-cli_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="3685444" buildtime="0" md5="98e4da991eb65489bb37cb550784dbb7" arch="amd64" />
<package name="plesk-php84-dba" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-dba_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="21528" buildtime="0" md5="7ed80ee26eb7d0ad976782c85cc5f955" arch="amd64" />
<package name="plesk-php84-enchant" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-enchant_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="8888" buildtime="0" md5="9eb0dcd104faacb212aad2d27f6f299f" arch="amd64" />
<package name="plesk-php84-fpm" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-fpm_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="2205064" buildtime="0" md5="31396ceb6bfa47212ace39ca76e24481" arch="amd64" />
<package name="plesk-php84-gd" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-gd_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="114292" buildtime="0" md5="3dd89645faf0906e007c17434e960bda" arch="amd64" />
<package name="plesk-php84-imagick" version="3.8.1" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-imagick_3.8.1-ubuntu.24.04.251219.0536_amd64.deb" size="92484" buildtime="0" md5="bac5dc63e1f6648017df10c4ec1876ad" arch="amd64" />
<package name="plesk-php84-imap" version="1.0.3" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-imap_1.0.3-ubuntu.24.04.251219.0536_amd64.deb" size="32436" buildtime="0" md5="038d9f82058495c5b45cf47411d8b2e0" arch="amd64" />
<package name="plesk-php84-intl" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-intl_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="159104" buildtime="0" md5="21d6857fb4068fd7202f25c52d4625f9" arch="amd64" />
<package name="plesk-php84-ldap" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-ldap_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="31184" buildtime="0" md5="4beeec7f42c273848a712439842769cc" arch="amd64" />
<package name="plesk-php84-mbstring" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-mbstring_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="451188" buildtime="0" md5="65b53496c6ad2590d0a2bd66869c159a" arch="amd64" />
<package name="plesk-php84-mysql" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-mysql_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="116952" buildtime="0" md5="c53915167dc57ab01147b0ea8cb8338e" arch="amd64" />
<package name="plesk-php84-odbc" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-odbc_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="35856" buildtime="0" md5="603869b100d09400f121d13e9350e226" arch="amd64" />
<package name="plesk-php84-opcache" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-opcache_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="483088" buildtime="0" md5="dde370a76b6a90c3afadb479afa6ee76" arch="amd64" />
<package name="plesk-php84-pdo" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-pdo_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="71564" buildtime="0" md5="cfbfa1e567aa8b71be043932bae23b48" arch="amd64" />
<package name="plesk-php84-pear" version="1.10.17" release="ubuntu.24.04.251222.0858" file="packages/plesk-php84-pear_1.10.17-ubuntu.24.04.251222.0858_all.deb" size="272988" buildtime="0" md5="38aacc02f8669324aeb89f7297a3dd85" arch="all" />
<package name="plesk-php84-pgsql" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-pgsql_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="69048" buildtime="0" md5="139d288960e1b8566e49e86bd424acac" arch="amd64" />
<package name="plesk-php84-process" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-process_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="21704" buildtime="0" md5="dfd09d76f68c418d9ba5d01629629677" arch="amd64" />
<package name="plesk-php84-pspell" version="1.0.1" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-pspell_1.0.1-ubuntu.24.04.251219.0536_amd64.deb" size="7992" buildtime="0" md5="b0d3f8318f8a0a5f03846bb755f3bcb1" arch="amd64" />
<package name="plesk-php84-redis" version="6.3.0" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-redis_6.3.0-ubuntu.24.04.251219.0536_amd64.deb" size="177920" buildtime="0" md5="b4cf57b0df72871a86fd5517fd1e1ebe" arch="amd64" />
<package name="plesk-php84-snmp" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-snmp_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="20516" buildtime="0" md5="44d771f3c38f2c6efe617239df8b5707" arch="amd64" />
<package name="plesk-php84-soap" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-soap_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="129392" buildtime="0" md5="8d4dcc16fb79e832440ed5eabfa1a9a4" arch="amd64" />
<package name="plesk-php84-sodium" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-sodium_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="27116" buildtime="0" md5="42ab21a6427c18b6b8eee6d5d01866b4" arch="amd64" />
<package name="plesk-php84-tidy" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-tidy_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="18388" buildtime="0" md5="4c774fb8adb63eddaa28cf57885ff6d8" arch="amd64" />
<package name="plesk-php84-xdebug" version="3.5.0" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-xdebug_3.5.0-ubuntu.24.04.251219.0536_amd64.deb" size="147136" buildtime="0" md5="eee777c998d425dbf315ed2c755ad1e6" arch="amd64" />
<package name="plesk-php84-xml" version="8.4.16" release="ubuntu.24.04.251219.0536" file="packages/plesk-php84-xml_8.4.16-ubuntu.24.04.251219.0536_amd64.deb" size="476964" buildtime="0" md5="9319428caeef0bd1ea2c44b099fc7207" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php84" name="PHP v 8.4">
<release id="PHP_8_4" name="PHP v 8.4" version="8.4.16">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.67" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php84-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php84-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php84-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php84-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="php84-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php84-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php84-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php84-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php84-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php84-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php84-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="php84-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php84-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php84-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php84-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php84-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php84-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php84-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php84-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php84-ubt24.04-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" persistent_repo="true" yum_repo_id="PLESK_17_PHP85" yum_repo_name="PHP 8.5" apt_source="" persistent_apt_source=" noble all">
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="php85">
<keypackages>
<keypackage>plesk-php85</keypackage>
</keypackages>
<release id="PHP_8_5" name="PHP v 8.5" version="8.5.1" upgrade_allowed_from="" />
</product>
<component name="php8.5" description="PHP 8.5" classes="vendor=parallels">
<keypackages>
<keypackage name="plesk-php85" />
</keypackages>
<package name="plesk-php85" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="561796" buildtime="0" md5="e182baf9e6dc0ed64d697badce58e555" arch="amd64" />
<package name="plesk-php85-bcmath" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-bcmath_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="26688" buildtime="0" md5="63a24b925c848e19e040be6c36a9920d" arch="amd64" />
<package name="plesk-php85-cli" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-cli_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="12715084" buildtime="0" md5="964dd7d3ff64feaf5d93328f87adf69b" arch="amd64" />
<package name="plesk-php85-dba" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-dba_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="21512" buildtime="0" md5="304c26318f86f8f687d6607fd0cc746b" arch="amd64" />
<package name="plesk-php85-enchant" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-enchant_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="9188" buildtime="0" md5="f80a01d1a285e833c4dbeb2496d53fdd" arch="amd64" />
<package name="plesk-php85-fpm" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-fpm_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="3190064" buildtime="0" md5="3d8c968a7078d940bdcadc684e6ddc30" arch="amd64" />
<package name="plesk-php85-gd" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-gd_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="113036" buildtime="0" md5="f18e37f9690110687ccf9763424c9930" arch="amd64" />
<package name="plesk-php85-imagick" version="3.8.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-imagick_3.8.1-ubuntu.24.04.251218.1956_amd64.deb" size="91764" buildtime="0" md5="6f7151ad1e342c77b5baaf388751fd48" arch="amd64" />
<package name="plesk-php85-imap" version="1.0.3" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-imap_1.0.3-ubuntu.24.04.251218.1956_amd64.deb" size="32612" buildtime="0" md5="167cc4426cd0e79258ca2c475e533790" arch="amd64" />
<package name="plesk-php85-intl" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-intl_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="160616" buildtime="0" md5="f1035ff9861c045bb7a9596610c55f33" arch="amd64" />
<package name="plesk-php85-ldap" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-ldap_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="31200" buildtime="0" md5="e96023239943f672510309f089de742b" arch="amd64" />
<package name="plesk-php85-mbstring" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-mbstring_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="451088" buildtime="0" md5="1866786bd1a2d38469ada49a9e31a789" arch="amd64" />
<package name="plesk-php85-mysql" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-mysql_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="117740" buildtime="0" md5="6a899428067657fef119cb530056e03b" arch="amd64" />
<package name="plesk-php85-odbc" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-odbc_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="35912" buildtime="0" md5="00bbef3a0677a5e208a1f5dc72748739" arch="amd64" />
<package name="plesk-php85-pdo" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-pdo_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="73072" buildtime="0" md5="e186b47c68f3ed8d838ea6cab1856b53" arch="amd64" />
<package name="plesk-php85-pear" version="1.10.17" release="ubuntu.24.04.251222.0858" file="packages/plesk-php85-pear_1.10.17-ubuntu.24.04.251222.0858_all.deb" size="273024" buildtime="0" md5="7088d1081e4ddd7456738c25c52bbfaf" arch="all" />
<package name="plesk-php85-pgsql" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-pgsql_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="71268" buildtime="0" md5="4c6fa5a1ccfa14a40a85122f9d9cda91" arch="amd64" />
<package name="plesk-php85-process" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-process_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="21904" buildtime="0" md5="a0549e37ce6179979662f507f5f13698" arch="amd64" />
<package name="plesk-php85-pspell" version="1.0.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-pspell_1.0.1-ubuntu.24.04.251218.1956_amd64.deb" size="7968" buildtime="0" md5="ff1fee4377bb7de63279bb3bdf4907ce" arch="amd64" />
<package name="plesk-php85-redis" version="6.3.0" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-redis_6.3.0-ubuntu.24.04.251218.1956_amd64.deb" size="177668" buildtime="0" md5="19d848736c40a3c3d3dd544a3518e629" arch="amd64" />
<package name="plesk-php85-snmp" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-snmp_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="20608" buildtime="0" md5="8c1c26fa930f178a9a630e14d357888b" arch="amd64" />
<package name="plesk-php85-soap" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-soap_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="129652" buildtime="0" md5="331f8c8223008a6da57a404b2ab89285" arch="amd64" />
<package name="plesk-php85-sodium" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-sodium_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="27296" buildtime="0" md5="4084feac66ea86693754f9c34be3f2f2" arch="amd64" />
<package name="plesk-php85-tidy" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-tidy_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="18384" buildtime="0" md5="d50ddaa7d85a8d3d2143c07ff036083c" arch="amd64" />
<package name="plesk-php85-xdebug" version="3.5.0" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-xdebug_3.5.0-ubuntu.24.04.251218.1956_amd64.deb" size="147244" buildtime="0" md5="e9203ed0b612715257e8a87dcd0bead6" arch="amd64" />
<package name="plesk-php85-xml" version="8.5.1" release="ubuntu.24.04.251218.1956" file="packages/plesk-php85-xml_8.5.1-ubuntu.24.04.251218.1956_amd64.deb" size="161560" buildtime="0" md5="76bff2a056f54585533cea182af99d9f" arch="amd64" />
</component>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64" />
<force_remove_packages />
</build>

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php85" name="PHP v 8.5">
<release id="PHP_8_5" name="PHP v 8.5" version="8.5.1">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.74" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="php85-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="php85-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="php85-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php85-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="php85-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="php85-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="php85-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php85-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="php85-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="php85-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="php85-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="php85-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php85-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="php85-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="php85-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php85-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php85-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="php85-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="php85-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="php85-ubt24.04-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<addon id="apache" name="Apache with SNI support">
<release id="APACHE_2.2.31" name="Apache 2.2.31 with SNI support" version="2.2.31">
<compatibility_info>
<compatible product_id="plesk" from_version="11.0.0" to_version="17.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="APACHE_2.2.31/apache-2.2.31-rh5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="APACHE_2.2.31/apache-2.2.31-rh5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="APACHE_2.2.31/apache-2.2.31-rh5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="APACHE_2.2.31/apache-2.2.31-rh5-x86_64.inf3"/>
</release>
<release id="APACHE_2_2_22" name="Apache 2.2.22 with SNI support" version="2.2.22">
<compatibility_info>
<compatible product_id="plesk" from_version="10.2.0" to_version="10.9.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="APACHE_2.2.22/apache-2.2.22-rh5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="APACHE_2.2.22/apache-2.2.22-rh5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="APACHE_2.2.22/apache-2.2.22-rh5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="APACHE_2.2.22/apache-2.2.22-rh5-x86_64.inf3"/>
</release>
</addon>

1396
root/parallels/billing.inf3 Normal file

File diff suppressed because it is too large Load Diff

42
root/parallels/mysql.inf3 Normal file
View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<addon id="mysql" name="MySQL">
<release id="MYSQL_5_5_52" name="MySQL v 5.5.52" version="5.5.52">
<compatibility_info>
<compatible product_id="plesk" from_version="11.0.9" to_version="17.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="MYSQL_5.5.52/mysql-5.5.52-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="MYSQL_5.5.52/mysql-5.5.52-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="MYSQL_5.5.52/mysql-5.5.52-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="MYSQL_5.5.52/mysql-5.5.52-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="MYSQL_5.5.52/mysql-5.5.52-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="MYSQL_5.5.52/mysql-5.5.52-rhel5-x86_64.inf3"/>
</release>
<release id="MYSQL_5_5" name="MySQL v 5.5" version="5.5">
<compatibility_info>
<compatible product_id="plesk" from_version="10.3.0" to_version="11.0.8" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="MYSQL_5.5/mysql-5.5-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="MYSQL_5.5/mysql-5.5-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="MYSQL_5.5/mysql-5.5-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="MYSQL_5.5/mysql-5.5-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="MYSQL_5.5/mysql-5.5-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="MYSQL_5.5/mysql-5.5-rhel5-x86_64.inf3"/>
</release>
<release id="MYSQL_5_1" name="MySQL v 5.1" version="5.1">
<compatibility_info>
<compatible product_id="plesk" from_version="10.0.0" to_version="10.3.0" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="MYSQL_5.1/mysql-5.1-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="MYSQL_5.1/mysql-5.1-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="MYSQL_5.1/mysql-5.1-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="MYSQL_5.1/mysql-5.1-rhel5-x86_64.inf3"/>
</release>
</addon>

419
root/parallels/nginx.inf3 Normal file
View File

@@ -0,0 +1,419 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- vim: set sw=2 ts=2 sts=2 et: -->
<addon id="nginx" name="NGINX reverse proxy server">
<release id="NGINX17" name="NGINX reverse proxy support for Plesk 17" version="1.11.10">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.17" to_version="17.0.16" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX17/nginx-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX17/nginx-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX17/nginx-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX17/nginx-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="NGINX17/nginx-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX17/nginx-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX17/nginx-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX17/nginx-ubt14.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="NGINX17/nginx-ubt16.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
</release>
<release id="NGINX17_1.11.1" name="NGINX reverse proxy support for Plesk 17" version="1.11.1">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.12" to_version="17.0.16" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX17/nginx-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX17/nginx-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX17/nginx-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX17/nginx-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="NGINX17/nginx-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX17/nginx-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX17/nginx-ubt14.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="NGINX17/nginx-ubt16.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="NGINX17/nginx-cos7-x86_64.inf3"/>
</release>
<release id="NGINX_1.9.14" name="NGINX v1.9.14 reverse proxy support" version="1.9.14">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.10" to_version="17.0.11" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="NGINX_1.9.14/nginx-1.9.14-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX_1.9.14/nginx-1.9.14-ubt14.04-x86_64.inf3"/>
</release>
<release id="NGINX_1.11.1" name="NGINX v1.11.1 reverse proxy support" version="1.11.1">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.18" to_version="12.5.30" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-cos5-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-cos5-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-cos6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-cos6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-rhel5-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-rhel5-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-rhel6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-rhel6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-rhel5-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-rhel5-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-rhel6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-rhel6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-deb6.0-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-deb6.0-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-deb7.0-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-deb7.0-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-deb8.0-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-deb8.0-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-suse12.3-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-suse12.3-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="13.1" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-suse13.1-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="13.1" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-suse13.1-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-ubt10.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-ubt10.04-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-ubt12.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-ubt12.04-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="NGINX_1.11.1/nginx-1.11.1-ubt14.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX_1.11.1/nginx-1.11.1-ubt14.04-x86_64.plesk12.inf3"/>
</release>
<release id="NGINX_1_9_2" name="NGINX v1.9.2 reverse proxy support" version="1.9.2">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.26" to_version="12.5.29" />
<compatible product_id="shm" from_version="12.1.26" to_version="12.5.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-deb6.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-deb6.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="NGINX_1.9.2/nginx-1.9.2-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX_1.9.2/nginx-1.9.2-ubt14.04-x86_64.inf3"/>
</release>
<release id="NGINX_1_6_2" name="NGINX v1.6.2 reverse proxy support" version="1.6.2">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.8" to_version="12.1.25" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-deb6.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-deb6.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="NGINX_1.6.2/nginx-1.6.2-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX_1.6.2/nginx-1.6.2-ubt14.04-x86_64.inf3"/>
</release>
<release id="NGINX_1_6_0" name="NGINX v1.6.0 reverse proxy support" version="1.6.0">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.19" to_version="12.1.7" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-suse12.3-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-suse12.3-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="13.1" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-suse13.1-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="13.1" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-suse13.1-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-deb6.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-deb6.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-ubt10.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-ubt10.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="NGINX_1.6.0/nginx-1.6.0-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="NGINX_1.6.0/nginx-1.6.0-ubt14.04-x86_64.inf3"/>
</release>
<release id="NGINX_1_5_13" name="NGINX v1.5.13 reverse proxy support" version="1.5.13">
<compatibility_info>
<compatible product_id="plesk" from_version="11.5.30" to_version="11.5.31" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.2" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-suse12.2-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.2" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-suse12.2-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-suse12.3-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-suse12.3-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="13.1" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-suse13.1-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="13.1" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-suse13.1-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-deb6.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-deb6.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-ubt10.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-ubt10.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="NGINX_1.5.13/nginx-1.5.13-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="NGINX_1.5.13/nginx-1.5.13-ubt12.04-x86_64.inf3"/>
</release>
<release id="NGINX_1_5_0" name="NGINX v1.5.0 reverse proxy support" version="1.5.0">
<compatibility_info>
<compatible product_id="plesk" from_version="11.5.29" to_version="12.0.16" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.2"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-suse12.2-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.2"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-suse12.2-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-suse12.3-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-suse12.3-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-deb6.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-deb6.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-ubt10.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-ubt10.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04"
os_arch="i386" config="NGINX_1.5.0/nginx-1.5.0-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04"
os_arch="x86_64" config="NGINX_1.5.0/nginx-1.5.0-ubt12.04-x86_64.inf3"/>
</release>
<release id="NGINX_1_3_0" name="NGINX v1.3.0 reverse proxy support" version="1.3.0">
<compatibility_info>
<compatible product_id="plesk" from_version="11.0.0" to_version="11.0.10" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="5"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-cos5-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="5"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-cos5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el5"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-rhel5-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="5"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-rhel5-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-rhel6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-rhel6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="11.4"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-suse11.4-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="11.4"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-suse11.4-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.1"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-suse12.1-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.1"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-suse12.1-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.2"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-suse12.2-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.2"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-suse12.2-x86_64.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-suse12.3-i386.inf3"/>
<build os_name="Linux" os_vendor="SuSE" os_version="12.3"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-suse12.3-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-deb6.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="6.0"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-deb6.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-ubt10.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="10.04"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-ubt10.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04"
os_arch="i386" config="NGINX_1.3.0/nginx-1.3.0-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04"
os_arch="x86_64" config="NGINX_1.3.0/nginx-1.3.0-ubt12.04-x86_64.inf3"/>
</release>
</addon>

57
root/parallels/php52.inf3 Normal file
View File

@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- vim: set sw=2 ts=2 sts=2 et: -->
<addon id="php52" name="PHP v 5.2">
<release id="PHP52_17" name="PHP v 5.2 for Plesk 17" version="5.2.17">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.12" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP52_17/php52-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP52_17/php52-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP52_17/php52-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP52_17/php52-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP52_17/php52-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP52_17/php52-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP52_17/php52-deb7.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP52_17/php52-deb8.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP52_17/php52-ubt12.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP52_17/php52-ubt14.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PHP52_17/php52-ubt16.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PHP52_17/php52-cos7-x86_64.plesk17.inf3"/>
</release>
<release id="PHP_5.2.17_FOR_12.0.18" name="PHP v 5.2.17" version="5.2.17">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.18" to_version="12.0.18" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-cos6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-ubt14.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-ubt14.04-x86_64.plesk12.inf3"/>
</release>
<release id="PHP_5.2.17" name="PHP v 5.2.17" version="5.2.17">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.16" to_version="17.0.10" />
<compatible product_id="shm" from_version="12.1.16" to_version="13.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.2.17/php52-5.2.17-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.2.17/php52-5.2.17-ubt14.04-x86_64.inf3"/>
</release>
</addon>

58
root/parallels/php53.inf3 Normal file
View File

@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- vim: set sw=2 ts=2 sts=2 et: -->
<addon id="php53" name="PHP v 5.3">
<release id="PHP53_17" name="PHP v 5.3 for Plesk 17" version="5.3.29">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.12" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP53_17/php53-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP53_17/php53-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP53_17/php53-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP53_17/php53-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP53_17/php53-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP53_17/php53-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP53_17/php53-deb7.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP53_17/php53-deb8.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP53_17/php53-ubt12.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP53_17/php53-ubt14.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PHP53_17/php53-ubt16.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PHP53_17/php53-cos7-x86_64.plesk17.inf3"/>
</release>
<release id="PHP_5.3.29_FOR_12.0.18" name="PHP v 5.3.29" version="5.3.29">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.18" to_version="12.0.18" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-cos6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-ubt14.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-ubt14.04-x86_64.plesk12.inf3"/>
</release>
<release id="PHP_5.3.29" name="PHP v 5.3.29" version="5.3.29">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.16" to_version="17.0.10" />
<compatible product_id="shm" from_version="12.1.16" to_version="13.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.3.29/php53-5.3.29-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.3.29/php53-5.3.29-ubt14.04-x86_64.inf3"/>
</release>
</addon>

59
root/parallels/php54.inf3 Normal file
View File

@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- vim: set sw=2 ts=2 sts=2 et: -->
<addon id="php54" name="PHP v 5.4">
<release id="PHP54_17" name="PHP v 5.4 for Plesk 17" version="5.4.45">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.12" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP54_17/php54-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP54_17/php54-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP54_17/php54-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP54_17/php54-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP54_17/php54-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP54_17/php54-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP54_17/php54-deb7.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP54_17/php54-deb8.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP54_17/php54-ubt12.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP54_17/php54-ubt14.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PHP54_17/php54-ubt16.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PHP54_17/php54-cos7-x86_64.plesk17.inf3"/>
</release>
<release id="PHP_5.4.45_FOR_12.0.18" name="PHP v 5.4.45" version="5.4.45">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.18" to_version="12.0.18" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-cos6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-ubt14.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-ubt14.04-x86_64.plesk12.inf3"/>
</release>
<release id="PHP_5.4.45" name="PHP v 5.4.45" version="5.4.45">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.0" to_version="17.0.10" />
<compatible product_id="shm" from_version="12.1.16" to_version="13.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.4.45/php54-5.4.45-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.4.45/php54-5.4.45-ubt14.04-x86_64.inf3"/>
</release>
</addon>

59
root/parallels/php55.inf3 Normal file
View File

@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- vim: set sw=2 ts=2 sts=2 et: -->
<addon id="php55" name="PHP v 5.5">
<release id="PHP55_17" name="PHP v 5.5 for Plesk 17" version="5.5.38">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.12" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP55_17/php55-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP55_17/php55-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP55_17/php55-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP55_17/php55-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP55_17/php55-cos6-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP55_17/php55-cos7-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP55_17/php55-deb7.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP55_17/php55-deb8.0-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP55_17/php55-ubt12.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP55_17/php55-ubt14.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PHP55_17/php55-ubt16.04-x86_64.plesk17.inf3"/>
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PHP55_17/php55-cos7-x86_64.plesk17.inf3"/>
</release>
<release id="PHP_5.5.38_FOR_12.0.18" name="PHP v 5.5.38" version="5.5.38">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.18" to_version="12.0.18" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-cos6-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos6-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos7-x86_64.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-ubt14.04-i386.plesk12.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-ubt14.04-x86_64.plesk12.inf3"/>
</release>
<release id="PHP_5.5.38" name="PHP v 5.5.38" version="5.5.38">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.0" to_version="17.0.10" />
<compatible product_id="shm" from_version="12.1.0" to_version="13.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-cos6-i386.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos6-x86_64.inf3"/>
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-cos7-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-deb7.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-deb7.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-deb8.0-i386.inf3"/>
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-deb8.0-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-ubt12.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-ubt12.04-x86_64.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.5.38/php55-5.5.38-ubt14.04-i386.inf3"/>
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.5.38/php55-5.5.38-ubt14.04-x86_64.inf3"/>
</release>
</addon>

71
root/parallels/php56.inf3 Normal file
View File

@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php56" name="PHP v 5.6">
<release id="PHP_5_6" name="PHP v 5.6" version="5.6.40">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.56" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="PHP56_17/php56-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="PHP56_17/php56-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="PHP56_17/php56-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="PHP56_17/php56-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="PHP56_17/php56-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="PHP56_17/php56-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="PHP56_17/php56-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="PHP56_17/php56-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="PHP56_17/php56-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="PHP56_17/php56-rhel8-x86_64.inf3" />
</release>
<release id="PHP56_17" name="PHP v 5.6 for Plesk 17" version="5.6.40">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.12" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP56_17/php56-cos6-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP56_17/php56-cos7-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP56_17/php56-cos6-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP56_17/php56-cos7-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP56_17/php56-cos6-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP56_17/php56-cos7-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP56_17/php56-deb7.0-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP56_17/php56-deb8.0-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP56_17/php56-ubt12.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP56_17/php56-ubt14.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PHP56_17/php56-ubt16.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PHP56_17/php56-cos7-x86_64.plesk17.inf3" />
</release>
<release id="PHP_5.6.33_FOR_12.0.18" name="PHP v 5.6.33" version="5.6.33">
<compatibility_info>
<compatible product_id="plesk" from_version="12.0.18" to_version="12.0.18" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.6.33/php56-5.6.33-cos6-i386.plesk12.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.6.33/php56-5.6.33-cos6-x86_64.plesk12.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.6.33/php56-5.6.33-cos7-x86_64.plesk12.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.6.33/php56-5.6.33-ubt14.04-i386.plesk12.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.6.33/php56-5.6.33-ubt14.04-x86_64.plesk12.inf3" />
</release>
<release id="PHP_5.6.35" name="PHP v 5.6.35" version="5.6.35">
<compatibility_info>
<compatible product_id="plesk" from_version="12.1.0" to_version="17.0.10" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-deb7.0-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-deb7.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-deb8.0-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-ubt12.04-i386.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-ubt12.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_5.6.35/php56-5.6.35-ubt14.04-i386.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_5.6.35/php56-5.6.35-ubt14.04-x86_64.inf3" />
</release>
</addon>

66
root/parallels/php70.inf3 Normal file
View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php70" name="PHP v 7.0">
<release id="PHP_7_0" name="PHP v 7.0" version="7.0.33">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.56" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="PHP70_17/php70-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="PHP70_17/php70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="PHP70_17/php70-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="PHP70_17/php70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="PHP70_17/php70-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="PHP70_17/php70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="PHP70_17/php70-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="PHP70_17/php70-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="PHP70_17/php70-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="PHP70_17/php70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="PHP70_17/php70-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="PHP70_17/php70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="PHP70_17/php70-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="PHP70_17/php70-ubt22.04-x86_64.inf3" />
</release>
<release id="PHP70_17" name="PHP v 7.0 for Plesk 17" version="7.0.33">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.15" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP70_17/php70-cos6-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP70_17/php70-cos7-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP70_17/php70-cos6-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP70_17/php70-cos7-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP70_17/php70-cos6-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP70_17/php70-cos7-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP70_17/php70-deb7.0-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP70_17/php70-deb8.0-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="PHP70_17/php70-deb9.0-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP70_17/php70-ubt12.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP70_17/php70-ubt14.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PHP70_17/php70-ubt16.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="PHP70_17/php70-ubt18.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PHP70_17/php70-cos7-x86_64.plesk17.inf3" />
</release>
<release id="PHP_7.0.29" name="PHP v 7.0.29" version="7.0.29">
<compatibility_info>
<compatible product_id="plesk" from_version="12.5.30" to_version="17.0.10" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-deb7.0-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-deb7.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-deb8.0-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-ubt12.04-i386.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-ubt12.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PHP_7.0.29/php70-7.0.29-ubt14.04-i386.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_7.0.29/php70-7.0.29-ubt14.04-x86_64.inf3" />
</release>
</addon>

41
root/parallels/php71.inf3 Normal file
View File

@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php71" name="PHP v 7.1">
<release id="PHP_7_1" name="PHP v 7.1" version="7.1.33">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.56" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="pool/PHP_7.1.33_14/php71-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="pool/PHP_7.1.33_14/php71-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="pool/PHP_7.1.33_17/php71-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="pool/PHP_7.1.33_17/php71-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="pool/PHP_7.1.33_14/php71-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="pool/PHP_7.1.33_17/php71-ubt22.04-x86_64.inf3" />
</release>
<release id="PHP71_17" name="PHP v 7.1" version="7.1.33">
<compatibility_info>
<compatible product_id="plesk" from_version="17.0.17" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-deb9.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="pool/PHP_7.1.33_98/php71-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="pool/PHP_7.1.33_96/php71-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="pool/PHP_7.1.33_96/php71-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="pool/PHP_7.1.33_96/php71-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="pool/PHP_7.1.33_96/php71-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="pool/PHP_7.1.33_96/php71-ubt16.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_7.1.26/php71-deb7.0-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PHP_7.1.26/php71-ubt12.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_7.1.29/php71-ubt14.04-x86_64.plesk17.inf3" />
</release>
</addon>

40
root/parallels/php72.inf3 Normal file
View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php72" name="PHP v 7.2">
<release id="PHP_7_2" name="PHP v 7.2" version="7.2.34">
<compatibility_info>
<compatible product_id="plesk" from_version="17.5.3" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="pool/PHP_7.2.34_22/php72-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="pool/PHP_7.2.34_22/php72-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="pool/PHP_7.2.34_26/php72-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="pool/PHP_7.2.34_26/php72-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="pool/PHP_7.2.34_22/php72-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="pool/PHP_7.2.34_26/php72-ubt22.04-x86_64.inf3" />
</release>
<release id="PHP72_17" name="PHP v 7.2" version="7.2.34">
<compatibility_info>
<compatible product_id="plesk" from_version="17.5.3" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-deb9.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="pool/PHP_7.2.34_151/php72-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="pool/PHP_7.2.34_150/php72-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="pool/PHP_7.2.34_150/php72-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="pool/PHP_7.2.34_150/php72-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="pool/PHP_7.2.34_150/php72-ubt16.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="pool/PHP_7.2.32_136/php72-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_7.2.18/php72-ubt14.04-x86_64.plesk17.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PHP_7.2.14/php72-deb7.0-x86_64.plesk17.inf3" />
</release>
</addon>

40
root/parallels/php73.inf3 Normal file
View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php73" name="PHP v 7.3">
<release id="PHP_7_3" name="PHP v 7.3" version="7.3.33">
<compatibility_info>
<compatible product_id="plesk" from_version="17.8.11" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="pool/PHP_7.3.33_13/php73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="10" os_arch="x86_64" config="pool/PHP_7.3.33_13/php73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="pool/PHP_7.3.33_17/php73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="pool/PHP_7.3.33_17/php73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="pool/PHP_7.3.33_13/php73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="pool/PHP_7.3.33_17/php73-ubt22.04-x86_64.inf3" />
</release>
<release id="PHP73_17" name="PHP v 7.3" version="7.3">
<compatibility_info>
<compatible product_id="plesk" from_version="17.8.11" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-deb9.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="pool/PHP_7.3.33_248/php73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="pool/PHP_7.3.25_185/php73-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="pool/PHP_7.3.25_185/php73-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="pool/PHP_7.3.25_185/php73-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="pool/PHP_7.3.20_172/php73-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PHP_7.3.5/php73-ubt14.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="pool/PHP_7.3.27_219/php73-ubt16.04-x86_64.inf3" />
</release>
</addon>

24
root/parallels/php74.inf3 Normal file
View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php74" name="PHP v 7.4">
<release id="PHP74_17" name="PHP v 7.4" version="7.4">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.21" to_version="18.0.99" />
</compatibility_info>
<!--
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="php74-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="php74-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="php74-cos8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="php74-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="php74-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="php74-cos7-x86_64.inf3" />
-->
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="aarch64" config="pool/PHP_7.4.33_209/php74-ubt20.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="pool/PHP_7.4.28_159/php74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="pool/PHP_7.4.16_111/php74-ubt16.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="pool/PHP_7.4.8_59/php74-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="pool/PHP_7.4.30_175/php74-deb9.0-x86_64.inf3" />
</release>
</addon>

13
root/parallels/php80.inf3 Normal file
View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php80" name="PHP v 8.0">
<release id="PHP80_17" name="PHP v 8.0" version="8.0">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.21" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="pool/PHP_8.0.16_86/php80-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="pool/PHP_8.0.3_36/php80-ubt16.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="pool/PHP_8.0.20_104/php80-deb9.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="aarch64" config="pool/PHP_8.0.25_141/php80-ubt20.04-aarch64.inf3" />
</release>
</addon>

18
root/parallels/php81.inf3 Normal file
View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php81" name="PHP v 8.1">
<release id="PHP81_17" name="PHP v 8.1" version="8.1">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.40" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="CentOS" os_version="8" os_arch="x86_64" config="pool/PHP_8.1.3_27/php81-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="9.0" os_arch="x86_64" config="pool/PHP_8.1.7_45/php81-deb9.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="aarch64" config="pool/PHP_8.1.12_87/php81-ubt20.04-aarch64.inf3" />
<!--
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="pool/PHP_8.1.19_114/php81-ubt18.04-x86_64.inf3" />
-->
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="pool/PHP_8.1.32_44/php81-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="pool/PHP_8.1.32_44/php81-cos7-x86_64.inf3" />
</release>
</addon>

14
root/parallels/php82.inf3 Normal file
View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php81" name="PHP v 8.2">
<release id="PHP81_17" name="PHP v 8.2" version="8.2">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.48" to_version="18.0.99" />
</compatibility_info>
<!--
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="pool/PHP_8.2.6_37/php82-ubt18.04-x86_64.inf3" />
-->
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="pool/PHP_8.2.28_137/php82-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="pool/PHP_8.2.28_137/php82-cos7-x86_64.inf3" />
</release>
</addon>

11
root/parallels/php83.inf3 Normal file
View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="php83" name="PHP v 8.3">
<release id="PHP83_17" name="PHP v 8.3" version="8.3">
<compatibility_info>
<compatible product_id="plesk" from_version="18.0.57" to_version="18.0.99" />
</compatibility_info>
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="pool/PHP_8.3.19_86/php83-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="pool/PHP_8.3.19_86/php83-cos7-x86_64.inf3" />
</release>
</addon>

2791
root/parallels/plesk.inf3 Normal file

File diff suppressed because it is too large Load Diff

36
root/parallels/pmm.inf3 Normal file
View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<addon id="pmm" name="Plesk Migrator">
<release id="PMM_0.1.10" name="Plesk migrator v 0.1.10" version="0.1.10">
<compatibility_info>
<compatible product_id="plesk" from_version="12.5.30" to_version="17.8.1" />
</compatibility_info>
<build os_name="Linux" os_vendor="Ubuntu" os_version="16.04" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-ubt16.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-ubt14.04-i386.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="14.04" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-ubt14.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-ubt12.04-i386.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="12.04" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-ubt12.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-deb8.0-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="8.0" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-deb8.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-deb6.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="6.0" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-deb6.0-i386.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos6-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="6" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el6" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="6" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-cos6-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-deb7.0-i386.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="7.0" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-deb7.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-cos5-i386.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-cos5-i386.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="i386" config="PMM_0.1.10/pmm-0.1.10-cos5-i386.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="5" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos5-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el5" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos5-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="5" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos5-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="PMM_0.1.10/pmm-0.1.10-cos7-x86_64.inf3" />
</release>
</addon>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_64" name="Plesk Obsidian 18.0.64" version="18.0.64" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.64-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.64-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.64-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.64-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.64-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.64-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.64-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.64-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="plesk-18.0.64-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.64-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.64-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.64-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.64-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.64-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.64-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.64-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.64-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.64-cos7-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_65" name="Plesk Obsidian 18.0.65" version="18.0.65" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.65-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.65-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.65-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.65-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.65-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.65-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.65-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.65-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="plesk-18.0.65-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.65-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.65-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.65-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.65-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.65-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.65-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.65-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.65-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.65-cos7-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_66" name="Plesk Obsidian 18.0.66" version="18.0.66" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.66-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.66-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.66-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.66-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.66-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.66-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.66-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.66-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="plesk-18.0.66-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.66-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.66-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.66-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.66-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.66-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.66-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.66-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.66-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.66-cos7-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_67" name="Plesk Obsidian 18.0.67" version="18.0.67" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.67-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.67-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.67-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.67-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.67-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.67-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.67-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.67-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.67-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="plesk-18.0.67-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.67-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.67-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.67-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.67-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.67-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.67-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.67-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.67-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.67-cos7-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_68" name="Plesk Obsidian 18.0.68" version="18.0.68" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.68-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.68-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.68-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.68-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.68-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.68-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.68-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.68-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.68-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el7" os_arch="x86_64" config="plesk-18.0.68-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.68-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.68-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.68-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.68-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.68-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.68-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.68-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.68-ubt24.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="VZLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.68-cos7-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_69" name="Plesk Obsidian 18.0.69" version="18.0.69" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.69-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.69-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.69-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.69-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.69-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.69-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.69-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.69-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.69-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.69-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.69-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.69-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.69-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.69-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.69-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.69-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.69-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_70" name="Plesk Obsidian 18.0.70" version="18.0.70" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.70-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.70-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.70-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.70-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.70-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.70-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.70-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.70-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.70-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.70-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.70-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.70-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.70-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.70-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.70-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_71" name="Plesk Obsidian 18.0.71" version="18.0.71" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.71-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.71-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.71-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.71-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.71-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.71-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.71-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.71-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.71-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.71-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.71-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.71-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.71-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.71-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.71-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.71-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.71-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.71-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.71-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,50 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
out()
{
echo -e "\t$*" >&2
}
print_urls()
{
plesk login 2>/dev/null | sed -e $'s|^|\t * |' >&2
}
print_congratulations()
{
local mode="$1" # 'install' or 'upgrade'
local process=
[ "$mode" = "install" ] && process="installation" || process="upgrade"
out
out " Congratulations!"
out
out "The $process has been finished. Plesk is now running on your server."
out
if [ "$mode" = "install" ]; then
out "To complete the configuration process, browse either of URLs:"
print_urls
out
fi
out "Use the username 'admin' to log in. To log in as 'admin', use the 'plesk login' command."
out "You can also log in as 'root' using your 'root' password."
out
out "Use the 'plesk' command to manage the server. Run 'plesk help' for more info."
out
out "Use the following commands to start and stop the Plesk web interface:"
out "'systemctl start psa.service' and 'systemctl stop psa.service' respectively."
out
if [ "$mode" = "install" ]; then
out "If you would like to migrate your subscriptions from other hosting panel"
out "or older Plesk version to this server, please check out our assistance"
out "options: https://www.plesk.com/professional-services/"
out
fi
}
unset GREP_OPTIONS
print_congratulations "$1"
# Force showing text when used as AI post-examiner
exit 1

View File

@@ -0,0 +1,532 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# disk_space_check.sh writes single line json report into it with the following fields:
# - "stage": "diskspacecheck"
# - "level": "error"
# - "errtype": "notenoughdiskspace"
# - "volume": volume with not enough diskspace (e.g. "/")
# - "required": required diskspace on the volume, human readable (e.g. "600 MB")
# - "available": available diskspace on the volume, human readable (e.g. "255 MB")
# - "needtofree": amount of diskspace which should be freed on the volume, human readable (e.g. "345 MB")
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message ("There is not enough disk space available in the / directory.")
# Required values below for Full installation are in MB. See 'du -cs -BM /*' and 'df -Pm'.
required_disk_space_cloudlinux7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4400 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_cloudlinux8()
{
case "$1" in
/opt) echo 1200 ;;
/usr) echo 4400 ;;
/var) echo 700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4100 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos8()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4500 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_virtuozzo7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_almalinux8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rocky8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rhel9()
{
case "$1" in
/opt) echo 500 ;;
/usr) echo 4000 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_almalinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_almalinux10()
{
required_disk_space_almalinux9 "$1"
}
required_disk_space_cloudlinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_debian10()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2300 ;;
/var) echo 1700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian11()
{
case "$1" in
/opt) echo 1500 ;;
/usr) echo 3100 ;;
/var) echo 1800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian12()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu18()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 1800 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu20()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2900 ;;
/var) echo 1600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu22()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 3900 ;;
/var) echo 1900 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu24()
{
case "$1" in
/opt) echo 3200 ;;
/usr) echo 1800 ;;
/var) echo 2400 ;;
/tmp) echo 100 ;;
esac
}
required_update_upgrade_disk_space()
{
case "$1" in
/opt) echo 100 ;;
/usr) echo 300 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
clean_tmp()
{
local volume="$1"
local path="/tmp"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'systemd-tmpfiles --clean --prefix $path'"
systemd-tmpfiles --clean --prefix "$path" 2>&1
}
clean_yum()
{
local volume="$1"
local path="/var/cache/yum"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'yum clean all'"
yum clean all 2>&1
# The command above doesn't clean untracked repos (missing in configuration), clean if left > 2 Mb
[ "`du -sm "$path" | awk '{ print $1 }'`" -gt 2 ] || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
clean_dnf()
{
local volume="$1"
local path="/var/cache/dnf"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'dnf clean all'"
dnf clean all 2>&1
}
clean_apt()
{
local volume="$1"
local path="/var/cache/apt"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'apt-get clean'"
apt-get clean 2>&1
}
clean_journal()
{
local volume="$1"
local path="/var/log/journal"
is_path_on_volume "$path" "$volume" || return 0
# Note that --rotate may cause more space to be freed, but may also cause more space to be used
echo "Cleaning $path via 'journalctl --vacuum-time 1d'"
journalctl --vacuum-time 1d 2>&1
}
clean_ext_packages()
{
local volume="$1"
local path="$PRODUCT_ROOT_D/var/modules-packages"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
# @param $1 target directory
mount_point()
{
df -Pm $1 | awk 'NR==2 { print $6 }'
}
# @param $1 target directory
available_disk_space()
{
df -Pm $1 | awk 'NR==2 { print $4 }'
}
is_path_on_volume()
{
local path="$1"
local volume="$2"
[ -d "$path" ] && [ "`mount_point "$path"`" = "$volume" ]
}
# @param $1 target directory
# @param $2 mode (install/upgrade/update)
req_disk_space()
{
if [ "$2" != "install" ]; then
required_update_upgrade_disk_space "$1"
return
fi
has_os_impl_function "required_disk_space" || {
echo "There are no requirements defined for $os_name$os_version." >&2
echo "Disk space check cannot be performed." >&2
exit $RET_WARN
}
call_os_impl_function "required_disk_space" "$1"
}
human_readable_size()
{
echo "$1" | awk '
function human(x) {
s = "MGTEPYZ";
while (x >= 1000 && length(s) > 1) {
x /= 1024; s = substr(s, 2);
}
# 0.05 below will make sure the value is rounded up
return sprintf("%.1f %sB", x + 0.05, substr(s, 1, 1));
}
{ print human($1); }'
}
# @param $1 target directory
# @param $2 required disk space
# @param $3 check only flag (don't emit errors)
check_available_disk_space()
{
local volume="$1"
local required="$2"
local check_only="${3:-}"
local available="$(available_disk_space "$volume")"
if [ "$available" -lt "$required" ]; then
local needtofree
needtofree="`human_readable_size $((required - available))`"
[ -n "$check_only" ] ||
make_error_report 'stage=diskspacecheck' 'level=error' 'errtype=notenoughdiskspace' \
"volume=$volume" "required=$required MB" "available=$available MB" "needtofree=$needtofree" \
<<-EOL
There is not enough disk space available in the $1 directory.
You need to free up $needtofree.
EOL
return "$RET_FATAL"
fi
}
# @param $1 target directory
# @param $2 required disk space
clean_and_check_available_disk_space()
{
if [ -n "$PLESK_INSTALLER_FORCE_CLEAN_DISK_SPACE" ] || ! check_available_disk_space "$@" --check-only; then
clean_disk_space "$1"
check_available_disk_space "$@"
fi
}
# Cleans up disk space on the volume
clean_disk_space()
{
local volume="$1"
for cleanup_func in clean_tmp clean_yum clean_dnf clean_apt clean_journal clean_ext_packages; do
"$cleanup_func" "$volume"
done
}
# @param $1 mode (install/upgrade/update)
clean_and_check_disk_space()
{
local mode="$1"
local shared=0
for target_directory in /opt /usr /var /tmp; do
local required=$(req_disk_space "$target_directory" "$mode")
[ -n "$required" ] || return "$RET_WARN"
if is_path_on_volume "$target_directory" "/"; then
shared="$((shared + required))"
else
clean_and_check_available_disk_space "$target_directory" "$required" || return $?
fi
done
clean_and_check_available_disk_space "/" "$shared" || return $?
}
checker_main 'clean_and_check_disk_space' "$1"

View File

@@ -0,0 +1,224 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
check_package_manager_deb_based()
{
local output=
output="`dpkg --audit 2>&1`" || output="$output"$'\n'"'dpkg --audit' finished with error code $?."
if [ -n "$output" ]; then
make_error_report 'stage=packagemanagercheck' 'level=error' 'errtype=brokenpackages' <<-EOL
The system package manager reports the following problems:
$output
To continue with the installation, you need to resolve these issues
using the procedure below:
1. Make sure you have a full server snapshot. Although the
following steps are usually safe, they can still cause
data loss or irreversible changes.
2. Run 'dpkg --configure -a'. This command can fix some of the
issues. However, it may fail. Regardless if it fails or not,
proceed with the following steps.
3. Run 'PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK=1 plesk installer update --skip-cleanup'.
Instead of 'update', you may need to use the command you used
previously (for example, 'upgrade' or 'install').
4. The next step depends on the outcome of the previous one:
- If step 3 was completed with the "You already have the latest
version of product(s) and all the selected components installed.
Installation will not continue." message,
run 'plesk repair installation'.
- If step 3 failed, run 'dpkg --audit'. This command can show you
packages that need to be reinstalled. To reinstall them, run
'apt-get install --reinstall <packages>'.
5. Run 'plesk installer update' to revert temporary changes and
validate that the issues are resolved. If the command fails or
triggers this check again, contact Plesk support.
For more information, see
https://support.plesk.com/hc/en-us/articles/12871173047447-Plesk-update-on-Debian-Ubuntu-fails-dpkg-was-interrupted-you-must-manually-run-dpkg-configure-a-to-correct-the-problem
EOL
return "$RET_FATAL"
fi
}
check_package_manager_debian()
{
check_package_manager_deb_based
}
check_package_manager_ubuntu()
{
check_package_manager_deb_based
}
skip_checker_on_env "Package manager check" "$PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK"
skip_checker_on_flag "Package manager check" "/tmp/plesk-installer-skip-package-manager-check.flag"
checker_main 'check_package_manager' "$@"

View File

@@ -0,0 +1,38 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo $*
exit 1
}
[ -n "$1" ] || die "Usage: $0 php_script [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
php_bin=
lookup()
{
[ -z "$php_bin" ] || return
local paths="$1"
local name="$2"
for path in $paths; do
if [ -x "$path/$name" ]; then
php_bin="$path/$name"
break
fi
done
}
lookup "/usr/local/psa/admin/bin /opt/psa/admin/bin" "php"
lookup "/usr/local/psa/bin /opt/psa/bin" "sw-engine-pleskrun"
[ -n "$php_bin" ] || \
die "Unable to locate the sw-engine PHP interpreter to execute the script. Make sure that Parallels Plesk Panel is installed on this server."
exec "${php_bin}" "$@"

View File

@@ -0,0 +1,30 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo "$*"
exit 1
}
[ -f "$1" ] || die "Usage: $0 PEX [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
find_python_bin()
{
local bin
for bin in "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3" "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2"; do
[ -x "$bin" ] || continue
python_bin="$bin"
return 0
done
return 1
}
find_python_bin ||
die "Unable to locate Python interpreter to execute the script."
exec "$python_bin" "$@"

View File

@@ -0,0 +1,782 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# repository_check.sh writes single line json report into it with the following fields:
# - "stage": "repositorycheck"
# - "level": "error"
# - "errtype" is one of the following:
# * "reponotcached" - repository is not cached (mostly due to unavailability).
# * "reponotenabled" - required repository is not enabled.
# * "reponotsupported" - unsupported repository is enabled.
# * "configmanagernotinstalled" - dnf config-manager is disabled.
# - "repo": repository name.
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message.
report_no_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotenabled' "repo=$repo" <<-EOL
Plesk installation requires '$repo' OS repository to be enabled.
Make sure it is available and enabled, then try again.
EOL
}
report_no_repo_cache()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotcached' "repo=$repo" <<-EOL
Unable to create $package_manager cache for '$repo' OS repository.
Make sure the repository is available, otherwise either disable it or fix its configuration, then try again.
EOL
}
report_unsupported_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotsupported' "repo=$repo" <<-EOL
Plesk installation doesn't support '$repo' OS repository.
Make sure it is disabled, then try again.
EOL
}
report_rh_no_config_manager()
{
local target
case "$package_manager" in
yum)
target="yum-utils package"
;;
dnf)
target="config-manager dnf plugin"
;;
esac
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=configmanagernotinstalled' <<-EOL
Failed to install $target.
Make sure repositories configuration of $package_manager package manager is correct
(use '$package_manager repolist --verbose' to get its actual state), then try again.
EOL
}
check_rh_broken_repos()
{
local rh_enabled_repos rh_available_repos
# 1. `yum repolist` and `dnf repolist` list all repos
# which were enabled before last cache creation
# even if cache for them was not created.
# If some repo is misconfigured and cache was created with `skip_if_unavailable=1`
# then such repo will be listed anyway despite on cache state.
# If some repo was enabled after last cache creation
# then `repolist --cacheonly` will fail.
# 2. `yum repolist --verbose` and `dnf repoinfo` list only repos
# which were successfully cached before.
# These commands fail if at least one repo is not available
# and the 'skip_if_unavailable' flag is not set.
case "$package_manager" in
yum)
rh_enabled_repos="$(
{
yum repolist enabled --cacheonly -q 2>/dev/null \
|| yum repolist enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^\*\?!\?\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$(
yum repolist enabled --verbose --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's/^Repo-id\s*:\s*\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
;;
dnf)
rh_enabled_repos="$(
{
dnf repolist --enabled --cacheonly -q 2>/dev/null \
|| dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(\S\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$( \
dnf repoinfo --enabled --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's|^Repo-id\s*:\s*\(\S\+\)\s*$|\1|p'
)" || return $RET_FATAL
;;
esac
local rh_enabled_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_enabled_repos" | sort > "$rh_enabled_repos_f"
local rh_available_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_available_repos" | sort > "$rh_available_repos_f"
local repo rc=0
for repo in $(comm -23 "$rh_enabled_repos_f" "$rh_available_repos_f"); do
report_no_repo_cache "$repo"
rc=$RET_WARN
done
rm -f "$rh_enabled_repos_f" "$rh_available_repos_f"
return $rc
}
has_rh_enabled_repo()
{
local repo="$1"
# Try to get list of repos from cache first.
# If some repo was enabled after last cache creation
# or some repo is unavailable the query from cache will fail.
# Try to fetch actual metadata in this case.
case "$package_manager" in
yum)
# Repo-id may end with OS version and/or architecture
# if baseurl of the repo refers to $releasever and/or $basearch variables
# eg 'epel/7/x86_64', 'epel/7', 'epel/x86_64'
{
yum repolist enabled --verbose --cacheonly -q 2>/dev/null \
|| yum repolist enabled --verbose -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo(/.+)?\s*$"
;;
dnf)
# note: --noplugins may cause failure and empty output on RedHat
{
dnf repoinfo --enabled --cacheonly -q 2>/dev/null \
|| dnf repoinfo --enabled -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo\s*$"
;;
esac
}
has_rh_config_manager()
{
case "$package_manager" in
yum) yum-config-manager --help >/dev/null 2>&1 ;;
dnf) dnf config-manager --help >/dev/null 2>&1 ;;
esac
}
install_rh_config_manager()
{
case "$package_manager" in
yum) yum install --disablerepo 'PLESK_*' -q -y 'yum-utils' --setopt='*.skip_if_unavailable=1' ;;
dnf) dnf install --disablerepo 'PLESK_*' -q -y 'dnf-command(config-manager)' --setopt='*.skip_if_unavailable=1' ;;
esac
}
check_rh_config_manager()
{
if ! has_rh_config_manager && ! install_rh_config_manager; then
report_rh_no_config_manager
return $RET_FATAL
fi
}
enable_rh_repo()
{
case "$package_manager" in
yum) yum-config-manager --enable "$@" && has_rh_enabled_repo "$@" ;;
dnf) dnf config-manager --set-enabled "$@" && has_rh_enabled_repo "$@" ;;
esac
}
enable_sm_repo()
{
! has_rh_enabled_repo "$@" || return 0
subscription-manager repos --enable "$@" || return $?
# On RedHat 8 above command may return 0 on failure with "Repositories disabled by configuration."
has_rh_enabled_repo "$@"
}
check_epel()
{
! enable_rh_repo "epel" || return 0
# try to install epel-release from centos/extras or plesk/thirdparty repo
# and then try to update it to last version shipped by epel itself
# to make package upgradable with pum
"$package_manager" install --disablerepo 'PLESK_*' -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null \
|| "$package_manager" install --disablerepo='*' --enablerepo 'PLESK_18_*-thirdparty' -q -y 'epel-release' \
|| "$package_manager" install -q -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$os_version.noarch.rpm" \
&& "$package_manager" update -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null
# Ensure any other EPEL repos have cache for subsequent check for broken repos (AL9)
local epel_repos="$(
[ "$package_manager" != "dnf" ] || {
dnf repolist --enabled --cacheonly -q 2>/dev/null ||
dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(epel\S\+\).*/\1/p'
)"
for repo in $epel_repos; do
"$package_manager" makecache --repo "$repo" -q
done
! has_rh_enabled_repo "epel" || return 0
report_no_repo "epel"
return $RET_FATAL
}
check_codeready()
{
local repo_rhel="codeready-builder-for-rhel-$os_version-$os_arch-rpms"
local repo_rhui="codeready-builder-for-rhel-$os_version-rhui-rpms"
local repo_rhui_alt="codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
local repo_rhui_alt2="rhui-codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
! enable_rh_repo "$repo_rhui_alt" || return 0
! enable_rh_repo "$repo_rhui_alt2" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_optional()
{
local repo_rhel="rhel-$os_version-server-optional-rpms"
local repo_rhui="rhel-$os_version-server-rhui-optional-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_repos_rhel9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_codeready || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# powertools is renamed to crb since AlmaLinux 9
! enable_rh_repo "crb" || return $rc
report_no_repo "crb"
return $RET_FATAL
}
check_repos_cloudlinux9()
{
check_repos_almalinux9 "$@"
}
check_repos_almalinux10()
{
check_repos_almalinux9 "$@"
}
check_repos_centos8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are lowercased since 8.3
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_cloudlinux8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are changed since 8.5
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "cloudlinux-PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_rhel8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
[ "$1" = "install" ] || return $rc
check_codeready || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux8()
{
check_repos_centos8 "$@"
}
check_repos_rocky8()
{
check_repos_centos8 "$@"
}
check_repos_rhel7()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_optional || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_centos7_based()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
sed_escape()
{
# Note: this is not a full implementation
echo -n "$1" | sed -e 's|\.|\\.|g'
}
switch_eol_centos_repos()
{
local old_mirrorlist_host="mirrorlist.centos.org"
local old_host="mirror.centos.org"
local new_host="vault.centos.org"
grep -qFw "$old_host" /etc/yum.repos.d/CentOS-*.repo 2>/dev/null || return 0
local backup="`mktemp -d "/tmp/yum.repos.d-$(date --rfc-3339=date)-XXXXXX"`"
! [ -d "$backup" ] || cp -raT /etc/yum.repos.d "$backup" || :
sed -i \
-e "s|^\s*\(mirrorlist\b[^/]*//`sed_escape "$old_mirrorlist_host"`/.*\)$|#\1|" \
-e "s|^#*\s*baseurl\b\([^/]*\)//`sed_escape "$old_host"`/\(.*\)$|baseurl\1//$new_host/\2|" \
/etc/yum.repos.d/CentOS-*.repo
echo "YUM package manager repositories were backed up to '$backup' and switched from $old_host to $new_host ." >&2
}
check_repos_centos7()
{
switch_eol_centos_repos
check_repos_centos7_based "$@"
}
check_repos_cloudlinux7()
{
check_repos_centos7_based "$@"
}
check_repos_virtuozzo7()
{
check_repos_centos7_based "$@"
}
find_apt_repo()
{
local repo="$1"
local dist_tag=
! [ "$os_name" = "ubuntu" ] || dist_tag="a"
! [ "$os_name" = "debian" ] || dist_tag="n"
if [ -z "$_apt_cache_policy" ]; then
# extract info of each available release as a string which consists of 'tag=value'
# filter out releases with priority less or equal to 100
_apt_cache_policy="$(
apt-cache policy \
| grep "b=$pkg_arch" \
| grep -Eo '([a-z]=[^,]+,?)*' \
)"
fi
local l="$(echo "$repo" | cut -f1 -d'/')"
local d="$(echo "$repo" | cut -f2 -d'/')"
local c="$(echo "$repo" | cut -f3 -d'/')"
# try to find releases by distribution and component
echo "$_apt_cache_policy" \
| grep -E "(^|,)l=$l(,|$)" \
| grep -E "(^|,)$dist_tag=$d(,|$)" \
| grep -E "(^|,)c=$c(,|$)" \
| while IFS="$(printf '\n')" read rel && [ -n "$rel" ]; do
l="$(echo "$rel" | grep -Eo "(^|,)l=[^,]+" | cut -f2 -d"=")"
d="$(echo "$rel" | grep -Eo "(^|,)$dist_tag=[^,]+" | cut -f2 -d"=")"
c="$(echo "$rel" | grep -Eo "(^|,)c=[^,]+" | cut -f2 -d"=")"
echo "$l/$d/$c"
done
}
apt_install_packages()
{
DEBIAN_FRONTEND=noninteractive LANG=C PATH=/usr/sbin:/usr/bin:/sbin:/bin \
apt-get -qq --assume-yes -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold -o APT::Install-Recommends=no \
install "$@"
}
# Takes a list of suites and disables them in APT sources.
# Multiline deb822 format is supported.
disable_apt_suites_deb822()
{
local python3=/usr/bin/python3
"$python3" -c 'import aptsources.sourceslist' 2>/dev/null ||
apt_install_packages python3-apt
"$python3" -c '
import sys
from aptsources.sourceslist import SourcesList
suites_to_disable=set(sys.argv[1:])
sources_list = SourcesList(deb822=True)
sources_changed = False
for src in sources_list:
if src.invalid:
continue
suites = getattr(src, "suites", ())
if not suites:
continue
new_suites = [s for s in suites if s not in suites_to_disable]
if len(new_suites) != len(suites):
sources_changed = True
if len(new_suites) == 0:
src.disabled = True
else:
src.suites = new_suites
if sources_changed:
sources_list.save()
' "$@"
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
}
disable_apt_repo()
{
local repos_to_disable="$(find_apt_repo "$1" | cut -d '/' -f 2,3 | sort | uniq)"
if [ -z "$repos_to_disable" ]; then
return 0
fi
echo "$repos_to_disable" \
| while IFS= read -r repo_to_disable && [ -n "$repo_to_disable" ]; do
local distrib=${repo_to_disable%%/*}
local component=${repo_to_disable##*/}
find /etc/apt -name "*.list" -exec \
sed -i -e "/^\s*#/! s/.*\s$distrib\s\+$component\b/# &/" {} +
done
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
return 0
}
check_required_apt_repo()
{
local repo="$1"
[ -z "$(find_apt_repo "$repo")" ] || return 0
report_no_repo "$repo"
return $RET_FATAL
}
check_unsupported_apt_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Ubuntu/[^,]+/[^,]+" | grep -v "Ubuntu/$os_codename.*/.*"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_ubuntu18()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_unsupported_apt_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+" | grep -v "Debian.*/$os_codename.*/.*"
find_apt_repo "Ubuntu/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
if [ "$os_name" = "debian" -a "$os_version" -ge 12 ]; then
disable_apt_suites_deb822 "$os_codename-backports"
else
disable_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
fi
check_required_apt_repo "Debian/$os_codename/main" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_debian "$mode" || rc="$(( $rc | $? ))"
return $rc
}
# ---
skip_checker_on_flag "Repository check" "/tmp/plesk-installer-skip-repository-check.flag"
checker_main 'check_repos' "$1"

View File

@@ -0,0 +1,61 @@
<?php
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
require_once('api-common/cu.php');
require_once('api-common/cuApp.php');
cu::initCLI();
class InstallationInfo extends cuApp
{
protected $_needToCheckPsaConfigured = false;
public function __construct()
{
parent::__construct();
$this->allowed_commands = [
[
CU_OPT_LONG => 'save',
CU_OPT_PARAM => false,
CU_OPT_DESC => 'Save info about Plesk installation',
],
];
$this->allowed_options = [
[
CU_OPT_LONG => 'mode',
CU_OPT_PARAM => true,
],
[
CU_OPT_LONG => 'preset',
CU_OPT_PARAM => true,
],
[
CU_OPT_LONG => 'arguments',
CU_OPT_PARAM => true,
],
];
}
protected function _saveCommand($mode, $preset, $arguments)
{
put_param('installation_mode', $this->getMode($mode));
put_param('installation_preset', $preset);
put_param('installation_arguments', $arguments);
put_param('installation_finish', time());
}
private function getMode($mode)
{
if (!$this->os->isUnix()) {
return $mode;
}
if (empty(getenv('PLESK_ONE_CLICK_INSTALLER'))) {
return $mode;
}
return 'ONE_CLICK';
}
}
$app = new InstallationInfo();
$app->runFromCli();

View File

@@ -0,0 +1,7 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
exec "$@"

View File

@@ -0,0 +1,287 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# echo message to product log and console (always visible)
pp_echo()
{
if [ -n "$product_log" ] ; then
echo "$@" >> "$product_log" 2>&1
fi
echo "$@" >&2
}
detect_vz()
{
[ -z "$PLESK_VZ_RESULT" ] || return $PLESK_VZ_RESULT
PLESK_VZ_RESULT=1
PLESK_VZ=0
PLESK_VE_HW_NODE=0
PLESK_VZ_TYPE=
local issue_file="/etc/issue"
local vzcheck_file="/proc/self/status"
[ -f "$vzcheck_file" ] || return 1
local env_id=`sed -ne 's|^envID\:[[:space:]]*\([[:digit:]]\+\)$|\1|p' "$vzcheck_file"`
[ -n "$env_id" ] || return 1
if [ "$env_id" = "0" ]; then
# Either VZ/OpenVZ HW node or unjailed CloudLinux
PLESK_VE_HW_NODE=1
return 1
fi
if grep -q "CloudLinux" "$issue_file" >/dev/null 2>&1 ; then
return 1
fi
if [ -f "/proc/vz/veredir" ]; then
PLESK_VZ_TYPE="vz"
elif [ -d "/proc/vz" ]; then
PLESK_VZ_TYPE="openvz"
fi
PLESK_VZ=1
PLESK_VZ_RESULT=0
return 0
}
# detects lxc and docker containers
detect_lxc()
{
[ -z "$PLESK_LXC_RESULT" ] || return $PLESK_LXC_RESULT
PLESK_LXC_RESULT=1
PLESK_LXC=0
if { [ -f /proc/1/cgroup ] && grep -q 'docker\|lxc' /proc/1/cgroup; } || \
{ [ -f /proc/1/environ ] && cat /proc/1/environ | tr \\0 \\n | grep -q "container=lxc"; };
then
PLESK_LXC_RESULT=0
PLESK_LXC=1
fi
return "$PLESK_LXC_RESULT"
}
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# vim:ft=sh
set_file_swap_params()
{
local pleskswaprc='/etc/pleskswaprc'
[ ! -f "$pleskswaprc" ] || . /etc/pleskswaprc
[ -n "$PLESK_SWAP_PATH" ] || PLESK_SWAP_PATH='/pleskswap'
[ -n "$PLESK_SWAP_SIZE" ] || PLESK_SWAP_SIZE='1G'
[ -n "$PLESK_REQUIRED_MEMORY" ] || PLESK_REQUIRED_MEMORY='1G'
FSTAB='/etc/fstab'
}
file_swap_is_required()
{
local total_mem_mib=$(LC_ALL=C LANG=C free -m -t | awk '/^Total:/ { print $2 }')
local required_mem_mib="`units2units $PLESK_REQUIRED_MEMORY M`"
[ "$total_mem_mib" -lt "$required_mem_mib" ] || return 1
pp_echo "Total amount of memory is less than minimal required size (${total_mem_mib}M < ${required_mem_mib}M)"
return 0
}
file_swap_is_switched_off()
{
case "${PLESK_SWAP:-}" in
0|false|disable)
pp_echo "Swapfile creation is disabled: envirinment vaiable \$PLESK_SWAP='$PLESK_SWAP'."
return 0
;;
esac
if [ -f "/etc/pleskswapdisable" ]; then
pp_echo "Swapfile creation is disabled: file '/etc/pleskswapdisable' is present."
return 0
fi
detect_vz
if [ "$PLESK_VZ" = "1" ]; then
pp_echo "Swapfile creation is disabled: installation into Virtuozzo container."
return 0
fi
detect_lxc
if [ "$PLESK_LXC" = "1" ]; then
pp_echo "Swapfile creation is disabled: installation into Docker/LXC container."
return 0
fi
return 1
}
file_swap_enable()
{
if file_swap_status; then
echo "Error: Plesk swapfile is already enabled." >&2
return 1
fi
local swap_size_mb="`units2units $PLESK_SWAP_SIZE M`"
pp_echo "===> Enable swapfile in $PLESK_SWAP_PATH"
dd if=/dev/zero of="$PLESK_SWAP_PATH" bs=1M count="$swap_size_mb" status=none || return 1
chmod 0600 "$PLESK_SWAP_PATH" || return 1
mkswap "$PLESK_SWAP_PATH" || return 1
if ! grep -qw "^$PLESK_SWAP_PATH" "${FSTAB}"; then
cp -f "${FSTAB}" "${FSTAB}.saved_by_plesk"
echo "$PLESK_SWAP_PATH none swap sw 0 0" >> "${FSTAB}"
fi
if swapon "$PLESK_SWAP_PATH"; then
rm -f "${FSTAB}.saved_by_plesk"
return 0
else
[ ! -f "${FSTAB}.saved_by_plesk" ] || mv -f "${FSTAB}.saved_by_plesk" "${FSTAB}"
return 1
fi
}
file_swap_status()
{
[ -f "$PLESK_SWAP_PATH" ] || return 1
grep -qw "^$PLESK_SWAP_PATH" "${FSTAB}" || return 1
return 0
}
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
units2units() {
local bytes
local n="${1%%[^0-9]*}"
case "${1,,}" in
*[0-9]) bytes="$1" ;;
*k|*kib) bytes="$(( $n * 1024 ** 1 ))" ;;
*m|*mib) bytes="$(( $n * 1024 ** 2 ))" ;;
*g|*gib) bytes="$(( $n * 1024 ** 3 ))" ;;
*t|*tib) bytes="$(( $n * 1024 ** 4 ))" ;;
*kb) bytes="$(( $n * 1000 ** 1 ))" ;;
*mb) bytes="$(( $n * 1000 ** 2 ))" ;;
*gb) bytes="$(( $n * 1000 ** 3 ))" ;;
*tb) bytes="$(( $n * 1000 ** 4 ))" ;;
*) echo "units2units: incorrect value '$1'" >&2; exit 1 ;;
esac
case "${2,,}" in
k|kib) echo $(( $bytes / 1024 ** 1 )) ;;
m|mib) echo $(( $bytes / 1024 ** 2 )) ;;
g|gib) echo $(( $bytes / 1024 ** 3 )) ;;
t|tib) echo $(( $bytes / 1024 ** 4 )) ;;
kb) echo $(( $bytes / 1000 ** 1 )) ;;
mb) echo $(( $bytes / 1000 ** 2 )) ;;
gb) echo $(( $bytes / 1000 ** 3 )) ;;
tb) echo $(( $bytes / 1000 ** 4 )) ;;
"") echo $bytes ;;
*) echo "Unknown unit: $2" >&2; exit 1 ;;
esac
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
tune_memory_swap()
{
local mode="$1"
[ "$mode" = 'install' ] || return 0 # clean install only
set_file_swap_params
file_swap_is_required || return 0
! file_swap_is_switched_off || return 0 # disabled by admin
! file_swap_status || return 0 # already enabled
if ! file_swap_enable; then
pp_echo "Failed to enable swapfile. Installation may fail or freeze due to insufficient memory."
return "$RET_WARN"
fi
}
product_log=
product_problems_log=
checker_main 'tune_memory_swap' "$1"

View File

@@ -0,0 +1,927 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build_1 confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" apt_source=" noble all" persistent_apt_source=" noble extras">
<exact_required_autoinstaller version="3.72.0" binary_directory="Installer/3.72.0" />
<required_autoinstaller version="3.18.12" binary_directory="Parallels_Installer" />
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" sequence-order="-2" stage="execute" exec-cmd="touch /var/lock/plesk-report-update.flag; :" />
<action sequence="prep" sequence-order="-1" stage="execute" exec-cmd="touch /tmp/pp-bootstrapper-mode.flag; touch /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="prep" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="pkgs" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="commit" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; :" />
<action sequence="post" sequence-order="9990" exec-cmd="test ! -x /opt/psa/admin/sbin/packagemng || /opt/psa/admin/sbin/packagemng --set-dirty-flag" />
<action sequence="post" sequence-order="9991" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh perform-deferred-actions" />
<action sequence="post" sequence-order="9998" exec-cmd="/opt/psa/admin/sbin/update_history" />
</bootstrapper>
<examine name="Create swap space if needed" scope="pre_install" script="examiners/tune_memory_swap.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_install" script="examiners/repository_check.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_upgrade" script="examiners/repository_check.sh" options="upgrade" />
<examine name="Enabled repositories check" scope="pre_update" script="examiners/repository_check.sh" options="update" />
<examine name="Package manager check" scope="pre_any" script="examiners/package_manager_check.sh" />
<examine name="Check and fix broken timezone" scope="pre_upgrade" script="examiners/check_broken_timezone.sh" options="upgrade" />
<examine name="Check and fix broken timezone" scope="pre_update" script="examiners/check_broken_timezone.sh" options="update" />
<examine name="Available disk space check" scope="pre_install" script="examiners/disk_space_check.sh" options="install" />
<examine name="Available disk space check" scope="pre_upgrade" script="examiners/disk_space_check.sh" options="upgrade" />
<examine name="Available disk space check" scope="pre_update" script="examiners/disk_space_check.sh" options="update" />
<examine name="Installation is finished" scope="post_install" script="examiners/congratulations.sh" options="install" />
<examine name="Upgrade is finished" scope="post_upgrade" script="examiners/congratulations.sh" options="upgrade" />
<examine name="Prepare result notification" scope="pre_any" script="examiners/sh_cmd.sh" options="touch /var/lock/plesk-report-update.flag" always="true" />
<examine name="Installation result notification" scope="post_install" script="/report-update" launcher="examiners/py_launcher.sh" options="--op install --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.72.3" always="true" />
<examine name="Upgrade result notification" scope="post_upgrade" script="/report-update" launcher="examiners/py_launcher.sh" options="--op upgrade --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.72.3 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Update result notification" scope="post_update" script="/report-update" launcher="examiners/py_launcher.sh" options="--op update --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.72.3 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Store installation info" scope="post_install" script="examiners/save-installation-info.php" launcher="examiners/php_launcher.sh" options="--save -mode {WORK_MODE} -preset {PRESET} -arguments {ARGUMENTS}" always="true" />
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="plesk">
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_18_0_72" name="Plesk Obsidian 18.0.72" version="18.0.72" upgrade_allowed_from="17.0.17" />
</product>
<ext_catalog url="https://ext.plesk.com" />
<component name="panel" description="Plesk" classes="vendor=parallels,patched,aspect=panel" deny_implicit_removal="true">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install BASE" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_awstats_configure" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install psa-vhost" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install BASE" sequence-order="100" />
<action sequence="prep" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="pkgs" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="commit" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-success-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-success-notification.php" />
</bootstrapper>
<examine name="Plesk license key availability check" scope="pre_upgrade" script="examiners/license_key_check.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<examine name="Plesk pre-upgrade check" scope="pre_upgrade" script="examiners/panel_preupgrade_checker.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
<keypackage name="plesk-web-hosting" />
</keypackages>
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
</keypackages>
<requires>mysqlgroup</requires>
<requires>l10n</requires>
<requires>proftpd</requires>
<requires>webservers</requires>
<package name="libapache2-mod-aclr2-psa" version="14081815" release="v.ubuntu.24.04+p18.0.72.0+t250815.1551" file="opt/hosting/nginxSupport/libapache2-mod-aclr2-psa_14081815-v.ubuntu.24.04+p18.0.72.0+t250815.1551_amd64.deb" size="7560" buildtime="0" md5="a28f5beb35a60d36a79e568bbaaae7f8" arch="amd64" />
<package name="libapache2-mod-sysenv-psa" version="0.2" release="v.ubuntu.24.04+p18.0.72.0+t250815.1551" file="opt/hosting/sysenv/libapache2-mod-sysenv-psa_0.2-v.ubuntu.24.04+p18.0.72.0+t250815.1551_amd64.deb" size="3808" buildtime="0" md5="3bcdfbc177deb003bc533f43e9c68aed" arch="amd64" />
<package name="libaps" version="1.0.17" release="ubuntu.24.04.250807.1639" file="engine/libaps_1.0.17-ubuntu.24.04.250807.1639_amd64.deb" size="1305304" buildtime="0" md5="cc17819956b72a9a6fbb2f8e71a6f7c2" classes="aspect=panel" arch="amd64" />
<package name="libpam-plesk" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="base/libpam-plesk_18.0-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="502912" buildtime="0" md5="10d0a911ac821dea3e4885564b940033" classes="aspect=panel" arch="amd64" />
<package name="plesk-backup-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-backup-utilities_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="4112048" buildtime="0" md5="3ac332296554514353db76d69cdfed67" classes="aspect=panel" arch="amd64" />
<package name="plesk-completion" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250812.0917" file="base/plesk-completion_18.0-v.ubuntu.24.04+p18.0.72.0+t250812.0917_amd64.deb" size="2174056" buildtime="0" md5="42558b13d66d1997ed39ab3430bc70ff" classes="aspect=panel" arch="amd64" />
<package name="plesk-control-panel" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-control-panel_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_all.deb" size="11108380" buildtime="0" md5="033f2a3fb49075fb09478cc3dc341017" classes="aspect=panel" arch="all" />
<package name="plesk-core" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-core_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="31138128" buildtime="0" md5="2d53b533c86abeea8b2715655f7de5e3" classes="aspect=panel" arch="amd64" />
<package name="plesk-core-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-core-utilities_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="1323252" buildtime="0" md5="fee7a38997e4e4abbfcbbd2425057572" classes="aspect=panel" arch="amd64" />
<package name="plesk-engine" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250805.0830" file="engine/plesk-engine_18.0-v.ubuntu.24.04+p18.0.72.0+t250805.0830_all.deb" size="1152" buildtime="0" md5="f4138d9fdc5d1b86876f2e756746b8e3" classes="aspect=panel" arch="all" />
<package name="plesk-libmaodbc" version="3.2.6" release="v.ubuntu.24.04+p18.0.72.0+t250804.0806" file="base/plesk-libmaodbc_3.2.6-v.ubuntu.24.04+p18.0.72.0+t250804.0806_amd64.deb" size="272216" buildtime="0" md5="a77c83e2e866558d5e7a1e9104dad680" classes="aspect=panel" arch="amd64" />
<package name="plesk-libmariadbclient-3.4" version="3.4.5" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="base/plesk-libmariadbclient-3.4_3.4.5-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="125628" buildtime="0" md5="79400ccb0eb789dbc7dc4d9e9b82a7b0" classes="aspect=panel" arch="amd64" />
<package name="plesk-librdbmspp" version="2.0.7" release="ubuntu.24.04.250807.1639" file="engine/plesk-librdbmspp_2.0.7-ubuntu.24.04.250807.1639_amd64.deb" size="202370" buildtime="0" md5="63bedd6fac1395918774c30e3def111d" classes="aspect=panel" arch="amd64" />
<package name="plesk-lmlib" version="0.2.8" release="ubuntu.24.04.250807.1639" file="engine/plesk-lmlib_0.2.8-ubuntu.24.04.250807.1639_amd64.deb" size="464390" buildtime="0" md5="1b721ca7d17f00c148b59be139e61bfb" classes="aspect=panel" arch="amd64" />
<package name="plesk-phpenv" version="0.9.0" release="v.ubuntu.24.04+p18.0.68.0+t250205.1631" file="opt/hosting/phpenv/plesk-phpenv_0.9.0-v.ubuntu.24.04+p18.0.68.0+t250205.1631_all.deb" size="16732" buildtime="0" md5="ca520d05c81f4984ddda3f465c51e49d" arch="all" />
<package name="plesk-platform-runtime" version="1.0.7" release="ubuntu.24.04.250807.1639" file="engine/plesk-platform-runtime_1.0.7-ubuntu.24.04.250807.1639_amd64.deb" size="20526" buildtime="0" md5="1c1dd7f29ab56113da20a93e58b079e1" classes="aspect=panel" arch="amd64" />
<package name="plesk-release" version="18.0.72.3" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-release_18.0.72.3-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="1452" buildtime="0" md5="58b268ce4764872bcbcdd15c20d8422a" classes="aspect=panel" arch="amd64" />
<package name="plesk-repair-kit" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/repairkit/plesk-repair-kit_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="4774616" buildtime="0" md5="fb8b51a6e499d2dcc18ed517a95fa1fd" classes="aspect=panel" arch="amd64" />
<package name="plesk-rrd" version="1.9.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-rrd_1.9.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="615964" buildtime="0" md5="adccd6ffc54b56c0f9d2ba47540e8c40" classes="aspect=panel" arch="amd64" />
<package name="plesk-service-node-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-service-node-utilities_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="3712672" buildtime="0" md5="68e4860caa355e5d78da290b3f4d5a36" classes="aspect=panel" arch="amd64" />
<package name="plesk-task-manager" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-task-manager_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="4563192" buildtime="0" md5="1be47d748f8f215def000a635764668f" classes="aspect=panel" arch="amd64" />
<package name="plesk-ui-library" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/plesk-ui-library_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_all.deb" size="2566916" buildtime="0" md5="549cc13e924bd55471873700df4f9afc" classes="aspect=panel" arch="all" />
<package name="plesk-web-hosting" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="opt/hosting/whc/plesk-web-hosting_18.0-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="77248" buildtime="0" md5="7ed5516d1497310de8625aaeb31f470f" classes="aspect=panel" arch="amd64" />
<package name="plesk-web-socket" version="18.0" release="v.ubuntu.24.04+p18.0.71.0+t250616.1400" file="base/plesk-web-socket_18.0-v.ubuntu.24.04+p18.0.71.0+t250616.1400_amd64.deb" size="19884" buildtime="0" md5="64559144e377f0f1525e34f3a7305138" classes="aspect=panel" arch="amd64" />
<package name="psa" version="18.0.72" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/psa_18.0.72-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="33324" buildtime="0" md5="53551ded9aba7d1dda63d173a8574b9a" classes="aspect=panel" arch="amd64" />
<package name="psa-autoinstaller" version="3.72.0" release="ubuntu.24.04.250715.0605" file="opt/updater/psa-autoinstaller_3.72.0-ubuntu.24.04.250715.0605_amd64.deb" size="4694128" buildtime="0" md5="056005c5a04e09e0389bc063f1a15d92" classes="aspect=panel" arch="amd64" />
<package name="psa-libxml-proxy" version="2.9.12" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="base/psa-libxml-proxy_2.9.12-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="657592" buildtime="0" md5="c62ce7167c9c649f1c05e313da161e78" classes="aspect=panel" arch="amd64" />
<package name="psa-locale-base-en-us" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/psa-locale-base-en-us_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_all.deb" size="310344" buildtime="0" md5="7dcabe6665399695d597e36a0fb032b8" classes="aspect=panel" arch="all" />
<package name="psa-logrotate" version="3.22.0" release="v.ubuntu.24.04+p18.0.63.0+t240726.0752" file="base/psa-logrotate_3.22.0-v.ubuntu.24.04+p18.0.63.0+t240726.0752_amd64.deb" size="61640" buildtime="0" md5="8f2af293558efd0be48e7df6ab2e0dee" classes="aspect=panel" arch="amd64" />
<package name="psa-phpmyadmin" version="5.2.2" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="base/psa-phpmyadmin_5.2.2-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="7716172" buildtime="0" md5="903d8d7c2257806dc7739054196d0263" classes="aspect=panel" arch="all" />
<package name="psa-updates" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250715.1156" file="base/psa-updates_18.0-v.ubuntu.24.04+p18.0.72.0+t250715.1156_all.deb" size="1300" buildtime="0" md5="0943eec9edb6c9cd55874c1d7f6f9d8c" classes="aspect=panel" arch="all" />
<package name="psa-vhost" version="18.0" release="v.ubuntu.24.04+p18.0.71.0+t250604.0821" file="opt/vhost/psa-vhost_18.0-v.ubuntu.24.04+p18.0.71.0+t250604.0821_all.deb" size="33264" buildtime="0" md5="589c23e25cfd8970c528eb6346b604ab" classes="aspect=panel" arch="all" />
<package name="sw-collectd" version="5.12.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="base/sw-collectd_5.12.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="520832" buildtime="0" md5="2dc31545524e227e0a41b893c301c3b5" classes="aspect=panel" arch="amd64" />
<package name="sw-cp-server" version="2.14.1" release="v.ubuntu.24.04+p18.0.72.0+t250801.0534" file="engine/sw-cp-server_2.14.1-v.ubuntu.24.04+p18.0.72.0+t250801.0534_amd64.deb" size="920212" buildtime="0" md5="171408b0d29ad4347cac862e41668c08" classes="aspect=panel" arch="amd64" />
<package name="sw-engine" version="7.72.1" release="ubuntu.24.04.250807.1639" file="engine/sw-engine_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="14358558" buildtime="0" md5="eea8bbd1b64914e7bfb742749590b792" classes="aspect=panel" arch="amd64" />
</component>
<component name="bind" description="BIND DNS server" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-dns-bind-driver" />
</keypackages>
<package name="plesk-dns-bind-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/dns/plesk-dns-bind-driver_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="582904" buildtime="0" md5="a8b17baff931d6c8961d89e081acee5b" classes="aspect=panel" arch="amd64" />
</component>
<component name="qmail" description="Qmail" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install mail-qc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install mail-qc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-qmail" />
<nokeypackage name="psa-mail-pc-driver" />
<nokeypackage name="plesk-mail-pc-driver" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-qc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/maildrivers/plesk-mail-qc-driver_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="674812" buildtime="0" md5="2ef920feeb65ec375794e0fe2fd836fe" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="2429160" buildtime="0" md5="0a1b18d0db9e4e391233933892c48f34" classes="aspect=panel" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="opt/maildrivers/psa-qmail_1.03-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="273552" buildtime="0" md5="3e8219299edc5812d1593c1ebc6d2159" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="unknown_dir/psa-qmail_1.03-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="273552" buildtime="0" md5="3e8219299edc5812d1593c1ebc6d2159" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="opt/mail/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18972" buildtime="0" md5="4becbb80fc739eb76bb19f1f4e6df429" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="unknown_dir/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18972" buildtime="0" md5="4becbb80fc739eb76bb19f1f4e6df429" arch="amd64" />
</component>
<component name="postfix" description="Postfix" classes="vendor=mixed">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install mail-pc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install mail-pc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-pc-driver" />
<keypackage name="postfix" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-pc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/maildrivers/plesk-mail-pc-driver_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="1692640" buildtime="0" md5="319274c4b70a7aadfcffc13d438d87e8" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="2429160" buildtime="0" md5="0a1b18d0db9e4e391233933892c48f34" classes="aspect=panel" arch="amd64" />
</component>
<component name="msmtp" description="MSMTP (relay only)" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install mail-mc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-mc-driver" />
<keypackage name="sw-msmtp" />
</keypackages>
<conflicts>mailman</conflicts>
<conflicts>spamassassin</conflicts>
<conflicts>drweb</conflicts>
<conflicts>sophos</conflicts>
<conflicts>courier</conflicts>
<conflicts>dovecot</conflicts>
<package name="plesk-mail-mc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="opt/maildrivers/plesk-mail-mc-driver_18.0-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="49856" buildtime="0" md5="ac9cb1f57062619b992da5b347a74b07" classes="aspect=panel" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/maildrivers/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="156908" buildtime="0" md5="b4ead7eef789a67832bab99b23f9d82c" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="156908" buildtime="0" md5="b4ead7eef789a67832bab99b23f9d82c" arch="amd64" />
</component>
<component name="courier" description="Courier" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install courier-imap" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-courier-imap-driver" />
<keypackage name="psa-courier-imap" />
<keypackage name="psa-courier-authlib" />
</keypackages>
<keypackages>
<keypackage name="psa-courier-imap" />
</keypackages>
<keypackages>
<keypackage name="courier-imap" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-courier-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="opt/mail/plesk-courier-imap-driver_18.0-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="168724" buildtime="0" md5="e2517f88499e414a6cd4eb837d917198" classes="aspect=panel" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.72.0+t250715.0607" file="opt/mail/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.72.0+t250715.0607_amd64.deb" size="137552" buildtime="0" md5="a64604f29bc4c46708e634a4240b63ca" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.72.0+t250715.0607" file="unknown_dir/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.72.0+t250715.0607_amd64.deb" size="137552" buildtime="0" md5="a64604f29bc4c46708e634a4240b63ca" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/mail/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="439208" buildtime="0" md5="6e469c847c1856e9ea10716e41b5c98c" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="unknown_dir/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="439208" buildtime="0" md5="6e469c847c1856e9ea10716e41b5c98c" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.72.0+t250715.0607" file="opt/mail/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.72.0+t250715.0607_amd64.deb" size="119508" buildtime="0" md5="f0708104d59de62888194be466b61c7c" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.72.0+t250715.0607" file="unknown_dir/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.72.0+t250715.0607_amd64.deb" size="119508" buildtime="0" md5="f0708104d59de62888194be466b61c7c" arch="amd64" />
</component>
<component name="dovecot" description="Dovecot" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install dovecot" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-dovecot-imap-driver" />
<keypackage name="plesk-dovecot" />
<keypackage name="plesk-dovecot-pigeonhole" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-dovecot" version="2.3.21.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/mail/plesk-dovecot_2.3.21.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="1514856" buildtime="0" md5="915eea54d900fbf8680c11e9e541d743" arch="amd64" />
<package name="plesk-dovecot" version="2.3.21.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="unknown_dir/plesk-dovecot_2.3.21.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="1514856" buildtime="0" md5="915eea54d900fbf8680c11e9e541d743" arch="amd64" />
<package name="plesk-dovecot-core" version="2.3.21.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/mail/plesk-dovecot-core_2.3.21.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="3103340" buildtime="0" md5="ec7cf71b2087221febe593e967dfda30" arch="amd64" />
<package name="plesk-dovecot-core" version="2.3.21.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="unknown_dir/plesk-dovecot-core_2.3.21.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="3103340" buildtime="0" md5="ec7cf71b2087221febe593e967dfda30" arch="amd64" />
<package name="plesk-dovecot-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/mail/plesk-dovecot-imap-driver_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="268060" buildtime="0" md5="515e8136d29a3feef622d9dea89767d4" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="0.5.21.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/mail/plesk-dovecot-pigeonhole_0.5.21.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="679228" buildtime="0" md5="ab129182fde924ddc5fa6e0343e086a6" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="0.5.21.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="unknown_dir/plesk-dovecot-pigeonhole_0.5.21.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="679228" buildtime="0" md5="ab129182fde924ddc5fa6e0343e086a6" arch="amd64" />
</component>
<component name="php5" description="PHP from OS vendor" classes="vendor=mixed">
<keypackages>
<keypackage name="psa-php-configurator" />
<keypackage name="php-fpm" />
<keypackage name="php-common" />
</keypackages>
<keypackages>
<keypackage name="psa-php-configurator" />
</keypackages>
<requires>panel</requires>
<package name="psa-php-configurator" version="1.8.0" release="v.ubuntu.24.04+p18.0.71.0+t250616.1400" file="opt/php/psa-php-configurator_1.8.0-v.ubuntu.24.04+p18.0.71.0+t250616.1400_amd64.deb" size="30376" buildtime="0" md5="dd077079899b4cc878e3525b0002f0b9" classes="aspect=panel" arch="amd64" />
</component>
<component name="postgresql" description="PostgreSQL server" classes="vendor=os">
<keypackages>
<keypackage name="postgresql-15" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-15" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql" />
</keypackages>
</component>
<component name="mysql-sys" description="MySQL server" classes="vendor=os">
<keypackages>
<keypackage name="mariadb-server" />
</keypackages>
<keypackages>
<keyprovide name="mysql-server" />
</keypackages>
<keypackages>
<keyprovide name="virtual-mysql-server" />
</keypackages>
</component>
<component name="apache" description="Apache" classes="vendor=os">
<keypackages>
<keypackage name="apache2" />
<keypackage name="apache2-mpm-prefork" />
</keypackages>
<keypackages>
<keypackage name="apache2" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-itk" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-prefork" />
</keypackages>
</component>
<component name="spamassassin" description="SpamAssassin" classes="vendor=mixed,aspect=panel">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install spammng" />
</bootstrapper>
<keypackages>
<keypackage name="psa-spamassassin" />
</keypackages>
<package name="psa-spamassassin" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/mail/psa-spamassassin_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="73824" buildtime="0" md5="799e85fca88897c7cbd3a8113b9a572f" arch="amd64" />
</component>
<component name="mod_python" description="mod_python" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-python" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="drweb" description="Plesk Premium Antivirus" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-premium-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="psa-firewall" description="Plesk Firewall" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-firewall" />
</keypackages>
<requires>panel</requires>
</component>
<component name="watchdog" description="Watchdog system monitoring" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-watchdog" />
</keypackages>
<requires>panel</requires>
</component>
<component name="horde" description="Horde" hidden="true" classes="vendor=parallels" show_installed_hidden="true">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install horde" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install horde" />
</bootstrapper>
<keypackages>
<keypackage name="psa-horde" />
<keypackage name="psa-turba" />
<keypackage name="psa-imp" />
<keypackage name="psa-ingo" />
<keypackage name="psa-mnemo" />
<keypackage name="psa-kronolith" />
<keypackage name="psa-passwd" />
</keypackages>
<keypackages>
<keypackage name="psa-horde" />
</keypackages>
<requires>php7.4</requires>
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.71.0+t250605.0924" file="opt/horde/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.71.0+t250605.0924_all.deb" size="12096724" buildtime="0" md5="585068dfe3c240db43d2a784dd39b15d" arch="all" />
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.71.0+t250605.0924" file="unknown_dir/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.71.0+t250605.0924_all.deb" size="12096724" buildtime="0" md5="585068dfe3c240db43d2a784dd39b15d" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="2449256" buildtime="0" md5="7cf6a514015004c868ebf82328637a62" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="2449256" buildtime="0" md5="7cf6a514015004c868ebf82328637a62" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="789828" buildtime="0" md5="e030e131de669fb8f1cfb25f09ed765b" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="789828" buildtime="0" md5="e030e131de669fb8f1cfb25f09ed765b" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1328680" buildtime="0" md5="7be22d2bb29f7c8f15b8565bd7270365" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1328680" buildtime="0" md5="7be22d2bb29f7c8f15b8565bd7270365" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="627320" buildtime="0" md5="eb9ab421a7d62cb19d54e45ee672e8f0" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="627320" buildtime="0" md5="eb9ab421a7d62cb19d54e45ee672e8f0" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="588708" buildtime="0" md5="79400978fe59830289bad7aa8d2d1ab7" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="588708" buildtime="0" md5="79400978fe59830289bad7aa8d2d1ab7" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1028588" buildtime="0" md5="b424925211492856256f71da66da7df5" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1028588" buildtime="0" md5="b424925211492856256f71da66da7df5" arch="all" />
</component>
<component name="roundcube" description="Roundcube" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install roundcube" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install roundcube" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-roundcube" />
</keypackages>
<requires>php8.3</requires>
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/roundcube/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.72.0+t250730.0425_all.deb" size="4400380" buildtime="0" md5="3b5601a07202b7c536a95b826c0bf11d" arch="all" />
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="unknown_dir/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.72.0+t250730.0425_all.deb" size="4400380" buildtime="0" md5="3b5601a07202b7c536a95b826c0bf11d" arch="all" />
</component>
<component name="mod_fcgid" description="mod_fcgid" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-fcgid-psa" />
</keypackages>
<keypackages>
<keypackage name="libapache2-mod-fcgid" />
</keypackages>
<requires>webservers</requires>
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/hosting/fcgid/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.70.0+t250502.0855_amd64.deb" size="81612" buildtime="0" md5="e93e7034d0a6212a8dc7e85dd15e694d" arch="amd64" />
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.70.0+t250502.0855_amd64.deb" size="81612" buildtime="0" md5="e93e7034d0a6212a8dc7e85dd15e694d" arch="amd64" />
</component>
<component name="mod_perl" description="mod_perl" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-perl2" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="proftpd" description="ProFTPD" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_ftp_proftpd_configure" />
</bootstrapper>
<keypackages>
<keypackage name="psa-proftpd" />
</keypackages>
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/hosting/proftpd/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="3152996" buildtime="0" md5="65ec256431520fa6a9708c1cde4abe08" arch="amd64" />
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="unknown_dir/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="3152996" buildtime="0" md5="65ec256431520fa6a9708c1cde4abe08" arch="amd64" />
</component>
<component name="webalizer" description="Webalizer" classes="vendor=os">
<keypackages>
<keypackage name="webalizer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="awstats" description="AWStats" classes="vendor=os">
<keypackages>
<keypackage name="plesk-awstats-configurator" />
<keypackage name="awstats" />
</keypackages>
<keypackages>
<keypackage name="plesk-awstats-configurator" />
</keypackages>
<keypackages>
<keypackage name="awstats" />
</keypackages>
<requires>panel</requires>
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/awstats/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16016" buildtime="0" md5="1ced2c21ea31fcf12689fdcbe189213b" arch="all" />
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16016" buildtime="0" md5="1ced2c21ea31fcf12689fdcbe189213b" arch="all" />
</component>
<component name="fail2ban" description="Fail2Ban" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install fail2ban-configurator" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install fail2ban-configurator" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-fail2ban-configurator" />
<keypackage name="fail2ban" />
</keypackages>
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/fail2ban/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.72.0+t250730.0652_all.deb" size="870408" buildtime="0" md5="47c7beb94acbe94e2272b85cbc981d16" arch="all" />
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.72.0+t250730.0652_all.deb" size="870408" buildtime="0" md5="47c7beb94acbe94e2272b85cbc981d16" arch="all" />
<package name="plesk-fail2ban-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/fail2ban/plesk-fail2ban-configurator_18.0-v.ubuntu.24.04+p18.0.72.0+t250730.0425_all.deb" size="41804" buildtime="0" md5="5a996a96c7b81550ac2e4bb02b6ded53" classes="aspect=panel" arch="all" />
</component>
<component name="modsecurity" description="ModSecurity" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity-plesk" />
</keypackages>
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity" />
</keypackages>
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.72.0+t250806.0608" file="opt/hosting/modsecurity/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.72.0+t250806.0608_amd64.deb" size="269700" buildtime="0" md5="3ffbc80f9582b2bf5c6cfad52b559a73" arch="amd64" />
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.72.0+t250806.0608" file="unknown_dir/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.72.0+t250806.0608_amd64.deb" size="269700" buildtime="0" md5="3ffbc80f9582b2bf5c6cfad52b559a73" arch="amd64" />
<package name="plesk-modsecurity-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/hosting/modsecurity/plesk-modsecurity-configurator_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_all.deb" size="554808" buildtime="0" md5="490a9b4239436fd312a5f64122269794" classes="aspect=panel" arch="all" />
<package name="plesk-modsecurity-crs" version="1:4.15.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/hosting/modsecurity/plesk-modsecurity-crs_4.15.0-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="227944" buildtime="0" md5="37c64be2293174aae66d0dd069b0925f" arch="amd64" />
<package name="plesk-modsecurity-crs" version="1:4.15.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="unknown_dir/plesk-modsecurity-crs_4.15.0-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="227944" buildtime="0" md5="37c64be2293174aae66d0dd069b0925f" arch="amd64" />
</component>
<component name="passenger" description="Phusion Passenger server" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-passenger-plesk" />
<keypackage name="passenger" />
</keypackages>
<requires>panel</requires>
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="308932" buildtime="0" md5="f21554251fb775b9d05320bd91a846d5" arch="amd64" />
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="308932" buildtime="0" md5="f21554251fb775b9d05320bd91a846d5" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/passenger_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="5565476" buildtime="0" md5="d5e829033527345c7d8cf09e8224b192" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/passenger_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="5565476" buildtime="0" md5="d5e829033527345c7d8cf09e8224b192" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="4620252" buildtime="0" md5="b069a2526f57b3de1964e5b4de1c0aa5" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="4620252" buildtime="0" md5="b069a2526f57b3de1964e5b4de1c0aa5" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="6068" buildtime="0" md5="6d8455bf35f28518661b6ab41e2d01b3" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="6068" buildtime="0" md5="6d8455bf35f28518661b6ab41e2d01b3" arch="amd64" />
</component>
<component name="l10n" description="All language localization for Plesk" classes="vendor=parallels,aspect=panel">
<bootstrapper>
<package name="pp18.0.72-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="bootstrapper/pp18.0.72-bootstrapper_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="222968" buildtime="0" md5="3accef6b6ba2d430ebabf656664e08bc" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.72" version="7.72.1" release="ubuntu.24.04.250807.1639" file="bootstrapper/sw-engine-cli-7.72_7.72.1-ubuntu.24.04.250807.1639_amd64.deb" size="6751546" buildtime="0" md5="d8eba017de68f4e229e5c87f57a643d7" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh prep-install l10n" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.72-bootstrapper/bootstrapper.sh post-install l10n" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-l10n" />
</keypackages>
<requires>panel</requires>
<package name="plesk-l10n" version="18.0" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/l10n/plesk-l10n_18.0-v.ubuntu.24.04+p18.0.72.3+t250915.0502_all.deb" size="7010896" buildtime="0" md5="bf805b62f340d2d0cda146e9fd85f73c" arch="all" />
</component>
<component name="git" description="Git" classes="vendor=parallels">
<keypackages>
<keypackage name="ext-git" />
</keypackages>
<requires>panel</requires>
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250715.1156" file="opt/git/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.72.0+t250715.1156_amd64.deb" size="3036" buildtime="0" md5="c75eff135a625c5ed36f7937083fd15a" arch="amd64" />
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250715.1156" file="unknown_dir/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.72.0+t250715.1156_amd64.deb" size="3036" buildtime="0" md5="c75eff135a625c5ed36f7937083fd15a" arch="amd64" />
</component>
<component name="resctrl" description="Resource Controller (Cgroups)" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-resctrl" />
</keypackages>
<requires>panel</requires>
<package name="plesk-resctrl" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250726.1516" file="opt/resctrl/plesk-resctrl_18.0-v.ubuntu.24.04+p18.0.72.0+t250726.1516_amd64.deb" size="42972" buildtime="0" md5="8a10626cd5c7175ce7d35669f3fa5faa" arch="amd64" />
</component>
<component name="nodejs" description="NodeJS support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-nodejs" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="gems-pre" description="Tools required for building Ruby gems" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-gems-pre" />
</keypackages>
<requires>ruby</requires>
<package name="plesk-gems-pre" version="0.0.1" release="v.ubuntu.24.04+p18.0.72.0+t250806.0900" file="opt/ruby/plesk-gems-pre_0.0.1-v.ubuntu.24.04+p18.0.72.0+t250806.0900_all.deb" size="1272" buildtime="0" md5="9544fe94793b47304d362d1c97eccc6c" arch="all" />
</component>
<component name="wp-toolkit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-wp-toolkit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="advisor" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-advisor" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ruby" description="Ruby support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ruby" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="nginx" description="Nginx web server" classes="vendor=parallels">
<keypackages>
<keypackage name="sw-nginx" />
</keypackages>
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/hosting/nginx/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="448588" buildtime="0" md5="5c75c2f381545d47db903e77e7c2edc5" arch="amd64" />
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="unknown_dir/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="448588" buildtime="0" md5="5c75c2f381545d47db903e77e7c2edc5" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="opt/hosting/nginx/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="4806880" buildtime="0" md5="b2af7e116c3feaba19053c63515a236c" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.72.3+t250915.0502" file="unknown_dir/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.72.3+t250915.0502_amd64.deb" size="4806880" buildtime="0" md5="b2af7e116c3feaba19053c63515a236c" arch="amd64" />
</component>
<component name="pmm" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-panel-migrator" />
</keypackages>
<requires>panel</requires>
</component>
<component name="xovi" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-xovi" />
</keypackages>
<requires>panel</requires>
</component>
<component name="imunify360" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-imunify360" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sslit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sslit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="letsencrypt" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-letsencrypt" />
</keypackages>
<requires>panel</requires>
</component>
<component name="repair-kit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-repair-kit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="composer" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-composer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="monitoring" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-monitoring" />
</keypackages>
<requires>panel</requires>
</component>
<component name="log-browser" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-log-browser" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ssh-terminal" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ssh-terminal" />
</keypackages>
<requires>panel</requires>
</component>
<component name="site-import" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-site-import" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sitejet" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-plesk-sitejet" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ntp-timesync" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ntp-timesync" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sophos" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sophos-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="mfa" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-mfa" />
</keypackages>
<requires>panel</requires>
</component>
<component name="configurations-troubleshooter" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-configurations-troubleshooter" />
</keypackages>
<requires>panel</requires>
</component>
<installation_types>
<type name="Recommended,Typical" description="Install typically used components. Recommended for general use.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
</type>
<type name="Full" description="Install all available components.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.1</component>
<component>php8.2</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
<component>resctrl</component>
<component>drweb</component>
<component>postgresql</component>
<component>spamassassin</component>
<component>ruby</component>
<component>gems-pre</component>
<component>nodejs</component>
<component>pmm</component>
<component>psa-firewall</component>
<component>watchdog</component>
<component>passenger</component>
<component>phpgroup</component>
<component>sophos</component>
</type>
</installation_types>
<component_groups>
<group name="hosting" description="Web hosting">
<component name="proftpd" />
<component name="webalizer" />
<component name="awstats" />
<component name="modsecurity" />
<component name="passenger" />
<component name="ruby" />
<component name="nodejs" />
<component name="gems-pre" />
<group name="apache_support" description="Apache">
<group type="radio" name="webservers" description="Apache versions">
<component name="apache" />
<component name="apache-sni" default="true" />
</group>
<component name="mod_fcgid" />
<component name="mod_perl" />
<component name="mod_python" />
</group>
<group name="php_comps" description="PHP interpreter versions">
<group type="radio" name="phpgroup" description="PHP interpreter versions">
<component name="php5" />
</group>
<component name="php8.4" />
<component name="php8.3" />
<component name="php8.2" />
<component name="php8.1" />
<component name="php8.0" />
<component name="php7.4" />
<component name="php7.3" />
<component name="php7.2" />
<component name="php7.1" />
<component name="php7.0" />
<component name="php5.6" />
<component name="php5.5" />
<component name="php5.4" />
<component name="php5.3" />
<component name="php5.2" />
</group>
<group name="nginx_comps" description="Nginx web server and reverse proxy server">
<component name="nginx" />
</group>
</group>
<group name="webmails" description="Webmail services">
<component name="horde" />
<component name="roundcube" default="true" />
</group>
<group name="mail" description="Mail hosting">
<group type="radio" name="mailservers" description="SMTP servers">
<component name="postfix" default="true" />
<component name="qmail" />
<component name="msmtp" />
</group>
<group type="radio" name="imapservers" description="IMAP/POP3 servers">
<component name="dovecot" default="true" />
<component name="courier" />
</group>
<component name="drweb" />
<component name="sophos" />
<component name="spamassassin" />
<component name="mailman" />
</group>
<group type="radio" name="mysqlgroup" description="MySQL server versions">
<component name="mysql-sys" default="true" />
</group>
<group name="extensions" description="Plesk extensions">
<component name="psa-firewall" />
<component name="watchdog" />
<component name="wp-toolkit" />
<component name="advisor" />
<component name="xovi" />
<component name="imunify360" />
<component name="sslit" />
<component name="letsencrypt" />
<component name="repair-kit" />
<component name="composer" />
<component name="monitoring" />
<component name="log-browser" />
<component name="ssh-terminal" />
<component name="site-import" />
<component name="sitejet" />
<component name="ntp-timesync" />
<component name="mfa" />
<component name="configurations-troubleshooter" />
</group>
</component_groups>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64">
<package name="plesk-libboost-1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="2204" buildtime="0" md5="a5365466a1ab4a4d6ff48184de747b93" arch="amd64" />
<package name="plesk-libboost-atomic1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-atomic1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="6740" buildtime="0" md5="952ee985685b021f066538b101e95fe9" arch="amd64" />
<package name="plesk-libboost-charconv1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-charconv1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="82462" buildtime="0" md5="ddf6a5d7e44e87dfc329f769d9b9b410" arch="amd64" />
<package name="plesk-libboost-chrono1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-chrono1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="16066" buildtime="0" md5="464e523c45b8df24c76eeec5148cc4bc" arch="amd64" />
<package name="plesk-libboost-context1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-context1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="4134" buildtime="0" md5="f8a4e1919740a45208ba3956e8b6e25c" arch="amd64" />
<package name="plesk-libboost-date-time1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-date-time1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3160" buildtime="0" md5="f06e0297a64c2eae0132beeb9db21c54" arch="amd64" />
<package name="plesk-libboost-filesystem1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-filesystem1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="74374" buildtime="0" md5="096d8aa46acc387f42bee22ab5a307db" arch="amd64" />
<package name="plesk-libboost-iostreams1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-iostreams1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="33404" buildtime="0" md5="ec98b9c456079f50cf3e8fded6547872" arch="amd64" />
<package name="plesk-libboost-locale1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-locale1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="320462" buildtime="0" md5="7cd59a147b151b8419ab95467bd37b90" arch="amd64" />
<package name="plesk-libboost-log1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-log1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="290942" buildtime="0" md5="efc96c5fae467d9132f3568291f8d747" arch="amd64" />
<package name="plesk-libboost-process1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-process1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="31868" buildtime="0" md5="150c8ecfc1bd23c4ab2c665ad4d47f72" arch="amd64" />
<package name="plesk-libboost-program-options1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-program-options1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="153736" buildtime="0" md5="d7edacb34e6070790775a184febed5ca" arch="amd64" />
<package name="plesk-libboost-random1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-random1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="15400" buildtime="0" md5="b4259a42ffa0e3a14b3ba35ea33424dc" arch="amd64" />
<package name="plesk-libboost-regex1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-regex1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="126542" buildtime="0" md5="b1edbf7063d27c15ffb8ca6fefef12c4" arch="amd64" />
<package name="plesk-libboost-serialization1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-serialization1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="90142" buildtime="0" md5="24ab64ea54361eae50e584f806afbef5" arch="amd64" />
<package name="plesk-libboost-system1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-system1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3136" buildtime="0" md5="3835e30dfc1b84719561dd47b7f2e9ed" arch="amd64" />
<package name="plesk-libboost-thread1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-thread1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="45848" buildtime="0" md5="423d7598c3650b066fac6268587d246a" arch="amd64" />
<package name="plesk-libpoco-1.14.2" version="1.14.2" release="ubuntu.24.04.250715.1156" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libpoco-1.14.2_1.14.2-ubuntu.24.04.250715.1156_amd64.deb" size="2987006" buildtime="0" md5="0daa79010b2aaebffca562e919e34cf9" arch="amd64" />
<package name="plesk-libstdc++14.3.0" version="14.3.0" release="ubuntu.24.04.250705.0905" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libstdc++14.3.0_14.3.0-ubuntu.24.04.250705.0905_amd64.deb" size="1017840" buildtime="0" md5="67f900133fbe02c0755de18d4bb53e22" arch="amd64" />
<package name="plesk-mysql-server" version="18.0.2" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-mysql-server_18.0.2-v.ubuntu.24.04+p18.0.61.0+t240426.1307_all.deb" size="1188" buildtime="0" md5="7dc1878f78e910bb5c594a361f5cde85" arch="all" />
<package name="plesk-python3-regex" version="2022.1.18" release="v.ubuntu.24.04+p18.0.67.0+t241210.1818" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-python3-regex_2022.1.18-v.ubuntu.24.04+p18.0.67.0+t241210.1818_amd64.deb" size="376720" buildtime="0" md5="ed37a911f79bc4e8572deb52c4be678a" arch="amd64" />
<package name="psa-pear" version="1.10.9" release="20191112.ubuntu.24.04.240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/psa-pear_1.10.9-20191112.ubuntu.24.04.240426.1307_all.deb" size="338144" buildtime="0" md5="8cf8bb272422acfaac0c5e4c36d63b04" arch="all" />
<package name="sw-tar" version="1.34" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/sw-tar_1.34-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="480592" buildtime="0" md5="57a4484d3cc5b6d4748be59b06c0bd38" arch="amd64" />
</thirdparty>
<extras extras_dir="extras-deb-Ubuntu-24.04-x86_64" persistent_repo="true" />
<force_remove_packages />
</build_1>

View File

@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_72" name="Plesk Obsidian 18.0.72" version="18.0.72" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.72-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.72-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.72-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.72-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.72-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.72-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.72-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.72-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.72-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.72-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.72-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.72-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.72-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.72-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.72-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.72-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.72-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.72-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.72-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.73-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.73-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.73-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.73-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.73-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.73-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.73-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.73-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.73-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.73-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.73-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.73-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,255 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# check-broken-tz.sh writes single line json report into it with the following fields:
# - "stage": "timezonefix"
# - "level": "error"
# - "errtype": "failure"
# - "date": time of error occurance ("2024-07-24T06:59:43,127545441+0000")
# - "error": human readable error message
report_dpkg_configure_fail()
{
local pkgname="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=dpkgconfigurefailed' <<-EOL
Could not configure the packages ( $pkgname ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_get_tz_fail()
{
make_error_report 'stage=timezonefix' 'level=error' 'errtype=gettzfailed' <<-EOL
Could not get the system timezone. See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_set_tz_fail()
{
local tz="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=settzfailed' <<-EOL
Could not set the system timezone ( $tz ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
get_current_tz()
{
[ -L /etc/localtime ] || return 1
local tz
tz="$(readlink -m /etc/localtime)" || return 1
[ -f "$tz" ] || return 1
case "$tz" in
/usr/share/zoneinfo/*) ;;
*) return 1;;
esac
tz="${tz#/usr/share/zoneinfo/}"
[ -n "$tz" ] || return 1
echo -n "${tz}"
}
check_timezone_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
# PPP-65676: Plesk update fails on ubuntu if timezone is CET
if dpkg-query --showformat='${db:Status-Status}\n' --show 'tzdata' | grep -wq 'half-configured'; then
local origtz
origtz=$(get_current_tz)
if [ $? != 0 ]; then
report_get_tz_fail
return $RET_WARN
fi
if ! timedatectl set-timezone 'Etc/UTC'; then
timedatectl set-timezone "$origtz"
report_set_tz_fail 'Etc/UTC'
return $RET_WARN
fi
if ! dpkg --configure 'tzdata'; then
timedatectl set-timezone "$origtz"
report_dpkg_configure_fail 'tzdata'
return $RET_WARN
fi
if ! timedatectl set-timezone "$origtz"; then
report_set_tz_fail "$origtz"
return $RET_WARN
fi
fi
return 0
}
# ---
skip_checker_on_flag "Broken timezone check" "/tmp/plesk-installer-skip-check-broken-timezone.flag"
checker_main 'check_timezone' "$1"

View File

@@ -0,0 +1,50 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
out()
{
echo -e "\t$*" >&2
}
print_urls()
{
plesk login 2>/dev/null | sed -e $'s|^|\t * |' >&2
}
print_congratulations()
{
local mode="$1" # 'install' or 'upgrade'
local process=
[ "$mode" = "install" ] && process="installation" || process="upgrade"
out
out " Congratulations!"
out
out "The $process has been finished. Plesk is now running on your server."
out
if [ "$mode" = "install" ]; then
out "To complete the configuration process, browse either of URLs:"
print_urls
out
fi
out "Use the username 'admin' to log in. To log in as 'admin', use the 'plesk login' command."
out "You can also log in as 'root' using your 'root' password."
out
out "Use the 'plesk' command to manage the server. Run 'plesk help' for more info."
out
out "Use the following commands to start and stop the Plesk web interface:"
out "'systemctl start psa.service' and 'systemctl stop psa.service' respectively."
out
if [ "$mode" = "install" ]; then
out "If you would like to migrate your subscriptions from other hosting panel"
out "or older Plesk version to this server, please check out our assistance"
out "options: https://www.plesk.com/professional-services/"
out
fi
}
unset GREP_OPTIONS
print_congratulations "$1"
# Force showing text when used as AI post-examiner
exit 1

View File

@@ -0,0 +1,542 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# disk_space_check.sh writes single line json report into it with the following fields:
# - "stage": "diskspacecheck"
# - "level": "error"
# - "errtype": "notenoughdiskspace"
# - "volume": volume with not enough diskspace (e.g. "/")
# - "required": required diskspace on the volume, human readable (e.g. "600 MB")
# - "available": available diskspace on the volume, human readable (e.g. "255 MB")
# - "needtofree": amount of diskspace which should be freed on the volume, human readable (e.g. "345 MB")
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message ("There is not enough disk space available in the / directory.")
# Required values below for Full installation are in MB. See 'du -cs -BM /*' and 'df -Pm'.
required_disk_space_cloudlinux7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4400 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_cloudlinux8()
{
case "$1" in
/opt) echo 1200 ;;
/usr) echo 4400 ;;
/var) echo 700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4100 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos8()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4500 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_virtuozzo7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_almalinux8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rocky8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rhel9()
{
case "$1" in
/opt) echo 500 ;;
/usr) echo 4000 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_almalinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_almalinux10()
{
required_disk_space_almalinux9 "$1"
}
required_disk_space_cloudlinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_debian10()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2300 ;;
/var) echo 1700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian11()
{
case "$1" in
/opt) echo 1500 ;;
/usr) echo 3100 ;;
/var) echo 1800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian12()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian13()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu18()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 1800 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu20()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2900 ;;
/var) echo 1600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu22()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 3900 ;;
/var) echo 1900 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu24()
{
case "$1" in
/opt) echo 3200 ;;
/usr) echo 1800 ;;
/var) echo 2400 ;;
/tmp) echo 100 ;;
esac
}
required_update_upgrade_disk_space()
{
case "$1" in
/opt) echo 100 ;;
/usr) echo 300 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
clean_tmp()
{
local volume="$1"
local path="/tmp"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'systemd-tmpfiles --clean --prefix $path'"
systemd-tmpfiles --clean --prefix "$path" 2>&1
}
clean_yum()
{
local volume="$1"
local path="/var/cache/yum"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'yum clean all'"
yum clean all 2>&1
# The command above doesn't clean untracked repos (missing in configuration), clean if left > 2 Mb
[ "`du -sm "$path" | awk '{ print $1 }'`" -gt 2 ] || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
clean_dnf()
{
local volume="$1"
local path="/var/cache/dnf"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'dnf clean all'"
dnf clean all 2>&1
}
clean_apt()
{
local volume="$1"
local path="/var/cache/apt"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'apt-get clean'"
apt-get clean 2>&1
}
clean_journal()
{
local volume="$1"
local path="/var/log/journal"
is_path_on_volume "$path" "$volume" || return 0
# Note that --rotate may cause more space to be freed, but may also cause more space to be used
echo "Cleaning $path via 'journalctl --vacuum-time 1d'"
journalctl --vacuum-time 1d 2>&1
}
clean_ext_packages()
{
local volume="$1"
local path="$PRODUCT_ROOT_D/var/modules-packages"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
# @param $1 target directory
mount_point()
{
df -Pm $1 | awk 'NR==2 { print $6 }'
}
# @param $1 target directory
available_disk_space()
{
df -Pm $1 | awk 'NR==2 { print $4 }'
}
is_path_on_volume()
{
local path="$1"
local volume="$2"
[ -d "$path" ] && [ "`mount_point "$path"`" = "$volume" ]
}
# @param $1 target directory
# @param $2 mode (install/upgrade/update)
req_disk_space()
{
if [ "$2" != "install" ]; then
required_update_upgrade_disk_space "$1"
return
fi
has_os_impl_function "required_disk_space" || {
echo "There are no requirements defined for $os_name$os_version." >&2
echo "Disk space check cannot be performed." >&2
exit $RET_WARN
}
call_os_impl_function "required_disk_space" "$1"
}
human_readable_size()
{
echo "$1" | awk '
function human(x) {
s = "MGTEPYZ";
while (x >= 1000 && length(s) > 1) {
x /= 1024; s = substr(s, 2);
}
# 0.05 below will make sure the value is rounded up
return sprintf("%.1f %sB", x + 0.05, substr(s, 1, 1));
}
{ print human($1); }'
}
# @param $1 target directory
# @param $2 required disk space
# @param $3 check only flag (don't emit errors)
check_available_disk_space()
{
local volume="$1"
local required="$2"
local check_only="${3:-}"
local available="$(available_disk_space "$volume")"
if [ "$available" -lt "$required" ]; then
local needtofree
needtofree="`human_readable_size $((required - available))`"
[ -n "$check_only" ] ||
make_error_report 'stage=diskspacecheck' 'level=error' 'errtype=notenoughdiskspace' \
"volume=$volume" "required=$required MB" "available=$available MB" "needtofree=$needtofree" \
<<-EOL
There is not enough disk space available in the $1 directory.
You need to free up $needtofree.
EOL
return "$RET_FATAL"
fi
}
# @param $1 target directory
# @param $2 required disk space
clean_and_check_available_disk_space()
{
if [ -n "$PLESK_INSTALLER_FORCE_CLEAN_DISK_SPACE" ] || ! check_available_disk_space "$@" --check-only; then
clean_disk_space "$1"
check_available_disk_space "$@"
fi
}
# Cleans up disk space on the volume
clean_disk_space()
{
local volume="$1"
for cleanup_func in clean_tmp clean_yum clean_dnf clean_apt clean_journal clean_ext_packages; do
"$cleanup_func" "$volume"
done
}
# @param $1 mode (install/upgrade/update)
clean_and_check_disk_space()
{
local mode="$1"
local shared=0
for target_directory in /opt /usr /var /tmp; do
local required=$(req_disk_space "$target_directory" "$mode")
[ -n "$required" ] || return "$RET_WARN"
if is_path_on_volume "$target_directory" "/"; then
shared="$((shared + required))"
else
clean_and_check_available_disk_space "$target_directory" "$required" || return $?
fi
done
clean_and_check_available_disk_space "/" "$shared" || return $?
}
checker_main 'clean_and_check_disk_space' "$1"

View File

@@ -0,0 +1,111 @@
<?php
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
// vim: set et :
require_once('sdk.php');
define('TARGET_VERSION', '18.0.73');
define('RESULT_NETWORK_PROBLEM', 1);
define('RESULT_ERROR', 2);
define('RESULT_LICENSE_PROBLEM', 3);
define('RESULT_LICENSE_OK', 4);
function finish($rc, $sure = true)
{
if ($rc !== 0) {
fwrite(STDERR, "\n");
if ($sure) {
fwrite(STDERR, "Your license key is not compatible with Plesk Obsidian.\n");
} else {
fwrite(STDERR, "Your license key may not be compatible with Plesk Obsidian.\n");
}
fwrite(STDERR, "You need to upgrade your license before updating Plesk.\n");
fwrite(STDERR, "For details, refer to the KB https://support.plesk.com/hc/en-us/articles/360023612594\n");
}
exit($rc);
}
$skipFlag = PRODUCT_VAR . DIRECTORY_SEPARATOR . "plesk-installer-skip-license-key-check.flag";
if (file_exists($skipFlag)) {
fwrite(STDERR, "Plesk license key upgrade availability check was skipped due to a flag file.\n");
exit(0);
}
if (!function_exists('of_get_key_by_product') || !function_exists('of_get_versions')) {
fwrite(STDERR, "Plesk license key upgrade availability check should be run on sw-engine only.\n");
exit(2);
}
foreach (["plesk-unified", "plesk-unix", "plesk-win"] as $prod) {
$key = of_get_key_by_product($prod);
if ($key !== false) {
break;
}
}
if ($key === false) {
fwrite(STDERR, "No Plesk license key was found. License upgrade check is skipped.\n");
finish(0);
}
$targetVersion = TARGET_VERSION;
$vers = of_get_versions($key); /* plesk >= 10.0.0 */
if (!is_array($vers)) {
$vers = [$vers];
}
$match = false;
foreach ($vers as $ver) {
if (!is_array($ver)) {
$match |= strtok($ver, ".") == strtok($targetVersion, ".");
} else {
$match |= ("any" == $ver[0] || version_compare($ver[0], $targetVersion) <= 0) &&
("any" == $ver[1] || version_compare($ver[1], $targetVersion) >= 0);
}
}
if ($match) {
fwrite(STDERR, "You do not need to upgrade the current license key.\n");
fwrite(STDOUT, "License upgrade check to $targetVersion can be skipped.\n");
fwrite(STDOUT, "Plesk versions compatible with the license key: " . preg_replace('/\n\s*/', '', var_export($vers, true)) . "\n");
finish(0);
}
if (!function_exists('ka_is_key_upgrade_available')) {
// Plesk 17.0
fwrite(STDERR, "Cannot check whether Plesk license key upgrade is available.\n");
finish(1, false);
}
$si = getServerInfo();
$result = ka_is_key_upgrade_available($prod, $targetVersion, $si);
$isConfused = false;
switch ($result['code']) {
case RESULT_LICENSE_OK:
fwrite(STDERR, "The licensing server accepted the key upgrade request.\n");
fwrite(STDERR, "License upgrade to $targetVersion is available.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(0);
case RESULT_NETWORK_PROBLEM:
fwrite(STDERR, "Unable to connect to the licensing server to check if license upgrade is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
finish(2, false);
case RESULT_LICENSE_PROBLEM:
fwrite(STDERR, "Warning: Your Plesk license key cannot be upgraded.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(2);
default:
$isConfused = true;
// fall-through
case RESULT_ERROR:
// This includes "Software Update Service (SUS) is not found for the given license key" case, but also many others.
fwrite(STDERR, "Failed to check whether a new license key is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
if ($isConfused) {
fwrite(STDERR, "Error code: {$result['code']}\n");
}
finish(2, !$isConfused);
}

View File

@@ -0,0 +1,224 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
check_package_manager_deb_based()
{
local output=
output="`dpkg --audit 2>&1`" || output="$output"$'\n'"'dpkg --audit' finished with error code $?."
if [ -n "$output" ]; then
make_error_report 'stage=packagemanagercheck' 'level=error' 'errtype=brokenpackages' <<-EOL
The system package manager reports the following problems:
$output
To continue with the installation, you need to resolve these issues
using the procedure below:
1. Make sure you have a full server snapshot. Although the
following steps are usually safe, they can still cause
data loss or irreversible changes.
2. Run 'dpkg --configure -a'. This command can fix some of the
issues. However, it may fail. Regardless if it fails or not,
proceed with the following steps.
3. Run 'PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK=1 plesk installer update --skip-cleanup'.
Instead of 'update', you may need to use the command you used
previously (for example, 'upgrade' or 'install').
4. The next step depends on the outcome of the previous one:
- If step 3 was completed with the "You already have the latest
version of product(s) and all the selected components installed.
Installation will not continue." message,
run 'plesk repair installation'.
- If step 3 failed, run 'dpkg --audit'. This command can show you
packages that need to be reinstalled. To reinstall them, run
'apt-get install --reinstall <packages>'.
5. Run 'plesk installer update' to revert temporary changes and
validate that the issues are resolved. If the command fails or
triggers this check again, contact Plesk support.
For more information, see
https://support.plesk.com/hc/en-us/articles/12871173047447-Plesk-update-on-Debian-Ubuntu-fails-dpkg-was-interrupted-you-must-manually-run-dpkg-configure-a-to-correct-the-problem
EOL
return "$RET_FATAL"
fi
}
check_package_manager_debian()
{
check_package_manager_deb_based
}
check_package_manager_ubuntu()
{
check_package_manager_deb_based
}
skip_checker_on_env "Package manager check" "$PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK"
skip_checker_on_flag "Package manager check" "/tmp/plesk-installer-skip-package-manager-check.flag"
checker_main 'check_package_manager' "$@"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,38 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo $*
exit 1
}
[ -n "$1" ] || die "Usage: $0 php_script [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
php_bin=
lookup()
{
[ -z "$php_bin" ] || return
local paths="$1"
local name="$2"
for path in $paths; do
if [ -x "$path/$name" ]; then
php_bin="$path/$name"
break
fi
done
}
lookup "/usr/local/psa/admin/bin /opt/psa/admin/bin" "php"
lookup "/usr/local/psa/bin /opt/psa/bin" "sw-engine-pleskrun"
[ -n "$php_bin" ] || \
die "Unable to locate the sw-engine PHP interpreter to execute the script. Make sure that Parallels Plesk Panel is installed on this server."
exec "${php_bin}" "$@"

View File

@@ -0,0 +1,68 @@
INFO: Installed Plesk version/build: 18.0.72 Ubuntu 24.04 1800250915.05...
INFO: STEP 0: Detect system configuration...
INFO: OS: Ubuntu 24.04.3 LTS \n \l
INFO: Arch: x86_64
INFO: Validating the database password...
INFO: Result: OK
INFO: Pre-Upgrade analyzer version: 18.0.73.0...
INFO: STEP 1: Checking for main IP address...
INFO: Result: OK
INFO: STEP 2: Checking existence of Plesk user "root" for MariaDB/MySQL database servers...
INFO: Result: OK
INFO: STEP 3: Checking proftpd settings...
INFO: Result: OK
INFO: STEP 4: Checking the 'Interval' parameter in the sw-collectd configuration file...
INFO: Result: OK
INFO: STEP 5: Checking Apache status...
INFO: Result: OK
INFO: STEP 6: Checking Panel files for the immutable bit attribute...
INFO: Result: OK
INFO: STEP 7: Checking the possibility to change the permissions of files in the DUMP_D directory...
INFO: Result: OK
INFO: STEP 8: Checking consistency of the IP addresses list in the Panel database...
INFO: Result: OK
INFO: STEP 9: Checking installed APS applications...
INFO: Result: OK
INFO: STEP 10: Checking if apsc database tables have InnoDB engine...
INFO: Result: OK
INFO: STEP 11: Checking for custom web server configuration templates...
INFO: Result: OK
INFO: STEP 12: Checking for domains with mixed case names...
INFO: Result: OK
INFO: STEP 13: Checking symbolic link /usr/local/psa on /opt/psa...
INFO: Result: OK
INFO: STEP 14: Detecting if encrypted passwords are used...
INFO: Result: OK
INFO: STEP 15: Checking table "servers" in database "mysql"...
INFO: The administrator's password for the default MariaDB/MySQL server is encrypted.
INFO: Result: OK
INFO: STEP 16: Checking the availability of Plesk Panel TCP ports...
INFO: Result: OK
INFO: STEP 17: Checking for Protected Directory Users with duplicates in login field....
INFO: STEP 18: Checking "domains" table with duplicates in guid field....
INFO: STEP 19: Checking "clients" table with duplicates in guid field....
INFO: STEP 20: Checking if any rules are configured in the Firewall extension...

View File

@@ -0,0 +1,30 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo "$*"
exit 1
}
[ -f "$1" ] || die "Usage: $0 PEX [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
find_python_bin()
{
local bin
for bin in "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3" "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2"; do
[ -x "$bin" ] || continue
python_bin="$bin"
return 0
done
return 1
}
find_python_bin ||
die "Unable to locate Python interpreter to execute the script."
exec "$python_bin" "$@"

View File

@@ -0,0 +1,782 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# repository_check.sh writes single line json report into it with the following fields:
# - "stage": "repositorycheck"
# - "level": "error"
# - "errtype" is one of the following:
# * "reponotcached" - repository is not cached (mostly due to unavailability).
# * "reponotenabled" - required repository is not enabled.
# * "reponotsupported" - unsupported repository is enabled.
# * "configmanagernotinstalled" - dnf config-manager is disabled.
# - "repo": repository name.
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message.
report_no_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotenabled' "repo=$repo" <<-EOL
Plesk installation requires '$repo' OS repository to be enabled.
Make sure it is available and enabled, then try again.
EOL
}
report_no_repo_cache()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotcached' "repo=$repo" <<-EOL
Unable to create $package_manager cache for '$repo' OS repository.
Make sure the repository is available, otherwise either disable it or fix its configuration, then try again.
EOL
}
report_unsupported_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotsupported' "repo=$repo" <<-EOL
Plesk installation doesn't support '$repo' OS repository.
Make sure it is disabled, then try again.
EOL
}
report_rh_no_config_manager()
{
local target
case "$package_manager" in
yum)
target="yum-utils package"
;;
dnf)
target="config-manager dnf plugin"
;;
esac
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=configmanagernotinstalled' <<-EOL
Failed to install $target.
Make sure repositories configuration of $package_manager package manager is correct
(use '$package_manager repolist --verbose' to get its actual state), then try again.
EOL
}
check_rh_broken_repos()
{
local rh_enabled_repos rh_available_repos
# 1. `yum repolist` and `dnf repolist` list all repos
# which were enabled before last cache creation
# even if cache for them was not created.
# If some repo is misconfigured and cache was created with `skip_if_unavailable=1`
# then such repo will be listed anyway despite on cache state.
# If some repo was enabled after last cache creation
# then `repolist --cacheonly` will fail.
# 2. `yum repolist --verbose` and `dnf repoinfo` list only repos
# which were successfully cached before.
# These commands fail if at least one repo is not available
# and the 'skip_if_unavailable' flag is not set.
case "$package_manager" in
yum)
rh_enabled_repos="$(
{
yum repolist enabled --cacheonly -q 2>/dev/null \
|| yum repolist enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^\*\?!\?\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$(
yum repolist enabled --verbose --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's/^Repo-id\s*:\s*\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
;;
dnf)
rh_enabled_repos="$(
{
dnf repolist --enabled --cacheonly -q 2>/dev/null \
|| dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(\S\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$( \
dnf repoinfo --enabled --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's|^Repo-id\s*:\s*\(\S\+\)\s*$|\1|p'
)" || return $RET_FATAL
;;
esac
local rh_enabled_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_enabled_repos" | sort > "$rh_enabled_repos_f"
local rh_available_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_available_repos" | sort > "$rh_available_repos_f"
local repo rc=0
for repo in $(comm -23 "$rh_enabled_repos_f" "$rh_available_repos_f"); do
report_no_repo_cache "$repo"
rc=$RET_WARN
done
rm -f "$rh_enabled_repos_f" "$rh_available_repos_f"
return $rc
}
has_rh_enabled_repo()
{
local repo="$1"
# Try to get list of repos from cache first.
# If some repo was enabled after last cache creation
# or some repo is unavailable the query from cache will fail.
# Try to fetch actual metadata in this case.
case "$package_manager" in
yum)
# Repo-id may end with OS version and/or architecture
# if baseurl of the repo refers to $releasever and/or $basearch variables
# eg 'epel/7/x86_64', 'epel/7', 'epel/x86_64'
{
yum repolist enabled --verbose --cacheonly -q 2>/dev/null \
|| yum repolist enabled --verbose -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo(/.+)?\s*$"
;;
dnf)
# note: --noplugins may cause failure and empty output on RedHat
{
dnf repoinfo --enabled --cacheonly -q 2>/dev/null \
|| dnf repoinfo --enabled -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo\s*$"
;;
esac
}
has_rh_config_manager()
{
case "$package_manager" in
yum) yum-config-manager --help >/dev/null 2>&1 ;;
dnf) dnf config-manager --help >/dev/null 2>&1 ;;
esac
}
install_rh_config_manager()
{
case "$package_manager" in
yum) yum install --disablerepo 'PLESK_*' -q -y 'yum-utils' --setopt='*.skip_if_unavailable=1' ;;
dnf) dnf install --disablerepo 'PLESK_*' -q -y 'dnf-command(config-manager)' --setopt='*.skip_if_unavailable=1' ;;
esac
}
check_rh_config_manager()
{
if ! has_rh_config_manager && ! install_rh_config_manager; then
report_rh_no_config_manager
return $RET_FATAL
fi
}
enable_rh_repo()
{
case "$package_manager" in
yum) yum-config-manager --enable "$@" && has_rh_enabled_repo "$@" ;;
dnf) dnf config-manager --set-enabled "$@" && has_rh_enabled_repo "$@" ;;
esac
}
enable_sm_repo()
{
! has_rh_enabled_repo "$@" || return 0
subscription-manager repos --enable "$@" || return $?
# On RedHat 8 above command may return 0 on failure with "Repositories disabled by configuration."
has_rh_enabled_repo "$@"
}
check_epel()
{
! enable_rh_repo "epel" || return 0
# try to install epel-release from centos/extras or plesk/thirdparty repo
# and then try to update it to last version shipped by epel itself
# to make package upgradable with pum
"$package_manager" install --disablerepo 'PLESK_*' -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null \
|| "$package_manager" install --disablerepo='*' --enablerepo 'PLESK_18_*-thirdparty' -q -y 'epel-release' \
|| "$package_manager" install -q -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$os_version.noarch.rpm" \
&& "$package_manager" update -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null
# Ensure any other EPEL repos have cache for subsequent check for broken repos (AL9)
local epel_repos="$(
[ "$package_manager" != "dnf" ] || {
dnf repolist --enabled --cacheonly -q 2>/dev/null ||
dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(epel\S\+\).*/\1/p'
)"
for repo in $epel_repos; do
"$package_manager" makecache --repo "$repo" -q
done
! has_rh_enabled_repo "epel" || return 0
report_no_repo "epel"
return $RET_FATAL
}
check_codeready()
{
local repo_rhel="codeready-builder-for-rhel-$os_version-$os_arch-rpms"
local repo_rhui="codeready-builder-for-rhel-$os_version-rhui-rpms"
local repo_rhui_alt="codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
local repo_rhui_alt2="rhui-codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
! enable_rh_repo "$repo_rhui_alt" || return 0
! enable_rh_repo "$repo_rhui_alt2" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_optional()
{
local repo_rhel="rhel-$os_version-server-optional-rpms"
local repo_rhui="rhel-$os_version-server-rhui-optional-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_repos_rhel9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_codeready || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# powertools is renamed to crb since AlmaLinux 9
! enable_rh_repo "crb" || return $rc
report_no_repo "crb"
return $RET_FATAL
}
check_repos_cloudlinux9()
{
check_repos_almalinux9 "$@"
}
check_repos_almalinux10()
{
check_repos_almalinux9 "$@"
}
check_repos_centos8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are lowercased since 8.3
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_cloudlinux8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are changed since 8.5
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "cloudlinux-PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_rhel8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
[ "$1" = "install" ] || return $rc
check_codeready || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux8()
{
check_repos_centos8 "$@"
}
check_repos_rocky8()
{
check_repos_centos8 "$@"
}
check_repos_rhel7()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_optional || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_centos7_based()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
sed_escape()
{
# Note: this is not a full implementation
echo -n "$1" | sed -e 's|\.|\\.|g'
}
switch_eol_centos_repos()
{
local old_mirrorlist_host="mirrorlist.centos.org"
local old_host="mirror.centos.org"
local new_host="vault.centos.org"
grep -qFw "$old_host" /etc/yum.repos.d/CentOS-*.repo 2>/dev/null || return 0
local backup="`mktemp -d "/tmp/yum.repos.d-$(date --rfc-3339=date)-XXXXXX"`"
! [ -d "$backup" ] || cp -raT /etc/yum.repos.d "$backup" || :
sed -i \
-e "s|^\s*\(mirrorlist\b[^/]*//`sed_escape "$old_mirrorlist_host"`/.*\)$|#\1|" \
-e "s|^#*\s*baseurl\b\([^/]*\)//`sed_escape "$old_host"`/\(.*\)$|baseurl\1//$new_host/\2|" \
/etc/yum.repos.d/CentOS-*.repo
echo "YUM package manager repositories were backed up to '$backup' and switched from $old_host to $new_host ." >&2
}
check_repos_centos7()
{
switch_eol_centos_repos
check_repos_centos7_based "$@"
}
check_repos_cloudlinux7()
{
check_repos_centos7_based "$@"
}
check_repos_virtuozzo7()
{
check_repos_centos7_based "$@"
}
find_apt_repo()
{
local repo="$1"
local dist_tag=
! [ "$os_name" = "ubuntu" ] || dist_tag="a"
! [ "$os_name" = "debian" ] || dist_tag="n"
if [ -z "$_apt_cache_policy" ]; then
# extract info of each available release as a string which consists of 'tag=value'
# filter out releases with priority less or equal to 100
_apt_cache_policy="$(
apt-cache policy \
| grep "b=$pkg_arch" \
| grep -Eo '([a-z]=[^,]+,?)*' \
)"
fi
local l="$(echo "$repo" | cut -f1 -d'/')"
local d="$(echo "$repo" | cut -f2 -d'/')"
local c="$(echo "$repo" | cut -f3 -d'/')"
# try to find releases by distribution and component
echo "$_apt_cache_policy" \
| grep -E "(^|,)l=$l(,|$)" \
| grep -E "(^|,)$dist_tag=$d(,|$)" \
| grep -E "(^|,)c=$c(,|$)" \
| while IFS="$(printf '\n')" read rel && [ -n "$rel" ]; do
l="$(echo "$rel" | grep -Eo "(^|,)l=[^,]+" | cut -f2 -d"=")"
d="$(echo "$rel" | grep -Eo "(^|,)$dist_tag=[^,]+" | cut -f2 -d"=")"
c="$(echo "$rel" | grep -Eo "(^|,)c=[^,]+" | cut -f2 -d"=")"
echo "$l/$d/$c"
done
}
apt_install_packages()
{
DEBIAN_FRONTEND=noninteractive LANG=C PATH=/usr/sbin:/usr/bin:/sbin:/bin \
apt-get -qq --assume-yes -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold -o APT::Install-Recommends=no \
install "$@"
}
# Takes a list of suites and disables them in APT sources.
# Multiline deb822 format is supported.
disable_apt_suites_deb822()
{
local python3=/usr/bin/python3
"$python3" -c 'import aptsources.sourceslist' 2>/dev/null ||
apt_install_packages python3-apt
"$python3" -c '
import sys
from aptsources.sourceslist import SourcesList
suites_to_disable=set(sys.argv[1:])
sources_list = SourcesList(deb822=True)
sources_changed = False
for src in sources_list:
if src.invalid:
continue
suites = getattr(src, "suites", ())
if not suites:
continue
new_suites = [s for s in suites if s not in suites_to_disable]
if len(new_suites) != len(suites):
sources_changed = True
if len(new_suites) == 0:
src.disabled = True
else:
src.suites = new_suites
if sources_changed:
sources_list.save()
' "$@"
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
}
disable_apt_repo()
{
local repos_to_disable="$(find_apt_repo "$1" | cut -d '/' -f 2,3 | sort | uniq)"
if [ -z "$repos_to_disable" ]; then
return 0
fi
echo "$repos_to_disable" \
| while IFS= read -r repo_to_disable && [ -n "$repo_to_disable" ]; do
local distrib=${repo_to_disable%%/*}
local component=${repo_to_disable##*/}
find /etc/apt -name "*.list" -exec \
sed -i -e "/^\s*#/! s/.*\s$distrib\s\+$component\b/# &/" {} +
done
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
return 0
}
check_required_apt_repo()
{
local repo="$1"
[ -z "$(find_apt_repo "$repo")" ] || return 0
report_no_repo "$repo"
return $RET_FATAL
}
check_unsupported_apt_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Ubuntu/[^,]+/[^,]+" | grep -v "Ubuntu/$os_codename.*/.*"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_ubuntu18()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_unsupported_apt_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+" | grep -v "Debian.*/$os_codename.*/.*"
find_apt_repo "Ubuntu/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
if [ "$os_name" = "debian" -a "$os_version" -ge 12 ]; then
disable_apt_suites_deb822 "$os_codename-backports"
else
disable_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
fi
check_required_apt_repo "Debian/$os_codename/main" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_debian "$mode" || rc="$(( $rc | $? ))"
return $rc
}
# ---
skip_checker_on_flag "Repository check" "/tmp/plesk-installer-skip-repository-check.flag"
checker_main 'check_repos' "$1"

View File

@@ -0,0 +1,7 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
exec "$@"

View File

@@ -0,0 +1,927 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build_1 confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" apt_source=" noble all" persistent_apt_source=" noble extras">
<exact_required_autoinstaller version="3.73.0" binary_directory="Installer/3.73.0" />
<required_autoinstaller version="3.18.12" binary_directory="Parallels_Installer" />
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" sequence-order="-2" stage="execute" exec-cmd="touch /var/lock/plesk-report-update.flag; :" />
<action sequence="prep" sequence-order="-1" stage="execute" exec-cmd="touch /tmp/pp-bootstrapper-mode.flag; touch /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="prep" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="pkgs" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="commit" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; :" />
<action sequence="post" sequence-order="9990" exec-cmd="test ! -x /opt/psa/admin/sbin/packagemng || /opt/psa/admin/sbin/packagemng --set-dirty-flag" />
<action sequence="post" sequence-order="9991" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh perform-deferred-actions" />
<action sequence="post" sequence-order="9998" exec-cmd="/opt/psa/admin/sbin/update_history" />
</bootstrapper>
<examine name="Create swap space if needed" scope="pre_install" script="examiners/tune_memory_swap.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_install" script="examiners/repository_check.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_upgrade" script="examiners/repository_check.sh" options="upgrade" />
<examine name="Enabled repositories check" scope="pre_update" script="examiners/repository_check.sh" options="update" />
<examine name="Package manager check" scope="pre_any" script="examiners/package_manager_check.sh" />
<examine name="Check and fix broken timezone" scope="pre_upgrade" script="examiners/check_broken_timezone.sh" options="upgrade" />
<examine name="Check and fix broken timezone" scope="pre_update" script="examiners/check_broken_timezone.sh" options="update" />
<examine name="Available disk space check" scope="pre_install" script="examiners/disk_space_check.sh" options="install" />
<examine name="Available disk space check" scope="pre_upgrade" script="examiners/disk_space_check.sh" options="upgrade" />
<examine name="Available disk space check" scope="pre_update" script="examiners/disk_space_check.sh" options="update" />
<examine name="Installation is finished" scope="post_install" script="examiners/congratulations.sh" options="install" />
<examine name="Upgrade is finished" scope="post_upgrade" script="examiners/congratulations.sh" options="upgrade" />
<examine name="Prepare result notification" scope="pre_any" script="examiners/sh_cmd.sh" options="touch /var/lock/plesk-report-update.flag" always="true" />
<examine name="Installation result notification" scope="post_install" script="/report-update" launcher="examiners/py_launcher.sh" options="--op install --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.3" always="true" />
<examine name="Upgrade result notification" scope="post_upgrade" script="/report-update" launcher="examiners/py_launcher.sh" options="--op upgrade --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.3 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Update result notification" scope="post_update" script="/report-update" launcher="examiners/py_launcher.sh" options="--op update --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.3 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Store installation info" scope="post_install" script="examiners/save-installation-info.php" launcher="examiners/php_launcher.sh" options="--save -mode {WORK_MODE} -preset {PRESET} -arguments {ARGUMENTS}" always="true" />
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="plesk">
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" upgrade_allowed_from="17.0.17" />
</product>
<ext_catalog url="https://ext.plesk.com" />
<component name="panel" description="Plesk" classes="vendor=parallels,patched,aspect=panel" deny_implicit_removal="true">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install BASE" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_awstats_configure" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install psa-vhost" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install BASE" sequence-order="100" />
<action sequence="prep" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="pkgs" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="commit" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-success-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-success-notification.php" />
</bootstrapper>
<examine name="Plesk license key availability check" scope="pre_upgrade" script="examiners/license_key_check.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<examine name="Plesk pre-upgrade check" scope="pre_upgrade" script="examiners/panel_preupgrade_checker.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
<keypackage name="plesk-web-hosting" />
</keypackages>
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
</keypackages>
<requires>mysqlgroup</requires>
<requires>l10n</requires>
<requires>proftpd</requires>
<requires>webservers</requires>
<package name="libapache2-mod-aclr2-psa" version="14081815" release="v.ubuntu.24.04+p18.0.72.0+t250815.1551" file="opt/hosting/nginxSupport/libapache2-mod-aclr2-psa_14081815-v.ubuntu.24.04+p18.0.72.0+t250815.1551_amd64.deb" size="7560" buildtime="0" md5="a28f5beb35a60d36a79e568bbaaae7f8" arch="amd64" />
<package name="libapache2-mod-sysenv-psa" version="0.2" release="v.ubuntu.24.04+p18.0.72.0+t250815.1551" file="opt/hosting/sysenv/libapache2-mod-sysenv-psa_0.2-v.ubuntu.24.04+p18.0.72.0+t250815.1551_amd64.deb" size="3808" buildtime="0" md5="3bcdfbc177deb003bc533f43e9c68aed" arch="amd64" />
<package name="libaps" version="1.0.17" release="ubuntu.24.04.250902.0711" file="engine/libaps_1.0.17-ubuntu.24.04.250902.0711_amd64.deb" size="1305310" buildtime="0" md5="ad7fce023006460422ea1a2785685a0b" classes="aspect=panel" arch="amd64" />
<package name="libpam-plesk" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250916.1228" file="base/libpam-plesk_18.0-v.ubuntu.24.04+p18.0.73.0+t250916.1228_amd64.deb" size="502924" buildtime="0" md5="fdaecbd76297e1d063440dcbde4a0303" classes="aspect=panel" arch="amd64" />
<package name="plesk-backup-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="base/plesk-backup-utilities_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="4121884" buildtime="0" md5="223a813682abbded411545a30b9ecf9f" classes="aspect=panel" arch="amd64" />
<package name="plesk-completion" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250911.1022" file="base/plesk-completion_18.0-v.ubuntu.24.04+p18.0.73.0+t250911.1022_amd64.deb" size="2211924" buildtime="0" md5="d4fb82c7e0c1a14728ff5f4a91a73f55" classes="aspect=panel" arch="amd64" />
<package name="plesk-control-panel" version="18.0" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="base/plesk-control-panel_18.0-v.ubuntu.24.04+p18.0.73.1+t251001.0636_all.deb" size="11254984" buildtime="0" md5="0302c6235f6d57380e518bffe67a7fb8" classes="aspect=panel" arch="all" />
<package name="plesk-core" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="base/plesk-core_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="31188396" buildtime="0" md5="199859e9984f4f45d9e033f95810ec4b" classes="aspect=panel" arch="amd64" />
<package name="plesk-core-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="base/plesk-core-utilities_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="1323316" buildtime="0" md5="9563c27472aa26f576545ed04647a765" classes="aspect=panel" arch="amd64" />
<package name="plesk-engine" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250902.1415" file="engine/plesk-engine_18.0-v.ubuntu.24.04+p18.0.73.0+t250902.1415_all.deb" size="1148" buildtime="0" md5="66cda3ea755a13f3dd4898c8050da6fa" classes="aspect=panel" arch="all" />
<package name="plesk-libmaodbc" version="3.2.6" release="v.ubuntu.24.04+p18.0.73.0+t250916.1228" file="base/plesk-libmaodbc_3.2.6-v.ubuntu.24.04+p18.0.73.0+t250916.1228_amd64.deb" size="273240" buildtime="0" md5="c8641270778312e8bec2a9700b14868c" classes="aspect=panel" arch="amd64" />
<package name="plesk-libmariadbclient-3.4" version="3.4.7" release="v.ubuntu.24.04+p18.0.73.0+t250916.1228" file="base/plesk-libmariadbclient-3.4_3.4.7-v.ubuntu.24.04+p18.0.73.0+t250916.1228_amd64.deb" size="126668" buildtime="0" md5="f1c718bf9f800a3464f644c91cb0de3d" classes="aspect=panel" arch="amd64" />
<package name="plesk-librdbmspp" version="2.0.7" release="ubuntu.24.04.250902.0711" file="engine/plesk-librdbmspp_2.0.7-ubuntu.24.04.250902.0711_amd64.deb" size="202370" buildtime="0" md5="8466fd1149ccaf212f0d1497e7f56657" classes="aspect=panel" arch="amd64" />
<package name="plesk-lmlib" version="0.2.8" release="ubuntu.24.04.250902.0711" file="engine/plesk-lmlib_0.2.8-ubuntu.24.04.250902.0711_amd64.deb" size="464388" buildtime="0" md5="12d1c937bc3daa13702aa52193ffc836" classes="aspect=panel" arch="amd64" />
<package name="plesk-phpenv" version="0.9.0" release="v.ubuntu.24.04+p18.0.68.0+t250205.1631" file="opt/hosting/phpenv/plesk-phpenv_0.9.0-v.ubuntu.24.04+p18.0.68.0+t250205.1631_all.deb" size="16732" buildtime="0" md5="ca520d05c81f4984ddda3f465c51e49d" arch="all" />
<package name="plesk-platform-runtime" version="1.0.7" release="ubuntu.24.04.250902.0711" file="engine/plesk-platform-runtime_1.0.7-ubuntu.24.04.250902.0711_amd64.deb" size="20528" buildtime="0" md5="7c11123864ba084f776b1226fed482b0" classes="aspect=panel" arch="amd64" />
<package name="plesk-release" version="18.0.73.3" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="base/plesk-release_18.0.73.3-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="1448" buildtime="0" md5="e2c063ef02ff43003be36caa6f03b4a4" classes="aspect=panel" arch="amd64" />
<package name="plesk-repair-kit" version="18.0" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="opt/repairkit/plesk-repair-kit_18.0-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="4948332" buildtime="0" md5="14c17b72b0ab4738304350e22f584bb6" classes="aspect=panel" arch="amd64" />
<package name="plesk-rrd" version="1.9.0" release="v.ubuntu.24.04+p18.0.73.0+t250912.0729" file="base/plesk-rrd_1.9.0-v.ubuntu.24.04+p18.0.73.0+t250912.0729_amd64.deb" size="615320" buildtime="0" md5="270da20f3b8e8dac62af2f10782ba10f" classes="aspect=panel" arch="amd64" />
<package name="plesk-service-node-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="base/plesk-service-node-utilities_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="3747952" buildtime="0" md5="3e60969ab84662c3f09eb428ee89366a" classes="aspect=panel" arch="amd64" />
<package name="plesk-task-manager" version="18.0" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="base/plesk-task-manager_18.0-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="4612280" buildtime="0" md5="205989d79fe3d69e70634a27ca252b2f" classes="aspect=panel" arch="amd64" />
<package name="plesk-ui-library" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="base/plesk-ui-library_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_all.deb" size="2567672" buildtime="0" md5="4d3bd27750fbbb60c2e61a6ae4098bae" classes="aspect=panel" arch="all" />
<package name="plesk-web-hosting" version="18.0" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="opt/hosting/whc/plesk-web-hosting_18.0-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="77192" buildtime="0" md5="006cfa5da46ed642d34fe3de924be003" classes="aspect=panel" arch="amd64" />
<package name="plesk-web-socket" version="18.0" release="v.ubuntu.24.04+p18.0.71.0+t250616.1400" file="base/plesk-web-socket_18.0-v.ubuntu.24.04+p18.0.71.0+t250616.1400_amd64.deb" size="19884" buildtime="0" md5="64559144e377f0f1525e34f3a7305138" classes="aspect=panel" arch="amd64" />
<package name="psa" version="18.0.73" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="base/psa_18.0.73-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="33316" buildtime="0" md5="b85becae5430c21db13737092e0aa200" classes="aspect=panel" arch="amd64" />
<package name="psa-autoinstaller" version="3.73.0" release="ubuntu.24.04.250912.0929" file="opt/updater/psa-autoinstaller_3.73.0-ubuntu.24.04.250912.0929_amd64.deb" size="4716790" buildtime="0" md5="c0c8857b4fb46b3307f067eee2a47d18" classes="aspect=panel" arch="amd64" />
<package name="psa-libxml-proxy" version="2.9.12" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="base/psa-libxml-proxy_2.9.12-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="657592" buildtime="0" md5="c62ce7167c9c649f1c05e313da161e78" classes="aspect=panel" arch="amd64" />
<package name="psa-locale-base-en-us" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250926.0710" file="base/psa-locale-base-en-us_18.0-v.ubuntu.24.04+p18.0.73.0+t250926.0710_all.deb" size="310548" buildtime="0" md5="35fa93b5521f59847c68765b5dc7c3fa" classes="aspect=panel" arch="all" />
<package name="psa-logrotate" version="3.22.0" release="v.ubuntu.24.04+p18.0.63.0+t240726.0752" file="base/psa-logrotate_3.22.0-v.ubuntu.24.04+p18.0.63.0+t240726.0752_amd64.deb" size="61640" buildtime="0" md5="8f2af293558efd0be48e7df6ab2e0dee" classes="aspect=panel" arch="amd64" />
<package name="psa-phpmyadmin" version="5.2.2" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="base/psa-phpmyadmin_5.2.2-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="7716172" buildtime="0" md5="903d8d7c2257806dc7739054196d0263" classes="aspect=panel" arch="all" />
<package name="psa-updates" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250715.1156" file="base/psa-updates_18.0-v.ubuntu.24.04+p18.0.72.0+t250715.1156_all.deb" size="1300" buildtime="0" md5="0943eec9edb6c9cd55874c1d7f6f9d8c" classes="aspect=panel" arch="all" />
<package name="psa-vhost" version="18.0" release="v.ubuntu.24.04+p18.0.71.0+t250604.0821" file="opt/vhost/psa-vhost_18.0-v.ubuntu.24.04+p18.0.71.0+t250604.0821_all.deb" size="33264" buildtime="0" md5="589c23e25cfd8970c528eb6346b604ab" classes="aspect=panel" arch="all" />
<package name="sw-collectd" version="5.12.0" release="v.ubuntu.24.04+p18.0.73.0+t250912.0729" file="base/sw-collectd_5.12.0-v.ubuntu.24.04+p18.0.73.0+t250912.0729_amd64.deb" size="520916" buildtime="0" md5="e64cc7815b40e2e0e4116b8bcc4f7896" classes="aspect=panel" arch="amd64" />
<package name="sw-cp-server" version="2.14.1" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="engine/sw-cp-server_2.14.1-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="920144" buildtime="0" md5="237a16d65ba9aa75e377e00aebb8afc7" classes="aspect=panel" arch="amd64" />
<package name="sw-engine" version="7.73.1" release="ubuntu.24.04.250902.0711" file="engine/sw-engine_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="14361136" buildtime="0" md5="9d49c27e34170592130cacbac24bdc21" classes="aspect=panel" arch="amd64" />
</component>
<component name="bind" description="BIND DNS server" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-dns-bind-driver" />
</keypackages>
<package name="plesk-dns-bind-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="opt/dns/plesk-dns-bind-driver_18.0-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="584244" buildtime="0" md5="1a32d194a92b33493829f6f6667e533d" classes="aspect=panel" arch="amd64" />
</component>
<component name="qmail" description="Qmail" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install mail-qc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-qc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-qmail" />
<nokeypackage name="psa-mail-pc-driver" />
<nokeypackage name="plesk-mail-pc-driver" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-qc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250917.1015" file="opt/maildrivers/plesk-mail-qc-driver_18.0-v.ubuntu.24.04+p18.0.73.0+t250917.1015_amd64.deb" size="675964" buildtime="0" md5="2ba8fd16654febbc04690b89129dbc95" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="2429504" buildtime="0" md5="c1fceef2575422d82a5b8710ea48d725" classes="aspect=panel" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="opt/maildrivers/psa-qmail_1.03-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="273552" buildtime="0" md5="3e8219299edc5812d1593c1ebc6d2159" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="unknown_dir/psa-qmail_1.03-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="273552" buildtime="0" md5="3e8219299edc5812d1593c1ebc6d2159" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="opt/mail/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18972" buildtime="0" md5="4becbb80fc739eb76bb19f1f4e6df429" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="unknown_dir/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18972" buildtime="0" md5="4becbb80fc739eb76bb19f1f4e6df429" arch="amd64" />
</component>
<component name="postfix" description="Postfix" classes="vendor=mixed">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install mail-pc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-pc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-pc-driver" />
<keypackage name="postfix" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-pc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="opt/maildrivers/plesk-mail-pc-driver_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="1693044" buildtime="0" md5="acab506521b451748a446567da6671e8" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="2429504" buildtime="0" md5="c1fceef2575422d82a5b8710ea48d725" classes="aspect=panel" arch="amd64" />
</component>
<component name="msmtp" description="MSMTP (relay only)" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-mc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-mc-driver" />
<keypackage name="sw-msmtp" />
</keypackages>
<conflicts>mailman</conflicts>
<conflicts>spamassassin</conflicts>
<conflicts>drweb</conflicts>
<conflicts>sophos</conflicts>
<conflicts>courier</conflicts>
<conflicts>dovecot</conflicts>
<package name="plesk-mail-mc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250729.0744" file="opt/maildrivers/plesk-mail-mc-driver_18.0-v.ubuntu.24.04+p18.0.72.0+t250729.0744_amd64.deb" size="49856" buildtime="0" md5="ac9cb1f57062619b992da5b347a74b07" classes="aspect=panel" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="opt/maildrivers/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="156804" buildtime="0" md5="309bbad820572efe7ab6b82fd43a9802" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="unknown_dir/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="156804" buildtime="0" md5="309bbad820572efe7ab6b82fd43a9802" arch="amd64" />
</component>
<component name="courier" description="Courier" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install courier-imap" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-courier-imap-driver" />
<keypackage name="psa-courier-imap" />
<keypackage name="psa-courier-authlib" />
</keypackages>
<keypackages>
<keypackage name="psa-courier-imap" />
</keypackages>
<keypackages>
<keypackage name="courier-imap" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-courier-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/mail/plesk-courier-imap-driver_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="169012" buildtime="0" md5="a06bbc2fbd830970da800b93b613a6a6" classes="aspect=panel" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/mail/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="137708" buildtime="0" md5="681bcf8165a54b4cce7325e4b2c940bf" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="unknown_dir/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="137708" buildtime="0" md5="681bcf8165a54b4cce7325e4b2c940bf" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/mail/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="439424" buildtime="0" md5="b97d55e45187b81f437407c8dd8cac29" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="unknown_dir/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="439424" buildtime="0" md5="b97d55e45187b81f437407c8dd8cac29" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.73.0+t250924.0941" file="opt/mail/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.73.0+t250924.0941_amd64.deb" size="118772" buildtime="0" md5="616a1f1900e62da35d197c0399dc281e" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.73.0+t250924.0941" file="unknown_dir/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.73.0+t250924.0941_amd64.deb" size="118772" buildtime="0" md5="616a1f1900e62da35d197c0399dc281e" arch="amd64" />
</component>
<component name="dovecot" description="Dovecot" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install dovecot" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-dovecot-imap-driver" />
<keypackage name="plesk-dovecot" />
<keypackage name="plesk-dovecot-pigeonhole" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-dovecot" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="opt/mail/plesk-dovecot_2.4.1-4-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="152432" buildtime="0" md5="b290913656e3660c4a6348a3b7515ff4" arch="amd64" />
<package name="plesk-dovecot" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="unknown_dir/plesk-dovecot_2.4.1-4-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="152432" buildtime="0" md5="b290913656e3660c4a6348a3b7515ff4" arch="amd64" />
<package name="plesk-dovecot-core" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="opt/mail/plesk-dovecot-core_2.4.1-4-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="2742500" buildtime="0" md5="2ba7bd5f6a28619e922c45936e317c1b" arch="amd64" />
<package name="plesk-dovecot-core" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="unknown_dir/plesk-dovecot-core_2.4.1-4-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="2742500" buildtime="0" md5="2ba7bd5f6a28619e922c45936e317c1b" arch="amd64" />
<package name="plesk-dovecot-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/mail/plesk-dovecot-imap-driver_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="270152" buildtime="0" md5="48c3af2f184d1d274a9cf48688ff7605" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="opt/mail/plesk-dovecot-pigeonhole_2.4.1-4-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="709496" buildtime="0" md5="2a5d60720cc7cc7a364c67729301114a" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.1+t251001.0636" file="unknown_dir/plesk-dovecot-pigeonhole_2.4.1-4-v.ubuntu.24.04+p18.0.73.1+t251001.0636_amd64.deb" size="709496" buildtime="0" md5="2a5d60720cc7cc7a364c67729301114a" arch="amd64" />
</component>
<component name="php5" description="PHP from OS vendor" classes="vendor=mixed">
<keypackages>
<keypackage name="psa-php-configurator" />
<keypackage name="php-fpm" />
<keypackage name="php-common" />
</keypackages>
<keypackages>
<keypackage name="psa-php-configurator" />
</keypackages>
<requires>panel</requires>
<package name="psa-php-configurator" version="1.8.0" release="v.ubuntu.24.04+p18.0.71.0+t250616.1400" file="opt/php/psa-php-configurator_1.8.0-v.ubuntu.24.04+p18.0.71.0+t250616.1400_amd64.deb" size="30376" buildtime="0" md5="dd077079899b4cc878e3525b0002f0b9" classes="aspect=panel" arch="amd64" />
</component>
<component name="postgresql" description="PostgreSQL server" classes="vendor=os">
<keypackages>
<keypackage name="postgresql-15" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-15" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql" />
</keypackages>
</component>
<component name="mysql-sys" description="MySQL server" classes="vendor=os">
<keypackages>
<keypackage name="mariadb-server" />
</keypackages>
<keypackages>
<keyprovide name="mysql-server" />
</keypackages>
<keypackages>
<keyprovide name="virtual-mysql-server" />
</keypackages>
</component>
<component name="apache" description="Apache" classes="vendor=os">
<keypackages>
<keypackage name="apache2" />
<keypackage name="apache2-mpm-prefork" />
</keypackages>
<keypackages>
<keypackage name="apache2" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-itk" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-prefork" />
</keypackages>
</component>
<component name="spamassassin" description="SpamAssassin" classes="vendor=mixed,aspect=panel">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install spammng" />
</bootstrapper>
<keypackages>
<keypackage name="psa-spamassassin" />
</keypackages>
<package name="psa-spamassassin" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250916.1228" file="opt/mail/psa-spamassassin_18.0-v.ubuntu.24.04+p18.0.73.0+t250916.1228_amd64.deb" size="73868" buildtime="0" md5="dd640dd13488c50f2f4283bc1b6ffde1" arch="amd64" />
</component>
<component name="mod_python" description="mod_python" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-python" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="drweb" description="Plesk Premium Antivirus" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-premium-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="psa-firewall" description="Plesk Firewall" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-firewall" />
</keypackages>
<requires>panel</requires>
</component>
<component name="watchdog" description="Watchdog system monitoring" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-watchdog" />
</keypackages>
<requires>panel</requires>
</component>
<component name="horde" description="Horde" hidden="true" classes="vendor=parallels" show_installed_hidden="true">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install horde" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install horde" />
</bootstrapper>
<keypackages>
<keypackage name="psa-horde" />
<keypackage name="psa-turba" />
<keypackage name="psa-imp" />
<keypackage name="psa-ingo" />
<keypackage name="psa-mnemo" />
<keypackage name="psa-kronolith" />
<keypackage name="psa-passwd" />
</keypackages>
<keypackages>
<keypackage name="psa-horde" />
</keypackages>
<requires>php7.4</requires>
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.71.0+t250605.0924" file="opt/horde/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.71.0+t250605.0924_all.deb" size="12096724" buildtime="0" md5="585068dfe3c240db43d2a784dd39b15d" arch="all" />
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.71.0+t250605.0924" file="unknown_dir/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.71.0+t250605.0924_all.deb" size="12096724" buildtime="0" md5="585068dfe3c240db43d2a784dd39b15d" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="2449256" buildtime="0" md5="7cf6a514015004c868ebf82328637a62" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="2449256" buildtime="0" md5="7cf6a514015004c868ebf82328637a62" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="789828" buildtime="0" md5="e030e131de669fb8f1cfb25f09ed765b" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="789828" buildtime="0" md5="e030e131de669fb8f1cfb25f09ed765b" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1328680" buildtime="0" md5="7be22d2bb29f7c8f15b8565bd7270365" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1328680" buildtime="0" md5="7be22d2bb29f7c8f15b8565bd7270365" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="627320" buildtime="0" md5="eb9ab421a7d62cb19d54e45ee672e8f0" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="627320" buildtime="0" md5="eb9ab421a7d62cb19d54e45ee672e8f0" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="588708" buildtime="0" md5="79400978fe59830289bad7aa8d2d1ab7" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="588708" buildtime="0" md5="79400978fe59830289bad7aa8d2d1ab7" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/horde/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1028588" buildtime="0" md5="b424925211492856256f71da66da7df5" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="1028588" buildtime="0" md5="b424925211492856256f71da66da7df5" arch="all" />
</component>
<component name="roundcube" description="Roundcube" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install roundcube" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install roundcube" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-roundcube" />
</keypackages>
<requires>php8.3</requires>
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/roundcube/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.72.0+t250730.0425_all.deb" size="4400380" buildtime="0" md5="3b5601a07202b7c536a95b826c0bf11d" arch="all" />
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="unknown_dir/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.72.0+t250730.0425_all.deb" size="4400380" buildtime="0" md5="3b5601a07202b7c536a95b826c0bf11d" arch="all" />
</component>
<component name="mod_fcgid" description="mod_fcgid" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-fcgid-psa" />
</keypackages>
<keypackages>
<keypackage name="libapache2-mod-fcgid" />
</keypackages>
<requires>webservers</requires>
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/hosting/fcgid/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.70.0+t250502.0855_amd64.deb" size="81612" buildtime="0" md5="e93e7034d0a6212a8dc7e85dd15e694d" arch="amd64" />
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.70.0+t250502.0855_amd64.deb" size="81612" buildtime="0" md5="e93e7034d0a6212a8dc7e85dd15e694d" arch="amd64" />
</component>
<component name="mod_perl" description="mod_perl" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-perl2" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="proftpd" description="ProFTPD" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_ftp_proftpd_configure" />
</bootstrapper>
<keypackages>
<keypackage name="psa-proftpd" />
</keypackages>
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/hosting/proftpd/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="3152996" buildtime="0" md5="65ec256431520fa6a9708c1cde4abe08" arch="amd64" />
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="unknown_dir/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.72.0+t250730.0425_amd64.deb" size="3152996" buildtime="0" md5="65ec256431520fa6a9708c1cde4abe08" arch="amd64" />
</component>
<component name="webalizer" description="Webalizer" classes="vendor=os">
<keypackages>
<keypackage name="webalizer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="awstats" description="AWStats" classes="vendor=os">
<keypackages>
<keypackage name="plesk-awstats-configurator" />
<keypackage name="awstats" />
</keypackages>
<keypackages>
<keypackage name="plesk-awstats-configurator" />
</keypackages>
<keypackages>
<keypackage name="awstats" />
</keypackages>
<requires>panel</requires>
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/awstats/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16016" buildtime="0" md5="1ced2c21ea31fcf12689fdcbe189213b" arch="all" />
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16016" buildtime="0" md5="1ced2c21ea31fcf12689fdcbe189213b" arch="all" />
</component>
<component name="fail2ban" description="Fail2Ban" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install fail2ban-configurator" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install fail2ban-configurator" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-fail2ban-configurator" />
<keypackage name="fail2ban" />
</keypackages>
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/fail2ban/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.72.0+t250730.0652_all.deb" size="870408" buildtime="0" md5="47c7beb94acbe94e2272b85cbc981d16" arch="all" />
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.72.0+t250730.0652_all.deb" size="870408" buildtime="0" md5="47c7beb94acbe94e2272b85cbc981d16" arch="all" />
<package name="plesk-fail2ban-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250730.0425" file="opt/fail2ban/plesk-fail2ban-configurator_18.0-v.ubuntu.24.04+p18.0.72.0+t250730.0425_all.deb" size="41804" buildtime="0" md5="5a996a96c7b81550ac2e4bb02b6ded53" classes="aspect=panel" arch="all" />
</component>
<component name="modsecurity" description="ModSecurity" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity-plesk" />
</keypackages>
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity" />
</keypackages>
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.72.0+t250806.0608" file="opt/hosting/modsecurity/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.72.0+t250806.0608_amd64.deb" size="269700" buildtime="0" md5="3ffbc80f9582b2bf5c6cfad52b559a73" arch="amd64" />
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.72.0+t250806.0608" file="unknown_dir/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.72.0+t250806.0608_amd64.deb" size="269700" buildtime="0" md5="3ffbc80f9582b2bf5c6cfad52b559a73" arch="amd64" />
<package name="plesk-modsecurity-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/hosting/modsecurity/plesk-modsecurity-configurator_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1118_all.deb" size="554800" buildtime="0" md5="65a9628baf38ed7d3af425914b6f0b01" classes="aspect=panel" arch="all" />
<package name="plesk-modsecurity-crs" version="1:4.18.0" release="v.ubuntu.24.04+p18.0.73.0+t250917.1132" file="opt/hosting/modsecurity/plesk-modsecurity-crs_4.18.0-v.ubuntu.24.04+p18.0.73.0+t250917.1132_amd64.deb" size="232956" buildtime="0" md5="272314f7e41a8746cd3dc5a6e59dc394" arch="amd64" />
<package name="plesk-modsecurity-crs" version="1:4.18.0" release="v.ubuntu.24.04+p18.0.73.0+t250917.1132" file="unknown_dir/plesk-modsecurity-crs_4.18.0-v.ubuntu.24.04+p18.0.73.0+t250917.1132_amd64.deb" size="232956" buildtime="0" md5="272314f7e41a8746cd3dc5a6e59dc394" arch="amd64" />
</component>
<component name="passenger" description="Phusion Passenger server" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-passenger-plesk" />
<keypackage name="passenger" />
</keypackages>
<requires>panel</requires>
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="308932" buildtime="0" md5="f21554251fb775b9d05320bd91a846d5" arch="amd64" />
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="308932" buildtime="0" md5="f21554251fb775b9d05320bd91a846d5" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/passenger_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="5565476" buildtime="0" md5="d5e829033527345c7d8cf09e8224b192" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/passenger_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="5565476" buildtime="0" md5="d5e829033527345c7d8cf09e8224b192" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="4620252" buildtime="0" md5="b069a2526f57b3de1964e5b4de1c0aa5" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="4620252" buildtime="0" md5="b069a2526f57b3de1964e5b4de1c0aa5" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="opt/passenger/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="6068" buildtime="0" md5="6d8455bf35f28518661b6ab41e2d01b3" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.72.0+t250730.0652" file="unknown_dir/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.72.0+t250730.0652_amd64.deb" size="6068" buildtime="0" md5="6d8455bf35f28518661b6ab41e2d01b3" arch="amd64" />
</component>
<component name="l10n" description="All language localization for Plesk" classes="vendor=parallels,aspect=panel">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.3+t251009.1752" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.3+t251009.1752_amd64.deb" size="224468" buildtime="0" md5="19a6a2ae9551bdbc37bdfc1a575d5081" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install l10n" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install l10n" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-l10n" />
</keypackages>
<requires>panel</requires>
<package name="plesk-l10n" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250926.0710" file="opt/l10n/plesk-l10n_18.0-v.ubuntu.24.04+p18.0.73.0+t250926.0710_all.deb" size="7017848" buildtime="0" md5="8d74511d30c54f1271fa3a2732811003" arch="all" />
</component>
<component name="git" description="Git" classes="vendor=parallels">
<keypackages>
<keypackage name="ext-git" />
</keypackages>
<requires>panel</requires>
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250901.0545" file="opt/git/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.73.0+t250901.0545_amd64.deb" size="3036" buildtime="0" md5="091e28a9b26f61d75b993676b74fd5fb" arch="amd64" />
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250901.0545" file="unknown_dir/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.73.0+t250901.0545_amd64.deb" size="3036" buildtime="0" md5="091e28a9b26f61d75b993676b74fd5fb" arch="amd64" />
</component>
<component name="resctrl" description="Resource Controller (Cgroups)" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-resctrl" />
</keypackages>
<requires>panel</requires>
<package name="plesk-resctrl" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250726.1516" file="opt/resctrl/plesk-resctrl_18.0-v.ubuntu.24.04+p18.0.72.0+t250726.1516_amd64.deb" size="42972" buildtime="0" md5="8a10626cd5c7175ce7d35669f3fa5faa" arch="amd64" />
</component>
<component name="nodejs" description="NodeJS support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-nodejs" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="gems-pre" description="Tools required for building Ruby gems" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-gems-pre" />
</keypackages>
<requires>ruby</requires>
<package name="plesk-gems-pre" version="0.0.1" release="v.ubuntu.24.04+p18.0.72.0+t250806.0900" file="opt/ruby/plesk-gems-pre_0.0.1-v.ubuntu.24.04+p18.0.72.0+t250806.0900_all.deb" size="1272" buildtime="0" md5="9544fe94793b47304d362d1c97eccc6c" arch="all" />
</component>
<component name="wp-toolkit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-wp-toolkit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="advisor" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-advisor" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ruby" description="Ruby support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ruby" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="nginx" description="Nginx web server" classes="vendor=parallels">
<keypackages>
<keypackage name="sw-nginx" />
</keypackages>
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.73.0+t250912.0729" file="opt/hosting/nginx/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.73.0+t250912.0729_amd64.deb" size="449176" buildtime="0" md5="5ff0ec21904517025fa20966562efaa5" arch="amd64" />
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.73.0+t250912.0729" file="unknown_dir/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.73.0+t250912.0729_amd64.deb" size="449176" buildtime="0" md5="5ff0ec21904517025fa20966562efaa5" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="opt/hosting/nginx/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="4806156" buildtime="0" md5="b44a6bc78188ddaf5014a10ce61f5532" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.73.3+t251009.1118" file="unknown_dir/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.73.3+t251009.1118_amd64.deb" size="4806156" buildtime="0" md5="b44a6bc78188ddaf5014a10ce61f5532" arch="amd64" />
</component>
<component name="pmm" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-panel-migrator" />
</keypackages>
<requires>panel</requires>
</component>
<component name="xovi" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-xovi" />
</keypackages>
<requires>panel</requires>
</component>
<component name="imunify360" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-imunify360" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sslit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sslit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="letsencrypt" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-letsencrypt" />
</keypackages>
<requires>panel</requires>
</component>
<component name="repair-kit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-repair-kit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="composer" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-composer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="monitoring" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-monitoring" />
</keypackages>
<requires>panel</requires>
</component>
<component name="log-browser" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-log-browser" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ssh-terminal" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ssh-terminal" />
</keypackages>
<requires>panel</requires>
</component>
<component name="site-import" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-site-import" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sitejet" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-plesk-sitejet" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ntp-timesync" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ntp-timesync" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sophos" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sophos-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="mfa" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-mfa" />
</keypackages>
<requires>panel</requires>
</component>
<component name="configurations-troubleshooter" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-configurations-troubleshooter" />
</keypackages>
<requires>panel</requires>
</component>
<installation_types>
<type name="Recommended,Typical" description="Install typically used components. Recommended for general use.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
</type>
<type name="Full" description="Install all available components.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.1</component>
<component>php8.2</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
<component>resctrl</component>
<component>drweb</component>
<component>postgresql</component>
<component>spamassassin</component>
<component>ruby</component>
<component>gems-pre</component>
<component>nodejs</component>
<component>pmm</component>
<component>psa-firewall</component>
<component>watchdog</component>
<component>passenger</component>
<component>phpgroup</component>
<component>sophos</component>
</type>
</installation_types>
<component_groups>
<group name="hosting" description="Web hosting">
<component name="proftpd" />
<component name="webalizer" />
<component name="awstats" />
<component name="modsecurity" />
<component name="passenger" />
<component name="ruby" />
<component name="nodejs" />
<component name="gems-pre" />
<group name="apache_support" description="Apache">
<group type="radio" name="webservers" description="Apache versions">
<component name="apache" />
<component name="apache-sni" default="true" />
</group>
<component name="mod_fcgid" />
<component name="mod_perl" />
<component name="mod_python" />
</group>
<group name="php_comps" description="PHP interpreter versions">
<group type="radio" name="phpgroup" description="PHP interpreter versions">
<component name="php5" />
</group>
<component name="php8.4" />
<component name="php8.3" />
<component name="php8.2" />
<component name="php8.1" />
<component name="php8.0" />
<component name="php7.4" />
<component name="php7.3" />
<component name="php7.2" />
<component name="php7.1" />
<component name="php7.0" />
<component name="php5.6" />
<component name="php5.5" />
<component name="php5.4" />
<component name="php5.3" />
<component name="php5.2" />
</group>
<group name="nginx_comps" description="Nginx web server and reverse proxy server">
<component name="nginx" />
</group>
</group>
<group name="webmails" description="Webmail services">
<component name="horde" />
<component name="roundcube" default="true" />
</group>
<group name="mail" description="Mail hosting">
<group type="radio" name="mailservers" description="SMTP servers">
<component name="postfix" default="true" />
<component name="qmail" />
<component name="msmtp" />
</group>
<group type="radio" name="imapservers" description="IMAP/POP3 servers">
<component name="dovecot" default="true" />
<component name="courier" />
</group>
<component name="drweb" />
<component name="sophos" />
<component name="spamassassin" />
<component name="mailman" />
</group>
<group type="radio" name="mysqlgroup" description="MySQL server versions">
<component name="mysql-sys" default="true" />
</group>
<group name="extensions" description="Plesk extensions">
<component name="psa-firewall" />
<component name="watchdog" />
<component name="wp-toolkit" />
<component name="advisor" />
<component name="xovi" />
<component name="imunify360" />
<component name="sslit" />
<component name="letsencrypt" />
<component name="repair-kit" />
<component name="composer" />
<component name="monitoring" />
<component name="log-browser" />
<component name="ssh-terminal" />
<component name="site-import" />
<component name="sitejet" />
<component name="ntp-timesync" />
<component name="mfa" />
<component name="configurations-troubleshooter" />
</group>
</component_groups>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64">
<package name="plesk-libboost-1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="2204" buildtime="0" md5="a5365466a1ab4a4d6ff48184de747b93" arch="amd64" />
<package name="plesk-libboost-atomic1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-atomic1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="6740" buildtime="0" md5="952ee985685b021f066538b101e95fe9" arch="amd64" />
<package name="plesk-libboost-charconv1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-charconv1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="82462" buildtime="0" md5="ddf6a5d7e44e87dfc329f769d9b9b410" arch="amd64" />
<package name="plesk-libboost-chrono1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-chrono1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="16066" buildtime="0" md5="464e523c45b8df24c76eeec5148cc4bc" arch="amd64" />
<package name="plesk-libboost-context1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-context1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="4134" buildtime="0" md5="f8a4e1919740a45208ba3956e8b6e25c" arch="amd64" />
<package name="plesk-libboost-date-time1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-date-time1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3160" buildtime="0" md5="f06e0297a64c2eae0132beeb9db21c54" arch="amd64" />
<package name="plesk-libboost-filesystem1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-filesystem1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="74374" buildtime="0" md5="096d8aa46acc387f42bee22ab5a307db" arch="amd64" />
<package name="plesk-libboost-iostreams1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-iostreams1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="33404" buildtime="0" md5="ec98b9c456079f50cf3e8fded6547872" arch="amd64" />
<package name="plesk-libboost-locale1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-locale1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="320462" buildtime="0" md5="7cd59a147b151b8419ab95467bd37b90" arch="amd64" />
<package name="plesk-libboost-log1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-log1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="290942" buildtime="0" md5="efc96c5fae467d9132f3568291f8d747" arch="amd64" />
<package name="plesk-libboost-process1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-process1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="31868" buildtime="0" md5="150c8ecfc1bd23c4ab2c665ad4d47f72" arch="amd64" />
<package name="plesk-libboost-program-options1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-program-options1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="153736" buildtime="0" md5="d7edacb34e6070790775a184febed5ca" arch="amd64" />
<package name="plesk-libboost-random1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-random1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="15400" buildtime="0" md5="b4259a42ffa0e3a14b3ba35ea33424dc" arch="amd64" />
<package name="plesk-libboost-regex1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-regex1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="126542" buildtime="0" md5="b1edbf7063d27c15ffb8ca6fefef12c4" arch="amd64" />
<package name="plesk-libboost-serialization1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-serialization1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="90142" buildtime="0" md5="24ab64ea54361eae50e584f806afbef5" arch="amd64" />
<package name="plesk-libboost-system1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-system1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3136" buildtime="0" md5="3835e30dfc1b84719561dd47b7f2e9ed" arch="amd64" />
<package name="plesk-libboost-thread1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-thread1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="45848" buildtime="0" md5="423d7598c3650b066fac6268587d246a" arch="amd64" />
<package name="plesk-libpoco-1.14.2" version="1.14.2" release="ubuntu.24.04.250715.1156" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libpoco-1.14.2_1.14.2-ubuntu.24.04.250715.1156_amd64.deb" size="2987006" buildtime="0" md5="0daa79010b2aaebffca562e919e34cf9" arch="amd64" />
<package name="plesk-libstdc++14.3.0" version="14.3.0" release="ubuntu.24.04.250705.0905" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libstdc++14.3.0_14.3.0-ubuntu.24.04.250705.0905_amd64.deb" size="1017840" buildtime="0" md5="67f900133fbe02c0755de18d4bb53e22" arch="amd64" />
<package name="plesk-mysql-server" version="18.0.2" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-mysql-server_18.0.2-v.ubuntu.24.04+p18.0.61.0+t240426.1307_all.deb" size="1188" buildtime="0" md5="7dc1878f78e910bb5c594a361f5cde85" arch="all" />
<package name="plesk-python3-regex" version="2022.1.18" release="v.ubuntu.24.04+p18.0.67.0+t241210.1818" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-python3-regex_2022.1.18-v.ubuntu.24.04+p18.0.67.0+t241210.1818_amd64.deb" size="376720" buildtime="0" md5="ed37a911f79bc4e8572deb52c4be678a" arch="amd64" />
<package name="psa-pear" version="1.10.9" release="20191112.ubuntu.24.04.240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/psa-pear_1.10.9-20191112.ubuntu.24.04.240426.1307_all.deb" size="338144" buildtime="0" md5="8cf8bb272422acfaac0c5e4c36d63b04" arch="all" />
<package name="sw-tar" version="1.34" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/sw-tar_1.34-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="480592" buildtime="0" md5="57a4484d3cc5b6d4748be59b06c0bd38" arch="amd64" />
</thirdparty>
<extras extras_dir="extras-deb-Ubuntu-24.04-x86_64" persistent_repo="true" />
<force_remove_packages />
</build_1>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.73-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.73-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.73-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.73-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,255 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# check-broken-tz.sh writes single line json report into it with the following fields:
# - "stage": "timezonefix"
# - "level": "error"
# - "errtype": "failure"
# - "date": time of error occurance ("2024-07-24T06:59:43,127545441+0000")
# - "error": human readable error message
report_dpkg_configure_fail()
{
local pkgname="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=dpkgconfigurefailed' <<-EOL
Could not configure the packages ( $pkgname ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_get_tz_fail()
{
make_error_report 'stage=timezonefix' 'level=error' 'errtype=gettzfailed' <<-EOL
Could not get the system timezone. See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_set_tz_fail()
{
local tz="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=settzfailed' <<-EOL
Could not set the system timezone ( $tz ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
get_current_tz()
{
[ -L /etc/localtime ] || return 1
local tz
tz="$(readlink -m /etc/localtime)" || return 1
[ -f "$tz" ] || return 1
case "$tz" in
/usr/share/zoneinfo/*) ;;
*) return 1;;
esac
tz="${tz#/usr/share/zoneinfo/}"
[ -n "$tz" ] || return 1
echo -n "${tz}"
}
check_timezone_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
# PPP-65676: Plesk update fails on ubuntu if timezone is CET
if dpkg-query --showformat='${db:Status-Status}\n' --show 'tzdata' | grep -wq 'half-configured'; then
local origtz
origtz=$(get_current_tz)
if [ $? != 0 ]; then
report_get_tz_fail
return $RET_WARN
fi
if ! timedatectl set-timezone 'Etc/UTC'; then
timedatectl set-timezone "$origtz"
report_set_tz_fail 'Etc/UTC'
return $RET_WARN
fi
if ! dpkg --configure 'tzdata'; then
timedatectl set-timezone "$origtz"
report_dpkg_configure_fail 'tzdata'
return $RET_WARN
fi
if ! timedatectl set-timezone "$origtz"; then
report_set_tz_fail "$origtz"
return $RET_WARN
fi
fi
return 0
}
# ---
skip_checker_on_flag "Broken timezone check" "/tmp/plesk-installer-skip-check-broken-timezone.flag"
checker_main 'check_timezone' "$1"

View File

@@ -0,0 +1,542 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# disk_space_check.sh writes single line json report into it with the following fields:
# - "stage": "diskspacecheck"
# - "level": "error"
# - "errtype": "notenoughdiskspace"
# - "volume": volume with not enough diskspace (e.g. "/")
# - "required": required diskspace on the volume, human readable (e.g. "600 MB")
# - "available": available diskspace on the volume, human readable (e.g. "255 MB")
# - "needtofree": amount of diskspace which should be freed on the volume, human readable (e.g. "345 MB")
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message ("There is not enough disk space available in the / directory.")
# Required values below for Full installation are in MB. See 'du -cs -BM /*' and 'df -Pm'.
required_disk_space_cloudlinux7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4400 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_cloudlinux8()
{
case "$1" in
/opt) echo 1200 ;;
/usr) echo 4400 ;;
/var) echo 700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4100 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos8()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4500 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_virtuozzo7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_almalinux8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rocky8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rhel9()
{
case "$1" in
/opt) echo 500 ;;
/usr) echo 4000 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_almalinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_almalinux10()
{
required_disk_space_almalinux9 "$1"
}
required_disk_space_cloudlinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_debian10()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2300 ;;
/var) echo 1700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian11()
{
case "$1" in
/opt) echo 1500 ;;
/usr) echo 3100 ;;
/var) echo 1800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian12()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian13()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu18()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 1800 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu20()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2900 ;;
/var) echo 1600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu22()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 3900 ;;
/var) echo 1900 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu24()
{
case "$1" in
/opt) echo 3200 ;;
/usr) echo 1800 ;;
/var) echo 2400 ;;
/tmp) echo 100 ;;
esac
}
required_update_upgrade_disk_space()
{
case "$1" in
/opt) echo 100 ;;
/usr) echo 300 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
clean_tmp()
{
local volume="$1"
local path="/tmp"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'systemd-tmpfiles --clean --prefix $path'"
systemd-tmpfiles --clean --prefix "$path" 2>&1
}
clean_yum()
{
local volume="$1"
local path="/var/cache/yum"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'yum clean all'"
yum clean all 2>&1
# The command above doesn't clean untracked repos (missing in configuration), clean if left > 2 Mb
[ "`du -sm "$path" | awk '{ print $1 }'`" -gt 2 ] || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
clean_dnf()
{
local volume="$1"
local path="/var/cache/dnf"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'dnf clean all'"
dnf clean all 2>&1
}
clean_apt()
{
local volume="$1"
local path="/var/cache/apt"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'apt-get clean'"
apt-get clean 2>&1
}
clean_journal()
{
local volume="$1"
local path="/var/log/journal"
is_path_on_volume "$path" "$volume" || return 0
# Note that --rotate may cause more space to be freed, but may also cause more space to be used
echo "Cleaning $path via 'journalctl --vacuum-time 1d'"
journalctl --vacuum-time 1d 2>&1
}
clean_ext_packages()
{
local volume="$1"
local path="$PRODUCT_ROOT_D/var/modules-packages"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
# @param $1 target directory
mount_point()
{
df -Pm $1 | awk 'NR==2 { print $6 }'
}
# @param $1 target directory
available_disk_space()
{
df -Pm $1 | awk 'NR==2 { print $4 }'
}
is_path_on_volume()
{
local path="$1"
local volume="$2"
[ -d "$path" ] && [ "`mount_point "$path"`" = "$volume" ]
}
# @param $1 target directory
# @param $2 mode (install/upgrade/update)
req_disk_space()
{
if [ "$2" != "install" ]; then
required_update_upgrade_disk_space "$1"
return
fi
has_os_impl_function "required_disk_space" || {
echo "There are no requirements defined for $os_name$os_version." >&2
echo "Disk space check cannot be performed." >&2
exit $RET_WARN
}
call_os_impl_function "required_disk_space" "$1"
}
human_readable_size()
{
echo "$1" | awk '
function human(x) {
s = "MGTEPYZ";
while (x >= 1000 && length(s) > 1) {
x /= 1024; s = substr(s, 2);
}
# 0.05 below will make sure the value is rounded up
return sprintf("%.1f %sB", x + 0.05, substr(s, 1, 1));
}
{ print human($1); }'
}
# @param $1 target directory
# @param $2 required disk space
# @param $3 check only flag (don't emit errors)
check_available_disk_space()
{
local volume="$1"
local required="$2"
local check_only="${3:-}"
local available="$(available_disk_space "$volume")"
if [ "$available" -lt "$required" ]; then
local needtofree
needtofree="`human_readable_size $((required - available))`"
[ -n "$check_only" ] ||
make_error_report 'stage=diskspacecheck' 'level=error' 'errtype=notenoughdiskspace' \
"volume=$volume" "required=$required MB" "available=$available MB" "needtofree=$needtofree" \
<<-EOL
There is not enough disk space available in the $1 directory.
You need to free up $needtofree.
EOL
return "$RET_FATAL"
fi
}
# @param $1 target directory
# @param $2 required disk space
clean_and_check_available_disk_space()
{
if [ -n "$PLESK_INSTALLER_FORCE_CLEAN_DISK_SPACE" ] || ! check_available_disk_space "$@" --check-only; then
clean_disk_space "$1"
check_available_disk_space "$@"
fi
}
# Cleans up disk space on the volume
clean_disk_space()
{
local volume="$1"
for cleanup_func in clean_tmp clean_yum clean_dnf clean_apt clean_journal clean_ext_packages; do
"$cleanup_func" "$volume"
done
}
# @param $1 mode (install/upgrade/update)
clean_and_check_disk_space()
{
local mode="$1"
local shared=0
for target_directory in /opt /usr /var /tmp; do
local required=$(req_disk_space "$target_directory" "$mode")
[ -n "$required" ] || return "$RET_WARN"
if is_path_on_volume "$target_directory" "/"; then
shared="$((shared + required))"
else
clean_and_check_available_disk_space "$target_directory" "$required" || return $?
fi
done
clean_and_check_available_disk_space "/" "$shared" || return $?
}
checker_main 'clean_and_check_disk_space' "$1"

View File

@@ -0,0 +1,111 @@
<?php
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
// vim: set et :
require_once('sdk.php');
define('TARGET_VERSION', '18.0.73');
define('RESULT_NETWORK_PROBLEM', 1);
define('RESULT_ERROR', 2);
define('RESULT_LICENSE_PROBLEM', 3);
define('RESULT_LICENSE_OK', 4);
function finish($rc, $sure = true)
{
if ($rc !== 0) {
fwrite(STDERR, "\n");
if ($sure) {
fwrite(STDERR, "Your license key is not compatible with Plesk Obsidian.\n");
} else {
fwrite(STDERR, "Your license key may not be compatible with Plesk Obsidian.\n");
}
fwrite(STDERR, "You need to upgrade your license before updating Plesk.\n");
fwrite(STDERR, "For details, refer to the KB https://support.plesk.com/hc/en-us/articles/360023612594\n");
}
exit($rc);
}
$skipFlag = PRODUCT_VAR . DIRECTORY_SEPARATOR . "plesk-installer-skip-license-key-check.flag";
if (file_exists($skipFlag)) {
fwrite(STDERR, "Plesk license key upgrade availability check was skipped due to a flag file.\n");
exit(0);
}
if (!function_exists('of_get_key_by_product') || !function_exists('of_get_versions')) {
fwrite(STDERR, "Plesk license key upgrade availability check should be run on sw-engine only.\n");
exit(2);
}
foreach (["plesk-unified", "plesk-unix", "plesk-win"] as $prod) {
$key = of_get_key_by_product($prod);
if ($key !== false) {
break;
}
}
if ($key === false) {
fwrite(STDERR, "No Plesk license key was found. License upgrade check is skipped.\n");
finish(0);
}
$targetVersion = TARGET_VERSION;
$vers = of_get_versions($key); /* plesk >= 10.0.0 */
if (!is_array($vers)) {
$vers = [$vers];
}
$match = false;
foreach ($vers as $ver) {
if (!is_array($ver)) {
$match |= strtok($ver, ".") == strtok($targetVersion, ".");
} else {
$match |= ("any" == $ver[0] || version_compare($ver[0], $targetVersion) <= 0) &&
("any" == $ver[1] || version_compare($ver[1], $targetVersion) >= 0);
}
}
if ($match) {
fwrite(STDERR, "You do not need to upgrade the current license key.\n");
fwrite(STDOUT, "License upgrade check to $targetVersion can be skipped.\n");
fwrite(STDOUT, "Plesk versions compatible with the license key: " . preg_replace('/\n\s*/', '', var_export($vers, true)) . "\n");
finish(0);
}
if (!function_exists('ka_is_key_upgrade_available')) {
// Plesk 17.0
fwrite(STDERR, "Cannot check whether Plesk license key upgrade is available.\n");
finish(1, false);
}
$si = getServerInfo();
$result = ka_is_key_upgrade_available($prod, $targetVersion, $si);
$isConfused = false;
switch ($result['code']) {
case RESULT_LICENSE_OK:
fwrite(STDERR, "The licensing server accepted the key upgrade request.\n");
fwrite(STDERR, "License upgrade to $targetVersion is available.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(0);
case RESULT_NETWORK_PROBLEM:
fwrite(STDERR, "Unable to connect to the licensing server to check if license upgrade is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
finish(2, false);
case RESULT_LICENSE_PROBLEM:
fwrite(STDERR, "Warning: Your Plesk license key cannot be upgraded.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(2);
default:
$isConfused = true;
// fall-through
case RESULT_ERROR:
// This includes "Software Update Service (SUS) is not found for the given license key" case, but also many others.
fwrite(STDERR, "Failed to check whether a new license key is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
if ($isConfused) {
fwrite(STDERR, "Error code: {$result['code']}\n");
}
finish(2, !$isConfused);
}

View File

@@ -0,0 +1,224 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
check_package_manager_deb_based()
{
local output=
output="`dpkg --audit 2>&1`" || output="$output"$'\n'"'dpkg --audit' finished with error code $?."
if [ -n "$output" ]; then
make_error_report 'stage=packagemanagercheck' 'level=error' 'errtype=brokenpackages' <<-EOL
The system package manager reports the following problems:
$output
To continue with the installation, you need to resolve these issues
using the procedure below:
1. Make sure you have a full server snapshot. Although the
following steps are usually safe, they can still cause
data loss or irreversible changes.
2. Run 'dpkg --configure -a'. This command can fix some of the
issues. However, it may fail. Regardless if it fails or not,
proceed with the following steps.
3. Run 'PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK=1 plesk installer update --skip-cleanup'.
Instead of 'update', you may need to use the command you used
previously (for example, 'upgrade' or 'install').
4. The next step depends on the outcome of the previous one:
- If step 3 was completed with the "You already have the latest
version of product(s) and all the selected components installed.
Installation will not continue." message,
run 'plesk repair installation'.
- If step 3 failed, run 'dpkg --audit'. This command can show you
packages that need to be reinstalled. To reinstall them, run
'apt-get install --reinstall <packages>'.
5. Run 'plesk installer update' to revert temporary changes and
validate that the issues are resolved. If the command fails or
triggers this check again, contact Plesk support.
For more information, see
https://support.plesk.com/hc/en-us/articles/12871173047447-Plesk-update-on-Debian-Ubuntu-fails-dpkg-was-interrupted-you-must-manually-run-dpkg-configure-a-to-correct-the-problem
EOL
return "$RET_FATAL"
fi
}
check_package_manager_debian()
{
check_package_manager_deb_based
}
check_package_manager_ubuntu()
{
check_package_manager_deb_based
}
skip_checker_on_env "Package manager check" "$PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK"
skip_checker_on_flag "Package manager check" "/tmp/plesk-installer-skip-package-manager-check.flag"
checker_main 'check_package_manager' "$@"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,38 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo $*
exit 1
}
[ -n "$1" ] || die "Usage: $0 php_script [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
php_bin=
lookup()
{
[ -z "$php_bin" ] || return
local paths="$1"
local name="$2"
for path in $paths; do
if [ -x "$path/$name" ]; then
php_bin="$path/$name"
break
fi
done
}
lookup "/usr/local/psa/admin/bin /opt/psa/admin/bin" "php"
lookup "/usr/local/psa/bin /opt/psa/bin" "sw-engine-pleskrun"
[ -n "$php_bin" ] || \
die "Unable to locate the sw-engine PHP interpreter to execute the script. Make sure that Parallels Plesk Panel is installed on this server."
exec "${php_bin}" "$@"

View File

@@ -0,0 +1,3 @@
INFO: Installed Plesk version/build: 18.0.73 Ubuntu 24.04 1800251009.17...
INFO: You have already installed the latest version Plesk 18.0.73. Tool must be launched prior to upgrade to Plesk 18.0.73 for the purpose of getting a report on potential problems with the upgrade.

View File

@@ -0,0 +1,30 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo "$*"
exit 1
}
[ -f "$1" ] || die "Usage: $0 PEX [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
find_python_bin()
{
local bin
for bin in "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3" "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2"; do
[ -x "$bin" ] || continue
python_bin="$bin"
return 0
done
return 1
}
find_python_bin ||
die "Unable to locate Python interpreter to execute the script."
exec "$python_bin" "$@"

View File

@@ -0,0 +1,782 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# repository_check.sh writes single line json report into it with the following fields:
# - "stage": "repositorycheck"
# - "level": "error"
# - "errtype" is one of the following:
# * "reponotcached" - repository is not cached (mostly due to unavailability).
# * "reponotenabled" - required repository is not enabled.
# * "reponotsupported" - unsupported repository is enabled.
# * "configmanagernotinstalled" - dnf config-manager is disabled.
# - "repo": repository name.
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message.
report_no_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotenabled' "repo=$repo" <<-EOL
Plesk installation requires '$repo' OS repository to be enabled.
Make sure it is available and enabled, then try again.
EOL
}
report_no_repo_cache()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotcached' "repo=$repo" <<-EOL
Unable to create $package_manager cache for '$repo' OS repository.
Make sure the repository is available, otherwise either disable it or fix its configuration, then try again.
EOL
}
report_unsupported_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotsupported' "repo=$repo" <<-EOL
Plesk installation doesn't support '$repo' OS repository.
Make sure it is disabled, then try again.
EOL
}
report_rh_no_config_manager()
{
local target
case "$package_manager" in
yum)
target="yum-utils package"
;;
dnf)
target="config-manager dnf plugin"
;;
esac
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=configmanagernotinstalled' <<-EOL
Failed to install $target.
Make sure repositories configuration of $package_manager package manager is correct
(use '$package_manager repolist --verbose' to get its actual state), then try again.
EOL
}
check_rh_broken_repos()
{
local rh_enabled_repos rh_available_repos
# 1. `yum repolist` and `dnf repolist` list all repos
# which were enabled before last cache creation
# even if cache for them was not created.
# If some repo is misconfigured and cache was created with `skip_if_unavailable=1`
# then such repo will be listed anyway despite on cache state.
# If some repo was enabled after last cache creation
# then `repolist --cacheonly` will fail.
# 2. `yum repolist --verbose` and `dnf repoinfo` list only repos
# which were successfully cached before.
# These commands fail if at least one repo is not available
# and the 'skip_if_unavailable' flag is not set.
case "$package_manager" in
yum)
rh_enabled_repos="$(
{
yum repolist enabled --cacheonly -q 2>/dev/null \
|| yum repolist enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^\*\?!\?\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$(
yum repolist enabled --verbose --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's/^Repo-id\s*:\s*\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
;;
dnf)
rh_enabled_repos="$(
{
dnf repolist --enabled --cacheonly -q 2>/dev/null \
|| dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(\S\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$( \
dnf repoinfo --enabled --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's|^Repo-id\s*:\s*\(\S\+\)\s*$|\1|p'
)" || return $RET_FATAL
;;
esac
local rh_enabled_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_enabled_repos" | sort > "$rh_enabled_repos_f"
local rh_available_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_available_repos" | sort > "$rh_available_repos_f"
local repo rc=0
for repo in $(comm -23 "$rh_enabled_repos_f" "$rh_available_repos_f"); do
report_no_repo_cache "$repo"
rc=$RET_WARN
done
rm -f "$rh_enabled_repos_f" "$rh_available_repos_f"
return $rc
}
has_rh_enabled_repo()
{
local repo="$1"
# Try to get list of repos from cache first.
# If some repo was enabled after last cache creation
# or some repo is unavailable the query from cache will fail.
# Try to fetch actual metadata in this case.
case "$package_manager" in
yum)
# Repo-id may end with OS version and/or architecture
# if baseurl of the repo refers to $releasever and/or $basearch variables
# eg 'epel/7/x86_64', 'epel/7', 'epel/x86_64'
{
yum repolist enabled --verbose --cacheonly -q 2>/dev/null \
|| yum repolist enabled --verbose -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo(/.+)?\s*$"
;;
dnf)
# note: --noplugins may cause failure and empty output on RedHat
{
dnf repoinfo --enabled --cacheonly -q 2>/dev/null \
|| dnf repoinfo --enabled -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo\s*$"
;;
esac
}
has_rh_config_manager()
{
case "$package_manager" in
yum) yum-config-manager --help >/dev/null 2>&1 ;;
dnf) dnf config-manager --help >/dev/null 2>&1 ;;
esac
}
install_rh_config_manager()
{
case "$package_manager" in
yum) yum install --disablerepo 'PLESK_*' -q -y 'yum-utils' --setopt='*.skip_if_unavailable=1' ;;
dnf) dnf install --disablerepo 'PLESK_*' -q -y 'dnf-command(config-manager)' --setopt='*.skip_if_unavailable=1' ;;
esac
}
check_rh_config_manager()
{
if ! has_rh_config_manager && ! install_rh_config_manager; then
report_rh_no_config_manager
return $RET_FATAL
fi
}
enable_rh_repo()
{
case "$package_manager" in
yum) yum-config-manager --enable "$@" && has_rh_enabled_repo "$@" ;;
dnf) dnf config-manager --set-enabled "$@" && has_rh_enabled_repo "$@" ;;
esac
}
enable_sm_repo()
{
! has_rh_enabled_repo "$@" || return 0
subscription-manager repos --enable "$@" || return $?
# On RedHat 8 above command may return 0 on failure with "Repositories disabled by configuration."
has_rh_enabled_repo "$@"
}
check_epel()
{
! enable_rh_repo "epel" || return 0
# try to install epel-release from centos/extras or plesk/thirdparty repo
# and then try to update it to last version shipped by epel itself
# to make package upgradable with pum
"$package_manager" install --disablerepo 'PLESK_*' -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null \
|| "$package_manager" install --disablerepo='*' --enablerepo 'PLESK_18_*-thirdparty' -q -y 'epel-release' \
|| "$package_manager" install -q -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$os_version.noarch.rpm" \
&& "$package_manager" update -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null
# Ensure any other EPEL repos have cache for subsequent check for broken repos (AL9)
local epel_repos="$(
[ "$package_manager" != "dnf" ] || {
dnf repolist --enabled --cacheonly -q 2>/dev/null ||
dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(epel\S\+\).*/\1/p'
)"
for repo in $epel_repos; do
"$package_manager" makecache --repo "$repo" -q
done
! has_rh_enabled_repo "epel" || return 0
report_no_repo "epel"
return $RET_FATAL
}
check_codeready()
{
local repo_rhel="codeready-builder-for-rhel-$os_version-$os_arch-rpms"
local repo_rhui="codeready-builder-for-rhel-$os_version-rhui-rpms"
local repo_rhui_alt="codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
local repo_rhui_alt2="rhui-codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
! enable_rh_repo "$repo_rhui_alt" || return 0
! enable_rh_repo "$repo_rhui_alt2" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_optional()
{
local repo_rhel="rhel-$os_version-server-optional-rpms"
local repo_rhui="rhel-$os_version-server-rhui-optional-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_repos_rhel9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_codeready || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# powertools is renamed to crb since AlmaLinux 9
! enable_rh_repo "crb" || return $rc
report_no_repo "crb"
return $RET_FATAL
}
check_repos_cloudlinux9()
{
check_repos_almalinux9 "$@"
}
check_repos_almalinux10()
{
check_repos_almalinux9 "$@"
}
check_repos_centos8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are lowercased since 8.3
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_cloudlinux8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are changed since 8.5
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "cloudlinux-PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_rhel8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
[ "$1" = "install" ] || return $rc
check_codeready || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux8()
{
check_repos_centos8 "$@"
}
check_repos_rocky8()
{
check_repos_centos8 "$@"
}
check_repos_rhel7()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_optional || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_centos7_based()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
sed_escape()
{
# Note: this is not a full implementation
echo -n "$1" | sed -e 's|\.|\\.|g'
}
switch_eol_centos_repos()
{
local old_mirrorlist_host="mirrorlist.centos.org"
local old_host="mirror.centos.org"
local new_host="vault.centos.org"
grep -qFw "$old_host" /etc/yum.repos.d/CentOS-*.repo 2>/dev/null || return 0
local backup="`mktemp -d "/tmp/yum.repos.d-$(date --rfc-3339=date)-XXXXXX"`"
! [ -d "$backup" ] || cp -raT /etc/yum.repos.d "$backup" || :
sed -i \
-e "s|^\s*\(mirrorlist\b[^/]*//`sed_escape "$old_mirrorlist_host"`/.*\)$|#\1|" \
-e "s|^#*\s*baseurl\b\([^/]*\)//`sed_escape "$old_host"`/\(.*\)$|baseurl\1//$new_host/\2|" \
/etc/yum.repos.d/CentOS-*.repo
echo "YUM package manager repositories were backed up to '$backup' and switched from $old_host to $new_host ." >&2
}
check_repos_centos7()
{
switch_eol_centos_repos
check_repos_centos7_based "$@"
}
check_repos_cloudlinux7()
{
check_repos_centos7_based "$@"
}
check_repos_virtuozzo7()
{
check_repos_centos7_based "$@"
}
find_apt_repo()
{
local repo="$1"
local dist_tag=
! [ "$os_name" = "ubuntu" ] || dist_tag="a"
! [ "$os_name" = "debian" ] || dist_tag="n"
if [ -z "$_apt_cache_policy" ]; then
# extract info of each available release as a string which consists of 'tag=value'
# filter out releases with priority less or equal to 100
_apt_cache_policy="$(
apt-cache policy \
| grep "b=$pkg_arch" \
| grep -Eo '([a-z]=[^,]+,?)*' \
)"
fi
local l="$(echo "$repo" | cut -f1 -d'/')"
local d="$(echo "$repo" | cut -f2 -d'/')"
local c="$(echo "$repo" | cut -f3 -d'/')"
# try to find releases by distribution and component
echo "$_apt_cache_policy" \
| grep -E "(^|,)l=$l(,|$)" \
| grep -E "(^|,)$dist_tag=$d(,|$)" \
| grep -E "(^|,)c=$c(,|$)" \
| while IFS="$(printf '\n')" read rel && [ -n "$rel" ]; do
l="$(echo "$rel" | grep -Eo "(^|,)l=[^,]+" | cut -f2 -d"=")"
d="$(echo "$rel" | grep -Eo "(^|,)$dist_tag=[^,]+" | cut -f2 -d"=")"
c="$(echo "$rel" | grep -Eo "(^|,)c=[^,]+" | cut -f2 -d"=")"
echo "$l/$d/$c"
done
}
apt_install_packages()
{
DEBIAN_FRONTEND=noninteractive LANG=C PATH=/usr/sbin:/usr/bin:/sbin:/bin \
apt-get -qq --assume-yes -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold -o APT::Install-Recommends=no \
install "$@"
}
# Takes a list of suites and disables them in APT sources.
# Multiline deb822 format is supported.
disable_apt_suites_deb822()
{
local python3=/usr/bin/python3
"$python3" -c 'import aptsources.sourceslist' 2>/dev/null ||
apt_install_packages python3-apt
"$python3" -c '
import sys
from aptsources.sourceslist import SourcesList
suites_to_disable=set(sys.argv[1:])
sources_list = SourcesList(deb822=True)
sources_changed = False
for src in sources_list:
if src.invalid:
continue
suites = getattr(src, "suites", ())
if not suites:
continue
new_suites = [s for s in suites if s not in suites_to_disable]
if len(new_suites) != len(suites):
sources_changed = True
if len(new_suites) == 0:
src.disabled = True
else:
src.suites = new_suites
if sources_changed:
sources_list.save()
' "$@"
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
}
disable_apt_repo()
{
local repos_to_disable="$(find_apt_repo "$1" | cut -d '/' -f 2,3 | sort | uniq)"
if [ -z "$repos_to_disable" ]; then
return 0
fi
echo "$repos_to_disable" \
| while IFS= read -r repo_to_disable && [ -n "$repo_to_disable" ]; do
local distrib=${repo_to_disable%%/*}
local component=${repo_to_disable##*/}
find /etc/apt -name "*.list" -exec \
sed -i -e "/^\s*#/! s/.*\s$distrib\s\+$component\b/# &/" {} +
done
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
return 0
}
check_required_apt_repo()
{
local repo="$1"
[ -z "$(find_apt_repo "$repo")" ] || return 0
report_no_repo "$repo"
return $RET_FATAL
}
check_unsupported_apt_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Ubuntu/[^,]+/[^,]+" | grep -v "Ubuntu/$os_codename.*/.*"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_ubuntu18()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_unsupported_apt_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+" | grep -v "Debian.*/$os_codename.*/.*"
find_apt_repo "Ubuntu/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
if [ "$os_name" = "debian" -a "$os_version" -ge 12 ]; then
disable_apt_suites_deb822 "$os_codename-backports"
else
disable_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
fi
check_required_apt_repo "Debian/$os_codename/main" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_debian "$mode" || rc="$(( $rc | $? ))"
return $rc
}
# ---
skip_checker_on_flag "Repository check" "/tmp/plesk-installer-skip-repository-check.flag"
checker_main 'check_repos' "$1"

View File

@@ -0,0 +1,7 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
exec "$@"

View File

@@ -0,0 +1,927 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build_1 confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" apt_source=" noble all" persistent_apt_source=" noble extras">
<exact_required_autoinstaller version="3.73.0" binary_directory="Installer/3.73.0" />
<required_autoinstaller version="3.18.12" binary_directory="Parallels_Installer" />
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" sequence-order="-2" stage="execute" exec-cmd="touch /var/lock/plesk-report-update.flag; :" />
<action sequence="prep" sequence-order="-1" stage="execute" exec-cmd="touch /tmp/pp-bootstrapper-mode.flag; touch /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="prep" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="pkgs" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="commit" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; :" />
<action sequence="post" sequence-order="9990" exec-cmd="test ! -x /opt/psa/admin/sbin/packagemng || /opt/psa/admin/sbin/packagemng --set-dirty-flag" />
<action sequence="post" sequence-order="9991" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh perform-deferred-actions" />
<action sequence="post" sequence-order="9998" exec-cmd="/opt/psa/admin/sbin/update_history" />
</bootstrapper>
<examine name="Create swap space if needed" scope="pre_install" script="examiners/tune_memory_swap.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_install" script="examiners/repository_check.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_upgrade" script="examiners/repository_check.sh" options="upgrade" />
<examine name="Enabled repositories check" scope="pre_update" script="examiners/repository_check.sh" options="update" />
<examine name="Package manager check" scope="pre_any" script="examiners/package_manager_check.sh" />
<examine name="Check and fix broken timezone" scope="pre_upgrade" script="examiners/check_broken_timezone.sh" options="upgrade" />
<examine name="Check and fix broken timezone" scope="pre_update" script="examiners/check_broken_timezone.sh" options="update" />
<examine name="Available disk space check" scope="pre_install" script="examiners/disk_space_check.sh" options="install" />
<examine name="Available disk space check" scope="pre_upgrade" script="examiners/disk_space_check.sh" options="upgrade" />
<examine name="Available disk space check" scope="pre_update" script="examiners/disk_space_check.sh" options="update" />
<examine name="Installation is finished" scope="post_install" script="examiners/congratulations.sh" options="install" />
<examine name="Upgrade is finished" scope="post_upgrade" script="examiners/congratulations.sh" options="upgrade" />
<examine name="Prepare result notification" scope="pre_any" script="examiners/sh_cmd.sh" options="touch /var/lock/plesk-report-update.flag" always="true" />
<examine name="Installation result notification" scope="post_install" script="/report-update" launcher="examiners/py_launcher.sh" options="--op install --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.4" always="true" />
<examine name="Upgrade result notification" scope="post_upgrade" script="/report-update" launcher="examiners/py_launcher.sh" options="--op upgrade --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.4 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Update result notification" scope="post_update" script="/report-update" launcher="examiners/py_launcher.sh" options="--op update --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.4 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Store installation info" scope="post_install" script="examiners/save-installation-info.php" launcher="examiners/php_launcher.sh" options="--save -mode {WORK_MODE} -preset {PRESET} -arguments {ARGUMENTS}" always="true" />
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="plesk">
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" upgrade_allowed_from="17.0.17" />
</product>
<ext_catalog url="https://ext.plesk.com" />
<component name="panel" description="Plesk" classes="vendor=parallels,patched,aspect=panel" deny_implicit_removal="true">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install BASE" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_awstats_configure" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install psa-vhost" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install BASE" sequence-order="100" />
<action sequence="prep" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="pkgs" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="commit" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-success-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-success-notification.php" />
</bootstrapper>
<examine name="Plesk license key availability check" scope="pre_upgrade" script="examiners/license_key_check.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<examine name="Plesk pre-upgrade check" scope="pre_upgrade" script="examiners/panel_preupgrade_checker.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
<keypackage name="plesk-web-hosting" />
</keypackages>
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
</keypackages>
<requires>mysqlgroup</requires>
<requires>l10n</requires>
<requires>proftpd</requires>
<requires>webservers</requires>
<package name="libapache2-mod-aclr2-psa" version="14081815" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/nginxSupport/libapache2-mod-aclr2-psa_14081815-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="7552" buildtime="0" md5="1e20c35fca2a8a48ef514b35933e631b" arch="amd64" />
<package name="libapache2-mod-sysenv-psa" version="0.2" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/sysenv/libapache2-mod-sysenv-psa_0.2-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3800" buildtime="0" md5="1c57ce65d21ea2bfa6678671ecd6f03d" arch="amd64" />
<package name="libaps" version="1.0.17" release="ubuntu.24.04.250902.0711" file="engine/libaps_1.0.17-ubuntu.24.04.250902.0711_amd64.deb" size="1305310" buildtime="0" md5="ad7fce023006460422ea1a2785685a0b" classes="aspect=panel" arch="amd64" />
<package name="libpam-plesk" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/libpam-plesk_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="502828" buildtime="0" md5="2502d72d62dce3ccb116820156e0ff1d" classes="aspect=panel" arch="amd64" />
<package name="plesk-backup-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-backup-utilities_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4122140" buildtime="0" md5="4dee06693881fdfde7e2f9436a436327" classes="aspect=panel" arch="amd64" />
<package name="plesk-completion" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250911.1022" file="base/plesk-completion_18.0-v.ubuntu.24.04+p18.0.73.0+t250911.1022_amd64.deb" size="2211864" buildtime="0" md5="055bfea79d762d5c58bf9b7b38f51c23" classes="aspect=panel" arch="amd64" />
<package name="plesk-control-panel" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.2150" file="base/plesk-control-panel_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.2150_all.deb" size="11262988" buildtime="0" md5="73e4730910849e0f24e10f4e81b717e3" classes="aspect=panel" arch="all" />
<package name="plesk-core" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251117.1520" file="base/plesk-core_18.0-v.ubuntu.24.04+p18.0.73.4+t251117.1520_amd64.deb" size="31190092" buildtime="0" md5="6127a23d33983b14feb0903dcbbcd1c9" classes="aspect=panel" arch="amd64" />
<package name="plesk-core-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-core-utilities_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="1323144" buildtime="0" md5="df3b3aa660c7a597286cad1ee5ae79e8" classes="aspect=panel" arch="amd64" />
<package name="plesk-engine" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250902.1415" file="engine/plesk-engine_18.0-v.ubuntu.24.04+p18.0.73.0+t250902.1415_all.deb" size="1148" buildtime="0" md5="0e366b7868e6d44c5ce2feea23120745" classes="aspect=panel" arch="all" />
<package name="plesk-libmaodbc" version="3.2.6" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-libmaodbc_3.2.6-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="272528" buildtime="0" md5="05dfca8bca81be65c26f1402c685631b" classes="aspect=panel" arch="amd64" />
<package name="plesk-libmariadbclient-3.4" version="3.4.7" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-libmariadbclient-3.4_3.4.7-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="126656" buildtime="0" md5="3132190e856ddc886f86f95c6b914b7a" classes="aspect=panel" arch="amd64" />
<package name="plesk-librdbmspp" version="2.0.7" release="ubuntu.24.04.250902.0711" file="engine/plesk-librdbmspp_2.0.7-ubuntu.24.04.250902.0711_amd64.deb" size="202370" buildtime="0" md5="8466fd1149ccaf212f0d1497e7f56657" classes="aspect=panel" arch="amd64" />
<package name="plesk-lmlib" version="0.2.8" release="ubuntu.24.04.250902.0711" file="engine/plesk-lmlib_0.2.8-ubuntu.24.04.250902.0711_amd64.deb" size="464388" buildtime="0" md5="12d1c937bc3daa13702aa52193ffc836" classes="aspect=panel" arch="amd64" />
<package name="plesk-phpenv" version="0.9.0" release="v.ubuntu.24.04+p18.0.68.0+t250205.1631" file="opt/hosting/phpenv/plesk-phpenv_0.9.0-v.ubuntu.24.04+p18.0.68.0+t250205.1631_all.deb" size="16728" buildtime="0" md5="be4f8da7ea6c4db2c72fcf1e7b7e8a73" arch="all" />
<package name="plesk-platform-runtime" version="1.0.7" release="ubuntu.24.04.250902.0711" file="engine/plesk-platform-runtime_1.0.7-ubuntu.24.04.250902.0711_amd64.deb" size="20528" buildtime="0" md5="7c11123864ba084f776b1226fed482b0" classes="aspect=panel" arch="amd64" />
<package name="plesk-release" version="18.0.73.4" release="v.ubuntu.24.04+p18.0.73.4+t251117.1520" file="base/plesk-release_18.0.73.4-v.ubuntu.24.04+p18.0.73.4+t251117.1520_amd64.deb" size="1464" buildtime="0" md5="0fdde6d530828c8f18e75d5d92001579" classes="aspect=panel" arch="amd64" />
<package name="plesk-repair-kit" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/repairkit/plesk-repair-kit_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4947924" buildtime="0" md5="3e119bae50ec0ee78617aeb0e2db09ab" classes="aspect=panel" arch="amd64" />
<package name="plesk-rrd" version="1.9.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-rrd_1.9.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="616592" buildtime="0" md5="19ea7c698432e6e18132a137d9e77606" classes="aspect=panel" arch="amd64" />
<package name="plesk-service-node-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-service-node-utilities_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3746152" buildtime="0" md5="dc8c46cc7636cef754474d6d4303bb44" classes="aspect=panel" arch="amd64" />
<package name="plesk-task-manager" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-task-manager_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4612132" buildtime="0" md5="97edc36d36bbf807c0f8ee1e4c79d70c" classes="aspect=panel" arch="amd64" />
<package name="plesk-ui-library" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-ui-library_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="2567748" buildtime="0" md5="e8f22d6fa62b86eca6d43d5f9a6078dc" classes="aspect=panel" arch="all" />
<package name="plesk-web-hosting" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/whc/plesk-web-hosting_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="77204" buildtime="0" md5="16209ce62033f706e9f8d57ae1b2c01e" classes="aspect=panel" arch="amd64" />
<package name="plesk-web-socket" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-web-socket_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="19868" buildtime="0" md5="7ebfa900251784d436827a1432e92f44" classes="aspect=panel" arch="amd64" />
<package name="psa" version="18.0.73" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/psa_18.0.73-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="33312" buildtime="0" md5="b9b257f9da2b26171a093949fe7bb38f" classes="aspect=panel" arch="amd64" />
<package name="psa-autoinstaller" version="3.73.0" release="ubuntu.24.04.250912.0929" file="opt/updater/psa-autoinstaller_3.73.0-ubuntu.24.04.250912.0929_amd64.deb" size="4716790" buildtime="0" md5="c0c8857b4fb46b3307f067eee2a47d18" classes="aspect=panel" arch="amd64" />
<package name="psa-libxml-proxy" version="2.9.12" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/psa-libxml-proxy_2.9.12-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="657508" buildtime="0" md5="795b9ca901ab70675fc3818eac990fee" classes="aspect=panel" arch="amd64" />
<package name="psa-locale-base-en-us" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.2150" file="base/psa-locale-base-en-us_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.2150_all.deb" size="310708" buildtime="0" md5="b8010646c4346256f89426cda4b5416f" classes="aspect=panel" arch="all" />
<package name="psa-logrotate" version="3.22.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/psa-logrotate_3.22.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="61632" buildtime="0" md5="dd68f6809a5e61fcbb488e6ed24daa9e" classes="aspect=panel" arch="amd64" />
<package name="psa-phpmyadmin" version="5.2.2" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/psa-phpmyadmin_5.2.2-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="7711328" buildtime="0" md5="ff642ba11b2c1351e37cf8d87da855a1" classes="aspect=panel" arch="all" />
<package name="psa-updates" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250715.1156" file="base/psa-updates_18.0-v.ubuntu.24.04+p18.0.72.0+t250715.1156_all.deb" size="1300" buildtime="0" md5="d348b0505cb40543dafaf86f15e76fe2" classes="aspect=panel" arch="all" />
<package name="psa-vhost" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/vhost/psa-vhost_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="33252" buildtime="0" md5="e91a2f9fdeff8224a5f990eb9af9f005" classes="aspect=panel" arch="all" />
<package name="sw-collectd" version="5.12.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/sw-collectd_5.12.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="521164" buildtime="0" md5="a7e895d5b766676663142d8cd2f13c98" classes="aspect=panel" arch="amd64" />
<package name="sw-cp-server" version="2.14.1" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="engine/sw-cp-server_2.14.1-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="920516" buildtime="0" md5="daaa56f506f7f7cbe7f0d3407a9b9390" classes="aspect=panel" arch="amd64" />
<package name="sw-engine" version="7.73.1" release="ubuntu.24.04.250902.0711" file="engine/sw-engine_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="14361136" buildtime="0" md5="9d49c27e34170592130cacbac24bdc21" classes="aspect=panel" arch="amd64" />
</component>
<component name="bind" description="BIND DNS server" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-dns-bind-driver" />
</keypackages>
<package name="plesk-dns-bind-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/dns/plesk-dns-bind-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="584060" buildtime="0" md5="6f17bc13d9c5e5f72aba9df563b82e49" classes="aspect=panel" arch="amd64" />
</component>
<component name="qmail" description="Qmail" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install mail-qc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-qc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-qmail" />
<nokeypackage name="psa-mail-pc-driver" />
<nokeypackage name="plesk-mail-pc-driver" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-qc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/plesk-mail-qc-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="675672" buildtime="0" md5="351fd07921ce79c9bb6f059cfdd6e44e" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="2429612" buildtime="0" md5="6ea97ebe82a71f738aa60e98ea38bf06" classes="aspect=panel" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/psa-qmail_1.03-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="273540" buildtime="0" md5="43db5cd5d826286b5ddbb4f75f5b0b65" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-qmail_1.03-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="273540" buildtime="0" md5="43db5cd5d826286b5ddbb4f75f5b0b65" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="opt/mail/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18964" buildtime="0" md5="d9698188f3986f9a8deb76856b282c7a" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="unknown_dir/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18964" buildtime="0" md5="d9698188f3986f9a8deb76856b282c7a" arch="amd64" />
</component>
<component name="postfix" description="Postfix" classes="vendor=mixed">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install mail-pc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-pc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-pc-driver" />
<keypackage name="postfix" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-pc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/plesk-mail-pc-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="1693680" buildtime="0" md5="f5e23827e2ada946fa493adcda202874" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="2429612" buildtime="0" md5="6ea97ebe82a71f738aa60e98ea38bf06" classes="aspect=panel" arch="amd64" />
</component>
<component name="msmtp" description="MSMTP (relay only)" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-mc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-mc-driver" />
<keypackage name="sw-msmtp" />
</keypackages>
<conflicts>mailman</conflicts>
<conflicts>spamassassin</conflicts>
<conflicts>drweb</conflicts>
<conflicts>sophos</conflicts>
<conflicts>courier</conflicts>
<conflicts>dovecot</conflicts>
<package name="plesk-mail-mc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/plesk-mail-mc-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="49840" buildtime="0" md5="c24428faf429f612f005a709565a9274" classes="aspect=panel" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="156840" buildtime="0" md5="a3ac8dc1f389fa3104b6ef53a2ce9c6d" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="156840" buildtime="0" md5="a3ac8dc1f389fa3104b6ef53a2ce9c6d" arch="amd64" />
</component>
<component name="courier" description="Courier" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install courier-imap" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-courier-imap-driver" />
<keypackage name="psa-courier-imap" />
<keypackage name="psa-courier-authlib" />
</keypackages>
<keypackages>
<keypackage name="psa-courier-imap" />
</keypackages>
<keypackages>
<keypackage name="courier-imap" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-courier-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/plesk-courier-imap-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="168876" buildtime="0" md5="d45da401786d669febbf9afd5d935ab4" classes="aspect=panel" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="137796" buildtime="0" md5="3447959ffaf27b5603e0f397a4b2e4c6" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="137796" buildtime="0" md5="3447959ffaf27b5603e0f397a4b2e4c6" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="438924" buildtime="0" md5="32457979faf81dab7dff88212b41f25b" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="438924" buildtime="0" md5="32457979faf81dab7dff88212b41f25b" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="118588" buildtime="0" md5="35577c854c6e1ec1fdcf3cad9ff91b50" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="118588" buildtime="0" md5="35577c854c6e1ec1fdcf3cad9ff91b50" arch="amd64" />
</component>
<component name="dovecot" description="Dovecot" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install dovecot" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-dovecot-imap-driver" />
<keypackage name="plesk-dovecot" />
<keypackage name="plesk-dovecot-pigeonhole" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-dovecot" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/plesk-dovecot_2.4.1-4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="152432" buildtime="0" md5="0aad053f85cc6f5de5234348bdaac766" arch="amd64" />
<package name="plesk-dovecot" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/plesk-dovecot_2.4.1-4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="152432" buildtime="0" md5="0aad053f85cc6f5de5234348bdaac766" arch="amd64" />
<package name="plesk-dovecot-core" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/plesk-dovecot-core_2.4.1-4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="2742936" buildtime="0" md5="5ccd24882553e4f1fc4b719e0b0d2be8" arch="amd64" />
<package name="plesk-dovecot-core" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/plesk-dovecot-core_2.4.1-4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="2742936" buildtime="0" md5="5ccd24882553e4f1fc4b719e0b0d2be8" arch="amd64" />
<package name="plesk-dovecot-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/plesk-dovecot-imap-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="270124" buildtime="0" md5="4466856fb90634c1b1ecad43a25dac58" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/plesk-dovecot-pigeonhole_2.4.1-4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="709168" buildtime="0" md5="0891fa915ac65e795de4b7ea5f4395c9" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/plesk-dovecot-pigeonhole_2.4.1-4-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="709168" buildtime="0" md5="0891fa915ac65e795de4b7ea5f4395c9" arch="amd64" />
</component>
<component name="php5" description="PHP from OS vendor" classes="vendor=mixed">
<keypackages>
<keypackage name="psa-php-configurator" />
<keypackage name="php-fpm" />
<keypackage name="php-common" />
</keypackages>
<keypackages>
<keypackage name="psa-php-configurator" />
</keypackages>
<requires>panel</requires>
<package name="psa-php-configurator" version="1.8.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/php/psa-php-configurator_1.8.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="30384" buildtime="0" md5="0f9a6a8ea7eec3f4e653a137ca587f46" classes="aspect=panel" arch="amd64" />
</component>
<component name="postgresql" description="PostgreSQL server" classes="vendor=os">
<keypackages>
<keypackage name="postgresql-15" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-15" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql" />
</keypackages>
</component>
<component name="mysql-sys" description="MySQL server" classes="vendor=os">
<keypackages>
<keypackage name="mariadb-server" />
</keypackages>
<keypackages>
<keyprovide name="mysql-server" />
</keypackages>
<keypackages>
<keyprovide name="virtual-mysql-server" />
</keypackages>
</component>
<component name="apache" description="Apache" classes="vendor=os">
<keypackages>
<keypackage name="apache2" />
<keypackage name="apache2-mpm-prefork" />
</keypackages>
<keypackages>
<keypackage name="apache2" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-itk" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-prefork" />
</keypackages>
</component>
<component name="spamassassin" description="SpamAssassin" classes="vendor=mixed,aspect=panel">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install spammng" />
</bootstrapper>
<keypackages>
<keypackage name="psa-spamassassin" />
</keypackages>
<package name="psa-spamassassin" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/psa-spamassassin_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="73852" buildtime="0" md5="34b61d247623f60f10486332a0b11b09" arch="amd64" />
</component>
<component name="mod_python" description="mod_python" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-python" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="drweb" description="Plesk Premium Antivirus" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-premium-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="psa-firewall" description="Plesk Firewall" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-firewall" />
</keypackages>
<requires>panel</requires>
</component>
<component name="watchdog" description="Watchdog system monitoring" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-watchdog" />
</keypackages>
<requires>panel</requires>
</component>
<component name="horde" description="Horde" hidden="true" classes="vendor=parallels" show_installed_hidden="true">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install horde" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install horde" />
</bootstrapper>
<keypackages>
<keypackage name="psa-horde" />
<keypackage name="psa-turba" />
<keypackage name="psa-imp" />
<keypackage name="psa-ingo" />
<keypackage name="psa-mnemo" />
<keypackage name="psa-kronolith" />
<keypackage name="psa-passwd" />
</keypackages>
<keypackages>
<keypackage name="psa-horde" />
</keypackages>
<requires>php7.4</requires>
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="12095904" buildtime="0" md5="7ffd579cde472d1ee996a31be60f78fc" arch="all" />
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="12095904" buildtime="0" md5="7ffd579cde472d1ee996a31be60f78fc" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="2449380" buildtime="0" md5="36cf2e88c84a73041b3e8838e364302d" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="2449380" buildtime="0" md5="36cf2e88c84a73041b3e8838e364302d" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="789484" buildtime="0" md5="13e67ee2f2b8b291ab02ffb210c1618d" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="789484" buildtime="0" md5="13e67ee2f2b8b291ab02ffb210c1618d" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1327268" buildtime="0" md5="c9ac021e29b2fa4ea4eba1d87650e483" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1327268" buildtime="0" md5="c9ac021e29b2fa4ea4eba1d87650e483" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="627148" buildtime="0" md5="90e33f4d7a2eacfeb62b5535ddfb8a00" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="627148" buildtime="0" md5="90e33f4d7a2eacfeb62b5535ddfb8a00" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="588892" buildtime="0" md5="b2ab0c16b86445a15c251bd1cf1bbc4c" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="588892" buildtime="0" md5="b2ab0c16b86445a15c251bd1cf1bbc4c" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1028564" buildtime="0" md5="b0977ed85cbab6dc920189355933caa4" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1028564" buildtime="0" md5="b0977ed85cbab6dc920189355933caa4" arch="all" />
</component>
<component name="roundcube" description="Roundcube" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install roundcube" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install roundcube" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-roundcube" />
</keypackages>
<requires>php8.3</requires>
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/roundcube/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="4399988" buildtime="0" md5="2f08be554ba8167f69245e3a9e675717" arch="all" />
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="4399988" buildtime="0" md5="2f08be554ba8167f69245e3a9e675717" arch="all" />
</component>
<component name="mod_fcgid" description="mod_fcgid" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-fcgid-psa" />
</keypackages>
<keypackages>
<keypackage name="libapache2-mod-fcgid" />
</keypackages>
<requires>webservers</requires>
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/fcgid/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="81624" buildtime="0" md5="7dc1175e0e30d0322f7cef1b84b8d1dd" arch="amd64" />
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="81624" buildtime="0" md5="7dc1175e0e30d0322f7cef1b84b8d1dd" arch="amd64" />
</component>
<component name="mod_perl" description="mod_perl" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-perl2" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="proftpd" description="ProFTPD" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_ftp_proftpd_configure" />
</bootstrapper>
<keypackages>
<keypackage name="psa-proftpd" />
</keypackages>
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/proftpd/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3152984" buildtime="0" md5="8910b30cebfcb7af84cac9f4b57db0e4" arch="amd64" />
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3152984" buildtime="0" md5="8910b30cebfcb7af84cac9f4b57db0e4" arch="amd64" />
</component>
<component name="webalizer" description="Webalizer" classes="vendor=os">
<keypackages>
<keypackage name="webalizer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="awstats" description="AWStats" classes="vendor=os">
<keypackages>
<keypackage name="plesk-awstats-configurator" />
<keypackage name="awstats" />
</keypackages>
<keypackages>
<keypackage name="plesk-awstats-configurator" />
</keypackages>
<keypackages>
<keypackage name="awstats" />
</keypackages>
<requires>panel</requires>
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/awstats/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16032" buildtime="0" md5="21b105c248bd25c06f5c89c5737e69c4" arch="all" />
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16032" buildtime="0" md5="21b105c248bd25c06f5c89c5737e69c4" arch="all" />
</component>
<component name="fail2ban" description="Fail2Ban" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install fail2ban-configurator" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install fail2ban-configurator" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-fail2ban-configurator" />
<keypackage name="fail2ban" />
</keypackages>
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/fail2ban/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="870504" buildtime="0" md5="f737f569e5fd8065579065ea8a8da156" arch="all" />
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="870504" buildtime="0" md5="f737f569e5fd8065579065ea8a8da156" arch="all" />
<package name="plesk-fail2ban-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/fail2ban/plesk-fail2ban-configurator_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="41812" buildtime="0" md5="8eeaa5eaa0be50ee61ad48f45f860ab6" classes="aspect=panel" arch="all" />
</component>
<component name="modsecurity" description="ModSecurity" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity-plesk" />
</keypackages>
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity" />
</keypackages>
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/modsecurity/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="268968" buildtime="0" md5="392bccf4c2051832ee2cedeb1dca52aa" arch="amd64" />
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="268968" buildtime="0" md5="392bccf4c2051832ee2cedeb1dca52aa" arch="amd64" />
<package name="plesk-modsecurity-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/modsecurity/plesk-modsecurity-configurator_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="554776" buildtime="0" md5="10a32d3c3e20c667bdb076148648da36" classes="aspect=panel" arch="all" />
<package name="plesk-modsecurity-crs" version="1:4.18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/modsecurity/plesk-modsecurity-crs_4.18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="232948" buildtime="0" md5="ddba75b8f810a1af292e3a306431f317" arch="amd64" />
<package name="plesk-modsecurity-crs" version="1:4.18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/plesk-modsecurity-crs_4.18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="232948" buildtime="0" md5="ddba75b8f810a1af292e3a306431f317" arch="amd64" />
</component>
<component name="passenger" description="Phusion Passenger server" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-passenger-plesk" />
<keypackage name="passenger" />
</keypackages>
<requires>panel</requires>
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/passenger/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="308904" buildtime="0" md5="1608e58e31044375d611174b4e79befa" arch="amd64" />
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="308904" buildtime="0" md5="1608e58e31044375d611174b4e79befa" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/passenger/passenger_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="5566032" buildtime="0" md5="400bd7ae8788ecc0b8c2cfa8f688d9aa" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/passenger_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="5566032" buildtime="0" md5="400bd7ae8788ecc0b8c2cfa8f688d9aa" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/passenger/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4616256" buildtime="0" md5="147527933e0c21f24b627ea42c93721a" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4616256" buildtime="0" md5="147527933e0c21f24b627ea42c93721a" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/passenger/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="6060" buildtime="0" md5="c947744a7c6ae65c0d1f9d4922c400fc" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="6060" buildtime="0" md5="c947744a7c6ae65c0d1f9d4922c400fc" arch="amd64" />
</component>
<component name="l10n" description="All language localization for Plesk" classes="vendor=parallels,aspect=panel">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="224452" buildtime="0" md5="be41b9ff65c8380a2e2420ea109a1834" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install l10n" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install l10n" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-l10n" />
</keypackages>
<requires>panel</requires>
<package name="plesk-l10n" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.2150" file="opt/l10n/plesk-l10n_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.2150_all.deb" size="7017876" buildtime="0" md5="a9a53708be3ee501070536bdb191cef2" arch="all" />
</component>
<component name="git" description="Git" classes="vendor=parallels">
<keypackages>
<keypackage name="ext-git" />
</keypackages>
<requires>panel</requires>
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250901.0545" file="opt/git/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.73.0+t250901.0545_amd64.deb" size="3032" buildtime="0" md5="54a45785ba341f9820f5f3dbdf44b2d4" arch="amd64" />
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250901.0545" file="unknown_dir/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.73.0+t250901.0545_amd64.deb" size="3032" buildtime="0" md5="54a45785ba341f9820f5f3dbdf44b2d4" arch="amd64" />
</component>
<component name="resctrl" description="Resource Controller (Cgroups)" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-resctrl" />
</keypackages>
<requires>panel</requires>
<package name="plesk-resctrl" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/resctrl/plesk-resctrl_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="43116" buildtime="0" md5="89cce5e9047628f6ba88735a9bdfebc5" arch="amd64" />
</component>
<component name="nodejs" description="NodeJS support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-nodejs" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="gems-pre" description="Tools required for building Ruby gems" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-gems-pre" />
</keypackages>
<requires>ruby</requires>
<package name="plesk-gems-pre" version="0.0.1" release="v.ubuntu.24.04+p18.0.72.0+t250806.0900" file="opt/ruby/plesk-gems-pre_0.0.1-v.ubuntu.24.04+p18.0.72.0+t250806.0900_all.deb" size="1272" buildtime="0" md5="10ef94b587a9af335a0a3a7609fe5b4a" arch="all" />
</component>
<component name="wp-toolkit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-wp-toolkit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="advisor" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-advisor" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ruby" description="Ruby support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ruby" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="nginx" description="Nginx web server" classes="vendor=parallels">
<keypackages>
<keypackage name="sw-nginx" />
</keypackages>
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/nginx/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="449332" buildtime="0" md5="4ad7a73227be45b67545fa0683442577" arch="amd64" />
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="449332" buildtime="0" md5="4ad7a73227be45b67545fa0683442577" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/nginx/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4806332" buildtime="0" md5="d56116f97bd58d692c7ec22f5b2eff60" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="4806332" buildtime="0" md5="d56116f97bd58d692c7ec22f5b2eff60" arch="amd64" />
</component>
<component name="pmm" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-panel-migrator" />
</keypackages>
<requires>panel</requires>
</component>
<component name="xovi" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-xovi" />
</keypackages>
<requires>panel</requires>
</component>
<component name="imunify360" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-imunify360" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sslit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sslit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="letsencrypt" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-letsencrypt" />
</keypackages>
<requires>panel</requires>
</component>
<component name="repair-kit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-repair-kit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="composer" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-composer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="monitoring" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-monitoring" />
</keypackages>
<requires>panel</requires>
</component>
<component name="log-browser" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-log-browser" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ssh-terminal" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ssh-terminal" />
</keypackages>
<requires>panel</requires>
</component>
<component name="site-import" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-site-import" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sitejet" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-plesk-sitejet" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ntp-timesync" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ntp-timesync" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sophos" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sophos-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="mfa" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-mfa" />
</keypackages>
<requires>panel</requires>
</component>
<component name="configurations-troubleshooter" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-configurations-troubleshooter" />
</keypackages>
<requires>panel</requires>
</component>
<installation_types>
<type name="Recommended,Typical" description="Install typically used components. Recommended for general use.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
</type>
<type name="Full" description="Install all available components.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.1</component>
<component>php8.2</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
<component>resctrl</component>
<component>drweb</component>
<component>postgresql</component>
<component>spamassassin</component>
<component>ruby</component>
<component>gems-pre</component>
<component>nodejs</component>
<component>pmm</component>
<component>psa-firewall</component>
<component>watchdog</component>
<component>passenger</component>
<component>phpgroup</component>
<component>sophos</component>
</type>
</installation_types>
<component_groups>
<group name="hosting" description="Web hosting">
<component name="proftpd" />
<component name="webalizer" />
<component name="awstats" />
<component name="modsecurity" />
<component name="passenger" />
<component name="ruby" />
<component name="nodejs" />
<component name="gems-pre" />
<group name="apache_support" description="Apache">
<group type="radio" name="webservers" description="Apache versions">
<component name="apache" />
<component name="apache-sni" default="true" />
</group>
<component name="mod_fcgid" />
<component name="mod_perl" />
<component name="mod_python" />
</group>
<group name="php_comps" description="PHP interpreter versions">
<group type="radio" name="phpgroup" description="PHP interpreter versions">
<component name="php5" />
</group>
<component name="php8.4" />
<component name="php8.3" />
<component name="php8.2" />
<component name="php8.1" />
<component name="php8.0" />
<component name="php7.4" />
<component name="php7.3" />
<component name="php7.2" />
<component name="php7.1" />
<component name="php7.0" />
<component name="php5.6" />
<component name="php5.5" />
<component name="php5.4" />
<component name="php5.3" />
<component name="php5.2" />
</group>
<group name="nginx_comps" description="Nginx web server and reverse proxy server">
<component name="nginx" />
</group>
</group>
<group name="webmails" description="Webmail services">
<component name="horde" />
<component name="roundcube" default="true" />
</group>
<group name="mail" description="Mail hosting">
<group type="radio" name="mailservers" description="SMTP servers">
<component name="postfix" default="true" />
<component name="qmail" />
<component name="msmtp" />
</group>
<group type="radio" name="imapservers" description="IMAP/POP3 servers">
<component name="dovecot" default="true" />
<component name="courier" />
</group>
<component name="drweb" />
<component name="sophos" />
<component name="spamassassin" />
<component name="mailman" />
</group>
<group type="radio" name="mysqlgroup" description="MySQL server versions">
<component name="mysql-sys" default="true" />
</group>
<group name="extensions" description="Plesk extensions">
<component name="psa-firewall" />
<component name="watchdog" />
<component name="wp-toolkit" />
<component name="advisor" />
<component name="xovi" />
<component name="imunify360" />
<component name="sslit" />
<component name="letsencrypt" />
<component name="repair-kit" />
<component name="composer" />
<component name="monitoring" />
<component name="log-browser" />
<component name="ssh-terminal" />
<component name="site-import" />
<component name="sitejet" />
<component name="ntp-timesync" />
<component name="mfa" />
<component name="configurations-troubleshooter" />
</group>
</component_groups>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64">
<package name="plesk-libboost-1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="2204" buildtime="0" md5="a5365466a1ab4a4d6ff48184de747b93" arch="amd64" />
<package name="plesk-libboost-atomic1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-atomic1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="6740" buildtime="0" md5="952ee985685b021f066538b101e95fe9" arch="amd64" />
<package name="plesk-libboost-charconv1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-charconv1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="82462" buildtime="0" md5="ddf6a5d7e44e87dfc329f769d9b9b410" arch="amd64" />
<package name="plesk-libboost-chrono1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-chrono1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="16066" buildtime="0" md5="464e523c45b8df24c76eeec5148cc4bc" arch="amd64" />
<package name="plesk-libboost-context1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-context1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="4134" buildtime="0" md5="f8a4e1919740a45208ba3956e8b6e25c" arch="amd64" />
<package name="plesk-libboost-date-time1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-date-time1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3160" buildtime="0" md5="f06e0297a64c2eae0132beeb9db21c54" arch="amd64" />
<package name="plesk-libboost-filesystem1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-filesystem1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="74374" buildtime="0" md5="096d8aa46acc387f42bee22ab5a307db" arch="amd64" />
<package name="plesk-libboost-iostreams1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-iostreams1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="33404" buildtime="0" md5="ec98b9c456079f50cf3e8fded6547872" arch="amd64" />
<package name="plesk-libboost-locale1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-locale1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="320462" buildtime="0" md5="7cd59a147b151b8419ab95467bd37b90" arch="amd64" />
<package name="plesk-libboost-log1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-log1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="290942" buildtime="0" md5="efc96c5fae467d9132f3568291f8d747" arch="amd64" />
<package name="plesk-libboost-process1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-process1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="31868" buildtime="0" md5="150c8ecfc1bd23c4ab2c665ad4d47f72" arch="amd64" />
<package name="plesk-libboost-program-options1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-program-options1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="153736" buildtime="0" md5="d7edacb34e6070790775a184febed5ca" arch="amd64" />
<package name="plesk-libboost-random1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-random1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="15400" buildtime="0" md5="b4259a42ffa0e3a14b3ba35ea33424dc" arch="amd64" />
<package name="plesk-libboost-regex1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-regex1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="126542" buildtime="0" md5="b1edbf7063d27c15ffb8ca6fefef12c4" arch="amd64" />
<package name="plesk-libboost-serialization1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-serialization1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="90142" buildtime="0" md5="24ab64ea54361eae50e584f806afbef5" arch="amd64" />
<package name="plesk-libboost-system1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-system1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3136" buildtime="0" md5="3835e30dfc1b84719561dd47b7f2e9ed" arch="amd64" />
<package name="plesk-libboost-thread1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-thread1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="45848" buildtime="0" md5="423d7598c3650b066fac6268587d246a" arch="amd64" />
<package name="plesk-libpoco-1.14.2" version="1.14.2" release="ubuntu.24.04.251029.1512" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libpoco-1.14.2_1.14.2-ubuntu.24.04.251029.1512_amd64.deb" size="2986992" buildtime="0" md5="309a11644f033cb5fc10f8116ca5c519" arch="amd64" />
<package name="plesk-libstdc++14.3.0" version="14.3.0" release="ubuntu.24.04.250705.0905" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libstdc++14.3.0_14.3.0-ubuntu.24.04.250705.0905_amd64.deb" size="1017840" buildtime="0" md5="67f900133fbe02c0755de18d4bb53e22" arch="amd64" />
<package name="plesk-mysql-server" version="18.0.2" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-mysql-server_18.0.2-v.ubuntu.24.04+p18.0.61.0+t240426.1307_all.deb" size="1196" buildtime="0" md5="71537e7c58d0bddd35d8b9953328c349" arch="all" />
<package name="plesk-python3-regex" version="2022.1.18" release="v.ubuntu.24.04+p18.0.67.0+t241210.1818" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-python3-regex_2022.1.18-v.ubuntu.24.04+p18.0.67.0+t241210.1818_amd64.deb" size="376524" buildtime="0" md5="154ee13575db27aa66e624b1afd8d23c" arch="amd64" />
<package name="psa-pear" version="1.10.9" release="20191112.ubuntu.24.04.240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/psa-pear_1.10.9-20191112.ubuntu.24.04.240426.1307_all.deb" size="338164" buildtime="0" md5="d6432ac744bcacc5fed58cfc2de75eaa" arch="all" />
<package name="sw-tar" version="1.34" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/sw-tar_1.34-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="480148" buildtime="0" md5="336b551c10d21bf704f73b681d729368" arch="amd64" />
</thirdparty>
<extras extras_dir="extras-deb-Ubuntu-24.04-x86_64" persistent_repo="true" />
<force_remove_packages />
</build_1>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.73-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.73-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.73-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.73-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,255 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# check-broken-tz.sh writes single line json report into it with the following fields:
# - "stage": "timezonefix"
# - "level": "error"
# - "errtype": "failure"
# - "date": time of error occurance ("2024-07-24T06:59:43,127545441+0000")
# - "error": human readable error message
report_dpkg_configure_fail()
{
local pkgname="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=dpkgconfigurefailed' <<-EOL
Could not configure the packages ( $pkgname ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_get_tz_fail()
{
make_error_report 'stage=timezonefix' 'level=error' 'errtype=gettzfailed' <<-EOL
Could not get the system timezone. See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_set_tz_fail()
{
local tz="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=settzfailed' <<-EOL
Could not set the system timezone ( $tz ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
get_current_tz()
{
[ -L /etc/localtime ] || return 1
local tz
tz="$(readlink -m /etc/localtime)" || return 1
[ -f "$tz" ] || return 1
case "$tz" in
/usr/share/zoneinfo/*) ;;
*) return 1;;
esac
tz="${tz#/usr/share/zoneinfo/}"
[ -n "$tz" ] || return 1
echo -n "${tz}"
}
check_timezone_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
# PPP-65676: Plesk update fails on ubuntu if timezone is CET
if dpkg-query --showformat='${db:Status-Status}\n' --show 'tzdata' | grep -wq 'half-configured'; then
local origtz
origtz=$(get_current_tz)
if [ $? != 0 ]; then
report_get_tz_fail
return $RET_WARN
fi
if ! timedatectl set-timezone 'Etc/UTC'; then
timedatectl set-timezone "$origtz"
report_set_tz_fail 'Etc/UTC'
return $RET_WARN
fi
if ! dpkg --configure 'tzdata'; then
timedatectl set-timezone "$origtz"
report_dpkg_configure_fail 'tzdata'
return $RET_WARN
fi
if ! timedatectl set-timezone "$origtz"; then
report_set_tz_fail "$origtz"
return $RET_WARN
fi
fi
return 0
}
# ---
skip_checker_on_flag "Broken timezone check" "/tmp/plesk-installer-skip-check-broken-timezone.flag"
checker_main 'check_timezone' "$1"

View File

@@ -0,0 +1,542 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# disk_space_check.sh writes single line json report into it with the following fields:
# - "stage": "diskspacecheck"
# - "level": "error"
# - "errtype": "notenoughdiskspace"
# - "volume": volume with not enough diskspace (e.g. "/")
# - "required": required diskspace on the volume, human readable (e.g. "600 MB")
# - "available": available diskspace on the volume, human readable (e.g. "255 MB")
# - "needtofree": amount of diskspace which should be freed on the volume, human readable (e.g. "345 MB")
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message ("There is not enough disk space available in the / directory.")
# Required values below for Full installation are in MB. See 'du -cs -BM /*' and 'df -Pm'.
required_disk_space_cloudlinux7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4400 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_cloudlinux8()
{
case "$1" in
/opt) echo 1200 ;;
/usr) echo 4400 ;;
/var) echo 700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4100 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos8()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4500 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_virtuozzo7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_almalinux8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rocky8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rhel9()
{
case "$1" in
/opt) echo 500 ;;
/usr) echo 4000 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_almalinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_almalinux10()
{
required_disk_space_almalinux9 "$1"
}
required_disk_space_cloudlinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_debian10()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2300 ;;
/var) echo 1700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian11()
{
case "$1" in
/opt) echo 1500 ;;
/usr) echo 3100 ;;
/var) echo 1800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian12()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian13()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu18()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 1800 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu20()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2900 ;;
/var) echo 1600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu22()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 3900 ;;
/var) echo 1900 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu24()
{
case "$1" in
/opt) echo 3200 ;;
/usr) echo 1800 ;;
/var) echo 2400 ;;
/tmp) echo 100 ;;
esac
}
required_update_upgrade_disk_space()
{
case "$1" in
/opt) echo 100 ;;
/usr) echo 300 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
clean_tmp()
{
local volume="$1"
local path="/tmp"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'systemd-tmpfiles --clean --prefix $path'"
systemd-tmpfiles --clean --prefix "$path" 2>&1
}
clean_yum()
{
local volume="$1"
local path="/var/cache/yum"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'yum clean all'"
yum clean all 2>&1
# The command above doesn't clean untracked repos (missing in configuration), clean if left > 2 Mb
[ "`du -sm "$path" | awk '{ print $1 }'`" -gt 2 ] || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
clean_dnf()
{
local volume="$1"
local path="/var/cache/dnf"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'dnf clean all'"
dnf clean all 2>&1
}
clean_apt()
{
local volume="$1"
local path="/var/cache/apt"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'apt-get clean'"
apt-get clean 2>&1
}
clean_journal()
{
local volume="$1"
local path="/var/log/journal"
is_path_on_volume "$path" "$volume" || return 0
# Note that --rotate may cause more space to be freed, but may also cause more space to be used
echo "Cleaning $path via 'journalctl --vacuum-time 1d'"
journalctl --vacuum-time 1d 2>&1
}
clean_ext_packages()
{
local volume="$1"
local path="$PRODUCT_ROOT_D/var/modules-packages"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
# @param $1 target directory
mount_point()
{
df -Pm $1 | awk 'NR==2 { print $6 }'
}
# @param $1 target directory
available_disk_space()
{
df -Pm $1 | awk 'NR==2 { print $4 }'
}
is_path_on_volume()
{
local path="$1"
local volume="$2"
[ -d "$path" ] && [ "`mount_point "$path"`" = "$volume" ]
}
# @param $1 target directory
# @param $2 mode (install/upgrade/update)
req_disk_space()
{
if [ "$2" != "install" ]; then
required_update_upgrade_disk_space "$1"
return
fi
has_os_impl_function "required_disk_space" || {
echo "There are no requirements defined for $os_name$os_version." >&2
echo "Disk space check cannot be performed." >&2
exit $RET_WARN
}
call_os_impl_function "required_disk_space" "$1"
}
human_readable_size()
{
echo "$1" | awk '
function human(x) {
s = "MGTEPYZ";
while (x >= 1000 && length(s) > 1) {
x /= 1024; s = substr(s, 2);
}
# 0.05 below will make sure the value is rounded up
return sprintf("%.1f %sB", x + 0.05, substr(s, 1, 1));
}
{ print human($1); }'
}
# @param $1 target directory
# @param $2 required disk space
# @param $3 check only flag (don't emit errors)
check_available_disk_space()
{
local volume="$1"
local required="$2"
local check_only="${3:-}"
local available="$(available_disk_space "$volume")"
if [ "$available" -lt "$required" ]; then
local needtofree
needtofree="`human_readable_size $((required - available))`"
[ -n "$check_only" ] ||
make_error_report 'stage=diskspacecheck' 'level=error' 'errtype=notenoughdiskspace' \
"volume=$volume" "required=$required MB" "available=$available MB" "needtofree=$needtofree" \
<<-EOL
There is not enough disk space available in the $1 directory.
You need to free up $needtofree.
EOL
return "$RET_FATAL"
fi
}
# @param $1 target directory
# @param $2 required disk space
clean_and_check_available_disk_space()
{
if [ -n "$PLESK_INSTALLER_FORCE_CLEAN_DISK_SPACE" ] || ! check_available_disk_space "$@" --check-only; then
clean_disk_space "$1"
check_available_disk_space "$@"
fi
}
# Cleans up disk space on the volume
clean_disk_space()
{
local volume="$1"
for cleanup_func in clean_tmp clean_yum clean_dnf clean_apt clean_journal clean_ext_packages; do
"$cleanup_func" "$volume"
done
}
# @param $1 mode (install/upgrade/update)
clean_and_check_disk_space()
{
local mode="$1"
local shared=0
for target_directory in /opt /usr /var /tmp; do
local required=$(req_disk_space "$target_directory" "$mode")
[ -n "$required" ] || return "$RET_WARN"
if is_path_on_volume "$target_directory" "/"; then
shared="$((shared + required))"
else
clean_and_check_available_disk_space "$target_directory" "$required" || return $?
fi
done
clean_and_check_available_disk_space "/" "$shared" || return $?
}
checker_main 'clean_and_check_disk_space' "$1"

View File

@@ -0,0 +1,111 @@
<?php
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
// vim: set et :
require_once('sdk.php');
define('TARGET_VERSION', '18.0.73');
define('RESULT_NETWORK_PROBLEM', 1);
define('RESULT_ERROR', 2);
define('RESULT_LICENSE_PROBLEM', 3);
define('RESULT_LICENSE_OK', 4);
function finish($rc, $sure = true)
{
if ($rc !== 0) {
fwrite(STDERR, "\n");
if ($sure) {
fwrite(STDERR, "Your license key is not compatible with Plesk Obsidian.\n");
} else {
fwrite(STDERR, "Your license key may not be compatible with Plesk Obsidian.\n");
}
fwrite(STDERR, "You need to upgrade your license before updating Plesk.\n");
fwrite(STDERR, "For details, refer to the KB https://support.plesk.com/hc/en-us/articles/360023612594\n");
}
exit($rc);
}
$skipFlag = PRODUCT_VAR . DIRECTORY_SEPARATOR . "plesk-installer-skip-license-key-check.flag";
if (file_exists($skipFlag)) {
fwrite(STDERR, "Plesk license key upgrade availability check was skipped due to a flag file.\n");
exit(0);
}
if (!function_exists('of_get_key_by_product') || !function_exists('of_get_versions')) {
fwrite(STDERR, "Plesk license key upgrade availability check should be run on sw-engine only.\n");
exit(2);
}
foreach (["plesk-unified", "plesk-unix", "plesk-win"] as $prod) {
$key = of_get_key_by_product($prod);
if ($key !== false) {
break;
}
}
if ($key === false) {
fwrite(STDERR, "No Plesk license key was found. License upgrade check is skipped.\n");
finish(0);
}
$targetVersion = TARGET_VERSION;
$vers = of_get_versions($key); /* plesk >= 10.0.0 */
if (!is_array($vers)) {
$vers = [$vers];
}
$match = false;
foreach ($vers as $ver) {
if (!is_array($ver)) {
$match |= strtok($ver, ".") == strtok($targetVersion, ".");
} else {
$match |= ("any" == $ver[0] || version_compare($ver[0], $targetVersion) <= 0) &&
("any" == $ver[1] || version_compare($ver[1], $targetVersion) >= 0);
}
}
if ($match) {
fwrite(STDERR, "You do not need to upgrade the current license key.\n");
fwrite(STDOUT, "License upgrade check to $targetVersion can be skipped.\n");
fwrite(STDOUT, "Plesk versions compatible with the license key: " . preg_replace('/\n\s*/', '', var_export($vers, true)) . "\n");
finish(0);
}
if (!function_exists('ka_is_key_upgrade_available')) {
// Plesk 17.0
fwrite(STDERR, "Cannot check whether Plesk license key upgrade is available.\n");
finish(1, false);
}
$si = getServerInfo();
$result = ka_is_key_upgrade_available($prod, $targetVersion, $si);
$isConfused = false;
switch ($result['code']) {
case RESULT_LICENSE_OK:
fwrite(STDERR, "The licensing server accepted the key upgrade request.\n");
fwrite(STDERR, "License upgrade to $targetVersion is available.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(0);
case RESULT_NETWORK_PROBLEM:
fwrite(STDERR, "Unable to connect to the licensing server to check if license upgrade is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
finish(2, false);
case RESULT_LICENSE_PROBLEM:
fwrite(STDERR, "Warning: Your Plesk license key cannot be upgraded.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(2);
default:
$isConfused = true;
// fall-through
case RESULT_ERROR:
// This includes "Software Update Service (SUS) is not found for the given license key" case, but also many others.
fwrite(STDERR, "Failed to check whether a new license key is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
if ($isConfused) {
fwrite(STDERR, "Error code: {$result['code']}\n");
}
finish(2, !$isConfused);
}

View File

@@ -0,0 +1,224 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
check_package_manager_deb_based()
{
local output=
output="`dpkg --audit 2>&1`" || output="$output"$'\n'"'dpkg --audit' finished with error code $?."
if [ -n "$output" ]; then
make_error_report 'stage=packagemanagercheck' 'level=error' 'errtype=brokenpackages' <<-EOL
The system package manager reports the following problems:
$output
To continue with the installation, you need to resolve these issues
using the procedure below:
1. Make sure you have a full server snapshot. Although the
following steps are usually safe, they can still cause
data loss or irreversible changes.
2. Run 'dpkg --configure -a'. This command can fix some of the
issues. However, it may fail. Regardless if it fails or not,
proceed with the following steps.
3. Run 'PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK=1 plesk installer update --skip-cleanup'.
Instead of 'update', you may need to use the command you used
previously (for example, 'upgrade' or 'install').
4. The next step depends on the outcome of the previous one:
- If step 3 was completed with the "You already have the latest
version of product(s) and all the selected components installed.
Installation will not continue." message,
run 'plesk repair installation'.
- If step 3 failed, run 'dpkg --audit'. This command can show you
packages that need to be reinstalled. To reinstall them, run
'apt-get install --reinstall <packages>'.
5. Run 'plesk installer update' to revert temporary changes and
validate that the issues are resolved. If the command fails or
triggers this check again, contact Plesk support.
For more information, see
https://support.plesk.com/hc/en-us/articles/12871173047447-Plesk-update-on-Debian-Ubuntu-fails-dpkg-was-interrupted-you-must-manually-run-dpkg-configure-a-to-correct-the-problem
EOL
return "$RET_FATAL"
fi
}
check_package_manager_debian()
{
check_package_manager_deb_based
}
check_package_manager_ubuntu()
{
check_package_manager_deb_based
}
skip_checker_on_env "Package manager check" "$PLESK_INSTALLER_SKIP_PACKAGE_MANAGER_CHECK"
skip_checker_on_flag "Package manager check" "/tmp/plesk-installer-skip-package-manager-check.flag"
checker_main 'check_package_manager' "$@"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,38 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo $*
exit 1
}
[ -n "$1" ] || die "Usage: $0 php_script [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
php_bin=
lookup()
{
[ -z "$php_bin" ] || return
local paths="$1"
local name="$2"
for path in $paths; do
if [ -x "$path/$name" ]; then
php_bin="$path/$name"
break
fi
done
}
lookup "/usr/local/psa/admin/bin /opt/psa/admin/bin" "php"
lookup "/usr/local/psa/bin /opt/psa/bin" "sw-engine-pleskrun"
[ -n "$php_bin" ] || \
die "Unable to locate the sw-engine PHP interpreter to execute the script. Make sure that Parallels Plesk Panel is installed on this server."
exec "${php_bin}" "$@"

View File

@@ -0,0 +1,3 @@
INFO: Installed Plesk version/build: 18.0.73 Ubuntu 24.04 1800251117.15...
INFO: You have already installed the latest version Plesk 18.0.73. Tool must be launched prior to upgrade to Plesk 18.0.73 for the purpose of getting a report on potential problems with the upgrade.

View File

@@ -0,0 +1,30 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
die()
{
echo "$*"
exit 1
}
[ -f "$1" ] || die "Usage: $0 PEX [args...]"
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
find_python_bin()
{
local bin
for bin in "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3" "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2"; do
[ -x "$bin" ] || continue
python_bin="$bin"
return 0
done
return 1
}
find_python_bin ||
die "Unable to locate Python interpreter to execute the script."
exec "$python_bin" "$@"

View File

@@ -0,0 +1,782 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# repository_check.sh writes single line json report into it with the following fields:
# - "stage": "repositorycheck"
# - "level": "error"
# - "errtype" is one of the following:
# * "reponotcached" - repository is not cached (mostly due to unavailability).
# * "reponotenabled" - required repository is not enabled.
# * "reponotsupported" - unsupported repository is enabled.
# * "configmanagernotinstalled" - dnf config-manager is disabled.
# - "repo": repository name.
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message.
report_no_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotenabled' "repo=$repo" <<-EOL
Plesk installation requires '$repo' OS repository to be enabled.
Make sure it is available and enabled, then try again.
EOL
}
report_no_repo_cache()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotcached' "repo=$repo" <<-EOL
Unable to create $package_manager cache for '$repo' OS repository.
Make sure the repository is available, otherwise either disable it or fix its configuration, then try again.
EOL
}
report_unsupported_repo()
{
local repo="$1"
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=reponotsupported' "repo=$repo" <<-EOL
Plesk installation doesn't support '$repo' OS repository.
Make sure it is disabled, then try again.
EOL
}
report_rh_no_config_manager()
{
local target
case "$package_manager" in
yum)
target="yum-utils package"
;;
dnf)
target="config-manager dnf plugin"
;;
esac
make_error_report 'stage=repositorycheck' 'level=error' 'errtype=configmanagernotinstalled' <<-EOL
Failed to install $target.
Make sure repositories configuration of $package_manager package manager is correct
(use '$package_manager repolist --verbose' to get its actual state), then try again.
EOL
}
check_rh_broken_repos()
{
local rh_enabled_repos rh_available_repos
# 1. `yum repolist` and `dnf repolist` list all repos
# which were enabled before last cache creation
# even if cache for them was not created.
# If some repo is misconfigured and cache was created with `skip_if_unavailable=1`
# then such repo will be listed anyway despite on cache state.
# If some repo was enabled after last cache creation
# then `repolist --cacheonly` will fail.
# 2. `yum repolist --verbose` and `dnf repoinfo` list only repos
# which were successfully cached before.
# These commands fail if at least one repo is not available
# and the 'skip_if_unavailable' flag is not set.
case "$package_manager" in
yum)
rh_enabled_repos="$(
{
yum repolist enabled --cacheonly -q 2>/dev/null \
|| yum repolist enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^\*\?!\?\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$(
yum repolist enabled --verbose --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's/^Repo-id\s*:\s*\([^/[:space:]]\+\).*/\1/p'
)" || return $RET_FATAL
;;
dnf)
rh_enabled_repos="$(
{
dnf repolist --enabled --cacheonly -q 2>/dev/null \
|| dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(\S\+\).*/\1/p'
)" || return $RET_FATAL
rh_available_repos="$( \
dnf repoinfo --enabled --cacheonly -q --setopt='*.skip_if_unavailable=1' \
| sed -n -e 's|^Repo-id\s*:\s*\(\S\+\)\s*$|\1|p'
)" || return $RET_FATAL
;;
esac
local rh_enabled_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_enabled_repos" | sort > "$rh_enabled_repos_f"
local rh_available_repos_f="$(mktemp /tmp/plesk-installer.preupgrade_checker.XXXXXX)"
echo "$rh_available_repos" | sort > "$rh_available_repos_f"
local repo rc=0
for repo in $(comm -23 "$rh_enabled_repos_f" "$rh_available_repos_f"); do
report_no_repo_cache "$repo"
rc=$RET_WARN
done
rm -f "$rh_enabled_repos_f" "$rh_available_repos_f"
return $rc
}
has_rh_enabled_repo()
{
local repo="$1"
# Try to get list of repos from cache first.
# If some repo was enabled after last cache creation
# or some repo is unavailable the query from cache will fail.
# Try to fetch actual metadata in this case.
case "$package_manager" in
yum)
# Repo-id may end with OS version and/or architecture
# if baseurl of the repo refers to $releasever and/or $basearch variables
# eg 'epel/7/x86_64', 'epel/7', 'epel/x86_64'
{
yum repolist enabled --verbose --cacheonly -q 2>/dev/null \
|| yum repolist enabled --verbose -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo(/.+)?\s*$"
;;
dnf)
# note: --noplugins may cause failure and empty output on RedHat
{
dnf repoinfo --enabled --cacheonly -q 2>/dev/null \
|| dnf repoinfo --enabled -q --setopt='*.skip_if_unavailable=1'
} | grep -E -q "^Repo-id\s*: $repo\s*$"
;;
esac
}
has_rh_config_manager()
{
case "$package_manager" in
yum) yum-config-manager --help >/dev/null 2>&1 ;;
dnf) dnf config-manager --help >/dev/null 2>&1 ;;
esac
}
install_rh_config_manager()
{
case "$package_manager" in
yum) yum install --disablerepo 'PLESK_*' -q -y 'yum-utils' --setopt='*.skip_if_unavailable=1' ;;
dnf) dnf install --disablerepo 'PLESK_*' -q -y 'dnf-command(config-manager)' --setopt='*.skip_if_unavailable=1' ;;
esac
}
check_rh_config_manager()
{
if ! has_rh_config_manager && ! install_rh_config_manager; then
report_rh_no_config_manager
return $RET_FATAL
fi
}
enable_rh_repo()
{
case "$package_manager" in
yum) yum-config-manager --enable "$@" && has_rh_enabled_repo "$@" ;;
dnf) dnf config-manager --set-enabled "$@" && has_rh_enabled_repo "$@" ;;
esac
}
enable_sm_repo()
{
! has_rh_enabled_repo "$@" || return 0
subscription-manager repos --enable "$@" || return $?
# On RedHat 8 above command may return 0 on failure with "Repositories disabled by configuration."
has_rh_enabled_repo "$@"
}
check_epel()
{
! enable_rh_repo "epel" || return 0
# try to install epel-release from centos/extras or plesk/thirdparty repo
# and then try to update it to last version shipped by epel itself
# to make package upgradable with pum
"$package_manager" install --disablerepo 'PLESK_*' -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null \
|| "$package_manager" install --disablerepo='*' --enablerepo 'PLESK_18_*-thirdparty' -q -y 'epel-release' \
|| "$package_manager" install -q -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$os_version.noarch.rpm" \
&& "$package_manager" update -q -y 'epel-release' --setopt='*.skip_if_unavailable=1' 2>/dev/null
# Ensure any other EPEL repos have cache for subsequent check for broken repos (AL9)
local epel_repos="$(
[ "$package_manager" != "dnf" ] || {
dnf repolist --enabled --cacheonly -q 2>/dev/null ||
dnf repolist --enabled -q --setopt='*.skip_if_unavailable=1'
} | sed -n -e '1d' -e 's/^!\?\(epel\S\+\).*/\1/p'
)"
for repo in $epel_repos; do
"$package_manager" makecache --repo "$repo" -q
done
! has_rh_enabled_repo "epel" || return 0
report_no_repo "epel"
return $RET_FATAL
}
check_codeready()
{
local repo_rhel="codeready-builder-for-rhel-$os_version-$os_arch-rpms"
local repo_rhui="codeready-builder-for-rhel-$os_version-rhui-rpms"
local repo_rhui_alt="codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
local repo_rhui_alt2="rhui-codeready-builder-for-rhel-$os_version-$os_arch-rhui-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
! enable_rh_repo "$repo_rhui_alt" || return 0
! enable_rh_repo "$repo_rhui_alt2" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_optional()
{
local repo_rhel="rhel-$os_version-server-optional-rpms"
local repo_rhui="rhel-$os_version-server-rhui-optional-rpms"
! enable_sm_repo "$repo_rhel" || return 0
! enable_rh_repo "$repo_rhui" || return 0
report_no_repo "$repo_rhel"
return $RET_FATAL
}
check_repos_rhel9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_codeready || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux9()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# powertools is renamed to crb since AlmaLinux 9
! enable_rh_repo "crb" || return $rc
report_no_repo "crb"
return $RET_FATAL
}
check_repos_cloudlinux9()
{
check_repos_almalinux9 "$@"
}
check_repos_almalinux10()
{
check_repos_almalinux9 "$@"
}
check_repos_centos8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are lowercased since 8.3
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_cloudlinux8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
# names of repos are changed since 8.5
! enable_rh_repo "powertools" || return $rc
! enable_rh_repo "cloudlinux-PowerTools" || return $rc
report_no_repo "powertools"
return $RET_FATAL
}
check_repos_rhel8()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
[ "$1" = "install" ] || return $rc
check_codeready || rc="$(( $rc | $? ))"
return $rc
}
check_repos_almalinux8()
{
check_repos_centos8 "$@"
}
check_repos_rocky8()
{
check_repos_centos8 "$@"
}
check_repos_rhel7()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_optional || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
check_repos_centos7_based()
{
check_rh_config_manager || return $?
local rc=0
check_epel || rc="$(( $rc | $? ))"
check_rh_broken_repos || rc="$(( $rc | $? ))"
return $rc
}
sed_escape()
{
# Note: this is not a full implementation
echo -n "$1" | sed -e 's|\.|\\.|g'
}
switch_eol_centos_repos()
{
local old_mirrorlist_host="mirrorlist.centos.org"
local old_host="mirror.centos.org"
local new_host="vault.centos.org"
grep -qFw "$old_host" /etc/yum.repos.d/CentOS-*.repo 2>/dev/null || return 0
local backup="`mktemp -d "/tmp/yum.repos.d-$(date --rfc-3339=date)-XXXXXX"`"
! [ -d "$backup" ] || cp -raT /etc/yum.repos.d "$backup" || :
sed -i \
-e "s|^\s*\(mirrorlist\b[^/]*//`sed_escape "$old_mirrorlist_host"`/.*\)$|#\1|" \
-e "s|^#*\s*baseurl\b\([^/]*\)//`sed_escape "$old_host"`/\(.*\)$|baseurl\1//$new_host/\2|" \
/etc/yum.repos.d/CentOS-*.repo
echo "YUM package manager repositories were backed up to '$backup' and switched from $old_host to $new_host ." >&2
}
check_repos_centos7()
{
switch_eol_centos_repos
check_repos_centos7_based "$@"
}
check_repos_cloudlinux7()
{
check_repos_centos7_based "$@"
}
check_repos_virtuozzo7()
{
check_repos_centos7_based "$@"
}
find_apt_repo()
{
local repo="$1"
local dist_tag=
! [ "$os_name" = "ubuntu" ] || dist_tag="a"
! [ "$os_name" = "debian" ] || dist_tag="n"
if [ -z "$_apt_cache_policy" ]; then
# extract info of each available release as a string which consists of 'tag=value'
# filter out releases with priority less or equal to 100
_apt_cache_policy="$(
apt-cache policy \
| grep "b=$pkg_arch" \
| grep -Eo '([a-z]=[^,]+,?)*' \
)"
fi
local l="$(echo "$repo" | cut -f1 -d'/')"
local d="$(echo "$repo" | cut -f2 -d'/')"
local c="$(echo "$repo" | cut -f3 -d'/')"
# try to find releases by distribution and component
echo "$_apt_cache_policy" \
| grep -E "(^|,)l=$l(,|$)" \
| grep -E "(^|,)$dist_tag=$d(,|$)" \
| grep -E "(^|,)c=$c(,|$)" \
| while IFS="$(printf '\n')" read rel && [ -n "$rel" ]; do
l="$(echo "$rel" | grep -Eo "(^|,)l=[^,]+" | cut -f2 -d"=")"
d="$(echo "$rel" | grep -Eo "(^|,)$dist_tag=[^,]+" | cut -f2 -d"=")"
c="$(echo "$rel" | grep -Eo "(^|,)c=[^,]+" | cut -f2 -d"=")"
echo "$l/$d/$c"
done
}
apt_install_packages()
{
DEBIAN_FRONTEND=noninteractive LANG=C PATH=/usr/sbin:/usr/bin:/sbin:/bin \
apt-get -qq --assume-yes -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold -o APT::Install-Recommends=no \
install "$@"
}
# Takes a list of suites and disables them in APT sources.
# Multiline deb822 format is supported.
disable_apt_suites_deb822()
{
local python3=/usr/bin/python3
"$python3" -c 'import aptsources.sourceslist' 2>/dev/null ||
apt_install_packages python3-apt
"$python3" -c '
import sys
from aptsources.sourceslist import SourcesList
suites_to_disable=set(sys.argv[1:])
sources_list = SourcesList(deb822=True)
sources_changed = False
for src in sources_list:
if src.invalid:
continue
suites = getattr(src, "suites", ())
if not suites:
continue
new_suites = [s for s in suites if s not in suites_to_disable]
if len(new_suites) != len(suites):
sources_changed = True
if len(new_suites) == 0:
src.disabled = True
else:
src.suites = new_suites
if sources_changed:
sources_list.save()
' "$@"
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
}
disable_apt_repo()
{
local repos_to_disable="$(find_apt_repo "$1" | cut -d '/' -f 2,3 | sort | uniq)"
if [ -z "$repos_to_disable" ]; then
return 0
fi
echo "$repos_to_disable" \
| while IFS= read -r repo_to_disable && [ -n "$repo_to_disable" ]; do
local distrib=${repo_to_disable%%/*}
local component=${repo_to_disable##*/}
find /etc/apt -name "*.list" -exec \
sed -i -e "/^\s*#/! s/.*\s$distrib\s\+$component\b/# &/" {} +
done
# Since we have changed the repositories list, we should re-read _apt_cache_policy on a next call
# of the find_apt_repo function. Hence we have to reset the value of the variable
_apt_cache_policy=""
return 0
}
check_required_apt_repo()
{
local repo="$1"
[ -z "$(find_apt_repo "$repo")" ] || return 0
report_no_repo "$repo"
return $RET_FATAL
}
check_unsupported_apt_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Ubuntu/[^,]+/[^,]+" | grep -v "Ubuntu/$os_codename.*/.*"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_ubuntu18()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename-updates/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_repos_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
check_required_apt_repo "Ubuntu/$os_codename/main" || rc="$(( $rc | $? ))"
check_required_apt_repo "Ubuntu/$os_codename/universe" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_ubuntu "$mode" || rc="$(( $rc | $? ))"
return $rc
}
check_unsupported_apt_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local repos="$(
find_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
find_apt_repo "Debian[^,]*/[^,]+/[^,]+" | grep -v "Debian.*/$os_codename.*/.*"
find_apt_repo "Ubuntu/[^,]+/[^,]+"
)"
[ -n "$repos" ] || return 0
echo "$repos" | while IFS="$(printf '\n')" read repo; do
report_unsupported_repo "$repo"
done
[ "$mode" = "install" ] || return $RET_WARN
return $RET_FATAL
}
check_repos_debian()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
local rc=0
if [ "$os_name" = "debian" -a "$os_version" -ge 12 ]; then
disable_apt_suites_deb822 "$os_codename-backports"
else
disable_apt_repo "Debian Backports/$os_codename-backports/[^,]+"
fi
check_required_apt_repo "Debian/$os_codename/main" || rc="$(( $rc | $? ))"
check_unsupported_apt_repos_debian "$mode" || rc="$(( $rc | $? ))"
return $rc
}
# ---
skip_checker_on_flag "Repository check" "/tmp/plesk-installer-skip-repository-check.flag"
checker_main 'check_repos' "$1"

View File

@@ -0,0 +1,7 @@
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ "X${PLESK_INSTALLER_DEBUG}" = "X" ] || set -x
[ "X${PLESK_INSTALLER_STRICT_MODE}" = "X" ] || set -e
exec "$@"

View File

@@ -0,0 +1,927 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<build_1 confver="3.11" os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_release_name="noble" os_arch="x86_64" environment="" build_dir="dist-deb-Ubuntu-24.04-x86_64" send_feedback="true" uninstall_support="yes" gpgcheck="yes" apt_source=" noble all" persistent_apt_source=" noble extras">
<exact_required_autoinstaller version="3.73.0" binary_directory="Installer/3.73.0" />
<required_autoinstaller version="3.18.12" binary_directory="Parallels_Installer" />
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" sequence-order="-2" stage="execute" exec-cmd="touch /var/lock/plesk-report-update.flag; :" />
<action sequence="prep" sequence-order="-1" stage="execute" exec-cmd="touch /tmp/pp-bootstrapper-mode.flag; touch /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="prep" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; rm -f /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="pkgs" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="rollback" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; touch /var/lock/parallels-panel-upgrade-failure.flag; :" />
<action sequence="post" sequence-order="1" stage="commit" exec-cmd="rm -f /tmp/pp-bootstrapper-mode.flag; rm -f /var/lock/parallels-panel-maintenance-mode.flag; :" />
<action sequence="post" sequence-order="9990" exec-cmd="test ! -x /opt/psa/admin/sbin/packagemng || /opt/psa/admin/sbin/packagemng --set-dirty-flag" />
<action sequence="post" sequence-order="9991" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh perform-deferred-actions" />
<action sequence="post" sequence-order="9998" exec-cmd="/opt/psa/admin/sbin/update_history" />
</bootstrapper>
<examine name="Create swap space if needed" scope="pre_install" script="examiners/tune_memory_swap.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_install" script="examiners/repository_check.sh" options="install" />
<examine name="Enabled repositories check" scope="pre_upgrade" script="examiners/repository_check.sh" options="upgrade" />
<examine name="Enabled repositories check" scope="pre_update" script="examiners/repository_check.sh" options="update" />
<examine name="Package manager check" scope="pre_any" script="examiners/package_manager_check.sh" />
<examine name="Check and fix broken timezone" scope="pre_upgrade" script="examiners/check_broken_timezone.sh" options="upgrade" />
<examine name="Check and fix broken timezone" scope="pre_update" script="examiners/check_broken_timezone.sh" options="update" />
<examine name="Available disk space check" scope="pre_install" script="examiners/disk_space_check.sh" options="install" />
<examine name="Available disk space check" scope="pre_upgrade" script="examiners/disk_space_check.sh" options="upgrade" />
<examine name="Available disk space check" scope="pre_update" script="examiners/disk_space_check.sh" options="update" />
<examine name="Installation is finished" scope="post_install" script="examiners/congratulations.sh" options="install" />
<examine name="Upgrade is finished" scope="post_upgrade" script="examiners/congratulations.sh" options="upgrade" />
<examine name="Prepare result notification" scope="pre_any" script="examiners/sh_cmd.sh" options="touch /var/lock/plesk-report-update.flag" always="true" />
<examine name="Installation result notification" scope="post_install" script="/report-update" launcher="examiners/py_launcher.sh" options="--op install --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.5" always="true" />
<examine name="Upgrade result notification" scope="post_upgrade" script="/report-update" launcher="examiners/py_launcher.sh" options="--op upgrade --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.5 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Update result notification" scope="post_update" script="/report-update" launcher="examiners/py_launcher.sh" options="--op update --rc {RC} --start-flag /var/lock/plesk-report-update.flag --to=18.0.73.5 --from={FROM_RELEASE_VERSION}" always="true" />
<examine name="Store installation info" scope="post_install" script="examiners/save-installation-info.php" launcher="examiners/php_launcher.sh" options="--save -mode {WORK_MODE} -preset {PRESET} -arguments {ARGUMENTS}" always="true" />
<gpg_public_key>-----BEGIN PGP PUBLIC KEY BLOCK-----&#x0A;&#x0A;mQGNBGfIt/cBDADGVazaP3jWndhBaSljtWGtGqrRjNVnsu5YPtOsmOgQ0x7VZQft&#x0A;C/LpT5QnOVip5DBfAUBbxLzZ0C6/YP4+7yJRcAbecuFEwln02AeiE7tzQu8P8cvC&#x0A;V4VTTKcdWzEhKMaoSS1tiIKGVGPuQcYwAvhY5pcrFgMypYOOsLjZtR0oOrmqpMlC&#x0A;x2JMmD6gwGONzNv3EungSV8QVE7sgyttmuCUR2QlbCJQjNWpkgvstNxXRvWiuvrK&#x0A;gGNVdd14r5juOv3PA2TwWsEFUR8hfK7eqtDYo8BS9HigUkjI35B/CWxi55mgAXDq&#x0A;Xdwtc79dWGvnCruFmTVp6W3kTEwPXC0SphHAqE4r8+HoKX3fMXb7oddqwYXUCOuS&#x0A;z7xan1KctOe/c5Y9EbERjBLdr4sJrOkJv91PBuL7Scz33o7lHKCXrvuVQmLhRvT1&#x0A;rG2D6/Ya/WaFFWI8z8MqINZgMtwzmcow/xapj8c6e1lgOblQ0j1qiiptQTuIoC49&#x0A;JgZTFr3A6mcYOrEAEQEAAbQbUGxlc2sgVGVhbSA8aW5mb0BwbGVzay5jb20+iQHO&#x0A;BBMBCgA4FiEEbBkTJQiO2DphjsDC6SmQRc5VDlcFAmfIt/cCGwMFCwkIBwIGFQoJ&#x0A;CAsCBBYCAwECHgECF4AACgkQ6SmQRc5VDld7pwv9FrqzISuXHelFotpDXcqPqcWQ&#x0A;W97mi4dkyo9dY+UBFXqprPaC9+mM9HW7a+lZSgWdxc+CY2MrbcIXfdnaJmJWJGqc&#x0A;dvW122hjQRe7ClrwRAL06HDj5yhMHqhFPUbb8a+PoKb1d8vRQHHrLpUhcpwhsLr5&#x0A;aZFZop3NKN3ktPQiqoMPAHBuG4Aag6puG9BZS4jBvTJXvD9JAd7wQkxvPW/BJvBK&#x0A;ILlOrs/6UTdgIDNv8qlUt77vS1s6RpGVJXRhjj9J1f6Lfg2xJZMO0fLqOxgUjSrG&#x0A;jV1r6tnS6pxi0onXJsSmMEli4wsZpnotr35Vwu9Eekb6KTq5K05YJxnqi6G2qFY7&#x0A;nRpXSvfjYJ+MDP3a3fhryqfFd6lQdnuNv4XMBRnwr6VJNzsRg/xkYlPkDZ2dbXVl&#x0A;AwUTIX6Uw6F8ToUE8v/KGNHEiLycCv2Szk/nLawr3aLCfijgxTaP+RzUUb44ex/k&#x0A;nm6at9hCZbNknBGcMPXb6Y6MTSOQKhmpR4n+a4KluQGNBGfIt/cBDACtcVnLn1ye&#x0A;JFEhPja0IJE4AxmVLGGWHKLBLGqyoONwAi9LA/+kfTL0MhhM4Ib8dmg4N7HfTROd&#x0A;HvhjlsRLnqBoTuPyz8Jh1oxkmM3gYGAR10GulqNNXLWNVdqJjtfRKLGZr5MhsCdb&#x0A;i7tKA42/hWqqKVmCGEkc5IOl0kd8qvCPM/vqFvHYBxF5Ov5aUhSTwQBVbrcsU1Qc&#x0A;K491VjCk1Fw1BpV3sj0pYs2MPaR0k3A3pMLG6oMI900wt/wiZMjNSyFCxhEYFrLR&#x0A;t7qkuLcN+LZ94USiowPP04QxaDj5mFnQ+O0n4UAKRJ9/uHGbhCFuej1/DkB9urP0&#x0A;SGbte51v2KisuWG/nBkg119gQeXKLIGNC5aE2TTQBTaEBL09teDeQMg8TbQlu6v/&#x0A;AIFpgrwckmvAk6afaWpAZ0GTNZ0DQL1wD6m8E8T4JFcVIQ+C1IzKu6OE7KKMzyjg&#x0A;crI9HMLpGSEOzRfR334nSYsWFS88XW6msltMNWn3jNSLOQ+1Xf+RN3cAEQEAAYkB&#x0A;tQQYAQoAIBYhBGwZEyUIjtg6YY7AwukpkEXOVQ5XBQJnyLf3AhsMAAoJEOkpkEXO&#x0A;VQ5XoooL91q50qxg/09vV1GldlFBF1eFEUsSVwOYoGKtsRzebWEdGc8Ze4Cks5fq&#x0A;CQipKjPC1kmShocshFBYKDRChiXk+b/djK0U1aEaRZYP/ro953yfXVnV68WeoiJ4&#x0A;EIH9qXMzDcMn58fVEvz9EYyk8b3VcBru+0TgCvWrNVJBd7DF8YJXs2rSAfhu5Sdf&#x0A;P4uL9hhhF1TWPJjFG3L4gW8Ah9vgmaU9uQhIP3e3ANWxOtEhjhnnO8noJCxELKeS&#x0A;tTve7EYpscuixfOXPwmY3zJATXLt/+QJAcnGasFcTkw/XFvGOOZJ/7mx+GUhD23D&#x0A;AjsA3ozjL3FLS/v7A4rYEUc/dClX3lMKwEK7ZVNtmtt1WsbuHX/Py/R5XhyA3V1W&#x0A;JOwV1Mgnmu8BS62JcWY6oB0mhc3uGd6Tgs1ZkeisnBsi0Oi4YQ8Ms0v1NZHXgwtL&#x0A;JbRkcLFAL8rErnC0728220B+2Aik4DHZZI0M7Fre7QPWiU9a1R7AUCxsgQfEum5m&#x0A;VNnMRY8n&#x0A;=Hv0N&#x0A;-----END PGP PUBLIC KEY BLOCK-----</gpg_public_key>
<product id="plesk">
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" upgrade_allowed_from="17.0.17" />
</product>
<ext_catalog url="https://ext.plesk.com" />
<component name="panel" description="Plesk" classes="vendor=parallels,patched,aspect=panel" deny_implicit_removal="true">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install BASE" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_awstats_configure" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install psa-vhost" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install BASE" sequence-order="100" />
<action sequence="prep" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="pkgs" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="rollback" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-failure-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-failure-notification.php" />
<action sequence="post" critical="false" sequence-order="9999" stage="commit" exec-cmd="test ! -f /opt/psa/admin/plib/scripts/update-success-notification.php || /opt/psa/admin/bin/php /opt/psa/admin/plib/scripts/update-success-notification.php" />
</bootstrapper>
<examine name="Plesk license key availability check" scope="pre_upgrade" script="examiners/license_key_check.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<examine name="Plesk pre-upgrade check" scope="pre_upgrade" script="examiners/panel_preupgrade_checker.php" launcher="examiners/php_launcher.sh" options="&apos;&apos;" />
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
<keypackage name="plesk-web-hosting" />
</keypackages>
<keypackages>
<keypackage name="plesk-core" />
<keypackage name="psa" />
</keypackages>
<requires>mysqlgroup</requires>
<requires>l10n</requires>
<requires>proftpd</requires>
<requires>webservers</requires>
<package name="libapache2-mod-aclr2-psa" version="14081815" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/nginxSupport/libapache2-mod-aclr2-psa_14081815-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="7564" buildtime="0" md5="a1f0837e0b7cec750c2049137f2502ae" arch="amd64" />
<package name="libapache2-mod-sysenv-psa" version="0.2" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/sysenv/libapache2-mod-sysenv-psa_0.2-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3808" buildtime="0" md5="edd926a1e1b7e11f489b54c70f0bca0c" arch="amd64" />
<package name="libaps" version="1.0.17" release="ubuntu.24.04.250902.0711" file="engine/libaps_1.0.17-ubuntu.24.04.250902.0711_amd64.deb" size="1305310" buildtime="0" md5="ad7fce023006460422ea1a2785685a0b" classes="aspect=panel" arch="amd64" />
<package name="libpam-plesk" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/libpam-plesk_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="502800" buildtime="0" md5="1e9552848f24f5d22571526596713482" classes="aspect=panel" arch="amd64" />
<package name="plesk-backup-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-backup-utilities_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4121568" buildtime="0" md5="c4892f3abec2718f60c174d12c68e16a" classes="aspect=panel" arch="amd64" />
<package name="plesk-completion" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250911.1022" file="base/plesk-completion_18.0-v.ubuntu.24.04+p18.0.73.0+t250911.1022_amd64.deb" size="2213208" buildtime="0" md5="dbe9bde80d3fe899d60f744e4a380c35" classes="aspect=panel" arch="amd64" />
<package name="plesk-control-panel" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-control-panel_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="11263264" buildtime="0" md5="2d49904df359ba59cb4f1c76706b2414" classes="aspect=panel" arch="all" />
<package name="plesk-core" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-core_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="31187080" buildtime="0" md5="5c96c5cabe9d762fddd628a7b3084d00" classes="aspect=panel" arch="amd64" />
<package name="plesk-core-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-core-utilities_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="1323036" buildtime="0" md5="f2ea3b6500666a23b73be428f63dc67c" classes="aspect=panel" arch="amd64" />
<package name="plesk-engine" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250902.1415" file="engine/plesk-engine_18.0-v.ubuntu.24.04+p18.0.73.0+t250902.1415_all.deb" size="1140" buildtime="0" md5="7323260d8936b62cc3710a31e79e3b5e" classes="aspect=panel" arch="all" />
<package name="plesk-libmaodbc" version="3.2.6" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-libmaodbc_3.2.6-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="273020" buildtime="0" md5="21c21179309e8c91dbdea369c83f8c8d" classes="aspect=panel" arch="amd64" />
<package name="plesk-libmariadbclient-3.4" version="3.4.7" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-libmariadbclient-3.4_3.4.7-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="126764" buildtime="0" md5="5563b93ba41c60a4c8e7d21538b43acd" classes="aspect=panel" arch="amd64" />
<package name="plesk-librdbmspp" version="2.0.7" release="ubuntu.24.04.250902.0711" file="engine/plesk-librdbmspp_2.0.7-ubuntu.24.04.250902.0711_amd64.deb" size="202370" buildtime="0" md5="8466fd1149ccaf212f0d1497e7f56657" classes="aspect=panel" arch="amd64" />
<package name="plesk-lmlib" version="0.2.8" release="ubuntu.24.04.250902.0711" file="engine/plesk-lmlib_0.2.8-ubuntu.24.04.250902.0711_amd64.deb" size="464388" buildtime="0" md5="12d1c937bc3daa13702aa52193ffc836" classes="aspect=panel" arch="amd64" />
<package name="plesk-phpenv" version="0.9.0" release="v.ubuntu.24.04+p18.0.68.0+t250205.1631" file="opt/hosting/phpenv/plesk-phpenv_0.9.0-v.ubuntu.24.04+p18.0.68.0+t250205.1631_all.deb" size="16728" buildtime="0" md5="be4f8da7ea6c4db2c72fcf1e7b7e8a73" arch="all" />
<package name="plesk-platform-runtime" version="1.0.7" release="ubuntu.24.04.250902.0711" file="engine/plesk-platform-runtime_1.0.7-ubuntu.24.04.250902.0711_amd64.deb" size="20528" buildtime="0" md5="7c11123864ba084f776b1226fed482b0" classes="aspect=panel" arch="amd64" />
<package name="plesk-release" version="18.0.73.5" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-release_18.0.73.5-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="1456" buildtime="0" md5="e6c9d92b2651a03509be0b5eda9b54d0" classes="aspect=panel" arch="amd64" />
<package name="plesk-repair-kit" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/repairkit/plesk-repair-kit_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4948568" buildtime="0" md5="192a5c79fba5e905227c13939071be23" classes="aspect=panel" arch="amd64" />
<package name="plesk-rrd" version="1.9.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-rrd_1.9.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="616272" buildtime="0" md5="967bb6e1d524dcc39962c2beb683ecd3" classes="aspect=panel" arch="amd64" />
<package name="plesk-service-node-utilities" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-service-node-utilities_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="3746184" buildtime="0" md5="00b87e1b0a536d7d01af27e3b8f7358f" classes="aspect=panel" arch="amd64" />
<package name="plesk-task-manager" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-task-manager_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4615784" buildtime="0" md5="51881c9befdc68a6823688d08e57b6bc" classes="aspect=panel" arch="amd64" />
<package name="plesk-ui-library" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/plesk-ui-library_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="2567896" buildtime="0" md5="2aa05f61630fce79e25c265d8bc2f9e6" classes="aspect=panel" arch="all" />
<package name="plesk-web-hosting" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/hosting/whc/plesk-web-hosting_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="77160" buildtime="0" md5="2587020112eff3aa5f87e78b67a20bc7" classes="aspect=panel" arch="amd64" />
<package name="plesk-web-socket" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/plesk-web-socket_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="19864" buildtime="0" md5="2429bb1b015255d92fdb995ddee1ab7b" classes="aspect=panel" arch="amd64" />
<package name="psa" version="18.0.73" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/psa_18.0.73-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="33300" buildtime="0" md5="5a53294ee8176f71f684c290836be045" classes="aspect=panel" arch="amd64" />
<package name="psa-autoinstaller" version="3.73.0" release="ubuntu.24.04.250912.0929" file="opt/updater/psa-autoinstaller_3.73.0-ubuntu.24.04.250912.0929_amd64.deb" size="4716790" buildtime="0" md5="c0c8857b4fb46b3307f067eee2a47d18" classes="aspect=panel" arch="amd64" />
<package name="psa-libxml-proxy" version="2.9.12" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/psa-libxml-proxy_2.9.12-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="657596" buildtime="0" md5="bc7fc3c0c342ca70014870f05a18021d" classes="aspect=panel" arch="amd64" />
<package name="psa-locale-base-en-us" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/psa-locale-base-en-us_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="310644" buildtime="0" md5="cd57eeab4c4dc0a94d799d5ac70d109a" classes="aspect=panel" arch="all" />
<package name="psa-logrotate" version="3.22.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/psa-logrotate_3.22.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="61624" buildtime="0" md5="cc998f044ba47aec3830e32d2b9a8b5d" classes="aspect=panel" arch="amd64" />
<package name="psa-phpmyadmin" version="5.2.2" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="base/psa-phpmyadmin_5.2.2-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="7711576" buildtime="0" md5="c56e2ccd87629f2039dbf901f3fae6a7" classes="aspect=panel" arch="all" />
<package name="psa-updates" version="18.0" release="v.ubuntu.24.04+p18.0.72.0+t250715.1156" file="base/psa-updates_18.0-v.ubuntu.24.04+p18.0.72.0+t250715.1156_all.deb" size="1300" buildtime="0" md5="d348b0505cb40543dafaf86f15e76fe2" classes="aspect=panel" arch="all" />
<package name="psa-vhost" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/vhost/psa-vhost_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="33260" buildtime="0" md5="8581046bfae8663acf587ad3b65914d1" classes="aspect=panel" arch="all" />
<package name="sw-collectd" version="5.12.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="base/sw-collectd_5.12.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="520852" buildtime="0" md5="c70098c17059a1e271cd085824d303b7" classes="aspect=panel" arch="amd64" />
<package name="sw-cp-server" version="2.14.1" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="engine/sw-cp-server_2.14.1-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="919908" buildtime="0" md5="8e3889af4428e5862307dd99aa6e27dd" classes="aspect=panel" arch="amd64" />
<package name="sw-engine" version="7.73.1" release="ubuntu.24.04.250902.0711" file="engine/sw-engine_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="14361136" buildtime="0" md5="9d49c27e34170592130cacbac24bdc21" classes="aspect=panel" arch="amd64" />
</component>
<component name="bind" description="BIND DNS server" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-dns-bind-driver" />
</keypackages>
<package name="plesk-dns-bind-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/dns/plesk-dns-bind-driver_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="583868" buildtime="0" md5="dec84de1d2b91fa7c82ba845b17a9f0c" classes="aspect=panel" arch="amd64" />
</component>
<component name="qmail" description="Qmail" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install mail-qc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-qc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-mail-qc-driver" />
<keypackage name="psa-qmail" />
</keypackages>
<keypackages>
<keypackage name="psa-qmail" />
<nokeypackage name="psa-mail-pc-driver" />
<nokeypackage name="plesk-mail-pc-driver" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-qc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/maildrivers/plesk-mail-qc-driver_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="674964" buildtime="0" md5="5782368e744e063419a4029368e78968" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="2429484" buildtime="0" md5="2b44c24009abaf307b82c08802f830dd" classes="aspect=panel" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/psa-qmail_1.03-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="273488" buildtime="0" md5="787ce606ba714dff034aa274710827a2" arch="amd64" />
<package name="psa-qmail" version="3:1.03" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-qmail_1.03-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="273488" buildtime="0" md5="787ce606ba714dff034aa274710827a2" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="opt/mail/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18964" buildtime="0" md5="d9698188f3986f9a8deb76856b282c7a" arch="amd64" />
<package name="psa-qmail-rblsmtpd" version="0.88" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="unknown_dir/psa-qmail-rblsmtpd_0.88-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="18964" buildtime="0" md5="d9698188f3986f9a8deb76856b282c7a" arch="amd64" />
</component>
<component name="postfix" description="Postfix" classes="vendor=mixed">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install mail-pc-driver" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-pc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-pc-driver" />
<keypackage name="postfix" />
</keypackages>
<requires>imapservers</requires>
<package name="plesk-mail-pc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/maildrivers/plesk-mail-pc-driver_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="1693692" buildtime="0" md5="32addc20565eb38bc9eff3ef49147677" classes="aspect=panel" arch="amd64" />
<package name="psa-mail-driver-common" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/maildrivers/psa-mail-driver-common_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="2429484" buildtime="0" md5="2b44c24009abaf307b82c08802f830dd" classes="aspect=panel" arch="amd64" />
</component>
<component name="msmtp" description="MSMTP (relay only)" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install mail-mc-driver" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-mail-mc-driver" />
<keypackage name="sw-msmtp" />
</keypackages>
<conflicts>mailman</conflicts>
<conflicts>spamassassin</conflicts>
<conflicts>drweb</conflicts>
<conflicts>sophos</conflicts>
<conflicts>courier</conflicts>
<conflicts>dovecot</conflicts>
<package name="plesk-mail-mc-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/maildrivers/plesk-mail-mc-driver_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="49856" buildtime="0" md5="bf8c6d7c27ee97c84040a459b49fda67" classes="aspect=panel" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/maildrivers/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="156788" buildtime="0" md5="c2edf58820e64685ba082e6210359879" arch="amd64" />
<package name="sw-msmtp" version="1.8.30" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/sw-msmtp_1.8.30-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="156788" buildtime="0" md5="c2edf58820e64685ba082e6210359879" arch="amd64" />
</component>
<component name="courier" description="Courier" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install courier-imap" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-courier-imap-driver" />
<keypackage name="psa-courier-imap" />
<keypackage name="psa-courier-authlib" />
</keypackages>
<keypackages>
<keypackage name="psa-courier-imap" />
</keypackages>
<keypackages>
<keypackage name="courier-imap" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-courier-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/plesk-courier-imap-driver_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="168792" buildtime="0" md5="fbd828e70e115f905a8662131d90d597" classes="aspect=panel" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="137524" buildtime="0" md5="7bb3c0ee0c19259c42318c893d3b6450" arch="amd64" />
<package name="psa-courier-authlib" version="0.72.4" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/psa-courier-authlib_0.72.4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="137524" buildtime="0" md5="7bb3c0ee0c19259c42318c893d3b6450" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="439164" buildtime="0" md5="b7ba239a1f4983740c743bd53f6b37b5" arch="amd64" />
<package name="psa-courier-imap" version="5.2.11" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/psa-courier-imap_5.2.11-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="439164" buildtime="0" md5="b7ba239a1f4983740c743bd53f6b37b5" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="118800" buildtime="0" md5="50244bce4b2ac1dd0642b8144e35eae8" arch="amd64" />
<package name="psa-courier-unicode" version="2.3.2" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/psa-courier-unicode_2.3.2-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="118800" buildtime="0" md5="50244bce4b2ac1dd0642b8144e35eae8" arch="amd64" />
</component>
<component name="dovecot" description="Dovecot" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install dovecot" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-dovecot-imap-driver" />
<keypackage name="plesk-dovecot" />
<keypackage name="plesk-dovecot-pigeonhole" />
</keypackages>
<requires>mailservers</requires>
<package name="plesk-dovecot" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/plesk-dovecot_2.4.1-4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="152424" buildtime="0" md5="5208f4701dfb999ed53e8ab5bf2b9625" arch="amd64" />
<package name="plesk-dovecot" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/plesk-dovecot_2.4.1-4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="152424" buildtime="0" md5="5208f4701dfb999ed53e8ab5bf2b9625" arch="amd64" />
<package name="plesk-dovecot-core" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/plesk-dovecot-core_2.4.1-4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="2743312" buildtime="0" md5="2c6f8e52e8d7028c83bf78a3075bc75f" arch="amd64" />
<package name="plesk-dovecot-core" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/plesk-dovecot-core_2.4.1-4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="2743312" buildtime="0" md5="2c6f8e52e8d7028c83bf78a3075bc75f" arch="amd64" />
<package name="plesk-dovecot-imap-driver" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/plesk-dovecot-imap-driver_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="269936" buildtime="0" md5="6273198e816ed9b3d4df8404a460bb51" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/mail/plesk-dovecot-pigeonhole_2.4.1-4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="708916" buildtime="0" md5="ce219914746652fa37d678f5a5fe3e65" arch="amd64" />
<package name="plesk-dovecot-pigeonhole" version="2.4.1" release="4-v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/plesk-dovecot-pigeonhole_2.4.1-4-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="708916" buildtime="0" md5="ce219914746652fa37d678f5a5fe3e65" arch="amd64" />
</component>
<component name="php5" description="PHP from OS vendor" classes="vendor=mixed">
<keypackages>
<keypackage name="psa-php-configurator" />
<keypackage name="php-fpm" />
<keypackage name="php-common" />
</keypackages>
<keypackages>
<keypackage name="psa-php-configurator" />
</keypackages>
<requires>panel</requires>
<package name="psa-php-configurator" version="1.8.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/php/psa-php-configurator_1.8.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="30380" buildtime="0" md5="752398c09f3035f0b7b63d131ce89560" classes="aspect=panel" arch="amd64" />
</component>
<component name="postgresql" description="PostgreSQL server" classes="vendor=os">
<keypackages>
<keypackage name="postgresql-15" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
<keypackage name="postgresql" />
</keypackages>
<keypackages>
<keypackage name="postgresql-15" />
</keypackages>
<keypackages>
<keypackage name="postgresql-14" />
</keypackages>
<keypackages>
<keypackage name="postgresql-13" />
</keypackages>
<keypackages>
<keypackage name="postgresql-12" />
</keypackages>
<keypackages>
<keypackage name="postgresql-11" />
</keypackages>
<keypackages>
<keypackage name="postgresql-10" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.6" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.5" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.1" />
</keypackages>
<keypackages>
<keypackage name="postgresql-9.0" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.4" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.3" />
</keypackages>
<keypackages>
<keypackage name="postgresql-8.2" />
</keypackages>
<keypackages>
<keypackage name="postgresql" />
</keypackages>
</component>
<component name="mysql-sys" description="MySQL server" classes="vendor=os">
<keypackages>
<keypackage name="mariadb-server" />
</keypackages>
<keypackages>
<keyprovide name="mysql-server" />
</keypackages>
<keypackages>
<keyprovide name="virtual-mysql-server" />
</keypackages>
</component>
<component name="apache" description="Apache" classes="vendor=os">
<keypackages>
<keypackage name="apache2" />
<keypackage name="apache2-mpm-prefork" />
</keypackages>
<keypackages>
<keypackage name="apache2" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-itk" />
</keypackages>
<keypackages>
<keypackage name="apache2-mpm-prefork" />
</keypackages>
</component>
<component name="spamassassin" description="SpamAssassin" classes="vendor=mixed,aspect=panel">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install spammng" />
</bootstrapper>
<keypackages>
<keypackage name="psa-spamassassin" />
</keypackages>
<package name="psa-spamassassin" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/mail/psa-spamassassin_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="73864" buildtime="0" md5="3ba33d8589579249a361e8b213170de1" arch="amd64" />
</component>
<component name="mod_python" description="mod_python" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-python" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="drweb" description="Plesk Premium Antivirus" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-premium-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="psa-firewall" description="Plesk Firewall" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-firewall" />
</keypackages>
<requires>panel</requires>
</component>
<component name="watchdog" description="Watchdog system monitoring" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-watchdog" />
</keypackages>
<requires>panel</requires>
</component>
<component name="horde" description="Horde" hidden="true" classes="vendor=parallels" show_installed_hidden="true">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install horde" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install horde" />
</bootstrapper>
<keypackages>
<keypackage name="psa-horde" />
<keypackage name="psa-turba" />
<keypackage name="psa-imp" />
<keypackage name="psa-ingo" />
<keypackage name="psa-mnemo" />
<keypackage name="psa-kronolith" />
<keypackage name="psa-passwd" />
</keypackages>
<keypackages>
<keypackage name="psa-horde" />
</keypackages>
<requires>php7.4</requires>
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="12098168" buildtime="0" md5="0a3d2aa7384c84517cc77e11ba330dd6" arch="all" />
<package name="psa-horde" version="5.2.23" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-horde_5.2.23-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="12098168" buildtime="0" md5="0a3d2aa7384c84517cc77e11ba330dd6" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="2449892" buildtime="0" md5="1e86e9d54e2160ac6bd01cff0baee13b" arch="all" />
<package name="psa-imp" version="6.2.27" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-imp_6.2.27-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="2449892" buildtime="0" md5="1e86e9d54e2160ac6bd01cff0baee13b" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="790364" buildtime="0" md5="eea2307228266ab8363945c58e1f9d25" arch="all" />
<package name="psa-ingo" version="3.2.16" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-ingo_3.2.16-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="790364" buildtime="0" md5="eea2307228266ab8363945c58e1f9d25" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1328096" buildtime="0" md5="ae721831e2b3b8fb930c9bfbc491d2af" arch="all" />
<package name="psa-kronolith" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-kronolith_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1328096" buildtime="0" md5="ae721831e2b3b8fb930c9bfbc491d2af" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="627264" buildtime="0" md5="6a469689ebc2db8186232245d7fe3166" arch="all" />
<package name="psa-mnemo" version="4.2.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-mnemo_4.2.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="627264" buildtime="0" md5="6a469689ebc2db8186232245d7fe3166" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="589132" buildtime="0" md5="ba2a2c15a9700bd86a420701da3b9105" arch="all" />
<package name="psa-passwd" version="5.0.7" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-passwd_5.0.7-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="589132" buildtime="0" md5="ba2a2c15a9700bd86a420701da3b9105" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/horde/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1028108" buildtime="0" md5="fe9b5efcb5fd40dc454a2d642e21d714" arch="all" />
<package name="psa-turba" version="4.2.29" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-turba_4.2.29-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="1028108" buildtime="0" md5="fe9b5efcb5fd40dc454a2d642e21d714" arch="all" />
</component>
<component name="roundcube" description="Roundcube" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install roundcube" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install roundcube" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-roundcube" />
</keypackages>
<requires>php8.3</requires>
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/roundcube/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="4400280" buildtime="0" md5="185ffc7b3f54cbe959ef10ff8605f4a8" arch="all" />
<package name="plesk-roundcube" version="1.6.11" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/plesk-roundcube_1.6.11-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="4400280" buildtime="0" md5="185ffc7b3f54cbe959ef10ff8605f4a8" arch="all" />
</component>
<component name="mod_fcgid" description="mod_fcgid" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-fcgid-psa" />
</keypackages>
<keypackages>
<keypackage name="libapache2-mod-fcgid" />
</keypackages>
<requires>webservers</requires>
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/fcgid/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="81632" buildtime="0" md5="35cd08849f44af2faff5daf9588ac5fb" arch="amd64" />
<package name="libapache2-mod-fcgid-psa" version="2.3.9.5" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/libapache2-mod-fcgid-psa_2.3.9.5-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="81632" buildtime="0" md5="35cd08849f44af2faff5daf9588ac5fb" arch="amd64" />
</component>
<component name="mod_perl" description="mod_perl" hidden="true" classes="vendor=os" show_installed_hidden="true">
<keypackages>
<keypackage name="libapache2-mod-perl2" />
</keypackages>
<requires>webservers</requires>
</component>
<component name="proftpd" description="ProFTPD" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="post" exec-cmd="touch /var/lock/plesk_deferred_ftp_proftpd_configure" />
</bootstrapper>
<keypackages>
<keypackage name="psa-proftpd" />
</keypackages>
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/proftpd/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3152816" buildtime="0" md5="ad18928d3c160c519f6a62c2e46bf29e" arch="amd64" />
<package name="psa-proftpd" version="1.3.9" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/psa-proftpd_1.3.9-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="3152816" buildtime="0" md5="ad18928d3c160c519f6a62c2e46bf29e" arch="amd64" />
</component>
<component name="webalizer" description="Webalizer" classes="vendor=os">
<keypackages>
<keypackage name="webalizer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="awstats" description="AWStats" classes="vendor=os">
<keypackages>
<keypackage name="plesk-awstats-configurator" />
<keypackage name="awstats" />
</keypackages>
<keypackages>
<keypackage name="plesk-awstats-configurator" />
</keypackages>
<keypackages>
<keypackage name="awstats" />
</keypackages>
<requires>panel</requires>
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="opt/awstats/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16032" buildtime="0" md5="21b105c248bd25c06f5c89c5737e69c4" arch="all" />
<package name="plesk-awstats-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.70.0+t250502.0855" file="unknown_dir/plesk-awstats-configurator_18.0-v.ubuntu.24.04+p18.0.70.0+t250502.0855_all.deb" size="16032" buildtime="0" md5="21b105c248bd25c06f5c89c5737e69c4" arch="all" />
</component>
<component name="fail2ban" description="Fail2Ban" classes="vendor=parallels">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install fail2ban-configurator" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install fail2ban-configurator" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-fail2ban-configurator" />
<keypackage name="fail2ban" />
</keypackages>
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/fail2ban/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="870400" buildtime="0" md5="64d77a41aec626247b4b3ec96dc7da59" arch="all" />
<package name="fail2ban" version="1:1.1.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/fail2ban_1.1.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_all.deb" size="870400" buildtime="0" md5="64d77a41aec626247b4b3ec96dc7da59" arch="all" />
<package name="plesk-fail2ban-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/fail2ban/plesk-fail2ban-configurator_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="41804" buildtime="0" md5="0812e652e621bd0f6215bd3daaa62d49" classes="aspect=panel" arch="all" />
</component>
<component name="modsecurity" description="ModSecurity" classes="vendor=mixed">
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity-plesk" />
</keypackages>
<keypackages>
<keypackage name="plesk-modsecurity-crs" />
<keypackage name="plesk-modsecurity-configurator" />
<keypackage name="libapache2-modsecurity" />
</keypackages>
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/modsecurity/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="269160" buildtime="0" md5="bd5c0576b4070b2fa2f6e56c32f9a927" arch="amd64" />
<package name="libapache2-modsecurity-plesk" version="1:2.9.12" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/libapache2-modsecurity-plesk_2.9.12-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="269160" buildtime="0" md5="bd5c0576b4070b2fa2f6e56c32f9a927" arch="amd64" />
<package name="plesk-modsecurity-configurator" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/hosting/modsecurity/plesk-modsecurity-configurator_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="554756" buildtime="0" md5="868b89da1bc12d9361b6b64f712b03ab" classes="aspect=panel" arch="all" />
<package name="plesk-modsecurity-crs" version="1:4.18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/hosting/modsecurity/plesk-modsecurity-crs_4.18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="232956" buildtime="0" md5="691f471a256c29af933deeabc2cca6b0" arch="amd64" />
<package name="plesk-modsecurity-crs" version="1:4.18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/plesk-modsecurity-crs_4.18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="232956" buildtime="0" md5="691f471a256c29af933deeabc2cca6b0" arch="amd64" />
</component>
<component name="passenger" description="Phusion Passenger server" classes="vendor=parallels">
<keypackages>
<keypackage name="libapache2-mod-passenger-plesk" />
<keypackage name="passenger" />
</keypackages>
<requires>panel</requires>
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/passenger/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="308800" buildtime="0" md5="060fedb900def100a91d1e6ee986407a" arch="amd64" />
<package name="libapache2-mod-passenger-plesk" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/libapache2-mod-passenger-plesk_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="308800" buildtime="0" md5="060fedb900def100a91d1e6ee986407a" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/passenger/passenger_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="5568200" buildtime="0" md5="b516fad31d71e717727c1994a379de44" arch="amd64" />
<package name="passenger" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/passenger_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="5568200" buildtime="0" md5="b516fad31d71e717727c1994a379de44" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/passenger/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4616004" buildtime="0" md5="4d80d9c1803267a0bec98d01ff60046a" arch="amd64" />
<package name="passenger-dev" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/passenger-dev_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4616004" buildtime="0" md5="4d80d9c1803267a0bec98d01ff60046a" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/passenger/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="6048" buildtime="0" md5="844e0683e7bdab0c38d2492db1fbdeef" arch="amd64" />
<package name="passenger-native-libs" version="1:6.0.27" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/passenger-native-libs_6.0.27-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="6048" buildtime="0" md5="844e0683e7bdab0c38d2492db1fbdeef" arch="amd64" />
</component>
<component name="l10n" description="All language localization for Plesk" classes="vendor=parallels,aspect=panel">
<bootstrapper>
<package name="pp18.0.73-bootstrapper" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="bootstrapper/pp18.0.73-bootstrapper_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="224436" buildtime="0" md5="ca3be091f6fc9c0311b7c76a0478ee21" classes="aspect=panel" arch="amd64" />
<package name="sw-engine-cli-7.73" version="7.73.1" release="ubuntu.24.04.250902.0711" file="bootstrapper/sw-engine-cli-7.73_7.73.1-ubuntu.24.04.250902.0711_amd64.deb" size="6755460" buildtime="0" md5="d30a5619fdcf66ffb855967229b578f9" classes="aspect=panel" arch="amd64" />
<action sequence="prep" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh prep-install l10n" />
<action sequence="post" exec-cmd="/opt/psa/bootstrapper/pp18.0.73-bootstrapper/bootstrapper.sh post-install l10n" />
</bootstrapper>
<keypackages>
<keypackage name="plesk-l10n" />
</keypackages>
<requires>panel</requires>
<package name="plesk-l10n" version="18.0" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/l10n/plesk-l10n_18.0-v.ubuntu.24.04+p18.0.73.5+t251124.2020_all.deb" size="7018044" buildtime="0" md5="ef56a7b56f0d737ce5df9d564dd81f91" arch="all" />
</component>
<component name="git" description="Git" classes="vendor=parallels">
<keypackages>
<keypackage name="ext-git" />
</keypackages>
<requires>panel</requires>
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250901.0545" file="opt/git/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.73.0+t250901.0545_amd64.deb" size="3032" buildtime="0" md5="54a45785ba341f9820f5f3dbdf44b2d4" arch="amd64" />
<package name="plesk-git-http" version="18.0" release="v.ubuntu.24.04+p18.0.73.0+t250901.0545" file="unknown_dir/plesk-git-http_18.0-v.ubuntu.24.04+p18.0.73.0+t250901.0545_amd64.deb" size="3032" buildtime="0" md5="54a45785ba341f9820f5f3dbdf44b2d4" arch="amd64" />
</component>
<component name="resctrl" description="Resource Controller (Cgroups)" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-resctrl" />
</keypackages>
<requires>panel</requires>
<package name="plesk-resctrl" version="18.0" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/resctrl/plesk-resctrl_18.0-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="42988" buildtime="0" md5="975ac24adfd8723d839cd5084dc4b49a" arch="amd64" />
</component>
<component name="nodejs" description="NodeJS support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-nodejs" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="gems-pre" description="Tools required for building Ruby gems" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="plesk-gems-pre" />
</keypackages>
<requires>ruby</requires>
<package name="plesk-gems-pre" version="0.0.1" release="v.ubuntu.24.04+p18.0.72.0+t250806.0900" file="opt/ruby/plesk-gems-pre_0.0.1-v.ubuntu.24.04+p18.0.72.0+t250806.0900_all.deb" size="1272" buildtime="0" md5="10ef94b587a9af335a0a3a7609fe5b4a" arch="all" />
</component>
<component name="wp-toolkit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-wp-toolkit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="advisor" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-advisor" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ruby" description="Ruby support" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ruby" />
</keypackages>
<requires>panel</requires>
<requires>passenger</requires>
</component>
<component name="nginx" description="Nginx web server" classes="vendor=parallels">
<keypackages>
<keypackage name="sw-nginx" />
</keypackages>
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="opt/hosting/nginx/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="448740" buildtime="0" md5="b3c43a2a9597fda8aea316f97f03ca94" arch="amd64" />
<package name="mod-security-v3" version="3.0.14" release="v.ubuntu.24.04+p18.0.73.4+t251114.1417" file="unknown_dir/mod-security-v3_3.0.14-v.ubuntu.24.04+p18.0.73.4+t251114.1417_amd64.deb" size="448740" buildtime="0" md5="b3c43a2a9597fda8aea316f97f03ca94" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="opt/hosting/nginx/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4806776" buildtime="0" md5="158bb25c9b5a07835b1e21cd2645daa3" arch="amd64" />
<package name="sw-nginx" version="1.28.0.1" release="v.ubuntu.24.04+p18.0.73.5+t251124.2020" file="unknown_dir/sw-nginx_1.28.0.1-v.ubuntu.24.04+p18.0.73.5+t251124.2020_amd64.deb" size="4806776" buildtime="0" md5="158bb25c9b5a07835b1e21cd2645daa3" arch="amd64" />
</component>
<component name="pmm" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-panel-migrator" />
</keypackages>
<requires>panel</requires>
</component>
<component name="xovi" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-xovi" />
</keypackages>
<requires>panel</requires>
</component>
<component name="imunify360" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-imunify360" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sslit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sslit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="letsencrypt" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-letsencrypt" />
</keypackages>
<requires>panel</requires>
</component>
<component name="repair-kit" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-repair-kit" />
</keypackages>
<requires>panel</requires>
</component>
<component name="composer" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-composer" />
</keypackages>
<requires>panel</requires>
</component>
<component name="monitoring" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-monitoring" />
</keypackages>
<requires>panel</requires>
</component>
<component name="log-browser" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-log-browser" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ssh-terminal" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ssh-terminal" />
</keypackages>
<requires>panel</requires>
</component>
<component name="site-import" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-site-import" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sitejet" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-plesk-sitejet" />
</keypackages>
<requires>panel</requires>
</component>
<component name="ntp-timesync" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-ntp-timesync" />
</keypackages>
<requires>panel</requires>
</component>
<component name="sophos" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-sophos-av" />
</keypackages>
<requires>panel</requires>
</component>
<component name="mfa" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-mfa" />
</keypackages>
<requires>panel</requires>
</component>
<component name="configurations-troubleshooter" description="" classes="vendor=parallels,aspect=panel">
<keypackages>
<keypackage name="ext-configurations-troubleshooter" />
</keypackages>
<requires>panel</requires>
</component>
<installation_types>
<type name="Recommended,Typical" description="Install typically used components. Recommended for general use.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
</type>
<type name="Full" description="Install all available components.">
<component>panel</component>
<component>roundcube</component>
<component>postfix</component>
<component>dovecot</component>
<component>mod_fcgid</component>
<component>proftpd</component>
<component>webalizer</component>
<component>awstats</component>
<component>webservers</component>
<component>nginx</component>
<component>mysqlgroup</component>
<component>l10n</component>
<component>bind</component>
<component>wp-toolkit</component>
<component>advisor</component>
<component>git</component>
<component>xovi</component>
<component>imunify360</component>
<component>fail2ban</component>
<component>modsecurity</component>
<component>sslit</component>
<component>letsencrypt</component>
<component>repair-kit</component>
<component>composer</component>
<component>monitoring</component>
<component>log-browser</component>
<component>ssh-terminal</component>
<component>site-import</component>
<component>sitejet</component>
<component>ntp-timesync</component>
<component>php8.1</component>
<component>php8.2</component>
<component>php8.3</component>
<component>php8.4</component>
<component>mfa</component>
<component>configurations-troubleshooter</component>
<component>resctrl</component>
<component>drweb</component>
<component>postgresql</component>
<component>spamassassin</component>
<component>ruby</component>
<component>gems-pre</component>
<component>nodejs</component>
<component>pmm</component>
<component>psa-firewall</component>
<component>watchdog</component>
<component>passenger</component>
<component>phpgroup</component>
<component>sophos</component>
</type>
</installation_types>
<component_groups>
<group name="hosting" description="Web hosting">
<component name="proftpd" />
<component name="webalizer" />
<component name="awstats" />
<component name="modsecurity" />
<component name="passenger" />
<component name="ruby" />
<component name="nodejs" />
<component name="gems-pre" />
<group name="apache_support" description="Apache">
<group type="radio" name="webservers" description="Apache versions">
<component name="apache" />
<component name="apache-sni" default="true" />
</group>
<component name="mod_fcgid" />
<component name="mod_perl" />
<component name="mod_python" />
</group>
<group name="php_comps" description="PHP interpreter versions">
<group type="radio" name="phpgroup" description="PHP interpreter versions">
<component name="php5" />
</group>
<component name="php8.4" />
<component name="php8.3" />
<component name="php8.2" />
<component name="php8.1" />
<component name="php8.0" />
<component name="php7.4" />
<component name="php7.3" />
<component name="php7.2" />
<component name="php7.1" />
<component name="php7.0" />
<component name="php5.6" />
<component name="php5.5" />
<component name="php5.4" />
<component name="php5.3" />
<component name="php5.2" />
</group>
<group name="nginx_comps" description="Nginx web server and reverse proxy server">
<component name="nginx" />
</group>
</group>
<group name="webmails" description="Webmail services">
<component name="horde" />
<component name="roundcube" default="true" />
</group>
<group name="mail" description="Mail hosting">
<group type="radio" name="mailservers" description="SMTP servers">
<component name="postfix" default="true" />
<component name="qmail" />
<component name="msmtp" />
</group>
<group type="radio" name="imapservers" description="IMAP/POP3 servers">
<component name="dovecot" default="true" />
<component name="courier" />
</group>
<component name="drweb" />
<component name="sophos" />
<component name="spamassassin" />
<component name="mailman" />
</group>
<group type="radio" name="mysqlgroup" description="MySQL server versions">
<component name="mysql-sys" default="true" />
</group>
<group name="extensions" description="Plesk extensions">
<component name="psa-firewall" />
<component name="watchdog" />
<component name="wp-toolkit" />
<component name="advisor" />
<component name="xovi" />
<component name="imunify360" />
<component name="sslit" />
<component name="letsencrypt" />
<component name="repair-kit" />
<component name="composer" />
<component name="monitoring" />
<component name="log-browser" />
<component name="ssh-terminal" />
<component name="site-import" />
<component name="sitejet" />
<component name="ntp-timesync" />
<component name="mfa" />
<component name="configurations-troubleshooter" />
</group>
</component_groups>
<updates updates_dir="update-deb-Ubuntu-24.04-x86_64" headers_file="" />
<thirdparty thirdparty_dir="thirdparty-deb-Ubuntu-24.04-x86_64">
<package name="plesk-libboost-1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="2204" buildtime="0" md5="a5365466a1ab4a4d6ff48184de747b93" arch="amd64" />
<package name="plesk-libboost-atomic1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-atomic1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="6740" buildtime="0" md5="952ee985685b021f066538b101e95fe9" arch="amd64" />
<package name="plesk-libboost-charconv1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-charconv1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="82462" buildtime="0" md5="ddf6a5d7e44e87dfc329f769d9b9b410" arch="amd64" />
<package name="plesk-libboost-chrono1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-chrono1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="16066" buildtime="0" md5="464e523c45b8df24c76eeec5148cc4bc" arch="amd64" />
<package name="plesk-libboost-context1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-context1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="4134" buildtime="0" md5="f8a4e1919740a45208ba3956e8b6e25c" arch="amd64" />
<package name="plesk-libboost-date-time1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-date-time1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3160" buildtime="0" md5="f06e0297a64c2eae0132beeb9db21c54" arch="amd64" />
<package name="plesk-libboost-filesystem1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-filesystem1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="74374" buildtime="0" md5="096d8aa46acc387f42bee22ab5a307db" arch="amd64" />
<package name="plesk-libboost-iostreams1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-iostreams1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="33404" buildtime="0" md5="ec98b9c456079f50cf3e8fded6547872" arch="amd64" />
<package name="plesk-libboost-locale1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-locale1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="320462" buildtime="0" md5="7cd59a147b151b8419ab95467bd37b90" arch="amd64" />
<package name="plesk-libboost-log1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-log1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="290942" buildtime="0" md5="efc96c5fae467d9132f3568291f8d747" arch="amd64" />
<package name="plesk-libboost-process1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-process1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="31868" buildtime="0" md5="150c8ecfc1bd23c4ab2c665ad4d47f72" arch="amd64" />
<package name="plesk-libboost-program-options1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-program-options1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="153736" buildtime="0" md5="d7edacb34e6070790775a184febed5ca" arch="amd64" />
<package name="plesk-libboost-random1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-random1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="15400" buildtime="0" md5="b4259a42ffa0e3a14b3ba35ea33424dc" arch="amd64" />
<package name="plesk-libboost-regex1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-regex1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="126542" buildtime="0" md5="b1edbf7063d27c15ffb8ca6fefef12c4" arch="amd64" />
<package name="plesk-libboost-serialization1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-serialization1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="90142" buildtime="0" md5="24ab64ea54361eae50e584f806afbef5" arch="amd64" />
<package name="plesk-libboost-system1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-system1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="3136" buildtime="0" md5="3835e30dfc1b84719561dd47b7f2e9ed" arch="amd64" />
<package name="plesk-libboost-thread1.88" version="1.88.0" release="ubuntu.24.04.250718.1405" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libboost-thread1.88_1.88.0-ubuntu.24.04.250718.1405_amd64.deb" size="45848" buildtime="0" md5="423d7598c3650b066fac6268587d246a" arch="amd64" />
<package name="plesk-libpoco-1.14.2" version="1.14.2" release="ubuntu.24.04.251029.1512" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libpoco-1.14.2_1.14.2-ubuntu.24.04.251029.1512_amd64.deb" size="2986992" buildtime="0" md5="309a11644f033cb5fc10f8116ca5c519" arch="amd64" />
<package name="plesk-libstdc++14.3.0" version="14.3.0" release="ubuntu.24.04.250705.0905" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-libstdc++14.3.0_14.3.0-ubuntu.24.04.250705.0905_amd64.deb" size="1017840" buildtime="0" md5="67f900133fbe02c0755de18d4bb53e22" arch="amd64" />
<package name="plesk-mysql-server" version="18.0.2" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-mysql-server_18.0.2-v.ubuntu.24.04+p18.0.61.0+t240426.1307_all.deb" size="1196" buildtime="0" md5="71537e7c58d0bddd35d8b9953328c349" arch="all" />
<package name="plesk-python3-regex" version="2022.1.18" release="v.ubuntu.24.04+p18.0.67.0+t241210.1818" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/plesk-python3-regex_2022.1.18-v.ubuntu.24.04+p18.0.67.0+t241210.1818_amd64.deb" size="376764" buildtime="0" md5="1abfd397dabeb4928eedee61bdd412ea" arch="amd64" />
<package name="psa-pear" version="1.10.9" release="20191112.ubuntu.24.04.240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/psa-pear_1.10.9-20191112.ubuntu.24.04.240426.1307_all.deb" size="338164" buildtime="0" md5="d6432ac744bcacc5fed58cfc2de75eaa" arch="all" />
<package name="sw-tar" version="1.34" release="v.ubuntu.24.04+p18.0.61.0+t240426.1307" file="../dist-deb-Ubuntu-24.04-x86_64/contrib/sw-tar_1.34-v.ubuntu.24.04+p18.0.61.0+t240426.1307_amd64.deb" size="480148" buildtime="0" md5="336b551c10d21bf704f73b681d729368" arch="amd64" />
</thirdparty>
<extras extras_dir="extras-deb-Ubuntu-24.04-x86_64" persistent_repo="true" />
<force_remove_packages />
</build_1>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_73" name="Plesk Obsidian 18.0.73" version="18.0.73" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.73-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.73-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.73-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.73-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.73-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.73-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.73-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.73-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.73-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.73-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.73-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.73-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.73-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.73-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.73-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_74" name="Plesk Obsidian 18.0.74" version="18.0.74" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.74-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.74-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.74-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.74-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.74-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.74-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.74-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.74-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.74-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.74-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.74-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.74-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_74" name="Plesk Obsidian 18.0.74" version="18.0.74" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.74-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.74-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.74-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.74-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.74-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.74-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.74-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.74-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.74-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.74-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.74-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.74-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<product id="plesk" name="Plesk">
<active_icon src="http://autoinstall.plesk.com/icon_plesk.png" />
<disabled_icon src="http://autoinstall.plesk.com/icon_plesk_disabled.png" />
<product_site src="http://www.plesk.com/" />
<kb_article_upgrade_from_not_supported_versions src="http://docs.plesk.com/release-notes/current/software-requirements/#s3" />
<keypackages>
<keypackage>psa</keypackage>
</keypackages>
<release id="PLESK_0_0_0" name="Plesk emtpy release for compatibility with old AI" version="0.0.0" upgrade_allowed_from="0.0.0" tags="development" hide_tags="interactive inanycase" />
<release_1 id="PLESK_18_0_74" name="Plesk Obsidian 18.0.74" version="18.0.74" codename="Obsidian" details_url="http://docs.plesk.com/release-notes/18.0/change-log/" nokeyupdate_from="18.0" upgrade_allowed_from="17.0.17" tags="development,testing,current,release,stable" promoted_tags="" hide_tags="interactive inanycase">
<build os_name="Linux" os_vendor="AlmaLinux" os_version="10" os_arch="x86_64" config="plesk-18.0.74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="AlmaLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="CentOS" os_version="7" os_arch="x86_64" config="plesk-18.0.74-cos7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="7" os_arch="x86_64" config="plesk-18.0.74-cl7-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="8" os_arch="x86_64" config="plesk-18.0.74-cl8-x86_64.inf3" />
<build os_name="Linux" os_vendor="CloudLinux" os_version="9" os_arch="x86_64" config="plesk-18.0.74-cl9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="10.0" os_arch="x86_64" config="plesk-18.0.74-deb10.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="11.0" os_arch="x86_64" config="plesk-18.0.74-deb11.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="12.0" os_arch="x86_64" config="plesk-18.0.74-deb12.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="Debian" os_version="13.0" os_arch="x86_64" config="plesk-18.0.74-deb13.0-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el10" os_arch="x86_64" config="plesk-18.0.74-rhel10-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="RedHat" os_version="el9" os_arch="x86_64" config="plesk-18.0.74-rhel9-x86_64.inf3" />
<build os_name="Linux" os_vendor="Rocky" os_version="8" os_arch="x86_64" config="plesk-18.0.74-rhel8-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="18.04" os_arch="x86_64" config="plesk-18.0.74-ubt18.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="20.04" os_arch="x86_64" config="plesk-18.0.74-ubt20.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="aarch64" config="plesk-18.0.74-ubt22.04-aarch64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="22.04" os_arch="x86_64" config="plesk-18.0.74-ubt22.04-x86_64.inf3" />
<build os_name="Linux" os_vendor="Ubuntu" os_version="24.04" os_arch="x86_64" config="plesk-18.0.74-ubt24.04-x86_64.inf3" />
</release_1>
</product>

View File

@@ -0,0 +1,255 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# check-broken-tz.sh writes single line json report into it with the following fields:
# - "stage": "timezonefix"
# - "level": "error"
# - "errtype": "failure"
# - "date": time of error occurance ("2024-07-24T06:59:43,127545441+0000")
# - "error": human readable error message
report_dpkg_configure_fail()
{
local pkgname="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=dpkgconfigurefailed' <<-EOL
Could not configure the packages ( $pkgname ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_get_tz_fail()
{
make_error_report 'stage=timezonefix' 'level=error' 'errtype=gettzfailed' <<-EOL
Could not get the system timezone. See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
report_set_tz_fail()
{
local tz="$1"
make_error_report 'stage=timezonefix' 'level=error' 'errtype=settzfailed' <<-EOL
Could not set the system timezone ( $tz ). See https://support.plesk.com/hc/en-us/articles/24721507961623-Plesk-provides-error-on-update-Package-tzdata-is-not-configured-yet for more details.
EOL
}
get_current_tz()
{
[ -L /etc/localtime ] || return 1
local tz
tz="$(readlink -m /etc/localtime)" || return 1
[ -f "$tz" ] || return 1
case "$tz" in
/usr/share/zoneinfo/*) ;;
*) return 1;;
esac
tz="${tz#/usr/share/zoneinfo/}"
[ -n "$tz" ] || return 1
echo -n "${tz}"
}
check_timezone_ubuntu()
{
[ -n "$os_codename" ] || return 0
local mode="$1"
# PPP-65676: Plesk update fails on ubuntu if timezone is CET
if dpkg-query --showformat='${db:Status-Status}\n' --show 'tzdata' | grep -wq 'half-configured'; then
local origtz
origtz=$(get_current_tz)
if [ $? != 0 ]; then
report_get_tz_fail
return $RET_WARN
fi
if ! timedatectl set-timezone 'Etc/UTC'; then
timedatectl set-timezone "$origtz"
report_set_tz_fail 'Etc/UTC'
return $RET_WARN
fi
if ! dpkg --configure 'tzdata'; then
timedatectl set-timezone "$origtz"
report_dpkg_configure_fail 'tzdata'
return $RET_WARN
fi
if ! timedatectl set-timezone "$origtz"; then
report_set_tz_fail "$origtz"
return $RET_WARN
fi
fi
return 0
}
# ---
skip_checker_on_flag "Broken timezone check" "/tmp/plesk-installer-skip-check-broken-timezone.flag"
checker_main 'check_timezone' "$1"

View File

@@ -0,0 +1,50 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
out()
{
echo -e "\t$*" >&2
}
print_urls()
{
plesk login 2>/dev/null | sed -e $'s|^|\t * |' >&2
}
print_congratulations()
{
local mode="$1" # 'install' or 'upgrade'
local process=
[ "$mode" = "install" ] && process="installation" || process="upgrade"
out
out " Congratulations!"
out
out "The $process has been finished. Plesk is now running on your server."
out
if [ "$mode" = "install" ]; then
out "To complete the configuration process, browse either of URLs:"
print_urls
out
fi
out "Use the username 'admin' to log in. To log in as 'admin', use the 'plesk login' command."
out "You can also log in as 'root' using your 'root' password."
out
out "Use the 'plesk' command to manage the server. Run 'plesk help' for more info."
out
out "Use the following commands to start and stop the Plesk web interface:"
out "'systemctl start psa.service' and 'systemctl stop psa.service' respectively."
out
if [ "$mode" = "install" ]; then
out "If you would like to migrate your subscriptions from other hosting panel"
out "or older Plesk version to this server, please check out our assistance"
out "options: https://www.plesk.com/professional-services/"
out
fi
}
unset GREP_OPTIONS
print_congratulations "$1"
# Force showing text when used as AI post-examiner
exit 1

View File

@@ -0,0 +1,542 @@
#!/bin/bash
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
[ -z "$PLESK_INSTALLER_DEBUG" ] || set -x
[ -z "$PLESK_INSTALLER_STRICT_MODE" ] || set -e
export LC_ALL=C
unset GREP_OPTIONS
RET_SUCCESS=0
RET_WARN=1
RET_FATAL=2
is_function_defined()
{
local fn="$1"
case "$(type $fn 2>/dev/null)" in
*function*)
return 0
;;
esac
return 1
}
# @params are tags in format "key=value"
# Report body (human readable information) is read from stdin
# and copied to stderr.
make_error_report()
{
local report_file="${PLESK_INSTALLER_ERROR_REPORT:-}"
local python_bin=
for bin in "/opt/psa/bin/python" "/usr/local/psa/bin/python" "/usr/bin/python2" "/opt/psa/bin/py3-python" "/usr/local/psa/bin/py3-python" "/usr/libexec/platform-python" "/usr/bin/python3"; do
if [ -x "$bin" ]; then
python_bin="$bin"
break
fi
done
if [ -n "$report_file" -a -x "$python_bin" ]; then
"$python_bin" -c 'import sys, json
report_file = sys.argv[1]
error = sys.stdin.read()
sys.stderr.write(error)
data = {
"error": error,
}
for tag in sys.argv[2:]:
k, v = tag.split("=", 1)
data[k] = v
with open(report_file, "a") as f:
json.dump(data, f)
f.write("\n")
' "$report_file" "date=$(date --utc --iso-8601=ns)" "$@"
else
cat - >&2
fi
}
detect_platform()
{
. /etc/os-release
os_name="$ID"
os_version="${VERSION_ID%%.*}"
os_arch="$(uname -m)"
if [ -e /etc/debian_version ]; then
case "$os_arch" in
x86_64) pkg_arch="amd64" ;;
aarch64) pkg_arch="arm64" ;;
esac
if [ -n "$VERSION_CODENAME" ]; then
os_codename="$VERSION_CODENAME"
else
case "$os_name$os_version" in
debian10) os_codename="buster" ;;
debian11) os_codename="bullseye" ;;
debian12) os_codename="bookworm" ;;
ubuntu18) os_codename="bionic" ;;
ubuntu20) os_codename="focal" ;;
ubuntu22) os_codename="jammy" ;;
ubuntu24) os_codename="noble" ;;
esac
fi
fi
case "$os_name$os_version" in
rhel7|centos7|cloudlinux7|virtuozzo7)
package_manager="yum"
;;
rhel*|centos*|cloudlinux*|almalinux*|rocky*)
package_manager="dnf"
;;
debian*|ubuntu*)
package_manager="apt"
;;
esac
if [ "$os_name" = "ubuntu" -o "$os_name" = "debian" ]; then
PRODUCT_ROOT_D="/opt/psa"
else
PRODUCT_ROOT_D="/usr/local/psa"
fi
}
has_os_impl_function()
{
local prefix="$1"
local fn="${prefix}_${os_name}${os_version}"
is_function_defined "$fn"
}
call_os_impl_function()
{
local prefix="$1"
shift
local fn="${prefix}_${os_name}${os_version}"
"$fn" "$@"
}
skip_checker_on_flag()
{
local name="$1"
local flag="$2"
if [ -f "$flag" ]; then
echo "$name was skipped due to flag file." >&2
exit $RET_SUCCESS
fi
}
skip_checker_on_env()
{
local name="$1"
local env="$2"
if [ -n "$env" ]; then
echo "$name was skipped due to environment variable." >&2
exit $RET_SUCCESS
fi
}
checker_main()
{
local fnprefix="$1"
shift
detect_platform
# try to execute checker only if all attributes are detected
[ -n "$os_name" -a -n "$os_version" ] || return $RET_SUCCESS
for checker in "${fnprefix}_${os_name}${os_version}" "${fnprefix}_${os_name}" "${fnprefix}"; do
if is_function_defined "$checker"; then
local rc=$RET_SUCCESS
"$checker" "$@" || rc=$?
[ "$(( $rc & $RET_FATAL ))" = "0" ] || return $RET_FATAL
[ "$(( $rc & $RET_WARN ))" = "0" ] || return $RET_WARN
return $rc
fi
done
return $RET_SUCCESS
}
#!/bin/sh
### Copyright 1999-2025. WebPros International GmbH. All rights reserved.
# If env variable PLESK_INSTALLER_ERROR_REPORT=path_to_file is specified then in case of error
# disk_space_check.sh writes single line json report into it with the following fields:
# - "stage": "diskspacecheck"
# - "level": "error"
# - "errtype": "notenoughdiskspace"
# - "volume": volume with not enough diskspace (e.g. "/")
# - "required": required diskspace on the volume, human readable (e.g. "600 MB")
# - "available": available diskspace on the volume, human readable (e.g. "255 MB")
# - "needtofree": amount of diskspace which should be freed on the volume, human readable (e.g. "345 MB")
# - "date": time of error occurance ("2020-03-24T06:59:43,127545441+0000")
# - "error": human readable error message ("There is not enough disk space available in the / directory.")
# Required values below for Full installation are in MB. See 'du -cs -BM /*' and 'df -Pm'.
required_disk_space_cloudlinux7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4400 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_cloudlinux8()
{
case "$1" in
/opt) echo 1200 ;;
/usr) echo 4400 ;;
/var) echo 700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos7()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4100 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_centos8()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 4500 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_virtuozzo7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel7()
{
required_disk_space_centos7 "$1"
}
required_disk_space_rhel8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_almalinux8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rocky8()
{
required_disk_space_centos8 "$1"
}
required_disk_space_rhel9()
{
case "$1" in
/opt) echo 500 ;;
/usr) echo 4000 ;;
/var) echo 800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_almalinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_almalinux10()
{
required_disk_space_almalinux9 "$1"
}
required_disk_space_cloudlinux9()
{
required_disk_space_rhel9 "$1"
}
required_disk_space_debian10()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2300 ;;
/var) echo 1700 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian11()
{
case "$1" in
/opt) echo 1500 ;;
/usr) echo 3100 ;;
/var) echo 1800 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian12()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_debian13()
{
case "$1" in
/opt) echo 2700 ;;
/usr) echo 2500 ;;
/var) echo 2200 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu18()
{
case "$1" in
/opt) echo 900 ;;
/usr) echo 1800 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu20()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 2900 ;;
/var) echo 1600 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu22()
{
case "$1" in
/opt) echo 1800 ;;
/usr) echo 3900 ;;
/var) echo 1900 ;;
/tmp) echo 100 ;;
esac
}
required_disk_space_ubuntu24()
{
case "$1" in
/opt) echo 3200 ;;
/usr) echo 1800 ;;
/var) echo 2400 ;;
/tmp) echo 100 ;;
esac
}
required_update_upgrade_disk_space()
{
case "$1" in
/opt) echo 100 ;;
/usr) echo 300 ;;
/var) echo 600 ;;
/tmp) echo 100 ;;
esac
}
clean_tmp()
{
local volume="$1"
local path="/tmp"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'systemd-tmpfiles --clean --prefix $path'"
systemd-tmpfiles --clean --prefix "$path" 2>&1
}
clean_yum()
{
local volume="$1"
local path="/var/cache/yum"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'yum clean all'"
yum clean all 2>&1
# The command above doesn't clean untracked repos (missing in configuration), clean if left > 2 Mb
[ "`du -sm "$path" | awk '{ print $1 }'`" -gt 2 ] || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
clean_dnf()
{
local volume="$1"
local path="/var/cache/dnf"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'dnf clean all'"
dnf clean all 2>&1
}
clean_apt()
{
local volume="$1"
local path="/var/cache/apt"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'apt-get clean'"
apt-get clean 2>&1
}
clean_journal()
{
local volume="$1"
local path="/var/log/journal"
is_path_on_volume "$path" "$volume" || return 0
# Note that --rotate may cause more space to be freed, but may also cause more space to be used
echo "Cleaning $path via 'journalctl --vacuum-time 1d'"
journalctl --vacuum-time 1d 2>&1
}
clean_ext_packages()
{
local volume="$1"
local path="$PRODUCT_ROOT_D/var/modules-packages"
is_path_on_volume "$path" "$volume" || return 0
echo "Cleaning $path via 'rm -rf $path/*'"
rm -rf "$path"/* 2>&1
}
# @param $1 target directory
mount_point()
{
df -Pm $1 | awk 'NR==2 { print $6 }'
}
# @param $1 target directory
available_disk_space()
{
df -Pm $1 | awk 'NR==2 { print $4 }'
}
is_path_on_volume()
{
local path="$1"
local volume="$2"
[ -d "$path" ] && [ "`mount_point "$path"`" = "$volume" ]
}
# @param $1 target directory
# @param $2 mode (install/upgrade/update)
req_disk_space()
{
if [ "$2" != "install" ]; then
required_update_upgrade_disk_space "$1"
return
fi
has_os_impl_function "required_disk_space" || {
echo "There are no requirements defined for $os_name$os_version." >&2
echo "Disk space check cannot be performed." >&2
exit $RET_WARN
}
call_os_impl_function "required_disk_space" "$1"
}
human_readable_size()
{
echo "$1" | awk '
function human(x) {
s = "MGTEPYZ";
while (x >= 1000 && length(s) > 1) {
x /= 1024; s = substr(s, 2);
}
# 0.05 below will make sure the value is rounded up
return sprintf("%.1f %sB", x + 0.05, substr(s, 1, 1));
}
{ print human($1); }'
}
# @param $1 target directory
# @param $2 required disk space
# @param $3 check only flag (don't emit errors)
check_available_disk_space()
{
local volume="$1"
local required="$2"
local check_only="${3:-}"
local available="$(available_disk_space "$volume")"
if [ "$available" -lt "$required" ]; then
local needtofree
needtofree="`human_readable_size $((required - available))`"
[ -n "$check_only" ] ||
make_error_report 'stage=diskspacecheck' 'level=error' 'errtype=notenoughdiskspace' \
"volume=$volume" "required=$required MB" "available=$available MB" "needtofree=$needtofree" \
<<-EOL
There is not enough disk space available in the $1 directory.
You need to free up $needtofree.
EOL
return "$RET_FATAL"
fi
}
# @param $1 target directory
# @param $2 required disk space
clean_and_check_available_disk_space()
{
if [ -n "$PLESK_INSTALLER_FORCE_CLEAN_DISK_SPACE" ] || ! check_available_disk_space "$@" --check-only; then
clean_disk_space "$1"
check_available_disk_space "$@"
fi
}
# Cleans up disk space on the volume
clean_disk_space()
{
local volume="$1"
for cleanup_func in clean_tmp clean_yum clean_dnf clean_apt clean_journal clean_ext_packages; do
"$cleanup_func" "$volume"
done
}
# @param $1 mode (install/upgrade/update)
clean_and_check_disk_space()
{
local mode="$1"
local shared=0
for target_directory in /opt /usr /var /tmp; do
local required=$(req_disk_space "$target_directory" "$mode")
[ -n "$required" ] || return "$RET_WARN"
if is_path_on_volume "$target_directory" "/"; then
shared="$((shared + required))"
else
clean_and_check_available_disk_space "$target_directory" "$required" || return $?
fi
done
clean_and_check_available_disk_space "/" "$shared" || return $?
}
checker_main 'clean_and_check_disk_space' "$1"

View File

@@ -0,0 +1,111 @@
<?php
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
// vim: set et :
require_once('sdk.php');
define('TARGET_VERSION', '18.0.74');
define('RESULT_NETWORK_PROBLEM', 1);
define('RESULT_ERROR', 2);
define('RESULT_LICENSE_PROBLEM', 3);
define('RESULT_LICENSE_OK', 4);
function finish($rc, $sure = true)
{
if ($rc !== 0) {
fwrite(STDERR, "\n");
if ($sure) {
fwrite(STDERR, "Your license key is not compatible with Plesk Obsidian.\n");
} else {
fwrite(STDERR, "Your license key may not be compatible with Plesk Obsidian.\n");
}
fwrite(STDERR, "You need to upgrade your license before updating Plesk.\n");
fwrite(STDERR, "For details, refer to the KB https://support.plesk.com/hc/en-us/articles/360023612594\n");
}
exit($rc);
}
$skipFlag = PRODUCT_VAR . DIRECTORY_SEPARATOR . "plesk-installer-skip-license-key-check.flag";
if (file_exists($skipFlag)) {
fwrite(STDERR, "Plesk license key upgrade availability check was skipped due to a flag file.\n");
exit(0);
}
if (!function_exists('of_get_key_by_product') || !function_exists('of_get_versions')) {
fwrite(STDERR, "Plesk license key upgrade availability check should be run on sw-engine only.\n");
exit(2);
}
foreach (["plesk-unified", "plesk-unix", "plesk-win"] as $prod) {
$key = of_get_key_by_product($prod);
if ($key !== false) {
break;
}
}
if ($key === false) {
fwrite(STDERR, "No Plesk license key was found. License upgrade check is skipped.\n");
finish(0);
}
$targetVersion = TARGET_VERSION;
$vers = of_get_versions($key); /* plesk >= 10.0.0 */
if (!is_array($vers)) {
$vers = [$vers];
}
$match = false;
foreach ($vers as $ver) {
if (!is_array($ver)) {
$match |= strtok($ver, ".") == strtok($targetVersion, ".");
} else {
$match |= ("any" == $ver[0] || version_compare($ver[0], $targetVersion) <= 0) &&
("any" == $ver[1] || version_compare($ver[1], $targetVersion) >= 0);
}
}
if ($match) {
fwrite(STDERR, "You do not need to upgrade the current license key.\n");
fwrite(STDOUT, "License upgrade check to $targetVersion can be skipped.\n");
fwrite(STDOUT, "Plesk versions compatible with the license key: " . preg_replace('/\n\s*/', '', var_export($vers, true)) . "\n");
finish(0);
}
if (!function_exists('ka_is_key_upgrade_available')) {
// Plesk 17.0
fwrite(STDERR, "Cannot check whether Plesk license key upgrade is available.\n");
finish(1, false);
}
$si = getServerInfo();
$result = ka_is_key_upgrade_available($prod, $targetVersion, $si);
$isConfused = false;
switch ($result['code']) {
case RESULT_LICENSE_OK:
fwrite(STDERR, "The licensing server accepted the key upgrade request.\n");
fwrite(STDERR, "License upgrade to $targetVersion is available.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(0);
case RESULT_NETWORK_PROBLEM:
fwrite(STDERR, "Unable to connect to the licensing server to check if license upgrade is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
finish(2, false);
case RESULT_LICENSE_PROBLEM:
fwrite(STDERR, "Warning: Your Plesk license key cannot be upgraded.\n");
fwrite(STDERR, "Response from the licensing server: {$result['message']}\n");
finish(2);
default:
$isConfused = true;
// fall-through
case RESULT_ERROR:
// This includes "Software Update Service (SUS) is not found for the given license key" case, but also many others.
fwrite(STDERR, "Failed to check whether a new license key is available.\n");
fwrite(STDERR, "Error message: {$result['message']}\n");
if ($isConfused) {
fwrite(STDERR, "Error code: {$result['code']}\n");
}
finish(2, !$isConfused);
}

Some files were not shown because too many files have changed in this diff Show More