今日の雑記はgraphql-activerecord
このgem使ってるんだけど、
RuntimeError (Could not locate GraphQL type for model Character)
“GraphQL::Models::CharacterTypeはなしんこなしなしだぞ”
って言われる。
graphql-activerecord/activerecord.rb at master · goco-inc/graphql-activerecord · GitHub
ここらへん。
Modelに対応するTypeをTypes::CharacterType
みたいに定義しちゃってるせい。
# config/initializers/graphql.rb GraphQL::Models.model_to_graphql_type = -> (model_class) { "Types::#{model_class.name}Type".safe_constantize }
で動いた。
Bash on Ubuntu on Windowsからexeファイルをコマンドとして叩いていくために
こっちの記事でdocker.exeをdockerコマンドとして使えるようにしました。 ただコマンドごとに.bashrcに記述していくのも面倒なので、指定ディレクトリ内のwindowsバイナリをまとめて処理するようにしようと思います。
/mnt/c/Users/anoChick/.winbin
ここに*.exeファイルを入れていきます。
ディレクトリをどこに配置するかは自由なのですが、
/usr/local/winbin
とかだとWindows側が読めないです。
export PATH=$PATH:/mnt/c/Users/anoChick/.winbin WIN_BIN_DIR='/mnt/c/Users/anoChick/.winbin' cd $WIN_BIN_DIR for file in `ls *.exe` do alias ${file%.*}=$file done cd
あとはsource .bashrc
するなりターミナルを再起動するなりすれば動くと思います。
Windows Subsystem for LinuxからDocker for Windowsを使う
Docker for WindowsはWindowsなので当然Windows Subsystem for Linuxからは実行できない。
と、おもいきやWindows 10 Creators UpdateからLinux側からでもWindowsバイナリ(exeファイル)が実行できるようになった。 なのでPATHさえ通してしまえば良さそう。
export PATH=$PATH:/mnt/c/Program Files/Docker/Docker/resources/bin
ただこれだけだと実行するのにdocker.exe
と記述しないといけないので、エイリアスを張る。
alias docker='docker.exe'
これでOK!
exeファイルとして扱われるのでsystem32にもパス通しちゃって良さそう。
WindowsでKitematicを起動するとクラッシュするようになってたんだけど治った。
最近Windowsで開発環境が整ったワイワイしてたんですが、 なんでか突然Kitematicを起動するとOSごとクラッシュ(ブルースクリーン)するようになってしまった。
クラッシュする直前にVirtualBoxを呼び出そうそしている形跡はあったのだけれど、 そもそもWin10のDocker for WindowsでDockerを動かしているのでVirtualBox使わなくね? と思い、issueを漁ったらあった。
Windowsコンテナを扱うモード(VirtualBox利用)に切り替えた後戻らなくなるバグのようで、 localStorageを書き換えたら無事治った。
コンソールを開くメニューがWindows版Kitematicには存在しないのだけれど、 幸い私はショートカットを知っていたので開いた。良かった。
WindowsでWeb開発環境を整える雑記
基本的にはWindows Subsystem for Linux乗る
先日のWindows 10 Creators Updateでかなり使えるレベルになったらしいです。 https://blogs.msdn.microsoft.com/commandline/2017/04/11/windows-10-creators-update-whats-new-in-bashwsl-windows-console/
私が常用しているreact-boilerplateもネットワークインタフェース系がサポートされておらず動きませんでした。 https://github.com/Microsoft/BashOnWindows/issues/468
これが、Creators Updateを適応したら動作するようになりました。嬉しい。
Bash on Ubuntu on Windows
Bash on Ubuntu on Windowsに関しても、 日本語がずれたり切れたりしていて使い物にならなかったんですが、今回のアップデートできれいに表示されるように修正されました。
ちなみに、修正される前は http://cmder.net/ Cmderをつかったり(tmuxがマウス操作に反応しない)
それを回避するために Bash on Ubuntu on Windows の最高の端末環境を教えてやるからちょっと来い。 ↑みたいな感じで Cygwin+minttyからBoWを繋いで動かす。みたいなことをしてつかわれていたそうです。
Docker for WIndows
Hyper-vを使うことでWindows上でLinuxコンテナを動かす感じです。 Web開発をする上ではそれで十分だとは思いますが、最近はWindowsコンテナも使えるようになったらしいです。 WindowsのDocker(コンテナ)対応、正しく理解できていますか?
Windowsを積極的に使っていく気持ち
最近Windowsがめちゃめちゃ良くなってきているのを感じます。 せっかく高性能なWindows機を購入したので積極的に使っていきます。
VR演奏環境作った。
ゲーミングPCを買いました。 家にちょうどOculus Rift DK2があったのでVR開発をはじめてみました。
できたもの
— あのに(たわし坂2) (@anoChick) 2017年3月26日
MIDIキーボードの入力が仮想空間内のキーボードにいって音を鳴らすやつ。
Unityで作りました。
使ったもの
モデル
GitHub - keijiro/MidiJack: MIDI input plugin for Unity
こんな感じ。良い。
感想
吐きそう
昨日今日とHMDで遊んでたので酔いがひどい。 あとDK2は解像度が低いので楽譜読めないです。
今回はあるものを使ったのでほとんどコードは書いていない。 UnityはいろいろなAssetがあるのでいいね。
今後やりたいこと
せっかくの仮想環境なのでもっと立体音響とかやりたい。 部屋の大きさをかえるとリバーブのパラメータが変わるとか、 サンプリングしたり、トラックをシュッと作ったり、 VRのDAWみたいなことしたい。
Unityでスマホのカメラを使う
僕の同僚かつフレンズのid:hiragramがなんかよくわからないカメラアプリを作ってて凄い。
僕もそういうのやりたいけどiOS開発やったこと無い。
Unityなら出来る。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraController : MonoBehaviour { public WebCamTexture webCameraTexture = null; public GameObject plane; // Use this for initialization void Start () { webCameraTexture = new WebCamTexture (); plane.GetComponent<Renderer>().material.mainTexture = webCameraTexture; webCameraTexture.Play (); } // Update is called once per frame void Update () { } }
うつった。 テクスチャに投影してるだけなので↓のようにも出来る。
Unityでカメラ使うデモ pic.twitter.com/ERQCmh4GiD
— あのに(たわし坂2) (@anoChick) 2017年3月22日
だからなんだって感じではあるけど、 なんかいろいろできそう。