'5.4', 'RHEL 6' => '5.3', 'CentOS 7' => '5.4', 'CentOS 6' => '5.3', 'Fedora 28' => '7.2', 'Fedora 27' => '7.1', 'Fedora 26' => '7.1', 'Fedora 25' => '7.0', ]; $osmin = [ 'RHEL 7' => '5.4', 'RHEL 6' => '5.4', 'CentOS 7' => '5.4', 'CentOS 6' => '5.4', 'Fedora 28' => '5.6', 'Fedora 27' => '5.6', 'Fedora 26' => '5.6', 'Fedora 25' => '5.4', ]; $osmax = [ 'RHEL 7' => '7.3', 'RHEL 6' => '7.3', 'CentOS 7' => '7.3', 'CentOS 6' => '7.3', 'Fedora 28' => '7.3', 'Fedora 27' => '7.3', 'Fedora 26' => '7.2', 'Fedora 25' => '7.2', ]; $osname = [ 'RHEL 7' => 'RHEL-7', 'RHEL 6' => 'RHEL-6 (maintained until March 2020)', 'CentOS 7' => 'CentOS 7', 'CentOS 6' => 'CentOS 6 (maintained until March 2020)', 'Fedora 28' => 'Fedora 28', 'Fedora 27' => 'Fedora 27', 'Fedora 26' => 'Fedora 26 (no support since June 1st 2018)', 'Fedora 25' => 'Fedora 25 (no support since December 12th 2017)', ]; $grpname = [ 'RHEL' => 'Red Hat Enterprise Linux', 'CentOS' => 'CentOS', 'Fedora' => 'Fedora', ]; $types = [ 'base' => 'Default / Single version (simplest way)', 'scl' => 'Multiple versions simultaneously', ]; $phpvers = [ '7.3' => 'remi-php73', '7.2' => 'remi-php72', '7.1' => 'remi-php71', '7.0' => 'remi-php70', '5.6' => 'remi-php56', '5.5' => 'remi-php55', '5.4' => 'remi-php54', ]; $phpname = [ '7.3' => '7.3.0beta2 (Please DO NOT use this version in production, it is an early test version.)', '7.2' => '7.2.9 (active support until Nov 2019)', '7.1' => '7.1.21 (active support until Dec 2018)', '7.0' => '7.0.31 (security only support until Dec 2018)', '5.6' => '5.6.37 (security only support until Dec 2018)', '5.5' => '5.5.38 (no upstream support since July 2016)', '5.4' => '5.4.45 (no upstream support since Sept 2015)', ]; $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); ?>

Remi's RPM repository - Configuration wizard

Blog | Forums | Repository | Wizard

Operating system and version selection

  • Operating system:

  • Wanted PHP version:

  • Type of installation:

