diff options
Diffstat (limited to 'wizard')
-rw-r--r-- | wizard/index.php | 153 |
1 files changed, 89 insertions, 64 deletions
diff --git a/wizard/index.php b/wizard/index.php index c77e7066..6eaa2331 100644 --- a/wizard/index.php +++ b/wizard/index.php @@ -8,8 +8,8 @@ <link rel="shortcut icon" href="/favicon.ico" /> </head> <?php -define('FC_EOL', 38); -define('FC_DEV', 41); +define('FC_EOL', 39); +define('FC_DEV', 42); define('EL_EOL', 7); define('EL_DEV', 10); define('PHP_SEC', '8.1'); @@ -17,78 +17,68 @@ define('EPEL_DEV', 2); // 0 missing, 1 partially populated, 2 mostly full define('COUNTER', __DIR__ . "/counter.txt"); $osvers = [ + 'RHEL 10' => ['8.3'], 'RHEL 9' => ['8.0', '8.1', '8.2'], 'RHEL 8' => ['7.4', '8.0', '8.2'], -// 'RHEL 7' => '5.4', + 'CentOS 10' => ['8.3'], 'CentOS 9' => ['8.0', '8.1', '8.2'], -// 'CentOS 8' => ['7.4', '8.0', '8.2'], -// 'CentOS 7' => '5.4', 'EL 9' => ['8.0', '8.1', '8.2'], 'EL 8' => ['7.4', '8.0', '8.2'], -// 'EL 7' => '5.4', + 'Fedora 41' => '8.3', 'Fedora 40' => '8.3', 'Fedora 39' => '8.2', - 'Fedora 38' => '8.2', ]; $osmin = [ + 'RHEL 10' => '7.4', 'RHEL 9' => '7.4', 'RHEL 8' => '5.6', -// 'RHEL 7' => '5.4', + 'CentOS 10' => '7.4', 'CentOS 9' => '7.4', -// 'CentOS 8' => '5.6', -// 'CentOS 7' => '5.4', 'EL 9' => '7.4', 'EL 8' => '5.6', -// 'EL 7' => '5.4', + 'Fedora 41' => '7.4', 'Fedora 40' => '7.4', 'Fedora 39' => '7.4', - 'Fedora 38' => '7.4', ]; $osminbase = [ + 'RHEL 10' => '7.4', 'RHEL 9' => '7.4', 'RHEL 8' => '7.2', -// 'RHEL 7' => '5.4', + 'CentOS 10' => '7.4', 'CentOS 9' => '7.4', -// 'CentOS 8' => '7.2', -// 'CentOS 7' => '5.4', 'EL 9' => '7.4', 'EL 8' => '7.2', -// 'EL 7' => '5.4', + 'Fedora 41' => '7.4', 'Fedora 40' => '7.4', 'Fedora 39' => '7.4', - 'Fedora 38' => '7.4', ]; $osmax = [ + 'RHEL 10' => '8.4', 'RHEL 9' => '8.4', 'RHEL 8' => '8.4', -// 'RHEL 7' => '8.3', + 'CentOS 10' => '8.4', 'CentOS 9' => '8.4', -// 'CentOS 8' => '8.3', -// 'CentOS 7' => '8.3', 'EL 9' => '8.4', 'EL 8' => '8.4', -// 'EL 7' => '8.3', + 'Fedora 41' => '8.4', 'Fedora 40' => '8.4', 'Fedora 39' => '8.4', - 'Fedora 38' => '8.4', ]; $osname = [ ':rhel' => 'Red Hat Enterprise Linux', - 'RHEL 9' => 'RHEL 9.4', // (maintained until May 31, 2032) - 'RHEL 8' => 'RHEL 8.9', // (maintained until May 31, 2029) -// 'RHEL 7' => 'RHEL 7.9 (maintained until June 30, 2024)', - ':centos' => 'CentOS Stream, CentOS Linux', + 'RHEL 10' => 'RHEL 10.0-Beta (Development version)', + 'RHEL 9' => 'RHEL 9.5', // (maintained until May 31, 2032) + 'RHEL 8' => 'RHEL 8.10', // (maintained until May 31, 2029) + ':centos' => 'CentOS Stream', + 'CentOS 10' => 'CentOS Stream 10', 'CentOS 9' => 'CentOS Stream 9', // (maintained until May 31, 2027) -// 'CentOS 8' => 'CentOS Stream 8 (maintained until May 31, 2024)', -// 'CentOS 7' => 'CentOS 7 (maintained until June 30, 2024)', ':clone' => 'Alma Linux, Rocky Linux and other clones', 'EL 9' => 'EL 9', 'EL 8' => 'EL 8', -// 'EL 7' => 'EL 7 (maintained until June 30, 2024)', ':fedora' => 'Fedora Linux', + 'Fedora 41' => 'Fedora 41', 'Fedora 40' => 'Fedora 40', - 'Fedora 39' => 'Fedora 39', - 'Fedora 38' => 'Fedora 38 (End of Life since May 21, 2024)', + 'Fedora 39' => 'Fedora 39 (EOL since November 26, 2024)', ]; $types = [ 'base' => 'Default / Single version (simplest way)', @@ -102,7 +92,7 @@ $arches = [ ]; $phpvers = [ // use false when only SCL - '8.4' => false, + '8.4' => 'remi-php84', '8.3' => 'remi-php83', '8.2' => 'remi-php82', '8.1' => 'remi-php81', @@ -117,13 +107,13 @@ $phpvers = [ '5.4' => 'remi-php54', ]; $phpname = [ - ':devel' => 'Development version, not ready for production', - '8.4' => '8.4.0alpha1', +// ':devel' => 'Development version, not ready for production', ':stable' => 'Stable versions - usage recommended', - '8.3' => '8.3.9 (active support until December 2025)', - '8.2' => '8.2.21 (active support until December 2024)', + '8.4' => '8.4.1 (active support until November 2026)', + '8.3' => '8.3.14 (active support until December 2025)', + '8.2' => '8.2.26 (active support until December 2024)', ':secure' => 'Security only versions', - '8.1' => '8.1.29 (security only support until December 2025)', + '8.1' => '8.1.31 (security only support until December 2025)', ':eol' => 'Deprecated versions - usage discouraged', '8.0' => '8.0.30 (no upstream support since November 2023)', '7.4' => '7.4.33 (no upstream support since November 2022)', @@ -132,9 +122,13 @@ $phpname = [ '7.1' => '7.1.33 (no upstream support since December 2019)', '7.0' => '7.0.33 (no upstream support since December 2018)', '5.6' => '5.6.40 (no upstream support since January 2019)', -// '5.5' => '5.5.38 (no upstream support since July 2016)', -// '5.4' => '5.4.45 (no upstream support since September 2015)', ]; +$phptest = [ + '8.4' => '8.4.2RC1', + '8.3' => '8.3.15RC1', + '8.2' => '8.2.27RC1', +]; + $php = (isset($_POST['php']) && isset($phpvers[$_POST['php']]) ? $_POST['php'] : false); $os = (isset($_POST['os']) && isset($osvers[$_POST['os']]) ? $_POST['os'] : false); $type = (isset($_POST['type']) && isset($types[$_POST['type']]) ? $_POST['type'] : false); @@ -227,8 +221,8 @@ if ($os) { } else if (($dist == 'Fedora' && $ver>=FC_DEV) || ($dist != 'Fedora' && $ver>=EL_DEV)) { printf("<li><img src='notice.png'> <b>WARNING: %s</b> is a <b>development</b> version, not ready for production.</li><br />", $os); - } else if ($ver == 7 || $ver == 38 || ($dist=="CentOS" && $ver == 8)) { - if ($ver == 38) $days = mktime(0, 0, 0, 5, 21, 2024); + } else if ($ver == 7 || $ver == 39 || ($dist=="CentOS" && $ver == 8)) { + if ($ver == 39) $days = mktime(0, 0, 0, 11, 29, 2024); else if ($ver == 9) $days = mktime(0, 0, 0, 5, 31, $dist=="CentOS" ? 2027 : 2032); else if ($ver == 8) $days = mktime(0, 0, 0, 5, 31, $dist=="CentOS" ? 2024 : 2029); else if ($ver == 7) $days = mktime(0, 0, 0, 6, 30, 2024); @@ -276,15 +270,18 @@ if ($arch == 'ppc64le' || $arch == 's390x') { } if ($php && $os && $type && !$err) { + $disp = explode(' ', $phpname[$php], 2)[0]; if ($dist == 'Fedora') { - $mod = ($ver >= 29); + $mod = ($ver >= 29); + $dnf5 = ($ver >= 41); $yum = 'dnf'; printf("<li>Command to install the Remi repository configuration package:"); printf("<pre> $yum install https://rpms.remirepo.net/fedora/remi-release-%d.rpm</pre>", $ver); printf("</li><br />"); } else { - $mod = ($ver >= 8); + $mod = ($ver >= 8); + $dnf5 = false; if ($ver >= 8) { $yum = 'dnf'; } else { @@ -293,11 +290,16 @@ if ($php && $os && $type && !$err) { switch ($os) { case 'RHEL 8': case 'RHEL 9': + case 'RHEL 10': printf("<li>Command to enabled the <b>CRB</b> repository:"); printf("<pre> subscription-manager repos --enable codeready-builder-for-rhel-%d-%s-rpms</pre></li><br />", $ver, $arch); break; case 'CentOS 8': case 'CentOS 9': + case 'CentOS 10': + case 'EL 8': + case 'EL 9': + case 'EL 10': printf("<li>Command to enabled the <b>CRB</b> repository:"); printf("<pre> dnf config-manager --set-enabled %s</pre></li><br />", $ver < 9 ? 'powertools' : 'crb'); break; @@ -349,8 +351,8 @@ if ($php && $os && $type && !$err) { printf("<li>Sorry, but PHP version older than <b>%s</b> are not available for <b>%s</b>, try multiple versions.</li><br />", $min, $os); } else { - if ($dist == 'Fedora' && version_compare($php, $tmp=(is_array($osvers[$os]) ? $osvers[$os][0] : $osvers[$os]), '=')) { - $repo = 'remi'; + if ($mod) { + $repo = 'remi-modular'; } else { $repo = $phpvers[$php]; } @@ -362,17 +364,36 @@ if ($php && $os && $type && !$err) { } if ($mod) { - printf("<li>PHP version <b>%s</b> packages are available for <b>%s</b> in <b>remi-modular</b> repository</li><br />", $php, $os); - - printf("<li>You have to enable the module stream for $php, and update the old version if installed:"); - printf("<pre> dnf module switch-to php:remi-%s</pre>", $php); - printf("</li><br />"); - - printf("<li>If no version is installed, command to <b>install</b> the php stream default profile:"); - printf("<pre> dnf module install php:remi-%s</pre>", $php); - printf("</li><br />"); + printf("<li>PHP version <b>%s</b> packages are available for <b>%s</b> in <b>remi-modular</b> repository</li><br />", $disp, $os); + + if ($dnf5) { // dnf v5 have minimal support for modularity https://bugzilla.redhat.com/2305955 + printf("<li>You have to enable the module stream for $php:"); + printf("<pre> dnf module reset php</pre>"); + printf("<pre> dnf module enable php:remi-%s</pre>", $php); + printf("</li><br />"); + + printf("<li>If no version is installed, command to <b>install</b> the php stream default profile:"); + printf("<pre> dnf install php-cli php-fpm php-mbstring php-xml</pre>"); + printf("</li><br />"); + + printf("<li>If an older version is installed, command to <b>upgrade</b> the php stack:"); + printf("<pre> dnf update</pre>"); + printf("</li><br />"); + + printf("<li>If an newer version is installed, command to <b>downgrade</b> the php stack:"); + printf("<pre> dnf downgrade php-common</pre>"); + printf("</li><br />"); + } else { + printf("<li>Command to enable the module stream for $php, if a version is already installed this will also upgrade/downgrade it:"); + printf("<pre> dnf module switch-to php:remi-%s</pre>", $php); + printf("</li><br />"); + + printf("<li>If no version is installed, command to <b>install</b> the php stream default profile:"); + printf("<pre> dnf module install php:remi-%s</pre>", $php); + printf("</li><br />"); + } } else { - printf("<li>PHP version <b>%s</b> packages are available for <b>%s</b> in <b>%s</b> repository</li><br />", $php, $os, $repo); + printf("<li>PHP version <b>%s</b> packages are available for <b>%s</b> in <b>%s</b> repository</li><br />", $disp, $os, $repo); printf("<li>Command to enable the repository:"); printf("<pre> yum-config-manager --disable 'remi-php*'"); @@ -396,13 +417,13 @@ if ($php && $os && $type && !$err) { if (version_compare($php, '7.0', '>=')) { printf("<li>Command to install <b>testing</b> packages:"); - if ($dist != 'Fedora' && $mod) { - printf("<pre> $yum --enablerepo=remi-modular-test install php-xxx</pre>", $repo); - } else { - printf("<pre> $yum --enablerepo=%s-test install php-xxx</pre>", $repo); - } + printf("<pre> $yum --enablerepo=%s-test install php-xxx</pre>", $repo); printf("</li><br />"); } + if (isset($phptest[$php])) { + printf("<li>PHP version <b>%s</b> packages are available in the testing repository.", $phptest[$php]); + printf("</li><br />"); + } printf("<li>Command to check the installed version and available extensions:"); printf("<pre> php --version\n php --modules</pre>"); @@ -431,7 +452,7 @@ if ($php && $os && $type && !$err) { printf("<li>Some common <b>dependencies</b> are available in <b>remi</b> repository, which need to be enabled"); printf("<pre> dnf config-manager --set-enabled remi</pre></li><br />"); - printf("<li>The <b>%s</b> collection is available in the <b>$repo</b> repository</li><br />", $scl); + printf("<li>The <b>%s</b> collection is available in the <b>$repo</b> repository, and provides PHP version <b>%s</b></li><br />", $scl, $disp); printf("<li>Command to install:"); printf("<pre> $yum install %s</pre>", $scl); printf("</li><br />"); @@ -454,6 +475,10 @@ if ($php && $os && $type && !$err) { printf("<pre> $yum --enablerepo=remi-test install %s-php-xxx</pre>", $scl); printf("</li><br />"); } + if (isset($phptest[$php])) { + printf("<li>PHP version <b>%s</b> packages are available in the testing repository.", $phptest[$php]); + printf("</li><br />"); + } printf("<li>Command to check the installed version and available extensions:"); printf("<pre> %s --version\n %s --modules</pre>", $scl, $scl); @@ -489,14 +514,14 @@ if ($php && $os && $type && !$err) { <li><a href="https://blog.remirepo.net/pages/English-FAQ" class="nlink" title="F.A.Q.">F.A.Q.</a></li> <li><a href="https://github.com/remicollet/remirepo/issues" class="nlink" title="Bug tracker">Bug tracker</a></li> <li><a href="https://blog.remirepo.net/post/2021/05/20/remirepo-IRC-channel-on-Libera-network" class="nlink" title="IRC channel">IRC channel</a></li> - <li><a href='https://twitter.com/RemiRepository'>Repository twitter account</a></li> + <li><a href='https://bsky.app/profile/remirepo.bsky.social'>@remirepo.bsky.social</a> on <b>BlueSky</b></li> <li><a href='https://discord.gg/qwC6kM2dcE'>Discord server</a></li> - <li><?php +<!-- <li><?php $day = (time() - mktime(0,0,0,12,8,2015)) / 86400; $rate = $counter / $day; printf("<b>%d answers</b> given since Dec 2015<br><b>%d answers</b> per day", $counter, $rate); ?></li> - </ul><br /><br /><br /> +--> </ul><br /><br /><br /> <form action="https://www.paypal.com/cgi-bin/webscr" method="post"><div> <input type="hidden" name="cmd" value="_s-xclick" /> <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIHLwYJKoZIhvcNAQcEoIIHIDCCBxwCAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwDQYJKoZIhvcNAQEBBQAEgYCCgxEE65DWq8388bFX5PaEG8cAOPUkBi8wbB8QZowA33/RG2ZL2AMMMYPuXfFUDB/oa1huOaWmTdoyi9vFuBYw8bxYniwXlkoZWOABdYIckvy5KMJX3bK8WU6wDLlVJvnPy6+Vp/nDK0c823zM1ZHX5ZEiMtO7ddCH4h5ckGVH6DELMAkGBSsOAwIaBQAwgawGCSqGSIb3DQEHATAUBggqhkiG9w0DBwQI4M5ItoPa/1iAgYh/cDUWOuv2PZOUYssgGD+Ntl6uQnpQX6KxqFpvIrbe6RwvDQncvvczSuXI+I7V2iWa/B5SMJnRXlbImrgnJrn6sFITNYzn0396jk89sd7auNYmP7zIKHxzUUNkiT3JeEagIJeHyiPSkVEcwYLFB5/sUVzY+8PtAbp+wwC5t7Q7AiHJiG9wY4UwoIIDhzCCA4MwggLsoAMCAQICAQAwDQYJKoZIhvcNAQEFBQAwgY4xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLUGF5UGFsIEluYy4xEzARBgNVBAsUCmxpdmVfY2VydHMxETAPBgNVBAMUCGxpdmVfYXBpMRwwGgYJKoZIhvcNAQkBFg1yZUBwYXlwYWwuY29tMB4XDTA0MDIxMzEwMTMxNVoXDTM1MDIxMzEwMTMxNVowgY4xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLUGF5UGFsIEluYy4xEzARBgNVBAsUCmxpdmVfY2VydHMxETAPBgNVBAMUCGxpdmVfYXBpMRwwGgYJKoZIhvcNAQkBFg1yZUBwYXlwYWwuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBR07d/ETMS1ycjtkpkvjXZe9k+6CieLuLsPumsJ7QC1odNz3sJiCbs2wC0nLE0uLGaEtXynIgRqIddYCHx88pb5HTXv4SZeuv0Rqq4+axW9PLAAATU8w04qqjaSXgbGLP3NmohqM6bV9kZZwZLR/klDaQGo1u9uDb9lr4Yn+rBQIDAQABo4HuMIHrMB0GA1UdDgQWBBSWn3y7xm8XvVk/UtcKG+wQ1mSUazCBuwYDVR0jBIGzMIGwgBSWn3y7xm8XvVk/UtcKG+wQ1mSUa6GBlKSBkTCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb22CAQAwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOBgQCBXzpWmoBa5e9fo6ujionW1hUhPkOBakTr3YCDjbYfvJEiv/2P+IobhOGJr85+XHhN0v4gUkEDI8r2/rNk1m0GA8HKddvTjyGw/XqXa+LSTlDYkqI8OwR8GEYj4efEtcRpRYBxV8KxAW93YDWzFGvruKnnLbDAF6VR5w/cCMn5hzGCAZowggGWAgEBMIGUMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbQIBADAJBgUrDgMCGgUAoF0wGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTAwNjA0MDU1NTEwWjAjBgkqhkiG9w0BCQQxFgQUo6DkEDxwjY+LFKOw0Vcxh7zRkPYwDQYJKoZIhvcNAQEBBQAEgYCzm9l6X7egJAMom1ZVdV1MqM30cxNGrQeQNQhgj8NnNs4N8uJ+sGeEXDlLdkkUJS4mUlAG6JwvOcCGr++NJUF+qmpQmX7YzbjBnt3pnWfcCrtYVkgCg/d0M+0ZEWTQEP3aMqIL/zeg70LYhg4/kgfR2jrN2IwxkChLoiZi6bQulQ==-----END PKCS7----- |