from electron 2 web

インターネットのリソースを無駄遣いして検索におけるUXを下げてごめんなさい

圧倒的文章力のNASAでゴミみたいなチラ裏のようなメモを量産してしまい全ての"Web開発者"にごめんなさい

ibus-mozcがnot rootだとできる問題を解決する

not root

^Croot@evil:~/Downloads/mozc/src# dpkg -l | grep ibus
ii  gir1.2-ibus-1.0:amd64                  1.5.14-1                             amd64        Intelligent Input Bus - introspection data
ii  ibus                                   1.5.14-1                             amd64        Intelligent Input Bus - core
ii  ibus-gtk:amd64                         1.5.14-1                             amd64        Intelligent Input Bus - GTK+2 support
ii  ibus-gtk3:amd64                        1.5.14-1                             amd64        Intelligent Input Bus - GTK+3 support
ii  ibus-kkc                               1.5.21-1                             amd64        Japanese Kana Kanji input engine for IBus
ii  ibus-kkc-dbg:amd64                     1.5.21-1                             amd64        Japanese Kana Kanji input engine for IBus - debugging symbols
ii  ibus-mozc                              2.18.2595.102+dfsg-1+b1              amd64        Mozc engine for IBus - Client of the Mozc input method
ii  libgusb2:amd64                         0.2.9-1                              amd64        GLib wrapper around libusb1
ii  libibus-1.0-5:amd64                    1.5.14-1                             amd64        Intelligent Input Bus - shared library
ii  libusb-0.1-4:amd64                     2:0.1.12-30                          amd64        userspace USB programming library
ii  libusb-1.0-0:amd64                     2:1.0.20-1                           amd64        userspace USB programming library
ii  libusbmuxd4:amd64                      1.0.10-3                             amd64        USB multiplexor daemon for iPhone and iPod Touch devices - library
ii  libusbredirhost1:amd64                 0.7.1-1                              amd64        Implementing the usb-host (*) side of a usbredir connection (runtime)
ii  libusbredirparser1:amd64               0.7.1-1                              amd64        Parser for the usbredir protocol (runtime)
ii  libustr-1.0-1:amd64                    1.0.4-5                              amd64        Micro string library: shared library
root@evil:~/Downloads/mozc/src# dpkg -l | grep mozc
ii  ibus-mozc                              2.18.2595.102+dfsg-1+b1              amd64        Mozc engine for IBus - Client of the Mozc input method
ii  mozc-data                              2.18.2595.102+dfsg-1                 all          Mozc input method - data files
ii  mozc-server                            2.18.2595.102+dfsg-1+b1              amd64        Server of the Mozc input method
ii  mozc-utils-gui                         2.18.2595.102+dfsg-1+b1              amd64        GUI utilities of the Mozc input method
root@evil:~/Downloads/mozc/src# 

現在は下にタブキーで選択って出てるようなじょうたい。


f:id:lv7777:20161123173517p:plain


mozcプロパティとかもちゃん選ぶと出てくれる。

f:id:lv7777:20161123173604p:plain


この状態でsuしてみる

f:id:lv7777:20161123173656p:plain

mozc root

yappa root de ugokasu niha build ga hituyou ppoina...

srad.jp

カスタムビルドする

行くぜ初めてのカスタムビルド!!!

通常buildのほうはあっちを参照してオナシャス!

//TODO:はやく通常ビルドのブログを公開する.

pre request

apt-get purge ibus-mozc

今からカスタムビルドをlinuxに導入するので.

purgeはremoveと違って設定ファイルも消す.

基礎知識

まあとりあえずビルドオプションとかいろいろ見てみる

どうもmozc_build.py gypで.ninja(make files)を作ってmozc_build.py buildでそれに沿ってsrc(XX.cc,XX.hなど)からビルドをout_linuxに吐き出してるっぽい.

ふ〜ん。mozcもNaCL使ってんのな。

ソースをいじる

バイナリの吐き出し先を変更したいな〜とか思ってみる.そうすれば正常系とのdiffがとれるからね.

そういうのを指定するオプションがないっぽいので直接ソースいじった.

どっかで指定ターゲットとその出力先を定義した連想配列っぽいものが定義されていたのでそのリストのout_linuxをout_linux2にかえた.

無事この方法でout_linux2に吐いてくれた.

特権で動かすコード自体はなんかrun_levelの条件分岐で全部statusをnomalにすればいいって書いてあったのでそのとおりにしたらできた.

先人の知恵は最強,はっきりわかんだね.

ビルドできたら?

そのあとインストール(コピー)を手動でやる必要がある.

先人の知恵!!!強い!!

qiita.com

動かない・・・

mozc.xmlのexec要素を修正し忘れていた・・・もう一方は設定したんだけど.

んで修正したらできた.よかった.

プルリクを投げる

ビルドが完成するまでの間プルリクでも投げて気長に待ちましょう.

github.com

なんでもmozcにプルリク投げると署名が必要らしいです.

ということで署名しようと思ったけどadressとかよくわからんしそのうち実家に帰省したときに親に聞くか.

まあ昔アマゾンUS登録したときやったきがするけども.

知見

IMとIMEは違う

frics?とかuimみたいなやつはIM,mozcはIME

もともとmozcはibusしか対応してなかったんだけど最近frixとかにも対応し始めたらしい.

なんだよ,じゃあfrixでいいじゃん・・・(IMによって動作が変わったりするんだろうか?

覚えた.便利.

  • mozcはNyaRuRuさんがメインメンテナー

日本人がメンテしてるのか.いい.

  • ninjaコマンド

詳しくはわからんけど便利だな.そのうち使いこなせるようになりたいね.