do:kalaclism

『輝かしい青春』なんてなかった人のノート

Windows Subsystem for Linux で 普通の Archlinux を使う

方法について書きます。


0. 参考にしたモノ

www.kunst1080.net

redd.it

1. 下準備

  • Windows Subsystem for Linux が使えるよう、その機能を有効にする
  • Bash on Ubuntu on Windows の初期設定を行う
  • Archlinux の Installer ISO ディスクイメージを用意する

2. WSL の Ubuntu を Archlinux Installer ISO のモノと入れ替える

2.1 Windows 側で AIROOTFS.SFS を取り出す

まず、 Archlinux の ISO をマウントして、

ARCH/X86_64/AIROOTFS.SFS

を、どこか適切なディレクトリにコピーします。

これは例えば、僕の場合だと、

C:\Users\nyarla\Downloads\AIROOTFS.SFS

にコピーしました。

2.2 WSL Ubuntu 上で AIROOTFS.SFS を展開する

次に、WSL Ubutnu の Bash に入り、

$ sudo su -

root になった上、

# cd ~/
# cp /mnt/c/Users/nyarla/Downloads/AIROOTFS.SFS ~/ # 先程の AIROOTFS.SFS を WSL 側にコピー
# apt-get install -y squashfs-tools                # squashfs を展開する為のツールをインストール
# unsquashfs ~/AIROOTFS.SFS                        # `AIROOTFS.SFS` を展開

という感じで、 AIROOTFS.SFS を WSL の root$HOME に展開します。

2.3 WSL Ubuntu を終了し、 Windows 側 で rootfs を入れ替える

そして最後。

先のステップで展開した、

%USERPROFILE%\AppData\Local\lxss\root\usquashfs-root

を、Explorer か何かで、

%USERPROFILE%\AppData\Local\lxss\rootfs

と入れ替えます。

2.4 Windows 側で WSL のデフォルトユーザーを root にする

これはコマンドプロンプト系の何かで、

lxrun /setdefaultuser root

と、すれば良いです。

3. Archlinux Installer で Archlinux の rootfs を構築する

これについては、手作業でその作業をすると大変につらい (というかつらかった) ので、 下記の様なスクリプトを使って作業します:

※ ただし、このスクリプトは無保証です。エラーとか有ったら各自直してください

3.1 Archlinux Installer で Archlinux の rootfs を bootstrap する

これは、上記のスクリプトを用意した上で、

# cd ~/
# ./wslarch-bootstrap.zsh bootstrap

するだけで OK です。

3.2 Archlinux の rootfs と Archlinux Installer の rootfs を入れ替える

これは WSL を終了した上で、 Windows 側から、

%USERPROFILE%\AppData\Local\lxss\root\rootfs_arch

と、

%USERPROFILE%\AppData\Local\lxss\rootfs

を入れ替えます。

3.3 Archlinux の rootfs を修正する

これは、先のステップで使用したスクリプトをもう一度使い、

# ./wslarch-bootstrap.zsh postinstall

すれば良いです。

以上

という事で、ここまでの作業を行えば、一応は、

(VM 等で)普通の Archlinux をインストールしたばかり

に近い環境が出来るはず、です。

ただし、WSL は Unix-like 環境における Wine みたいなモノなので、 時々、 Syscall の実装関係でソフトウェアが動かなかったり、 あるいは、この作業をしていた時にハマった罠の様に、

(ソフトウェアの) バージョンを上げたら、コマンドがぶっ壊れていたでござる

とか普通にあるので、まあ、本来なら動くはず……というところでソフトウェアが奇妙なエラーを吐いて止まったりしていたら、 WSL の、

github.com

とか見て周りましょう。そうしないと、僕の様に無駄に時間を消費して精神が消耗する、 みたいな事になります。


という事で、今回の記事は以上です。

何かの参考になれば幸いです。はい。

途中で挫折しないための『タグ分類』の仕方

自分の中で、2017年にもなってようやくながら、

はてブやブログでのタグ付けの仕方

が、固まってきたので、今回の記事ではその辺りをメモっておきます。

1. 『主語』は大きく『抽象的』に分類する

例えば、

Javascript を使った○○についての使い方

みたいな記事だった場合、

Javascript, ○○, 使い方

みたいな具体的なタグを付けずに、

開発, 知識

みたいな感じで、『主語』が大きくかつ『抽象的』なタグ付けをすると良いです (自分的には)

2. 『脊髄反射』でタグを付ける

まあ、前にやった失敗なんだけども、

タグを付けるための俺々ルール

みたいなのを新規で作り、かつ、それがその詳細をすぐに忘れる様な複雑さを持つ場合、 大抵、途中でめんどくさくなってタグ付けのルールが崩壊します。

そのため、

タグ付けのルール

