普段使いの環境を Windows 10 Pro に統一した

読了まで:約1分


本当、もう何回もやっています。


なんかこう開発環境で Docker を使う様になってから、

(開発環境に)Docker を使う なら別に NixOS にこだわらなくても良い んじゃね?

言う感じになり、dual boot した NixOS と Windows を reboot で切り替えるのが面倒になってきた ため、 Windows 10 Pro をメインに据えて環境を再構築してました。

で、とりあえず開発環境については Ubuntu 18.04 on WSL をインストールして nixpkgs を導入 し、 そこから Experimental(LCOW)機能を有効にした Docker for Windows (Edge)接続 して開発をする、言う感じに落ち着いています。

ちなみに Terminal Emulator としては Ubuntu 18.04 on WSL 側の mlterm Windows 向け Xorg バイナリである VcXsrv表示し、 fcitx + fcitx-skk日本語入力を可能にした状態で使っています。

で、 mlterm起動する時には、先に VcXsrv起動した状態で

#!/usr/bin/env bash

cd $HOME

export DISPLAY=localhost:0.0

export GDK_SCALE=2
export QT_AUTO_SCREEN_SCALE_FACTOR=1

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

if ! pgrep fcitx ; then
  fcitx -r -d
fi

export DOCKER_HOST=tcp://localhost:2375

exec $HOME/.nix-profile/bin/wcwidth-cjk -- mlterm --deffont="Myrica M" -e env SHELL=$HOME/.nix-profile/bin/zsh $HOME/.nix-profile/bin/zsh --login

言う感じのスクリプトを経由して起動できる様にして、そのスクリプトを、

紹介されていた WSH スクリプトを改変した、

var shell = new ActiveXObject("WScript.Shell");
var args = WScript.Arguments;
var cmd = [];
var i;

for (i = 0; i < args.length; i++) {
  cmd.push(args(i));
}

shell.Run("bash --norc -c ' + cmd.join(" ") + '", 0, true);

いう感じの WSH スクリプトを用いて、Windows のショートカットから、

wscript.exe C:\path\to\exec.js /path/to/launch/mlterm

言う感じで起動しています。

お、この mlterm 起動時のショートカットは C:\Users\nyarla\Documents\Softwareいう辺りに突っ込んであり、 Cortana の検索ウィンドウから mlterm検索するだけで起動できるため便利です。


とりあえず、こう言う感じで Windows で開発環境を整えましたって話でした。はい。

アバターアイコン兼ロゴ

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。次に備えて待機中。

今は趣味でプログラミングをして生活しています。