Closed7
dotfiles用のCLIを作る。
T3 StackのCLI実装を参考にしたいところ。
このあたりのパッケージをざっと調べた。
UI
プロンプトUI
スピナーも容易されていたりして、これだけでリッチなCLIが作れる。
テキストカラーの背景色を変えたUIを実装することができる。
プロセス実行
ファイル・ディレクトリ操作
Bunのインストール
これだけ。
curl -fsSL https://bun.sh/install | bash -s "bun-v1.0.0"
アンインストールもこれだけ。楽すぎる。
rm -rf ~/.bun
CLIの作り方。
いい感じのUIでインストールが進むdotfiles CLIができた。
Welcome to ymgn's dotfiles!
✔ Enter password: ****
│
◇ Preparation for installation is complete.
✔ bat is already installed.
✔ eza is already installed.
✔ delta is already installed.
✔ fzf is already installed.
✔ nvim is already installed.
✔ code is already installed.
✔ tmux is already installed.
✔ lazygit is already installed.
✔ wezterm is already installed.
✔ docker is already installed.
✔ thorium is already installed.
✔ google-chrome is already installed.
✔ vlc is already installed.
✔ stow is already installed.
✔ rye is already installed.
✔ volta is already installed.
│
◇ Linking of dotfiles is complete.
TODO
- テスト
- エラーログ出力
- Commanderを使ったオプション
一通りのdotfilesの実装が済んで使えるようになったが、お仕事を一緒にさせてもらっている方からパスワード読み取り部分でコマンド履歴にパスワードが残ってしまい漏洩のリスクがあるかも知れないとご指摘をいただいた。
改善案としては、予めsuperuserにて実行する前提の作りにしておき、スクリプト内ではパスワードなしでコマンド実行できるようにしておきたい。
少し調べたところ、簡単にはいかなそうで、sudo visudo
を実行して(/etc/sudoers
を書き換え)環境変数を引き継ぐ実装にしないといけないらしい。
↓参考
このスクラップは2023/11/19にクローズされました