Wizard answer

    Debug: $os, $type, $php (%s)

    ", print_r($_POST, true)); $err = false; if ($os) { list($dist, $ver) = explode(' ', $os, 2); if (($dist == 'Fedora' && $ver<=FC_EOL) || ($dist != 'Fedora' && $ver<=EL_EOL)) { printf("
  • %s have reached its end of life, upgrade is strongly recommended.

  • ", $os); } if (($dist == 'Fedora' && $ver>=FC_DEV) || ($dist != 'Fedora' && $ver>=EL_DEV)) { printf("
  • WARNING: %s is a development version, not ready for production.

  • ", $os); } } if ($php && $os) { printf("
  • %s provides PHP version %s in its official repository

  • ", $os, $osvers[$os]); if (version_compare($php, '5.6', '<')) { printf("
  • WARNING, PHP version %s have reached its eod of life, despite packages have security fix, you should consider a maintained version.

  • ", $php); } } if ($php && $os && $type && !$err) { if ($dist == 'Fedora') { $yum = 'dnf'; printf("
  • Command to install the Remi repository configuration package:"); printf("
        $yum install http://rpms.remirepo.net/fedora/remi-release-%d.rpm
    ", $ver); printf("

  • "); } else { $yum = 'yum'; printf("
  • Command to install the EPEL repository configuration package:"); printf("
        $yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-%d.noarch.rpm
    ", $ver); printf("

  • Command to install the Remi repository configuration package:"); printf("
        $yum install http://rpms.remirepo.net/enterprise/remi-release-%d.rpm
    ", $ver); printf("

  • "); printf("
  • Command to install the yum-utils package (for the yum-config-manager command):"); printf("
        $yum install yum-utils
    "); printf("

  • "); if ($dist == 'RHEL') { printf("
  • On RHEL you (probably) need to enable the optional channel for some dependencies.

  • "); printf("
  • Command to enable:"); if ($ver == 7) { printf("
        subscription-manager repos --enable=rhel-7-server-optional-rpms
    "); } else { printf("
        rhn-channel --add --channel=rhel-$(uname -i)-server-optional-6
    "); } printf("

  • "); } } if ($type == 'base') { printf("
  • You want a single version which means replacing base packages from the distribution

  • "); printf("
  • Packages have the same name than the base repository, ie php-*

  • "); if (version_compare($php, $osmax[$os], '>')) { printf("
  • Sorry, but PHP version greater than %s are not available for %s.

  • ", $osmax[$os], $os); } else if (!$phpvers[$php]) { printf("
  • Sorry, but PHP version %s are not yet available for %s as single version, try multiple versions.

  • ", $php, $os); } else if (version_compare($php, $osvers[$os], '<')) { printf("
  • Sorry, but PHP version older than %s are not available for %s, try multiple versions.

  • ", $osvers[$os], $os); } else { if ($dist == 'Fedora' && version_compare($php, $osvers[$os], '=')) { $repo = 'remi'; } else { $repo = $phpvers[$php]; } if ($dist != 'Fedora') { printf("
  • Some common dependencies are available in remi-safe repository, which is enabled by default

  • "); } else if ($repo != 'remi') { printf("
  • Some common dependencies are available in remi repository, which need to be enabled"); printf("
        dnf config-manager --set-enabled remi

  • "); } printf("
  • PHP version %s packages are available for %s in %s repository

  • ", $php, $os, $repo); printf("
  • If the priorities plugin is enabled, ensure %s have higher priority (a lower value) than %s

  • ", $repo, ($dist == 'Fedora' ? 'fedora' : 'base and updates')); printf("
  • Command to enable the repository:"); if ($dist == 'Fedora') { printf("
        dnf config-manager --set-enabled %s
    ", $repo); } else { printf("
        yum-config-manager --enable %s
    ", $repo); } printf("

  • "); printf("
  • Command to upgrade (the repository only provides PHP):"); printf("
        $yum update
    "); printf("

  • "); printf("
  • Command to install additional packages:"); printf("
        $yum install php-xxx
    "); printf("

  • "); if (version_compare($php, '7.0', '>=')) { printf("
  • Command to install testing packages:"); printf("
        $yum --enablerepo=%s-test install php-xxx
    ", $repo); printf("

  • "); } printf("
  • Command to check the installed version and available extensions:"); printf("
        php --version\n    php --modules
    "); printf("

  • "); } $counter++; @file_put_contents(COUNTER, "$counter\n"); } else { printf("
  • You want multiple versions which means using a Software Collection

  • "); $scl='php'.str_replace('.', '', $php); if (version_compare($php, $osmax[$os], '>')) { printf("
  • Sorry, but PHP version greater than %s are not available for %s.

  • ", $osmax[$os], $os); } else if (version_compare($php, $osmin[$os], '<')) { printf("
  • Sorry, but PHP version older than %s are not available for %s.

  • ", $osmin[$os], $os); } else { if (!$phpvers[$php]) { printf("
  • WARNING: PHP version %s is a development version, not ready for production.

  • ", $php); } if ($dist=='Fedora') { $repo = ($phpvers[$php] ? 'remi' : 'remi-test'); // Dev version printf("
  • The %s collection is available in the $repo repository

  • ", $scl); printf("
  • Command to install:"); printf("
        $yum --enablerepo=$repo install %s
    ", $scl); printf("

  • "); printf("
  • Command to install additional packages:"); printf("
        $yum --enablerepo=$repo install %s-php-xxx
    ", $scl); } else { $repo = ($phpvers[$php] ? 'remi-safe' : 'remi-test'); // Dev version $opt = ($phpvers[$php] ? '' : '--enablerepo=remi-test'); // Dev version printf("
  • The %s collection is available in the $repo repository

  • ", $scl); printf("
  • Command to install:"); printf("
        $yum $opt install %s
    ", $scl); printf("

  • "); printf("
  • Command to install additional packages:"); printf("
        $yum $opt install %s-php-xxx
    ", $scl); } printf("

  • "); if ($phpvers[$php]) { printf("
  • Command to install testing packages:"); printf("
        $yum --enablerepo=remi-test install %s-php-xxx
    ", $scl); printf("

  • "); } printf("
  • Command to check the installed version and available extensions:"); printf("
        %s --version\n    %s --modules
    ", $scl, $scl); printf("

  • "); } $counter++; @file_put_contents(COUNTER, "$counter\n"); } } else if (!$os) { echo "
  • Please select the operating system you are running.

  • "; } else if (!$php) { echo "
  • Please select PHP version you want to use.

  • "; } else if (!$err) { echo "
  • Please select installation type

  • "; } ?>