Skip to content

Latest commit

 

History

History
207 lines (172 loc) · 15.3 KB

INSTALL-ja.md

File metadata and controls

207 lines (172 loc) · 15.3 KB

インストールについて

インストール方法とインストール後のアップデート方法について説明します。

インストール方法

ダウンロードインストーラ実行

概要

GitHubㇼポジトリにある1ファイルをダウンロードして実行することにより、以下のインストール関連処理が行われます。

  1. 最新のリリースアーカイブをテンポラリディレクトリにダウンロード
  2. ダウンロードしたリリースアーカイブをテンポラリディレクトリ内で展開
  3. リリースアーカイブ内のインストーラ(install.sh)を実行
  4. テンポラリディレクトリを削除

実行方法

  • 以下のコマンドを実行します。これによりダウンロードとインストールを行うダウンロードインストーラがカレントディレクトリに保存されます。
curl https://raw.githubusercontent.com/bills-appworks/bsky-sh-cli/main/download-install.sh -O
  • 以下のコマンドでダウンロードインストーラを実行します。全ユーザで利用する場合はスーパーユーザで実行してください。

スーパーユーザの場合:

sudo sh download-install.sh

一般ユーザの場合:

sh download-install.sh

Warning

以下のような直接実行は推奨しません。

curl https://raw.githubusercontent.com/bills-appworks/bsky-sh-cli/main/download-install.sh | sh

インストーラ内で行われる入力待ちが無効化されます。そのためインストール方法が選択できず、最後の確認待ち処理が無限ループしてインストールが実行できません。

