Bash on Ubuntu on Windows から Windows 側の atom を起動する

(Windows 10 Creators Update 適用後の) Bash on Ubuntu on Windows (以下 BoW) 上で $ atom して Windows にインストールされた atom を起動したい。

結論

とりあえず次のようなエイリアスを設定すると動く。

alias atom='cmd.exe /C "C:\Users\(username)\AppData\Local\atom\bin\atom.cmd"'

引数もちゃんと渡してくれる。

$ atom -h

Atom Editor v1.16.0

Usage: atom [options] [path ...]
(以下略)

ところで1

実は元から atom でパスが通っているのだが、試してみると

$ which atom
/mnt/c/Users/(username)/AppData/Local/atom/bin/atom
$ atom
/mnt/c/Users/(username)/AppData/Local/atom/bin/../app-1.16.0/resources/cli/atom.sh: 9 行: pwd: -W: 無効なオプションです
pwd: 使用法: pwd [-LP]
'/atom.cmd' is not recognized as an internal or external command,
operable program or batch file.

というように atom.sh がおかしいと言われる。 atom.sh を見てみると

$ cat /mnt/c/Users/(username)/AppData/Local/atom/app-1.16.0/resources/cli/atom.sh
#!/bin/bash
# Get current path in Windows format
if command -v "cygpath" > /dev/null; then
  # We have cygpath to do the conversion
  ATOMCMD=$(cygpath "$(dirname "$0")/atom.cmd" -a -w)
else
  # We don't have cygpath so try pwd -W
  pushd "$(dirname "$0")" > /dev/null
  ATOMCMD="$(pwd -W)/atom.cmd"
  popd > /dev/null
fi
if [ "$(uname -o)" == "Msys" ]; then
  cmd.exe //C "$ATOMCMD" "$@" # Msys thinks /C is a Windows path...
else
  cmd.exe /C "$ATOMCMD" "$@" # Cygwin does not
fi

というように Cygwin 向けの何かのようだが、コメントのおかげで cmd.exe に Windows 側での atom.cmd のパスを与えればよさそうなことはわかる。 コメントは素晴らしい。

ところで2

atom.exe を試すとどうなるか。 $ which atom.exe してもパスが通っていないので頑張って書くと

$ /mnt/c/Users/(username)/AppData/Local/atom/atom.exe

なんと atom が起動する。 しかし引数を受け取ってもらえないようで

$ /mnt/c/Users/(username)/AppData/Local/atom/atom.exe -h

しても普通に atom が起動してしまう。*1

*1:Windows PowerShell からでも同様

Pokémon GO Plus 自動化改造(スイッチ付き)

f:id:dmingn:20170416054332j:plain

流石に Pokémon GO にも飽きてきたので楽をしたくなった。

中身は次の通り。 どこを見ても自分が施したはんだは死んでいる……

f:id:dmingn:20170416054854j:plain

続きを読む

アルバム・オブ・ザ・イヤー 2016

大晦日です。 今年もアルバム・オブ・ザ・イヤーを発表します。

2016年に出たアルバムの中からではなく2016年に聴いたアルバムから選んでいるのは毎年のことですが、今回は特に2015年発表のアルバムが多いです。 理由としては新譜がしっくりくるようになるまで時間がかかったりすること、1つのアルバムをヘビロテして他をほったらかしたりすること、後は年末にその年のいいアルバムを紹介している方の記事を読んで発見する、などでしょうか。 特に昨年末から bandcamp を本格的に利用し始め、膨張する音楽の宇宙に嬉しい悲鳴が上がります。

追記: id:levelfour が素晴らしい記事を書いてくれました!コメントは彼の方が圧倒的に優秀ですが紹介している音楽自体はどちらも良いものなので私のも見捨てずに聴いてみてください。 lv4.hateblo.jp

それでは無理して書かなくてもいいのにみたいな一言と共にお楽しみください*1

*1:無理して書いています

続きを読む

オンボード LAN が壊れたかと思った話

ある朝起きたらデスクトップ PC がネットにつながらなくなっていた。

  • とりあえずモデムとルーターを再起動するも効果がない
  • デスクトップに挿していた LAN ケーブルをそのままラップトップに挿すとちゃんとつながる
  • LAN を除いて PC の動作は問題なさそう(再起動もできる)
  • PC からは LAN ケーブルを認識できていない
  • オンボード LAN 故障」などでググるオンボード LAN だけが壊れることはまああるらしい

ということでオンボード LAN だけが壊れたと判断し、マザボを買い換えるか NIC を買って凌ぐか悩んでいた。 悩みながらググり続けていたら

  • PC をシャットダウンしコンセントを抜き
  • PC の電源ボタンを長押し

することで直ったという記事を見つけた。*1 こうすると静電気などによる帯電が抜けるらしいのだが、これで直った。

*1:元記事へのリンクを貼ろうと思ったが見失った

Raspberry Pi に bind9 を導入

ラズパイ自宅サーバに自宅からもホスト名でアクセスできるように bind9 を導入した。

続きを読む

Intel Smart Response Technology を使ってみた

SSD を HDD のキャッシュとして使用することでアクセス速度を高めてくれる Intel Smart Response Technology (以下 ISRT)を使ってみた。

続きを読む

アルバム・オブ・ザ・イヤー 2015

大晦日です。 今年もアルバム・オブ・ザ・イヤーを発表します。

2012年から始めて毎年邦楽洋楽各1枚でやってきました*1が、今年は絞れませんでした。 よく考えてみたら各1枚に絞るのも邦楽洋楽という区別をするのもどうでもいいので、今年は邦楽洋楽問わず頑張ってアルバム・オブ・ザ・イヤー1枚は決めて、その他良かった・よく聴いたアルバムもノミネートとしてとにかくたくさん挙げることにします。 例年通り、2015年に出たアルバムから選んでいるわけではなく2015年に聴いたアルバムから選んでいます。

*1:もともとは洋楽だけだとよくないかなと思って邦楽も登場させるために区別をしていた

続きを読む