kubuntuそのに

 と言うわけで数日kubuntu13.04を使ったメモでございます。
 
 えーっと、ibusのツールバーとかトレイアイコンが全く出なくて凄い困ってしまって(入力はできる)、ちょっとggってみたら色々解決法が出てたのですが、どうもそれらの情報が全部結構古い。アルェー?、最新版では起きないのー?と思いつつ書かれてる方法を全部試すもうまくいかず。
 仕方ないので本来真っ先にやるべきであるログを見たところ「アイコンみつかんない、やめやめ」的なログがあったり。
 KDEをメインで使うわけなのでgtk周りはほとんどスルーしてしまうわけですが、gtkのアイコンセットをちゃんと指定してやることで起動するようになりました。罠だなあこれ。
 って言うかなんでアイコン無いくらいで起動すらしないんですか軟弱者ですかセイラさんにビンタされたほうがいいんじゃないですかそもそもツールバーにテキストのみでアイコンを表示しない設定とかにもできるのになんでアイコ(……中略……)ので繰り返しにはなるのですがつまり地味子に勝てる人等いないわけです妹や黒猫でハァハァしてる輩は少し頭を冷やすべきだと俺は思います。
 
 少し脱線しましたが、もうひとつ困ったのが、skypeが起動しないことですかねえ。
 先日友人とやりとりしてる最中に「あーもう面倒臭いからskypeログインしてくれねえ?」と言われてあーもうそっちのがめんどくさいようと思いつつskype起動したもののうんともすんとも言わず「あーskype起動しねえわあcore吐いて死ぬわあマジッベーわー残念だわーじゃあおやすみ。」的なことになったりしたわけです。
 どうもこれnvidiaのプロプラドライバの32bit版libGL.soが落ちてるらしいです。ので、mesaのlibGLをpreloadさせることでちゃんと起動してくれるようで。
 まあこれskypeとnvidiaドライバと言う組み合わせなわけで、「だから不自由なソフトウエアを使うからこうなる」と言われそうな感じでございます。全くもって俺もそう思うと言いたいところなのですが、では友人や同僚すべてに自由なソフトウエアのみを使わせるにはどうしたらいいのかがわからないところでございます。

