私が解決したい最上位の問題はzsh-newuser-install
設定スクリプトを実行することです。これは、zshが最初に開かれたときに実行され、.zprofile
// ...ファイルが表示されないことです。.zshrc
現在の設定がめちゃくちゃになりたくないので、オプションが何であるかを確認し、自動的に作成される設定を確認するために隔離された環境で実行したいと思います。
私の考えは、ドッカーコンテナ内でzshを実行することです。私はdockerについてはよくわかりませんが、nixについては少し知っているので、nixパッケージマネージャを使用して次のような表現でコンテナを構築します。
docker-example =
pkgs.dockerTools.buildImage {
name = "with-zsh";
config = {
Cmd = [ "${pkgs.zsh}/bin/zsh" ];
};
copyToRoot = with pkgs; [
coreutils
zsh
];
}
コンテナをdockerにロードして実行します。
docker run -a stdin -a stdout -a stderr -i -t with-zsh:b9049wbw7bbil80pnnvl4cgxb2s9kr15
zsh
homedirもなくzsh構成ファイルもない単純なシステムのシェルに入ります。設定プログラムを/
通過できませんzsh-newuser-install
。また、「/share/zsh/5.9/scripts/newuser」でinitスクリプトを見つけましたが、それをソーシングしても何も起こらないようです。 cli設定プログラムに行きたいです。
ユーザーが不足している問題のようです。実行中のwhoami
出力:
#whoami
> whoami: cannot find name for user ID 0: No such file or directory
この特定の問題を解決するのに役立つ、またはこれが予期せず動作する理由を説明し、現在の構成を混乱させることなくいくつかのzsh構成を確認する方法についての他のアイデアに心から感謝します.よろしくお願いします!
答え1
これにはDockerは必要ありません。自分のディレクトリではなく空のホームディレクトリでシェルを起動します。
HOME=$( mktemp -d ) exec zsh