#!/usr/bin/env bash set -euo pipefail root="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" oqs_module="$root/native/third-party/liboqs-php/build/oqsphp.so" skein_module="$root/native/third-party/php-skein/modules/skein.so" if [[ ! -f "$oqs_module" || ! -f "$skein_module" ]]; then echo "The modules have not been built. Run ./build-linux.sh first." >&2 exit 1 fi extension_dir="$(php-config --extension-dir)" php_version="$(php -r 'echo PHP_MAJOR_VERSION . \".\" . PHP_MINOR_VERSION;')" ini_dir="/etc/php/$php_version/mods-available" install -m 0755 "$oqs_module" "$extension_dir/oqsphp.so" install -m 0755 "$skein_module" "$extension_dir/skein.so" mkdir -p "$ini_dir" printf '%s\n' 'extension=skein.so' 'extension=oqsphp.so' \ > "$ini_dir/contractless-crypto.ini" if command -v phpenmod >/dev/null 2>&1; then phpenmod contractless-crypto fi php -m | grep -E '^(skein|oqsphp)$' echo "Contractless PHP crypto modules installed and enabled for PHP $php_version."