]> git.pld-linux.org Git - packages/phpenv.git/blob - phpenv-system-php
phpenv-system-php: more reliable detect (use package name as input)
[packages/phpenv.git] / phpenv-system-php
1 #!/bin/sh
2 # detect system php packages and create their versions
3 # inspired by rbenv-alternatives:
4 # https://github.com/terceiro/rbenv-alternatives
5 # Author: Elan Ruusamäe <glen@pld-linux.org>
6 # Date: 2014-11-30
7
8 set -e
9 [ -n "$PHPENV_DEBUG" ] && set -x
10
11 if [ "$1" = '--version' ]; then
12         echo '0.4.0'
13         exit 0
14 fi
15
16 if ! which rpm >/dev/null; then
17         echo "Sorry, it seems like you do not have rpm available on your PATH."
18         echo "Are you sure this is a RPM based system?"
19         exit 1
20 fi
21
22 for pkg in $(rpm -qa 'php*-cli'); do
23         version=$(rpm -q --qf '%{VERSION}' $pkg)
24         # use php-X.Y only for version selection
25         version=${version%.${version#*.*.}}-pld
26         php=$(rpm -ql $pkg | grep /usr/bin)
27         echo "* Found $php (via $pkg) using $version as version"
28
29         if [ -d "${PHPENV_ROOT}/versions/$version" ]; then
30                 echo "Skipping $version, it already exists"
31         else
32                 rm -rf "${PHPENV_ROOT}/versions/$version"
33                 mkdir -p "${PHPENV_ROOT}/versions/$version/bin"
34                 ln -s "$php" "${PHPENV_ROOT}/versions/$version/bin/php"
35                 echo "Added $version"
36         fi
37 done
This page took 0.074816 seconds and 3 git commands to generate.