はじめに
巷でちょっと話題になっている NixOS
というものがありますが、この流れにちょっと乗ってみたく、自身の環境に追加してみたのですが、
いい感じに
WindowsTerminal
で扱う方法ってあんまり乗ってないなぁ…
となってしまったのでこちらを記載します
1. WSL2への NixOS
のインストールの方法
おおよそこちらの記事に書いており、これ以上に記述することはないので参照リンクを貼って割愛します
警告
この方法では、 wsl import
コマンドを実行したディレクトリに NixOS
がインストールされた vhdx(ハードディスクイメージ)
が保存されますので、実行する場所についてはよくよくお気をつけください
Appendix1. NixOSでのユーザを一応追加したい場合
上述のインストールを実施した場合、以下のコマンドで再度 NixOS
にログインしてから
PS> wsl -d NixOS
ログインしてから以下のコマンドを実行する
### ユーザの追加
$ sudo useradd <任意のユーザー名>
### 追加したユーザにパスワード設定
$ sudo passwd <任意のユーザー名>
$ sudo usermod -aG <任意のユーザー名> users
$ sudo usermod -aG <任意のユーザー名> wheel
2. WindowsTerminal
側の設定
jsonの修正で対応します
こちらのjsonの内容を、プロファイルのリストの最後にコピペしてください
font
のface
など、好きな値に変更してください
{
"commandline": "wsl -d NixOS -u <任意のユーザー名>",
"font":
{
"cellHeight": "1.4",
"face": "IntoneMono Nerd Font Mono",
"size": 11.0
},
"guid": "{af8766a5-b0d6-4753-b439-5b6f68624911}",
"hidden": false,
"icon": "https://avatars.githubusercontent.com/u/487568?s=200&v=4",
"name": "NixOS",
"tabTitle": "NixOS"
}
これで保存して WindowsTerminal
を再起動することで、プロファイル一覧に任意のディストリビューションのプロファイルが表示されます
いや NisOS
使ってるんなら configuration
せんかい!
2024-11-02に追記されました
すでにやってあったのですが、さすがにアホすぎるので追記します
configuration.nix
というOSそのものの設定を行う記述を NixOS
の場合は可能ですが、デフォルトだと nixos
というユーザー名となります
私の場合はこれを自分の名前にしておきたかったのでこのような設定を別途追加することになりました
<すきなおなまえ>
としている部分を任意の文字列に置換することで達成できます
{ config, lib, pkgs, ... }:
{
imports = [
# include NixOS-WSL modules
<nixos-wsl/modules>
];
wsl.enable = true;
# すきなおなまえをいれましょう
wsl.defaultUser = "<すきなおなまえ>";
users.users.<すきなおなまえ> = {
isNormalUser = true;
# すきなおなまえをいれましょう
home = "/home/<すきなおなまえ>";
description = "cocoalix";
extraGroups = [ "users" "wheel" "networkmanager" ];
shell = pkgs.zsh;
};
}
どうせなら名前くらい変数にしたくない?
したいのでこれを試さないとならない (記事に備忘を書くな)
https://www.reddit.com/r/NixOS/comments/wzsz4k/how_can_i_add_some_custom_data_variables_into/
さいごに
意外とこの辺の設定まとまっているように見えなかったので記述してみました
参考になりましたら良いと思います
がんばろう、Linuxライフ