「お前それkubuntuでも同じこと言えんの?」

 って言うAAを思いつきました。まあどうでもいいですね。

 OSのアップグレードを即やるなんてモグリですよ多少あらが出きってからアップデートするのが通でしょ推奨されてますし。と、俺も思うのですけど、なら何故しつこくなんども「新しいディストリビューションアップデートが利用できます押せ」と定期的に通知されるんですかやめてくださいよ押しちゃうでしょう。
 と言うわけで。押しました。
 
 で、kubuntuの13.04のアップグレードのお話をするわけですが、俺はひねくれておりますゆえ以下のような前提があることは留意していただきたい。
 まず、ATOKX3ユーザでございます。
 そして、Qt大好きっ子でございます。
 以前のバージョンでもKDEのアップデートはちゃんとしていたので最新KDEの乗った12.10からのアップグレードです。
 ではどうぞ。
 
 今回のアップデートは普通のubuntuだとちょっと速くなったくらいの差だそうです。まあ、使ってないのでそのへんはわかりませんが、kubuntuの場合さり気なく大きな違いが出てきております。
 それは何か。簡単な話です。Qt5がまざっとります。
 
 Qt5が混ざること自体は大した問題じゃない、ぶっちゃけどこに混ざったのかもよくわかんないかもしれないし気にならない人には全くどうでもいいことに思えるかもしれませんが、先に上げた「前提」を見て頂ければ簡単な話ではないと言うのはなんとなく想像つくかと。
 具体的に言いますと、Qt5でどうやってATOKX3で入力するんでしょう?と言うお話です。結論から言ってしまうと、俺はibus-mozcへ渋々移行することとなりました。
 
 実はアップグレードする前からQt5向け開発環境の整備を渋ってたのも理由はこれだったんですよねえ。まあ、来るべき時が来ちゃったのかなあと受け入れることにしますが、もしもそれでもATOKを使いたいのであればQt5のみibusを使うかたちにしてgtkとQt4はiiimとximでーって方法も、できなくはないですねえ。/usr/share/im-config/data/あたりのファイルをごにょごにょ・・・。
 で、このQt4/Qt5の壁にぶちあたるアプリケーションはなんだ!って話なんですが、ぶっちゃけますとqtcreatorです。やべえ俺的にchromeに継いで使うアプリケーションじゃないですか。因みにchromeは主に可愛い眼鏡の女の子のイラストを見るのに使われていますとかそんなことはどうでもよろしい。
 
 まあ、Qt5とQt4ってぶっちゃけそんな大幅なコード修正を強いられることも無く移行できる感じで、過去にあったQt3→Qt4の思い出すだけで血の涙が出そうな感覚とは随分違います。このへんは皆様誤解しないで頂きたいところです。対応するプラットフォームも増えましたし、Qt4からQt5に移行するのは全く問題ない、むしろ推奨されるべきところかとも思うのですが、やはり混在となると色々問題がねえ。そしてこのバージョンのkubuntuは、ちょっとばかし混在しとります。まあQt4向けのqtcreatorをコンパイルして突っ込むってのもありなんですけどね。
 ただまあ、Qt5でximが使えるように整えられるかどうかはわかんないし、正直整える方向が正しいのかどうかも俺にはちょっとわかんないですねえ。まあどっちにせよ、iiimqcfもありませんからQt5でATOKX3使った入力は諦める方向になりますねえ。
 
 で、それはおいといて。
 
 kubuntuのページを見ていただくとドヤ顔で「新しいスクリーンマネジメントツールだぜヒャッハー!」と紹介されているツールがありますが、すいませんapt-get remove kscreenとかさせて頂きました。理由は今までのディスプレイ設定で調整してあるデュアルモニタ構成を起動時に毎回キレイに上書きして下さるからです。ぱっと見とてもわかりやすいツールに見えますが、何故既にあるものを作りなおしたのかは俺にもまあよく分からないところですねえ。とりあえず余計なことされるのは困っちゃう。
 
 もうひとつ。
 これはkubuntuのアップグレードでってことではないのですが、スクリーンロックがどうやっても無効化できないって謎の問題を抱えているような気がしますねえ。正直KDEのコントロールセンターの配置って物凄くわかりにくいところがあるんですが、例えばスクリーンロックやスクリーンセイバーに関する設定って「ディスプレイとモニタ」以下にあったりする(以前はまた別のとこにあった気がするなあ)わけですけど、こことは別に電源管理のところにもロックに関する項目があります。前者は単に一定時間触らなかったときのソフトウエア的?な設定かと思うのですが、後者に関しては例えば電源状態に合わせて一定時間触らなかった時の設定ってのができる・・・・ってわけわからんでしょもうw。
 で、この後者のほうがどうも設定反映されないところがあるような感じですかねえ。On AC Power時のタイムアウト時間を無効にしても開きなおすとやっぱり元にもどってる。powermanagementprofilesrcあたりに記録されるんだろうなあと見てみてもどうも残っていなかったり。
 電源管理の方はActivity SettingsでUse separate settingsを選んでチェックを外していけば一応無理やりロックかかるのは外せるみたいな感じですねえ。この辺、謎です。まあ、設定が反映されないのはバグなのかなあ。ちょっと探ってみたいところ。
 
 あとちょっと気になった点としては、果たしてibusをremoveしたい人がいるかどうかは別として、ibus消そうとするとkde-l10n-jaも消しにかかるのはちょっと驚いた。いやまあ、組み合わせとしては大多数が使うんでしょうけどさあ・・・。
 
 まとめます。
 
 えっと、今までのkubuntuですんなりすべてがスムーズに進んだことがありましたか?と言う前提でお話しますと、今回も今までと変わりません。以前までを上出来とするならば今回も上出来。
 kubuntuのいいところはubuntuの便利さの上でそれなりに最新のKDEをぶん回すことができると言う点だと思うのです。とはいえ、もちろんkubuntuにしかない実装もちょろちょろあるわけですし(muonとかもそうですねえ)完全な生KDEではありませんがそれらがとにかく使えるように整備されているってところは相変わらず素敵。KDEのアップデートも比較的簡単につっこめますしねえ。
 今回はTAMはATOKを諦めると言う悲しい選択にはなったのですが、正直これレアケースのような気がします。12.10をそんなにいじらずに使ってたならそのままアップグレードでいいんじゃないですかねえ、わかんないけど。
 まあ、もしもQt5が入ってきて過去のKDE4.0とかをフラッシュバックしちゃったりする人がいるなら、そのへんはATOKX3使ったりしてない限りは安心していいんではないでしょうかねえ。まあ、KDE5が出たらまたわかんないですけど、少なくとも自分で書いたQt4向けコードはほとんどが小さな修正でコンパイルできて動いてますからねー。楽観視しておりますよ。