みたいなのは、まあ脊髄反射でパパっと付けれる、

自分の中では単純なルール

にしておくが吉です。

まあ簡単に言えば、

心理的コストを極力下げる

という感じですね。はい

3. 細かい内容については検索でカバー

まーこれ、サービスにも依るんだろうけれども、例えば、

開発 タグを付けた記事から Javascript を含む内容を抽出したい

みたいな場合、そのサービスの検索システムが使いモノになるなら、

雑なタグ + フリーワードによる絞り込み

を使った方が後々楽です。

っていうか、情報をストックするサービスで、 全文検索が使いモノにならない 、 と言うのは割と致命的なので、その手の使えないサービスからはとっと情報を引き上げた方が良い気がします。はい。

以上

あとはまあ好みで、

  • タグを英語にする

とかする等して、色々アレンジ加えても良いんじゃないかなーと僕は思います。はい。

macOS Sierra で wine-staging 2.0-rc3 を使って FLStudio 12.4.1 を動かしてみた

という話です。


始めに

最初に断っておくと、

macOS Sierra で wine 使って FL Studio !

は、遊びとしてはとても楽しいのですが、実用するには色々と辛すぎる感が有るので、 ぶっちゃけ、 FL Studio で真面目に音楽を創るなら、素直に Windows の物理マシンか、 あるいは仮想マシンか何かで Windows Instance 立てて、そこで曲作りしましょう。

インストールの流れ

  1. まず、wine-staging を Homebrew cask か何かでインストールします
  2. 次に、後で色々とやり直しが効く様に、FL 用の wine prefix を用意します
  3. wine prefix が用意できたら、winetricks も用意して次の tweak を apply します:
    • dotnet20
    • directx9
    • vcrun2008, vcrun2010, vcrun2012, vcrun2013, vcrun2015, vcrun6sp6
    • corefonts, tahoma
    • あと、好みで osx-wine-inf とか使うとフォント周りが綺麗になります
    • なお、corefonts の apply には cabextract が必要です (Homebrew でインストール可)
  4. そして、FL Studio を先程まで作っていた wine prefix にインストールします
  5. 最後に、wine prefix の system.inimsacm.vorbis=vorbis.acm を追加します
  6. 以上

というのが大体のインストールの流れです。

FL Studio 起動の流れ

えっ? FL Studio を起動する手順とか有るの!?

と思われるかもしれませんが、実は有ります。

というか、まあ実際の Windows だと普通にインストールして起動すれば FL Studio は動くんですが、 今現在 (2016 年 12月 26 日に) 試した範囲での、

FL Studio on wine on macOS Sierra

では、wine が Windows を絶妙にシュミレーションし切れてない関係で、

FL Studio が起動途中でハングアップして操作出来ない + CPU 使用率モリモリ

という状態になります。

なので、その問題回避を行うために、

  1. macOS Sierra の Input method に Unicode 16 進数入力 辺りを入れる
  2. 次に Unicode 16 進数入力 がアクティブ (有効) になった状態にする
  3. 最後に、2の状態を維持したまま FL Studio on wine on macOS Sierra を起動する

という感じの手順を踏む必要があります。

で、なんでこういう訳の分からんおまじないみたいな手順は必要かというと、 たぶん、これは wine 側の実装と FL Studio の挙動の加減だとは思うんですが、

日本語への切り替え可能な Input Method がアクティブ

な状態で、 FL Studio を wine 上で起動すると、 wine が

fixme:imm:ImeHandleNotify

のログを吐いた辺りで、 FL Studio の起動がハングアップします。 つまり、

固まって起動しきらない! FL Studio 使えない!つらい!

という状態になるので、今のところはこのおまじないみたいな手順が必要です。はい。

以上

まー、 これを真似するな 、とは言いませんが、僕はこれを行う手助けとか出来ません し、 また、 wine の開発コミュニティに 再現可能なバグとしてバグトラッカーに持ち込むまでは良し としても、 FL Studio のサポートにこれが動かないよ 、って連絡なげても、そもそも サポート対象外な行為 なので、 サポートされない行動だよ って事は、 声を大にして言っておきます

あとはまあ、どうも FL Studio を macOS かつ wine で動かそうとしているヘンな人 で、 日本語で情報を書いてるのがほぼ僕しかいないっぽい (ググってるマジで自分の情報しか引っ掛らない) のが、なんとも言えない感じ。

それで、最後にもう一度言っておきますが、これのサポートを僕はするつもりもないし、 また、この手の Hack は基本、自己責任で行うモノなので、 これに手を出したい場合には、その辺り弁えた上で行いましょう。


という事で今回の記事は以上です。

あと最後に。

FL Studio が気に入ったなら、ライセンスはキチンと買えよ! ネットで買うと特典も有るぞ!!1