diff --git a/README.md b/README.md index 4676335..e68560e 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ Currently only Ubuntu is supported. After installation, CiviCRM is ready to use (mostly in a CI environment). However if you plan to use it for development, there are several utility scripts to help work: -- `bin/dev-config.sh`: Configure CiviCRM for development. +- `bin/dev-config.sh`: Configure CiviCRM for development. Install some development tools. ``` dev-config.sh [INSTALL_DIR] diff --git a/bin/dev-config.sh b/bin/dev-config.sh index 1bcf5f7..cf20148 100755 --- a/bin/dev-config.sh +++ b/bin/dev-config.sh @@ -28,6 +28,24 @@ install_dir="${1:-${base_dir}}" install_dir=$(realpath "${install_dir}") cv_params=(--no-interaction "--cwd=${install_dir}") +print-status Install developer tools... +tmp_file=$(mktemp) +curl -LsS -o "${tmp_file}" "${url_php_cs_fixer}" +echo "${sha_php_cs_fixer} ${tmp_file}" | sha256sum --check --strict --status - +sudo cp --no-preserve=mode "${tmp_file}" "${local_bin}/php-cs-fixer" +sudo curl -LsS -o "${local_bin}/civix" "${url_civix}" +sudo curl -LsS -o "${local_bin}/civistrings" "${url_civistrings}" +sudo chmod +x "${local_bin}/php-cs-fixer" +sudo chmod +x "${local_bin}/civix" +sudo chmod +x "${local_bin}/civistrings" +print-finish + +print-header Verify developer tools version... +php-cs-fixer --version +civix --version +civistrings --version +print-finish + print-status Update civicrm.settings.php... sed -i \ -e "/(\!defined('CIVICRM_TEMPLATE_COMPILE_CHECK'))/,+2 s@^//@@" \ diff --git a/bin/prepare.sh b/bin/prepare.sh index 987ff99..77b4d9f 100755 --- a/bin/prepare.sh +++ b/bin/prepare.sh @@ -35,7 +35,7 @@ print-finish print-header Install MariaDB... curl -LsS -O https://r.mariadb.com/downloads/mariadb_repo_setup -echo "${mariadb_repo_setup_checksum} mariadb_repo_setup" | sha256sum --check --strict - +echo "${mariadb_repo_setup_checksum} mariadb_repo_setup" | sha256sum --check --strict --status - sudo bash mariadb_repo_setup --mariadb-server-version="${mariadb_version}" sudo apt-get --quiet install --yes --no-install-recommends --no-upgrade mariadb-server mariadb-client sudo mysql_install_db --user=mysql @@ -67,13 +67,16 @@ php --version print-finish print-status Install PHP tools... -sudo curl -LsS -o "${local_bin}/composer" "${url_composer}" +tmp_file=$(mktemp) +curl -LsS -o "${tmp_file}" "${url_composer}" +echo "${sha_composer} ${tmp_file}" | sha256sum --check --strict --status - +sudo cp --no-preserve=mode "${tmp_file}" "${local_bin}/composer" sudo curl -LsS -o "${local_bin}/cv" "${url_cv}" sudo chmod +x "${local_bin}/composer" sudo chmod +x "${local_bin}/cv" print-finish -print-header PHP tools version... +print-header Verify PHP tools version... composer --version cv --version print-finish diff --git a/cfg/install.cfg b/cfg/install.cfg index 88ca7a8..6f527b6 100644 --- a/cfg/install.cfg +++ b/cfg/install.cfg @@ -49,9 +49,17 @@ php_xdebug_mode=coverage # Downloaded binaries location local_bin=/usr/local/bin # Composer URL -url_composer=https://getcomposer.org/download/2.5.5/composer.phar +url_composer=https://getcomposer.org/download/2.7.6/composer.phar +sha_composer=29dc9a19ef33535db061b31180b2a833a7cf8d2cf4145b33a2f83504877bba08 # CV url url_cv=https://download.civicrm.org/cv/cv.phar +# civix url +url_civix=https://download.civicrm.org/civix/civix.phar +# civistrings url +url_civistrings=https://download.civicrm.org/civistrings/civistrings.phar +# php-cs-fixer url +url_php_cs_fixer=https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases/download/v3.38.2/php-cs-fixer.phar +sha_php_cs_fixer=cb839aee98c0f8928a5449a921c3e70b5b3fea3f15cda5e8f736da32a6b99ddd ## CiviCRM ##########