KDE上でのQtのフォントおかしいよね

 おひさ。
 と言うわけでお題の通りでKDE上でのQtアプリケーション(KDEアプリケーションを除く、ね)のフォントってなんかちょっとおかしくね?を直すパッチ。ばっつりかいつまむよ。
 因みに対象はkubuntu 11.10、Qt-4.7.4でございます。
--- a/src/gui/kernel/qapplication_x11.cpp
+++ b/src/gui/kernel/qapplication_x11.cpp
@@ -936,6 +936,7 @@
             // Override Qt font if KDE4 settings can be used
             if (X11->desktopVersion == 4) {
                 QSettings kdeSettings(QKde::kdeHome() + QLatin1String("/share/config/kdeglobals"), QSettings::IniFormat);
+                kdeSettings.setIniCodec("UTF-8");
                 fontDescription = kdeSettings.value(QLatin1String("font")).toString();
                 if (fontDescription.isEmpty()) {
                     // KDE stores fonts without quotes
 見ての通り1行です。お疲れ様でした。
 kubuntuならパッチ当ててlibqtgui4だけ入れ替えればいいかと思います。

卓上スキャナの話

 随分前に買ったS1300と言う卓上スキャナ。買った理由は安かったのとLinuxでの動作を確認していたから。
 卓上スキャナの使い道と言えば自炊ですか?とも思うのだが、正直こいつは自炊には向いてないんじゃないかな。一度に置ける原稿の枚数も少ないしね。まあそう言う方面はあまりやらないのでわからないのだけど。
 ただ単手軽なスキャナと言う点で見ても場所も取らないし複数の原稿をがりがり読めるのでフラットスキャナを常備するよりは遙かにらくちんですよ。そう言う意味でもこの手のデバイスは結構おすすめだったりします。
 
 で、本題。Linuxでどうやって使うかって話。
 まずこいつを動かすにはファームウェアが必要。Windows版のドライバから1300_0C26.nalとかファイルを拾ってきてsaneが読める位置に置いてやる必要があります。/usr/share/sane/epjitsu/とかこのへんかな。まあ、詳しくはググれ?。
 あとはxsaneでも立ち上げて動作チェックをすればおk。
 
 連続両面スキャンができなければこの手のデバイスは全く意味が無いのだけれど、簡単にシェルスクリプトを書くならこんな感じ。こう言うバッチ処理は例によってこのOSの得意とするところだわな。
#!/bin/sh
while [ -1 ];
do
scanimage --batch=/tmp/b%i --batch-count=2 --source="ADF Duplex" --mode=Gray --resolution=300 --page-height=0
if [ $? -ne 0 ];then
 exit
fi
pnmcut -left 216 -top 154 -width 2124 -height 3078  `date +%s%N`.png
pnmcut -left 244 -top 0 -width 2124 -height 3078 `date +%s%N`.png
done
 両面読み込んでB5サイズに切り抜いて、残り原稿が無いと判断されるまで繰り返す、的な。切り抜き部分はサイズで調整必要だけどなあ。
 これで大したことも書いてないけど捨てるに捨てにくいお仕事の資料なんかもまとめてスキャンしてポイできますNE。まあ機械上A3がスキャンできないのが個人的にはすっごい辛いんだけど。

16GBで1万円でお釣りがくるとかわけがわからないよ

と言うわけでー。組み直したメインマシンの話。

メモリ16GBにしたよー!。これでtmpfsでホッハやな。もう「makeしたら負けかなと思ってる」なんて言わないよ。

あと、早速Sandy Bridge内蔵GPUを諦めました。早ぇえなオイって感じですが、誤解の無いように言いますとkubuntuにおいてHD 3000は動きますしデスクトップエフェクトくらいならしっかり動作するんですよ。普通に使う分には問題無いと思いますし特に設定も不要ですからいいと思うんですよ。普通に使う分にはね。unityとかは使ったこと無いので分かりませんが。

で、とりあえず付け足したのがRadeon HD 6770。なんでそれなの?と言われれば、うーん、お値段的に手頃だったから?。特に理由は無いです。

まあ素直に動いてくれますね。つか、まあ癖あるっちゃああるんだけど以前使ってたのもRadeonだったし慣れてたってのがでかいかなー。

で。

メモリももうがっつり入ったので予定通りtmpfsでQtをコンパイルするよー!、って感じでざっくり。

tmpfs領域を作るのは簡単です。"sudo mount -t tmpfs -o size=4096M tmpfs ./tmp"とかしてやるだけですぐ用意できます。この手軽さがたまんないよね。

で、なんでかHDDにあったqt-4.7.2のソースパッケージをさくっと展開してconfigure、よーしパパ奮発してmake -j16とかしちゃうぞー!、って感じ。アホですね。

ええもう、シェル見てても全く追えないくらいアホみたいな速度でコンパイルが進行します。時々リンクで落ち着くくらい。

さて。

ところで思ったんだけど、とりあえずメモリいっぱいあるからtmpfsでヒャッハー!と安直な考えだったのだけど、冷静に考えればLinuxには空いたメモリをディスクキャッシュとして使う機能があったような。ってことはtar玉展開直後ってこのキャッシュが効いているから読み出しに関して言えばtmpfsあんま意味ないんじゃ…?。

勿論書き出しには効果あるんだろうけど、WriteBackを有効にしたHDDを作業用に使うとか方法は色々ありそげ…。

まあちゃんと調べてないのでディスクキャッシュの挙動がどうなのかは分からないところではあるんですが。

どっちにせよ使い方次第なんだろうなあと思う今日この頃です。

おにゅうPCからコンニチワ

「PC組んだよー!」

と言うわけで。Core i7マシンを組みました。Sandy Bridgeね。

とりあえずメインで使っていたノートが一部挙動不審になりつつあって、以前使っていたマシンを蘇らせてあと5年戦えるマシンを作るのだー!と言う勢いです。

こんな感じ。i7は2600Kをチョイス。マザーはz68のものを選びました。メモリは4GBx2。写真には無いですがこれに2TBのHDDと部屋に転がっていた64GBのSSDが入ります。

で。

先に断っておきますが俺は自作に関しては超のつく素人です。最後に組んだのがP4(後でC2Dに変えたけど)のゲーム用マシンです。AGPっすよ。

そんな次元の人間が最近のCPUとかマザーとかいじれんのかよーって感じですが、結論からいけば、いけます。って言うか昔より簡単じゃないかなあ。そんな感じで色々調べつつパーツを注文していきました。

続きを読む

KDE4.7がやってきた

と言うわけで我が家にもKDE4.7がやってきました。Qtのバージョンに追いついたぜヒャッハー!とか一人で喜んでいますが、まあそんなことは置いておいて。

ちょっとばかしupgradeに手こずったりとかですが、もしもplasma回りでエラー出て起動しないよう、なんて方は~/.kde/share/config/以下にあるplasma*ってなファイルを一度消してデフォルトの画面で起動してみるのが良いかと。手になじんだデスクトップを作り直すのはちょっとしんどいけどなー。

って言うかKDEと心中すゆっ!とか宣っているくせに今回知らないうちに4.7出てて変更箇所なんかもノーマークで恥ずかしい限りです。またちゃんと調べておきます。

気になるところとしてはkubuntuでupgradeかけるとまたpulseaudioが投入されちゃったとこかなー。まあ消せばいいところなんですけど、無くても問題無く動く(個人的には居ると厄介なレベル)ものがなんで入れられてしまうのか良く分からないところ。まあ多分何かしら理由があるのでしょう。

ATOKX3のツールバー真っ白を修正する

昨日のエントリの「64bit環境でATOKX3入れるとうにょうにょ…」って話の続き。

これgtk.immodulesと同じじゃないかなーと思って探ってみたら、あっさりうまくいった。

32bit版のgdk-pixbufは/usr/lib32/gdk-pixbuf-2.0/2.10.0/以下のloaders.cacheを見にいくべきなのに/usr/lib/gdk-pixbuf-2.0/2.10.0/以下を見ているようで。

なので、

$ ln -s /usr/lib32/gdk-pixbuf-2.0/2.10.0/loaders.cache /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache.32

こんな感じで解決。ちゃんと表示されましたとさ。めでたしめでた…くねえぞw。

 

32bitが2個で64bit級って懐かしいよね関係無いけど

先日64bit版のkubuntuに移行して「これでPAEとおさらばだぜ!」とフンフン鼻息荒くしていたわけですが、いかんせん64bit環境への知識が乏しすぎたなと言う感じ。

具体的に言うと、ATOKX3のツールバーが真っ白で悲しい。

ええ白いですね。

まあ白いだけだし入力さえできたらいいやーとか言うどうしようも無い方向で進めていたのですが、って言うか64bit環境にATOKX3入れる時点でかなり面倒なことになるのでそこで力尽きていたと言うのが正直なところなのですが、どうもちゃんとエラーとか見てみるとgdk_pixbuf_loader周りで32bitライブラリのくせに64bitライブラリを読みに行っているようで。なにこの子、最近流行のドジっ娘か。

とは言え64bit環境の知識もなければgtkやgdkの知識なんてゼロだぜイエアって感じの俺に直せるわけもなく。当分は放置って感じでしょうか。いいよ入力できるし別に驚きの白さでも。この問題にひっかかってるのはATOKX3のツールバーだけだし。

てか64bit環境でwine使って普通に32bitなWindowsアプリケーションが動いてるの見て「なにい?、wineてどう言うことなんだ?」とか思ってよく見てみたら64bit環境でも32bit向けにコンパイルされたwineが入っているようで。ぬかりねえなw。試してみたソフトがマギーたんのAliceってとこがまたなんとも。

まあもう少しamd64がどう言う仕組みなのかをちゃんと調べんとだめだわね。「わーい何も考えずにメモリ増えるよー」とか軽い気持ちで突入したらあかんて話。まあ、当然なんですけどね。radiko使いたくてAir入れた時もなにげに苦労したしなあ。

余談。

Wnn8?、なにそれ美味しいの?。

[追記: 解決編 ]

Qt for Android

久々におじさん大興奮です。

AndroidアプリがQtで書けるのよ。そらもうね。

とりあえずざっくり試す方法だけ書いておきますね。環境はkubuntu10.10でございます。


 

とりあえずこちらをざざっと見て頂いて

もしもEclipseでのAndroid開発環境が既に構成されているのであればそのまま流用できますんでおすすめです。

されてませんーって方は、まあ今後するかもしれないのであればこの機会にやっちまえ。色んなサイトで日本語でどうすればいいか説明されております。

あと、ndk必須。ndkは入れてないなーと言う方は貰ってきておいて下さい。

頂いてくるもの。

こちらが本体。そしてこちらがministroっつーAndroid向けQtをダウンロードしてくれる素晴らしいアプリ。実機やエミュレータで動かすにしてもAndroid向けQtをインストールする必要がありますから両方セットで。

用意が終わったら実行属性つけて起動。インストーラに従って叩き込みましょう。

そしておもむろに全裸になった後(靴下除く)、正座して”/opt/necessitas/QtCreator/bin/qtcreator”(標準)を叩きます。

Creatorきたこれ。

因みに既にCreator使ってて環境がまざっちゃうと困るよーと言う方も、とりあえず別環境として動くようです。安心ですね。

早速wktkしつつツール→オプションを叩くと、見慣れない「Android」の文字が。

ヤーッ!。

なにはともあれsdkとndkとtoolchainを指定してあげて下さい。antはapt-get installしてあれば空白でもおkです。

AVD Managerのところは1個用意しときましょう。Eclipseで使っていたものがあればそれでもいいかな。

次、Android用Qt4を使うように指定します。

ヤェーッ!。

いやっほう、これでとりあえずおkです。

早速なんかサンプルを読み込ませてコンパイルしてみましょう。どきどきですね。

Android向けQtを指定するのを忘れずに。

ビルド設定は特に触らなくてもいいかな。シャドウビルドだけ外してみます。

ターゲットはAndroid-8に。デフォでAndroid-3になってますがうまくコンパイルできず。

デプロイ設定は一番下のを選んで、ダウンロードしておいたministroのapkを指定してやりましょう。

さてビルド。

うまく通れば実行ボタンで仮想マシンまで起動します。ministroが動いて初回にめきめきとQtライブラリを拾ってきます。気長に待ちます。

因みに実機向けだとmarketに既にministro上がっているようで。

きたああーーー!!!。

因みに日本語は入力できません。残念。こんどコード覗いてみよう。


さてざっくり(ほんとざっくりだな)でしたが、要はこれQt向けのコードをネイティブでコンパイルしてライブラリ化しjni経由で起動してる様子なのですが、まあそう考えれば速度的には全く問題ないレベルなんじゃなかろうかと予想。まだあんま触ってないから分からないけどね。

気になるのはメモリの食い具合なんだけどね。とりあえず実機にもってった感想ではえらいことにはなってない様子ではあったけど…まだわかんないね。

UIはX版なのかな。Androidに合わせてってわけでは無い感じ。それでも、WindowsやX向けのQtのコードをAndroid向けにそのままコンパイルできるインパクトはでかいな。