php composer 的安裝方式更新

印象中 composer 很好裝的,怎麼官網的說明變得多了,卻也感覺讓一個簡單的安裝變得複雜,做為開源工具的使用者,又要開始游牧了,這種生態好像就像是開源工具使用者的 DNA ,自然就難以擺脫游魂一般的命運了

如果直覺的依據官網提供的裝法其實很簡單:把這裏的4行複製貼上到終端機的命令列中:
https://getcomposer.org/download/
$cd
---------
$php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
$php composer-setup.php
$php -r "unlink('composer-setup.php');"
---------

又參考這個:https://www.digitalocean.com/community/tutorials/how-to-install-and-use-composer-on-ubuntu-18-04
一步一步跟著作也可以裝好
But,

人就是懶又貪,還看到官網寫著,可以用程式來安裝,在這裏: https://getcomposer.org/doc/faqs/how-to-install-composer-programmatically.md 
得再多試幾次,我真是愛自找麻煩的傢伙


工作環境:
Windows 10 + virtualbox
guest: Ubuntu server 18

根本的原因是現在 ubuntu server 裝好的時侯是沒有安裝任何 php 相關套件的,先把這個部份補起來,因為現在安裝的時侯已經沒有 LAMP 可以裝了
$sudo apt install curl php-cli unzip

還有一個很重要的網站是這裏:這裏是告訴我們到底目前 composer 的公鑰是什麼
https://composer.github.io/pubkeys.html
  這個網址目前也提供了取得公鑰的位址
  https://composer.github.io/installer.sig
  https://composer.github.io/installer.sha384sum

因為不想再用 php composer.phar 這種有點麻煩的方式使用 composer ,所以把 composer 裝成所有的人都可以用
$sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
這一步就非常的重要

終於,得到了一個新的安裝用的檔案(如下所附),記得,要給這個檔案執行的權限,用來把上述的事情一次做完
$vim install_composer.sh
$chmod  +x install_composer.sh
$./install_composer.sh


開心
收工!

---------------------------- install_composer.sh ----------------------------
 #!/bin/sh

EXPECTED_SIGNATURE="$(wget -q -O - https://composer.github.io/installer.sig)"
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ACTUAL_SIGNATURE="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"

if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
then
    >&2 echo 'ERROR: Invalid installer signature'
    rm composer-setup.php
    exit 1
fi

php composer-setup.php --install-dir=/usr/local/bin --filename=composer --quiet
RESULT=$?
rm composer-setup.php
exit $RESULT

留言

這個網誌中的熱門文章

使用 Excel 計算2個地點之間的直線距離

LINE 儲存的檔案傳到 email 不方便 很不方便 非常不方便 但是有解的筆記

Excel 巨集合併多個 Excel 檔案