0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MSStoreでデフォルトでサポートされていないWSL2向けlinuxディストリを `WindowsTerminal` で使いたい

Last updated at Posted at 2024-06-10

はじめに

巷でちょっと話題になっている 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の修正で対応します

image.png

こちらのjsonの内容を、プロファイルのリストの最後にコピペしてください

fontfaceなど、好きな値に変更してください

{
  "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 を再起動することで、プロファイル一覧に任意のディストリビューションのプロファイルが表示されます

image.png

いや NisOS 使ってるんなら configuration せんかい!

2024-11-02に追記されました

すでにやってあったのですが、さすがにアホすぎるので追記します

configuration.nix というOSそのものの設定を行う記述を NixOS の場合は可能ですが、デフォルトだと nixos というユーザー名となります

私の場合はこれを自分の名前にしておきたかったのでこのような設定を別途追加することになりました

<すきなおなまえ> としている部分を任意の文字列に置換することで達成できます

configuration.nix
{ 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ライフ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?