sudo sh <(https://raw.githubusercontent.com/bills-appworks/bsky-sh-cli/main/download-install.sh)

ダウンロードしたファイルを標準入力としてスーパーユーザでの実行を行うと、環境によってはセキュリティ上の理由により実行が失敗します。

  • 実行すると前記の概要に記した処理が行われます。リリースアーカイブ内のインストーラ実行は次の節を参照してください。インストールが完了するとテンポラリディレクトリに展開されたファイル群は削除されます。中断した場合は残りますので手動で削除してください。テンポラリディレクトリはインストール中に表示される"Install temporary directory:"の行で確認できます。

  • オプションパラメタを指定すると、そのままリリースアーカイブ内インストーラのオプションパラメタとして引き渡されます。

リリースアーカイブ内インストーラ実行

概要

最新のリリースアーカイブに含まれる簡易インストーラ:install.shを実行することにより、お使いの環境にこのツールを導入することができます。

以下に実行する内容を記しますので、希望に合わない場合は手動インストールを参照してください。

必要に応じてインストール中に実行の確認や入力が求められます(install.shコマンドのオプションの指定によっては確認や入力は求められません)。

インストール処理にて環境変数PATHを設定するログインスクリプトの作成または修正(追記)を行った場合、インストール完了直後は環境変数PATHが設定されておりません。パス指定無しでbskyコマンドを実行するためには改めてシェルにログインしてください。

実行方法

  • リリースアーカイブを展開したディレクトリにて、以下のコマンドでインストーラを実行します。全ユーザで利用する場合はスーパーユーザで実行してください。

スーパーユーザの場合:

sudo ./install.sh

一般ユーザの場合:

./install.sh

install.shが実行する内容

  1. サブディレクトリbinlib配下のいくつかのファイルの存在確認をします。ディレクトリおよびファイルの構成が提供時と同じことを仮定しています。
  2. このツールの実行時に必要なコマンドの存在確認をします。存在しない場合はあらかじめ必要ツールのインストールをしてください。以下のコマンドが確認されます(バージョンに応じて変更の可能性があります)。
    • 必須
      • curl
      • jq
      • sed : GNU sedが必要となります。-zオプション指定時のエラー有無で確認をします。
    • 推奨
      • convert (imagemagick) : 存在しない場合は画像やリンクカードの一部機能が使用できないことを示す警告を表示してインストールを続行します。
      • file (libmagic) : 存在しない場合は画像投稿やリンクカードが使用できないことを示す警告を表示してインストールを続行します。
  3. サブディレクトリbinlibおよびその配下のファイルを、指定のインストールディレクトリ配下にコピーします。
    • コピー先のインストールディレクトリは、起動時のオプションで指定するか、指定しない場合は以下が提案されます。提案が希望と異なる場合は、変更することが可能です。
      • インストール実行ユーザがスーパーユーザ(sudoでの実行や、rootの場合):
        • /opt/bsky_sh_cli
      • インストール実行ユーザが一般ユーザの場合:
        • $HOME/.local/bsky_sh_cli
  4. インストールディレクトリ配下のbinサブディレクトリへの環境変数PATHの設定状態を確認し、設定されていない場合はログインスクリプトの作成または修正(追記)を提案します。提案が希望と異なる場合は、変更することが可能です。
    • インストール実行ユーザがスーパーユーザ(sudoでの実行や、rootの場合):
      • /etc/profile.d/bsky_sh_cli.sh
    • インストール実行ユーザが一般ユーザの場合:
      • 以下を順次確認して見つかったファイル
        • 実行シェルが/bin/bashの場合:
          1. $HOME/.bashrc
          2. $HOME/.bash_profile
          3. $HOME/.bash_login
        • 実行シェルが/bin/bash以外、または上記でファイルが見つからなかった場合:
          • $HOME/.profile
    • 以下の行を追加(ファイルが存在しない場合は作成)します。
      PATH=$PATH:<指定したインストールディレクトリ>/bin
      export PATH
      
  5. このツールのカスタマイズ設定を行うRun Commandsファイルのインストールを提案します。不要の場合はスキップすることが可能です。
    • Run Commandsファイルのインストール先は以下になります。
      • $HOME/.bsky_sh_cli_rc
    • 既に同名のファイルが存在する場合は、スキップの確認が行われます。スキップせずに上書きする場合、既存の設定は消去されますので御注意ください。
      • 既存の設定を維持し、新しいバージョンでの設定ファイルを確認する場合は、上書きせずに提供ファイルの.bsky_sh_cli_rc.sampleを参考にしてください。
  6. 上記で指定した内容が一覧表示され、実行の確認が行われます。内容に問題が無ければ続行してください。
  7. 指定した内容の処理を実行します。

install.shコマンドのオプション

install.sh実行時に以下のオプションを指定して動作を変更することが可能です。

  • --install-dir <ディレクトリパス>
    • <ディレクトリパス>で指定するパスを、インストール先のディレクトリとして指定します。
  • --config-path-file <ログインスクリプトファイルパス>
    • 環境変数PATHに関する設定処理対象のログインスクリプトファイルのパスを指定します。
  • --skip-config-path
    • 環境変数PATHに関するログインスクリプトの設定処理をスキップします。
    • --config-path-fileオプションの指定は無視されます。
  • --skip-rcfile-copy
    • Run Commandsファイルのインストール処理をスキップします。
  • --config-langs '<言語コード>[,...]'
    • 投稿(ポスト)時に設定するデフォルトの言語コードを指定します(例:英語は'en'、日本語は'ja')。
    • 複数の言語をカンマ区切りで指定できます(例:en,ja)。
    • ここで設定しなくても、投稿(ポスト)時のオプションで個別に指定できます。ここでの設定は、投稿(ポスト)時のオプションで個別に指定しなかった場合のデフォルト言語コードとなります。
    • --skip-config-pathオプションを指定した場合や、インストール中の確認においてRun Commandsファイルのインストールがスキップされた場合は無視されます。
  • --skip-confirm
    • 各種確認をスキップします。スキップされる確認、およびスキップ時の動作は以下となります。
      • 指定インストールディレクトリと同名のディレクトリが存在する場合の上書き確認:
        • 上書きする動作となります。
      • 環境変数PATHに関するログインスクリプトの作成または修正処理の実行確認:
        • 環境変数PATHにインストールディレクトリのサブディレクトリbinが設定済の場合:
          • 処理実行されません。
        • 環境変数PATHにインストールディレクトリのサブディレクトリbinが設定されていない場合:
          • --skip-config-pathオプション指定時:
            • 処理実行されません。
          • --skip-config-pathオプション未指定時:
            • 処理を実行する動作となります。
            • 対象となるログインスクリプトファイルは以下になります。
              • --config-path-fileオプション指定時:
                • --config-path-fileオプションに指定したファイルパスになります。
              • --config-path-fileオプション未指定時:
      • Run Commandsファイルのインストール($HOME/.bsky_sh_cli_rc):
        • --skip-rcfile-copyオプション指定時:
          • 処理実行されません。
        • --skip-rcfile-copyオプション未指定時:
          • Run Commandsファイルが既存の場合は処理実行されません。Run Commandsファイルが存在しない場合はインストールされます。
      • 投稿(ポスト)デフォルト言語コードの設定:
        • --config-langsオプション指定時:
          • --config-langsオプションに指定した値で設定が実行(Run Commandsファイルを変更)します(Run Commandsファイルがインストールされる場合のみ)。
        • --config-langsオプション未指定時:
          • 処理実行されません。

手動インストール

このインストーラが希望するインストール方法をカバーしていない場合(あるいはこのインストーラが信用できない場合)、手動でディレクトリやファイルを配置することでインストール可能です。

提供ファイルに含まれる以下のディレクトリやファイルを対応する場所にコピーしてください。

  • binディレクトリおよびlibディレクトリ
    • -> 同じ任意のディレクトリ直下
    • 現時点では2つのディレクトリが同じディレクトリ配下に存在する必要があります。libディレクトリパスを環境変数で指定する方法は実装されていますが、動作未確認です。
  • .bsky_sh_cli_rc.sampleファイル
    • -> 拡張子.sampleを削除したファイル名.bsky_sh_cli_rcとして$HOME(ユーザホームディレクトリ)直下
    • 初期状態では何も設定変更しないコメントのみの内容ですので、適宜編集してください(現時点では設定方法のドキュメント未整備)。
      • 投稿(ポスト)デフォルト言語コード設定については以下の行を追加(あるいは既存のコメントアウト行をコメント解除して値を設定)してください。 BSKYSHCLI_POST_DEFAULT_LANGUAGES=<言語コード>[,...]

パス指定無しでbskyコマンドを実行するためには、環境に応じてログインスクリプトを編集し、環境変数PATHbinディレクトリのフルパスを追加してください。

セルフホストPDS

PDSをセルフホストしている場合、エクスポートした環境変数を使用することで簡単にコマンドの接続先サーバを指定することができます。

PDSをセルフホストしている場合は、以下のsky.example.comをPDSのURLに置き換えた行を.profile.bashrcに追加します:

export BSKYSHCLI_SELFHOSTED_DOMAIN=sky.example.com

これによりコマンドはbsky.socialの替わりに指定したPDSに接続するようになります。

アップデート方法

アップデートコマンド実行

既にインストールが行われている場合、インストールされたbskyコマンド(bsky update)でツール自身を最新バージョンにアップデートすることができます。

スーパーユーザでインストールしていた場合:

sudo -i bsky update

一般ユーザでインストールしていた場合:

bsky update

詳細はコマンドラインリファレンスを参照してください。