CLI を入れる
hakocms-cli は 1 つの実行ファイルです。ダウンロードして展開し、PATH の通ったフォルダに置けば使えます。
入れられる OS
Section titled “入れられる OS”| OS | CPU | ファイル |
|---|---|---|
| Linux(どのディストリビューションでも) | x86_64 | hakocms-cli-v<版>-x86_64-unknown-linux-musl.tar.gz |
| Linux | aarch64(arm64) | hakocms-cli-v<版>-aarch64-unknown-linux-musl.tar.gz |
| macOS | Apple シリコン(M1 以降) | hakocms-cli-v<版>-aarch64-apple-darwin.tar.gz |
| macOS | Intel | hakocms-cli-v<版>-x86_64-apple-darwin.tar.gz |
| Windows 10 以降 | x86_64 | hakocms-cli-v<版>-x86_64-pc-windows-gnu.zip |
ファイルは https://download.hakocms.net/hakocms-cli/v<版>/ にあります。いちばん新しい版の番号と、ファイルごとの URL と SHA-256 は、次のファイルに書いてあります。
https://download.hakocms.net/hakocms-cli/latest.jsonブラウザでダウンロードするときは、製品のサイトの CLI のダウンロード に、いちばん新しい版のファイルと SHA-256 が並んでいます。
Linux と macOS
Section titled “Linux と macOS”端末で次のコマンドを実行します。
curl -fsSL https://www.hakocms.net/install.sh | sh次のように表示されれば、入っています。<版> と <ターゲット> には、入れた版の番号(0.1.8 など)と、OS と CPU の名前(aarch64-apple-darwin など)が入ります。
hakocms-cli v<版>(<ターゲット>)をダウンロードしています<ホーム>/.local/bin/hakocms-cli に置きました<ホーム> には、自分のホームのフォルダ(/home/hako や /Users/hako など)が入ります。
このコマンドは、いちばん新しい版をダウンロードし、SHA256SUMS でファイルが壊れていないかを確かめてから、~/.local/bin/hakocms-cli に置きます。管理者の権限(sudo)は要りません。~/.local/bin が PATH に入っていないときは、シェルの設定ファイルに足す 1 行が表示されます。その行を ~/.zshrc や ~/.bashrc に足して、新しい端末を開きます。
実行する前に中身を読むときは、install.sh を開きます。
置く場所や版を変えるときは、sh の前に環境変数を書きます。
| 環境変数 | 意味 | 指定しないとき |
|---|---|---|
HAKOCMS_CLI_INSTALL_DIR |
置く場所 | ~/.local/bin |
HAKOCMS_CLI_VERSION |
入れる版(0.1.8 など) |
いちばん新しい版 |
たとえば、/usr/local/bin に置くときは次のようにします。
curl -fsSL https://www.hakocms.net/install.sh | sudo HAKOCMS_CLI_INSTALL_DIR=/usr/local/bin shコマンドを 1 つずつ実行して入れることもできます。次の手順で、いちばん新しい版をダウンロードし、ファイルが壊れていないかを確かめてから、/usr/local/bin に置きます。
-
自分の OS と CPU のターゲットを決めます。
ターミナルウィンドウ # Linux(x86_64)TARGET=x86_64-unknown-linux-musl# Linux(arm64)は aarch64-unknown-linux-musl# macOS(Apple シリコン)は aarch64-apple-darwin# macOS(Intel)は x86_64-apple-darwinどれか分からないときは、
uname -smを実行します。Linux x86_64、Linux aarch64、Darwin arm64(Apple シリコン)、Darwin x86_64(Intel)のどれかが表示されます。 -
いちばん新しい版の番号を調べます。
ターミナルウィンドウ VERSION=$(curl -fsSL https://download.hakocms.net/hakocms-cli/latest.json |sed -n 's/.*"version": *"\([^"]*\)".*/\1/p')echo "$VERSION"0.1.8のような版の番号が表示されます。 -
ファイルと、確かめのための
SHA256SUMSをダウンロードします。ターミナルウィンドウ BASE=https://download.hakocms.net/hakocms-cli/v$VERSIONNAME=hakocms-cli-v$VERSION-$TARGETcurl -fsSLO "$BASE/$NAME.tar.gz"curl -fsSLO "$BASE/SHA256SUMS" -
ファイルが壊れていないかを確かめます。
ターミナルウィンドウ # Linuxgrep " $NAME.tar.gz\$" SHA256SUMS | sha256sum -c -# macOSgrep " $NAME.tar.gz\$" SHA256SUMS | shasum -a 256 -c -hakocms-cli-v<版>-<ターゲット>.tar.gz: OKと表示されれば、壊れていません。FAILEDと表示されたら、ダウンロードし直します。 -
展開して、
/usr/local/binに置きます。ターミナルウィンドウ tar xzf "$NAME.tar.gz"sudo install "$NAME/hakocms-cli" /usr/local/bin/管理者の権限がないときは、自分のフォルダに置きます(
mkdir -p ~/.local/bin && install "$NAME/hakocms-cli" ~/.local/bin/)。~/.local/binが PATH に入っていなければ、シェルの設定ファイルにexport PATH="$HOME/.local/bin:$PATH"を足します。
展開したフォルダには hakocms-cli のほかに、利用許諾(LICENSE)、含まれているほかのソフトウェアのライセンス(THIRD_PARTY_LICENSES)、README.txt があります。
macOS で実行が止められたとき
Section titled “macOS で実行が止められたとき”hakocms-cli には Apple の署名がありません。ブラウザでダウンロードしたファイルを Finder で開いて展開すると、展開したファイルに macOS が実行を止める印を付けます。その hakocms-cli を実行すると、macOS が警告を出して止めます。そのときは、次のコマンドで印を外します。
xattr -d com.apple.quarantine /usr/local/bin/hakocms-cli1 行のコマンドで入れたときと、上の手順のように curl でダウンロードしたとき、端末の tar で展開したときは、印が付かないので、このコマンドは要りません。
Windows
Section titled “Windows”PowerShell で、次のようにします。
-
いちばん新しい版をダウンロードします。
ターミナルウィンドウ $latest = Invoke-RestMethod https://download.hakocms.net/hakocms-cli/latest.json$asset = $latest.assets.'x86_64-pc-windows-gnu'Invoke-WebRequest $asset.url -OutFile $asset.name -
ファイルが壊れていないかを確かめます。
ターミナルウィンドウ (Get-FileHash $asset.name -Algorithm SHA256).Hash.ToLower() -eq $asset.sha256Trueと表示されれば、壊れていません。 -
展開して、PATH の通ったフォルダに置きます。
ターミナルウィンドウ Expand-Archive $asset.name -DestinationPath .$dir = "$env:LOCALAPPDATA\Programs\hakocms-cli"New-Item -ItemType Directory -Force $dir | Out-NullCopy-Item "$($asset.name -replace '\.zip$','')\hakocms-cli.exe" $dir -
そのフォルダを、自分の PATH に足します(初めて入れたときだけ)。
ターミナルウィンドウ $path = [Environment]::GetEnvironmentVariable("Path", "User")[Environment]::SetEnvironmentVariable("Path", "$path;$dir", "User")足した PATH は新しく開いた PowerShell から使えます。
新しい端末を開き、次のコマンドを実行します。
hakocms-cli version次のように、版の番号が表示されれば入っています。<版> には、入れた版の番号(0.1.8 など)が入ります。
hakocms-cli <版> (Admin API 1)command not found と表示されたら、置いたフォルダが PATH に入っていません。
次はログインです(CLI でログインする)。
シェルの補完を入れる
Section titled “シェルの補完を入れる”(省略可)コマンドとフラグを Tab キーで補えるようにします。使っているシェルのものを 1 つ実行し、新しい端末を開きます。
# zshhakocms-cli completion zsh > "${fpath[1]}/_hakocms-cli"# bashmkdir -p ~/.local/share/bash-completion/completionshakocms-cli completion bash > ~/.local/share/bash-completion/completions/hakocms-cli# fishhakocms-cli completion fish > ~/.config/fish/completions/hakocms-cli.fishPowerShell では、hakocms-cli completion powershell | Out-String | Invoke-Expression をプロファイル($PROFILE)に足します。
新しい版にするときは、入れたときと同じ手順をもう一度行います。1 行のコマンドで入れたときは、同じコマンドをもう一度実行します。手で入れたときの手順のコマンドも latest.json からいちばん新しい版を調べるので、書き換えずにそのまま使えます。同じ場所に置けば、古いものが置き換わります。ログインした情報と設定は、そのまま使えます。
今の版は hakocms-cli version で、いちばん新しい版は Linux と macOS の「手で入れる」の手順 2(Windows は手順 1 のあとの $latest.version)で分かります。
-
ログインしているなら、先にログアウトします。アクセストークンが取り消されます。
ターミナルウィンドウ hakocms-cli auth logout -
実行ファイルを消します。1 行のコマンドで入れたときは
rm ~/.local/bin/hakocms-cli、手で入れたときはsudo rm /usr/local/bin/hakocms-cliです。Windows は%LOCALAPPDATA%\Programs\hakocms-cliのフォルダを消します。 -
設定のフォルダを消します(
~/.config/hakocms-cli。Windows は%APPDATA%\hakocms-cli)。