GPD WIN 2 が届いていた。
概要
これを機に PC ゲームするぞ!
と思ったものの、現代の開発環境などを調べてたらゲームどころではなかった。
ちょっとゲームしてみたらうっかりサブで眠っていた自作機のグラボを強くしてしまった…。
むしろ開発環境を調べたり整えたりする方がゲーム感がある。
詳細
小中高生の頃から父親に Palm や CLIE など何か小さい計算機的なものを買い与えられるという教育をされていたのだが、そのまま大人になった結果こういう小さい計算機をうっかり買ってしまうようになってしまった。
前の世代の GPD WIN や GPD Pocket も興味はあるにはあったけど、なんとなく買ってなかったなーと思っていたところに indiegogo でクラウドファンディングが始まっていて、うっかり応援してしまったのが 2018 年の 1 月中頃の話。
最初の 1000 台なら $599 だったらしいけど、それには間に合わずウダウダしてたので $649 だった。クラウドファンディングなので応援した事すら忘れつつ気長に待っていると 2018 年の 6 月の中頃に国際便で到着した。
クラウドファンディングは通常の買い物と同じような気持ちでいてはいけないものだが、実績あるとこだから詐欺とか企画倒れの心配も薄いし、まぁ待ってりゃ届くだろという雑な気持ちでいたけど無事に届きました。よかったよかった。
2018/7/7 からは家電量販店などでも一般に販売開始されるみたいですね。税込 86184 円とのこと。
折角なので最近の Windows でのプログラミング環境を調べた。
僕は仕事では Web 屋と iOS アプリ屋をやっているので macOS ばっかり使っていて Windows でのプログラミングに関しては何も知らないよなと思い、ゲームは後でやるとして、とりあえず色々調べてみた。
Visual Studio
「とりあえず Visual Studio 入れときゃええやろ」という軽い気持ちで入れてみた。弄っているだけで中々楽しい。個人用途や OSS のためなら無償で使わせてくれる Microsoft の開発者支援とかスタートアップ支援なんかは本当に手厚い。ありがとうございます。
Docker for Windows
Hyper-V に依存しているため Windows 10 Pro でないと入らない。GPD WIN 2 の Windows 10 は Home なのでダメでした。
しかし Windows での Docker は難しい。そもそもの話として Linux Container と Windows Container がある。正直個人的には Linux Container さえ使えれば良いのだが、 Docker の技術的には別にどちらかに限定したものではないし、ざっくり調べた所感ではあるが「Windows で Docker 動かすなら Windows Container でしょ」という人も多いように感じた。Windows Server を普段から使っているような場合だと確かに便利そうだと感じたし多分そうなのだろう。
更に Windows Container には Windows Server Container と Hyper-V Container の 2 種類があるらしい。どちらも Windows Container という括りなので Docker image 自体は同じものではあるらしい。間に Hyper-V が入るかどうかの違いというか、コンテナから見えるカーネルがホストで直で動いているのか Hyper-V によって仮想化されているかの違いなようで、仮想化レイヤが一つ増える分 Hyper-V Container の方が重そうではある。これは自分で確認した訳ではないので伝聞形式でしか書けないけど。
Docker for Windows では Windows Container も Linux Container も扱える(排他的?)ようだが、調べてるだけで面倒臭くなり力尽きてしまった。少なくとも GPD WIN 2 では VirtualBox などの仮想化環境を入れてやらないと Docker で遊べないので、後で気が向いて他の環境を弄ることがあったら調べることにする。
Git for Windows
感覚的にも、あるいは、ちょっと調べただけでもすぐに Windows で Git は完全に相性悪そうだなという気持ちにはなったのだけど、とりあえず入れてみたところ予想外に色々便利なものも一緒に入ったのが印象的だった。Git Bash がすごい。
Git Bash を立ち上げるとなんか普通に bash
が使えたので ps
コマンドを打って確認してみたところ PID 1 は /usr/bin/mintty
と出た。mintty は MSYS2 や Cygwin や PuTTY などでも使われているらしい。
Git Bash を弄って初めて mintty の事を知ったので、もののついでに色々調べたのだけど大変便利そうであった。この辺を弄っていて、自分が中学生くらいの頃、まだ Windows が XP であった時代に C 言語の入門書みたいなやつを買って遊んでいたことを思い出した。その当時は Cygwin を入れた覚えがある。今も Cygwin が便利な局面があることもあるのだろうけど、最近はあまり使われないのかなという感じがした。
何にせよ Windows で Git を使う場合、ファイルのアクセス権周りで微妙な使い辛さがあったりしてやはり相性は悪い。IDE に統合されているとまた別なのかもしれない。しかし僕は基本的に IDE に統合されたバージョン管理システムを信用していないというか、何されるか分かったもんじゃないので毎回必ず CUI で git
コマンドを叩くようにしていて、繰り返しになるがそういう使い方だとやはり相性が悪い。
Git GUI から Generate Key ボタンを押すだけで SSH Key pair を作れそうだったが、今の時代は別途 Microsoft から公式に OpenSSH を入れられそうだったので、折角だしそちらの ssh-keygen
を使って鍵ペアを作ることにした。
OpenSSH
Windows で SSH といえば PuTTY というところで知識が止まっていたので今回色々と調べたところ RLogin とか TeraTerm とかも目に付いたは付いたが、やはり Microsoft から公式にインストールすることが出来るようになっていたものを使うべきかなという感じがした。
インストールしてやると PowerShell から ssh
が叩けるようになる。正確には ssh.exe
だけど。実体は C:\Windows\System32\OpenSSH にあるようだ。
ssh-keygen.exe -t rsa -b 4096
とりあえずこれで鍵ペアは作れる。この段階で既に「本当に openssh
じゃん…」という感動があった。そして出来上がった鍵ペアから公開鍵を各種サーバーに設定したらあっさり通った。PowerShell から ssh
が出来るのはかなり衝撃があった。
ここまでやると PowerShell から ssh
経由の git pull
等も出来るようになる。これもかなり衝撃がある。
Windows Subsystem for Linux
Bash on Windows と呼ばれていたものをなんとなく知っていたので調べたところ名前が変わっていた。
気持ちで Ubuntu を入れてみたところ「なるほど…これは Ubuntu ですわ…便利…」となったものの、やはり ファイルのアクセス権周りで Windows と Linux の思想の違いによる辛さがある。/mnt/c
に C ドライブがマウントされて全てのファイルが弄れるのだけど、見た感じ 777
なので精神的によろしくない。統一されて 777
という訳でもなく、場所によってアクセス権が結構適当だったりして、 ls
コマンドで見たときの色分けで「ウッ」ってなる。
ここまでやって気付いたのだが、デバイス内に複数の openssl
やら openssh
が存在することになってしまった。
-
openssl
- WSL で入れた Ubuntu の中
- Git for Windows で入れた
C:\Program Files\Git\usr\bin\openssl.exe
-
openssh
- WSL で入れた Ubuntu の中
- Git for Windows で入れた
C:\Program Files\Git\usr\bin\ssh.exe
C:\Windows\System32\OpenSSH
これはこれで微妙な気持ちではある。
源真ゴシック
僕は等幅フォントに関してはもう長いこと Source Code Pro を使っている。日本語を含めると Source Han Code JP (源ノ角ゴシック Code JP) を使っていて、まぁこれは等幅ではなく 2/3 字幅ではあるのだが、個人的にはこちらの方が読みやすい。
もちろん Source Han Code JP はすぐにインストールしたのだが、なんと Windows のコンソールなどでは OpenType を認識してくれない。
ちょろっと調べたところ TrueType に変換しつつ細部を微調整したフォントとして源真ゴシックというものがあるらしく入れてみた。
2/3 字幅が好きなのに等幅のものしか認識しないしフォントレンダリングも macOS からすると微妙なため幸福度が著しく下がっている。こういうとこだぞ。
折角なので PC ゲーム環境も整えた。
PC ゲームをするために GPD WIN 2 を買った訳で、さぁやるぞと意気込んで実際に Steam でいくつか買ったのだが、そうするとやっぱり良いグラボの乗ったパソコンが欲しくなるというか、まぁそれは自然な流れであって、ずっとサブ PC として眠っていた 10 年前に作った自作機を久々に開腹してグラボだけ GeForce GTX1060 に換装するみたいなことをしてしまい、むしろそっちがそこそこ快適な PC ゲーム環境になってしまった。
10 年前のマザボ (ASUS P5Q Pro) と 10 年前の CPU (Intel Core2Quad Q8400@3.2GHz Over Clocked) に現代のグラボ(GeForce GTX1060)が挿さることも、そしてそのまま動くことも驚きではあるけど、過去の自分の変なこだわりのおかげで強くて効率の良い電源や速い SSD を積んでいたため何とかなっている。PCIe2.0 と PCIe3.0 の互換性に感謝。帯域は半分だが正直ゲームをやる場合のボトルネックはそこではないので問題になっていない。
結果として Rise of the Tomb Raider とか FINAL FANTASY XV WINDOWS EDITION などが遊べてしまっている。
ゲーム用にパソコンを強化した結果 3D モデリングとかもそこそこ快適に出来るようになったのでは?と気付いたので、時間を作ってそちらの世界でも遊んでみたい。
締め
開発環境を構築したり調べたりするのがゲームみたいなもん。