Archive for the ‘日記’ Category

もう一人の旧友の話。確かメールだったかでのやりとりで、僕の質問への彼の答え。

  • (結構前に。流行っていた頃か) 「ブログはやらないの?」 → 「やる意味がない。」
  • (近頃。彼は新しいものが好きだから、これにも興味あると思って) 「テスラは欲しいんじゃない?」 → 「あんな大きいだけで邪魔なもの、何で要るの」

そうでない時もあるが、否定的な回答は大抵この調子だ。確かに間違ってはいないかも知れないが、「グサっ」と来る・・・ 若い頃はこちらも元気だったので、「そんなことないだろう」とか反論したりしたが、今はそんな気はまったく起こらない。単に、「聞かなきゃ良かった・・・」と後悔するだけだ。他にも、舌足らずな書き方で誤解させられたことが何度もある。

ちゃんとした文章や会話が不得意(彼なりに書けば、「無駄」?)なのだろうか。ちゃんとした会社でそれなりにやっていそうだから、できるとは思うのだが。友達だから雑になっているのか、あるいは、理系だから仕方ないのかも知れないが、いい歳なんだから、相手が嫌な気分にならないように気を付けるとか、誤解を生まないように書くとか、第三者の立場で読み直してみる方がいいと思うのだが。僕は文章が好きだし大切に思っているので、特にそう感じるのかも知れない。

いずれにしても、「彼には機微は伝わらない」と感じさせる時点で、実際はどうかに関わらず、(今の)僕とは合わない気がした。そうして、彼も「余り会いたくない人リスト」に入ってしまった。。。 そして、そんな彼らとの忘年会に出ても消耗するだけの気がしたので、パスした。

補足すると、二人とは大学時代からの付き合いで、今までいろいろお世話になって来たから、根は親切で決して悪い人ではないと思うのだが、いかんせん言葉や態度が折り合わず、付き合うのが難儀になってしまった感じだ。

歳を取って僕が変わったのか二人とも変わったのかは分からないが、年月で人、あるいは相手に求めるもの、あるいは人間関係は変わるようだ。

 

PS. 「そういうお前の文章だって、グサっと来るし、嫌な気分になるものもあるし、汚い言葉だってあるじゃないか」と思われるかも知れませんが、それは正しいです。意図してそう書いています。何度も推敲して、最も効果的に「グサっ」と行くように書こうとしています。ここは私がいろいろな表現をしたい場なのです。正確に書くと、「直接の相手(書かれている対象)にはグサっと行く」のであって、大多数の読まれている方にはそうではないはずです。そのような注意はしています。

意図せず不適切な表現になっている場合もあるでしょうが、私の不手際か、読まれる方との相性の問題と思われます。そこは私の未熟なところで、こちらからは気付けないところです。指摘は歓迎ですが、不愉快な思いをした具体的な箇所と理由や、全体あるいは特定のカテゴリへの印象であれば、その対象を読み通してからお願いします。他サイトで感じたことあるいは一般論を、「ここも同じだろう」と適用されても困ります(そのような注釈付きであれば、ここには関係ないと分かるので、問題ないです)。

いずれにしても、少なくとも、その投稿の「あるべき姿」からは外れないようにしているつもりです。 (9:11)

  •   1
  •   0

今日だったか、偶然ニュースでb-mobileの新しい従量コース(990ジャストフィットSIM)の記事を見て、再び移行を考えてみた。今はOCN mobile ONEで、特に問題なく使えてはいるのだが、入会した時のサポートが余りにもひどかったし、使っていてもシステムやwebの使い勝手が信じ難いほどひどく(前時代的。下に例を示す)、何年経っても全く改善されないので、いつか退会しようと思い続けていたのだ。

OCNの腐っている点(例)

  • システム: 光とモバイルそれぞれに(向こうからの連絡受け取りにしか使わない)メールアドレス(キャリアメールの扱いじゃないので、何にもありがたくないゴミ)が割り当たる(自分のアドレスは使えない)。なんと、それらを一つに統合できないようにして、間違えないようにするという親切設計w そういえば、IDみたいな番号も契約ごとにあって、どっちがどっちか分からなくなって、大変ありがたいわ!
  • Web: 何かしたくても、どこをクリックしたらいいかすぐに分かることはまずなく、何度も試行錯誤させることで頭の老化を防いでくれる、親切設計だw 何度試行錯誤したって分からず、ググッて第三者が書いた手引きを見てようやく分かる。画面遷移は妙に遅く、それも高齢者向けなのかも知れない。

b-mobileの新しいコース(音声付き)の最低料金は、1GBで990円/月(税抜き、以下同)と手頃だ。それで、移行したらどのくらい得(出費の削減)になるか検討してみた。

今は3GB/月で1800円である。ただし、光にも入っているので、割り引きが200円/月ある。他にIP電話050plusの基本料金300円が無料になっている。すると、実質料金は、1800-200-300= 1300円/月となる。

b-mobileにした場合、年間の差は、(1300-990)*12= 3720円となる。が、b-mobileにはOCNのSpotifyのカウントフリーがないから、旅行や帰省時にSpotifyを聴くとデータ量が増えて追加料金が掛かる可能性が高い。それを考慮すると、差(得)は約3120円/年※となる。一方で、移行するには、事務手数料が合計約6000円掛かるので、約2年経たないとペイしない。

※Spotifyのデータ量の計算を誤っていたため、正しい差(得)は約2124円/年となる。 (12/25 15時 訂正)

それでは割に合わないないから止めようと思ったのだが、Spotifyは速度を約100kbpsやそれ以下にできるので、b-mobileの低速モード(200kbps程度)でも使えそうなので、追加料金は要らなそうなことが分かった。更に、僕は電話はほとんど使わないので、050plusの基本料金300円を除外して計算し直すと、OCNの実質料金は、1800-200= 1600円/月となり、b-mobileにした場合の得は、(1600-990)*12= 7320円/年となって、移行の手数料が1年でペイできる計算になって、なかなかいい感じだ。

それで、b-mobileの評判などを調べてみたら、近年の業績が悪く(赤字続き)、事業継続性にリスクがあるように思えた。また、事業に一貫性がない(プランの乱立、ドコモを捨てたり戻したり)のも気になる。使っているうちに会社が売却されたり、プランがなくなったり、値上げされたりするリスクがあると思った。

それで、同様な条件(音声付き※、1GB・千円/月前後)で他を調べてみたら、以下が挙がった。

  • イオンモバイル: 500MB: 1130円/月
  • LinksMate: 1GB: 1100円/月
  • ロケットモバイル: 神プラン: 200kbps: 980円/月
  • DMM: ライトプラン: 200kbps: 1140円/月

※音声なし(データのみ)ならもっと安くなるのだが、さすがに、IP電話だけだと掛けられない相手があるし、待ち受けで電池を消費する可能性があるなど、問題が多いので止めた。

ロケットとDMMは低速で実用性に疑問があったので、却下した。どちらもYouTubeなどは(滅多に使わないが)無理そうだし、DMMは3日で366MBの制限があるので、いざという時に使えない可能性がある。するとイオンとLinksMateが残り、データ量では後者なのだが、調べたら手数料が高いという欠点があった。具体的には、他社への移行時に、MNP転出手数料以外にSIM解除手数料が3000円掛かるので、高く付く。

結局、イオンが残った。イオンだと、(1600-1130)*12= 5640円/年の得となり、移行手数料が1年ちょっとでペイできるから、悪くない。ただ、データ量の500MB/月(= 約16MB/日!!: 一体いつの時代かと思う)はすごく心許ないのだが、過去3か月の使用量を調べたら、余り外出しないせいか250MB/月程度だったので、問題はなさそうだ。

余談だが、イオンというのは我ながら意外で、今のスマフォをシャープにした時と同じような、(負の)驚きがある。「なんでわざわざ・・・」みたいなw まあ、名前にこだわらず実を取ろうとしていることの現れか。

運のいいことに、イオンはキャンペーンで来月頭までに契約すると3か月分の料金が無料になることもあり、早速手続きを始めたのだが、すぐに落とし穴に嵌ってしまった。OCNはMNP番号の発行に3営業日程度掛かるとのことで、早くても27日頃までは待つ必要がありそうで、それだと年内の切り替えは厳しいものがある。今日・明日(は無理にしても数日)でスパっと切り替えられると思っていたのに、まったくがっかりだ。

一体何にそんな時間が掛かるというのか? 事務員が確認して印刷して上司のハンコでももらいに行くのか? Webにログインする時に厳重なセキュリティを通したのだから、番号発行を希望されたら機械的にチェックして発行すれば、一瞬で終わることだろう。あるいは、実はそういう仕組みなのだが、処理に使っている計算機の速度が1MIPSくらいしかなくて、何をするにも時間が掛かるのだろうか?w (時間が掛かるのは、OCNだけでなくイオンもそうなので、どこでもそうなのかも知れない。てことは、"MNP協会"みたいな天下りとか利権団体での処理が必要で、そこはお茶飲みと喫煙するしか能のないジジイばっかりなために遅いのだろうか?)

まったく、ガラパゴス国 日本の伝統は素晴らしいねえw

という訳で、その後、再考してまたb-mobileに傾いたものの、将来性を考えてイオンに戻った。が、考える時間はたっぷりあるので、いろいろ迷ってみたい。あと、正直言って、もっと安くないと移るメリットは大きくないのだが、OCNからの脱却の第一歩として実施したい。モバイルを止めれば残りは光で、仮にどこかに引っ越すとしたら、その時に抜けられる可能性は充分にある。引っ越さなくたって、ハードルが下がるから意味はある。

(12/23 12:52) 予想外に早く、さっきMNP番号が来たので、さっそくイオンに契約した。あとはSIMが来るのを待つばかりだ。昨日や今日が営業日だったのかは知らないが、2日目に来た。もう少し正確に書けば顧客の不安やイライラも減ると思うのだが(イライラするのは僕だけ?)、安全側に振っているのだろうか。そういえば、以前もこんなことがあった気がするw

 

PS. 050plusの代わりのIP電話としてSMARTalk(= Fusion。今は楽天系になったそうだ)に申し込もうとしたら、過去に登録していたクレジットカードを再度使う場合には、手数料500円が掛かるという落とし穴があった。iPhoneを止める時に退会したのが失敗だった。これにもがっかりしたが、仕方ない。電話は余り使わないので、当面はプロバイダの提供している、番号にプリフィックスを付ける割安(といっても高い)な電話で我慢することにした。万が一仕事が軌道に乗って、多用することになったら、入ればいい。

  •   0
  •   0

マウントを取りたがる奴はかなり嫌いだ。例えば、林檎信者で「毎年iPhoneを買い換えるのが当たり前」とか言う奴。買い換えるだけなら、そいつのお金が無駄なだけだからまだいいけど、こっちが「そんなの無駄だ」とか言っても聞き耳持たない奴や、こっちの物を「しょぼい」とか言って(言わないまでもそういう風に思って)見下す奴は大嫌いだ。

書いてから思い出した。昔、車の話になって、僕が乗っている車の名前を言ったら、「スズキは軽のイメージしかない」とか言い放ってマウントを取ったつもりの奴が居た(最後に出て来る「長い友達」)。間違ってはいないが、僕の車に乗ったことあるのかな? 十把一絡げとは随分荒っぽい。それに、スズキの「軽」だって何が悪いのだろうか。反論する気にもならなかった。

そういえば、そいつにはまだある。僕が今のPCを買った時はSandy Bridgeが出たばかりだったのだが、それを言ったら、したり顔で「出たばかりの物はトラブルが多いから(待つべきだった)」などと言っていた。確かにマザーボード交換の憂き目には遭ったが、仮にその前のCPUにしていたら、「古い」って言われたに違いない。そして、Sandy Bridgeは今でも充分使えると聞くけど、その前のは全然聞かないから、その時点での判断としては僕が正しかったのだ。そいつには積年のイライラが溜まっているようだ。そいつにこそ言いたい、「うるせーんだよ! クソが!!」。

道具自体に価値はないのに、特定の物に価値があると思っている人が多い。こだわらずにその時に自分にとっていいものを使うのが一番いいのに、それを理解しない。

おもしろいのは、そういう風にこだわりが強い人でも、いつの間にか宗旨替えしていることがあることだ。例えば、林檎信者なんて、iPhoneのホームボタンや指紋認証を褒め称えていて、それらがなくされたら不便なはずなのに「慣れれば便利」とか言ってやっぱり称え、イヤホンジャックがなくなってもなぜか称える。信じられないことに、M字ハゲ(ノッチ)すら気にならないようだ。あれなんて美意識ゼロでAndroidレベルに落ちたとしか思えないのだが・・・ 更に、NFCも防水も要らなかったはずなのに、付いたら褒めて、便利に使っている。「そんなの要らない」と文句を言う人はまず居ない。それから、周辺機器のインタフェースがコロコロ変わって、いろいろな機器が使えなくなっても意に介さないらしい。何でも勝手に変えられてしまう物のどこがいいのか全く理解不能だ。そういうののどこが「美しい」のか。不便な最新技術が最高なのか。相当な意地っ張りか、目や頭が腐っているんだと思う。おもしろい。

僕は、ポリシーなくふらふらするのがいいと思っている訳ではない。自分のポリシーなり要望に合ったものを見つけて使うべきだと思う。それまでいいと思っていても、合わなくなったら止めて乗り換える勇気は要る。「いい物はいい、悪いものは悪い」であって、「林檎だからいい」なんてのは論外だ。

話は本題になるが、そういう人が他人ならいいけど、長い友達だったりすると良くない。そういう相手だとキツくとっちめられないから(議論しても信者は絶対に折れないから、話が長くなるだけでおもしろくない。若い頃はそうやって延々と議論(実際には単なるじゃれ合いだ)するのもおもしろかったが、年取ったら疲れるだけで何も成果がないから面倒なだけだ)、却ってストレスが溜まり、段々会いたくなくなる。そういう風にして、年を取ると友達は減るようだ。まあ、仕方ない。

 

PS. 僕は議論は好きだけど、相手の言い分を聞いて考えを理解しようとせず、単に自分の主張を言い合うばかりの「議論もどき」は時間の無駄だしイライラするだけだから、大嫌いだ。特に、相手が「信者」だと自分に誤りがあっても認めないから全くの無駄だ。逆に、相手が単にこっちの言い分を自分の考えに関係なく、あるいは、分からなくても理解しようとせずに「はい、そうですね」と認めるだけなのも、馬鹿らしいし全くの無駄だから大嫌いだ。 (12/22 7:38)

  •   1
  •   1

全くの個人的な思いである。

岡村は嫌いじゃないけど特別好きでもない(ある意味、槇原敬之に似た立ち位置かも知れない)のだが、なぜか何度か書いている。そして、Spotifyで、有名な「夢をあきらめないで」なんかが掛かると、つい聴いてしまう。そのうえ、アルバムのジャケット写真なんて、いかにも良くある(自意識過剰な女性の)パターンなのに、つい見入ってしまうw 見ながらつい、「このクソがー!」(ひどい意味じゃなく、猫に対してと同様)とか思ってしまう。

「夢を―」は、本人がいかにも「素直ないい人」そうな感じがたっぷりで、つい元気付けられてしまうw (聴きながら感じたのだが、実際には、自分を元気付ける歌だったのかも知れない。詳しくないので全くの想像である) 細かいところだと、時々入るおかずのようなドラム(金属的な音。スネア?)も「いかにも」なのだが、不思議ななごみ感があっていい感じだ。

この、「いかにも」ばかりなのに反感を持たせないところはさすがだと思う。本人の能力とか魅力(やっぱり、人徳?)なのだろうか。全く末恐ろしいw

検索してみると、年齢的には僕の姉におかしくない感じで、もし姉が居たらこんな感じなのかと思った(と、前に書いた気もするが定かではない)。本当はもっと色っぽい姉に憧れるが、いろいろと差し障りがありそうだw そして、余計なことだが、想像にしても、姉は五輪真弓や高橋真梨子や中村あゆみや渡辺美里ではなさそうだ。あ、岡村とは全然違うだろうけど、渡辺真知子もいいなあ。って、話が逸れてしまったよw

PS. いろいろな人を出したが、「理想の姉」で検索したってかすりもしないw それはそうだ。一体いつの話してんだってことだ。

  •   0
  •   0

どの会社の誰とは書かないが、明日以降の反撃が楽しみだ。是非、期待に応えて欲しいものだ。国外逃亡とか手打ちはないよね?

  •   0
  •   0

肩書はゴミだ、「肩書を捨てなければ、人間同士の付き合いはできない」と書いた人のプロフィール:

さすがだ。僕とは「人間同士の付き合い」はできなさそうだw こっちから御免蒙る。

  •   0
  •   0

最新のAppImage版のdigiKam(5.9.0)では、Googleマップが暗くなり、ちゃんと表示されなくなってしまっている。OpenStreetMapにすれば問題ないが、Googleマップの方が表示が綺麗なので、できればそちらを使いたい。それで検索したら、想像どおりAPIキーの問題だそうで、6(まだベータ)では直っているとのこと。そこに5での暫定対処の方法(Googleマップに関係するファイルを入れ替える)も出ていた。

ただ、AppImage版はOSのディレクトリ(/usr/share/digikam)を使わず、アプリ一式が1つのファイルになっているので、そのままでは対処ができない。そこで、以前見つけたAppRunを修正する方法でできないか試したら、できた。

AppImage中のスクリプトAppRunの頭で環境変数XDG_DATA_DIRSを設定しているので、その先頭に、優先させたい(入れ換えたい)ファイルのあるディレクトリを追加すれば良い(どんなディレクトリでも入れ換え可能な訳ではなく、ライブラリなどから$XDG_DATA_DIRS経由で参照される、/usr/shareのようなものが有効なのだろう)。

今回は/usr/share/digikam/geoiface/backend-googlemaps.htmlを入れ換えるので、以下のようにした。

  1. 入れ換え用ディレクトリ(例: $HOME/bin/digikam5-ai-ext/share/digikam/geoiface)を作成する。
  2. その下に/usr/share/digikam/geoiface/*をsym-linkする。
  3. backend-googlemaps.htmlだけをdigikam6のもの(tarファイルをダウンロード・展開して取り出す)に交換する。
  4. AppRunの中のXDG_DATA_DIRSの設定する行で、以下のように、先頭に入れ換え用ディレクトリ($HOME/bin/digikam5-ai-ext/share/)を追加する(太字部)。
    • export XDG_DATA_DIRS=$HOME/bin/digikam5-ai-ext/share/:$DIR/usr/share/:$XDG_DATA_DIRS

そのAppRunを使うdigikamを起動したら、再び地図が出るようになった

 

PS. それにしてもAppImageだのFlatpakだのSnapだの、似たようなのがいっぱいあって面倒だし効率が悪いし間違えやすいから一つにして欲しい! ここにもLinux内の抗争があるのか? 馬鹿らしい。

  •   1
  •   1

少し前に、Spotifyアプリがメモリを消費し過ぎることの弊害を緩和できないかと思って、それまで無効にしていたスワップを有効にしてみた。ところが、その後くらいから、Thunderbirdが2日くらいでハングし、Thunderbirdのプロセスをkillすることもできず、OSをrebootしようとしてもエラーでハングしてしまってリセットするしかなくなる問題が多発した。その時、dmesgやreboot時のコンソールには、以下で始まるエラーが出ていた。

[149418.786180] BUG: unable to handle kernel NULL pointer 
dereference at 0000000000000010

どういう訳かは分からないが、スワップを有効にしたのが悪かったように感じたので、無効にして試しているのだが、一週間経っても問題が起こっていないので、やはり、スワップが原因だったようだ。

ただ、Linuxでスワップが良くないことは信じられない。考えられるのは、スワップ領域を初期化せずに有効にしたためかと思う。その他には、起動時のdmesgに、以下のような警告があったのが気になっている。

[ 11.107687] nct6775: Found NCT6776D/F or compatible chip at 
0x2e:0x290
[ 11.107694] ACPI Warning: SystemIO range 0x0000000000000295-
0x0000000000000296 conflicts with OpRegion 0x0000000000000290-
0x0000000000000299 (\_GPE.HWRE) (20150930/utaddress-254)
[ 11.107699] ACPI: This conflict may cause random problems and 
system instability
[ 11.107701] ACPI: If an ACPI driver is available for this device, 
you should use it instead of the native driver

これは以前からもあったのだが、スワップが有効だと問題が起こるのかも知れない。警告から、センサーチップNCT6776Dとグラフィック(Intel内蔵)のアドレスが重複していると思われるので、次回問題が起こったら、BIOS設定でグラフィックのアドレスを狭められれば、試してみたい。無理なら、検索して見つかった対処の、カーネルの起動パラメタにprocessor.nocst=1を追加することを試してみたい(ただ、それで別の問題が起こらないかという心配はある)。

いずれにしても、今のところ問題は起こっていないので、このまま行けそうな気がする。もしスワップを有効にする時は、このことを思い出したい。

(11/16 3:47) 昨日、再びThunderbirdがハングした。今度は約12日間動作していた。スワップをonにすると問題が起こりやすくなるようだが、直接的な原因でなさそうだ。そこで、上記の対処を試そうとしたのだが、Intel内蔵グラフィックのアドレスは変更できず、カーネルの起動パラメタprocessor.nocst=1も設定しても同じACPIの警告が出たので、効果がなかった。

それで、ACPIのアドレス重複を解消できるかと、別のカーネル起動パラメタacpi_enforce_resources=laxを止め、センサのドライバnct6775も止めてみたのだが、アドレス重複は解決できなかった。そもそも、acpi_enforce_resources=laxとnct6775ドライバは1年以上前から使っていて、近頃まで問題がなかったので、今回の原因ではなさそうだ。また、別のセンサのドライバasus_atk0110を試したが、うまく動かなかった(センサの値が取得できなかった)。

更にログを調べたところ、Thunderbirdのハングの直前のスリープからの復帰の数分後に、snap関連のメッセージの直後にカーネルのエラーが起こっていた。以下に、その時のログを示す。

Nov 15 23:57:33 localhost snapd[1285]: storehelpers.go:398: 
cannot refresh snap "core": snap has no updates available
(略)
Nov 15 23:57:40 localhost systemd[1]: Mounting Mount unit for 
spotify, revision 26...
Nov 15 23:57:40 localhost kernel: [758674.540346] BUG: unable 
to handle kernel NULL pointer dereference at 0000000000000010

snapdは、Spotifyアプリをsnap版にするために使っているのだが、snapとカーネルの相性が悪いことが考えられる。それで、今度はSpotifyアプリをsnapでない版に戻して様子を見ることにした。また、問題を起こりやすくするため、スワップをonにしてみる。

(11/27 19:19) その後はThunderbirdのハングやカーネルのBUGは起こらず、Spotifyアプリを後の投稿に書いたように、snapから取り出した版にし、snapの機能・サービスを使わずに使っていた(関係なさそうなので、スワップはoffに戻した)。それでも問題が起こらなかったので、現象はsnapとスリープに関係しているようだ。今推測しているのは、以下のようなことである。

  1. スリープ(サスペンド)からの復帰時、少しの間、LANが正常に動作しない時間(1-2分)がある。
  2. その時にsnapがマウント処理(上のログの23:57:40、2行目)を行うと、カーネルのBUG(同3行目)が発生する。
  3. そうなると、どういう訳かThunderbirdもハングする。

その推測に基づき、1番の問題に対処するため、スリープからの復帰時にLAN IFを一時停止する処理を追加して、再度snap版のSpotifyアプリを使うことにした。LANの一時停止処理の間はスリープからの復帰処理が終わらないので、snapのマウント処理も行われないはずである。以下に、LANの一時停止処理の流れを示す。この処理は、スリープなどの前後に実行されるスクリプト(/etc/pm/sleep.d/89name)に格納している。

  • スリープや休止からの復帰時(resumeまたはthaw)に以下を実行する。
    1. LAN IFを停止(nmcli device disconnect IF名)する。
    2. 少し(1秒)待つ。
    3. LAN IFを起動(nmcli device connect IF名)する。
    4. 少し(1秒)待つ。

この処理は、以前別の問題(NW通信不調)が起こったために追加したのだが、近頃は問題が起こらなくなったようなので無効にしていた。別のルータを使っていた時は起こらなかったので、ルータとNICやドライバやOSの相性が悪いようだ。

(11/28 15:33追記) シャットダウン時にハングアップした時にコンソールに出たカーネルのエラーメッセージの最後辺りの文字列("propagate_one+0xbe/0x1c0")で検索したところ、これはカーネルの既知の問題(2016-04-19)のようだ。問題が起こる契機は異なるが、メッセージは同じだ。

シャットダウン時にハングした時のカーネルのエラーメッセージ

また、メッセージ中に"do_mount"とあるので、昨日の推測どおりsnapのマウント処理が契機になって発生すると考えられる。

修正版を探したところ、カーネル4.4.0-23.41で修正されているのだが、使っているLinux Mint(正確にはUbuntu)のパッケージはなかった。ベースはUbuntuのLTSのため、対応する問題が限られているのではないかと推測する。この問題を修正するには、おそらく最新のLinux Mint 19にするしかなさそうだが、来年に予定しているので、それまでは昨日記した対処(スリープからの復帰時にLAN IFを一時停止する)で様子を見ることにする

(11/29 2:40) アップデートマネージャの設定を見直し、"Always show kernel updates"をonにしたら、更新版カーネル(4.4.0-139.165)のパッケージが表示され、その履歴に本問題の修正も含まれていたので適用した。おそらくこの問題は解消すると思われるが、元々ルータとNICやドライバやOSの相性から、以前に起こっていた問題は起こりそうなので、スリープからの復帰時にLAN IFを一時停止する処理は有効にし続ける。

 

(11/16 3:47 題を若干変更)

 

(仕事ブログより転載・一部表記を修正、題を若干変更: 元の投稿日時: 2018/11/10 17:39)

  •   0
  •   0

Snap版Spotifyアプリを使っていて、(それが原因かはまだ不明なのだが、)Linuxのカーネルがバグ起因のエラー(NULLポインタ参照)を起こして、ThunderbirdがハングしたりOS再起動時にハングする問題が起こり、エラーが起こる直前(スリープ(サスペンド)からの復帰後)にSnapのマウント処理が行われていて、他に原因が見つからないので、Snapとスリープとカーネルの相性の問題を疑っている。それで、試しにSnapの仕組み(サービス)を使わずに、Snap版Spotifyアプリを単体で動かせないものかと思った。それには、Snapのパッケージを展開して中身のSpotifyアプリを取り出せばいいのではないかと考えた。それでSnapの展開ツールを探したのだが、見つからなかった。が、少しして気付いた。

結論としては、Snapパッケージの展開にツールは不要である。Snapのサービス(snapd)を起動し、目的のSnapパッケージをインストールし、そのアプリを起動できる状態にすれば、中身が/snap以下にマウントされるのだ。例えば、Spotifyは /snap/spotify/26 のようなディレクトリ(最後の数字はリビジョンと思われる。最新版はcurrentにsym-linkされている)にマウントされる。そして、Snapの中身を取り出すには、そこからコピーするだけでいい。

それから少し試行錯誤して、本来の目的の、Snap版Spotify(の中身)を通常のプログラムとして動かすことができた。以下のような手順である。以下は、OSがSnapのサービスを使っていない(有効にしていない)前提であり、Snap版Spotifyの中身を「Snap抽出版Spotify」と表記した。

準備

  1. Snap抽出版Spotify用ディレクトリ(例: ~/spotify/ext-snap)を作り、chdirする。
  2. マウントされたSnapのSpotifyのディレクトリ(以下、Snapのディレクトリ) /snap/spotify/current/usr/share からspotifyをコピーまたはsym-linkする(私はコピーしたが、sym-linkで問題ないと思う)。
  3. Snapのディレクトリ /snap/spotify/current/usr/share 下のspotify以外の全ファイルをsym-linkする。
  4. ライブラリ用ディレクトリ(例: lib)を作り、chdirする。
  5. Snapのディレクトリ /snap/spotify/current/lib/x86_64-linux-gnu/ 下の全ファイルをsym-linkする。

OS起動時の準備

以下をOS起動時に実行する(例: /etc/rc.localに追加する)。

  1. Snapのサービス(snapd)が有効でない場合起動し、念のため少し待つ。
    • 例: /bin/systemctl start snapd; sleep 0.5
  2. Snapのサービスsnapdとsnapd.socketを停める。
    • 例: /bin/systemctl stop snapd; /bin/systemctl stop snapd.socket
  3. 使わないSnapのマウントポイントをumountする。
    • 例: umount /dev/loop[1-5] (環境によって異なると思われる)

Spotifyの実行

以下をスクリプトにしておけば、それを実行することでSnap抽出版Spotifyが起動できる。

  1.  LD_LIBRARY_PATHに上記のlibを設定または追加する。
    • 例: export LD_LIBRARY_PATH="$HOME/spotify/ext-snap/lib"
  2.  Spotifyアプリを起動する。
    • 例: ~/spotify/ext-snap/spotify &

以上の手順で、Snapサービスを使わずに(無効にしたまま)Snap版Spotifyの中身のアプリを起動できる。ただし、Snapでのパッケージの更新などは行われないので、適宜自分で行う必要がある。

 

[付録] 以前のSpotifyの画面構成に戻す。

上の作業をした後で、おもしろいことが分かった。Snap版のSpotifyアプリ(バージョンの例: 1.0.93.*)は、従来の版(バージョンの例: 1.0.80.*)とメニューやページの構造が異なっている(例えば、"Your Daily Mix"は"Made For You"に変わった)。一方、私は以前の方が使いやすいので戻したかったのだが、ちょっとした手順でできた。以下のようにすればよい。

  1. Snap抽出版Spotify用ディレクトリ下のAppsディレクトリ(sym-link)を削除かrenameする。
  2. 従来の版のApps(/usr/share/spotify/Apps)をsym-linkする。

上記作業の実行例を以下に示す。

  1. cd ~/spotify/ext-snap
  2. mv Apps{,.orig}
  3. ln -s /usr/share/spotify/Apps .

以前調べた時に分かったことだが、Apps下にはSpotifyアプリの画面のアプリ(JS)やCSSが入っており、ある程度カスタマイズできるようだ。あと、私の環境(Linux Mint Xfce + Fcitx + Mozc)ではSpotifyアプリに日本語が入力できないのだが、ライブラリを変えたり追加したりすれば、なんとかなるかも知れない。余裕があれば試してみたいと思う。

(11/24 17:24追記) App下のファイルで、古いものにするとうまく動かないものがある(例えば、settings.spaは新しいもの(Snapのもの)でないと表示されない)ので、適宜修正する必要がある。筆者はsettings.spaをSnapのものにした。本当はウインドウ左側のメニューだけを交換したかったのだが、それを出すと思われるzlink.spaを交換するとアイコンが出なくなってしまうので、諦めた。

(12/20 6:55追記) その後、元々の問題(Snap版Spotifyを使うとLinuxのカーネルのバグ起因のエラーが起こる)が解決したようなので(数週間、問題が起こっていない)、上記の方法は止めて、Snap版Spotifyをそのまま使っている。

 

(仕事ブログより転載・追記: 元の投稿日時: 2018/11/21 10:45)

  •   0
  •   0

筆者は、今まではdigiKam5はPPAの5.5を使っていたのだが、起動が遅い(画像ライブラリの読み込みが遅いようだ)ので、ずっと最新版を使いたかった。しかし、日本語モードはあるものの、日本語入力できない問題があったので移行できなかった(筆者の環境はLinux Mint 18 Xfce, Fcitx+Mozc)。また、digiKamのサイトではディストリビューションのパッケージを使うように書いてあるのだが、Mint 18はUbuntu 16 LTSベースのため、パッケージのものは4.4と古くて使えない。

日本語入力ができない問題の原因は、それがAppImageになっているために、中身のテキスト入力に関連するライブラリが不足しているためではないかと考えた。少し前に検索したところ、(他のアプリの例では)環境変数QT_PLUGIN_PATHに元のOSのディレクトリ(例: /usr/lib/x86_64-linux-gnu/qt5/plugins/)を設定すればできるはずなのだが、そうしても駄目だった。

それで、先日、Snapの中身のSpotifyを実行できることが分かったので、これもAppImageの中身を単独で実行したり、中身を展開して修正することで、日本語入力できるようにならないかと考えた。検索したら、AppImageのフォーラムにヒントが書いてあり、AppImage中のAppRunというスクリプトを修正すれば良さそうだった。

そして、それまでに、AppImageは--appimage-mountオプションを付けて起動すると、イメージをマウントできる(プログラム本体は実行しない)ことが分かっていたので、マウントしてAppRunの中身を見たところ、それは普通のシェルスクリプトで、最初にLD_LIBRARY_PATHやQT_PLUGIN_PATHを設定(上書き)していることが分かった。それで、QT_PLUGIN_PATHを修正したAppRunを作り、そこから本来のプログラム(この場合はdigiKam5)を起動すれば良さそうなことが分かった。

それで、どのように実装するか考えたのだが、マウントされたAppImage全体をコピーして、必要な箇所を修正するのでは容量が無駄になるし、中身を変更したAppImageを作り直すのはアプリの更新のたびに作り直す必要があって面倒なので、(余り変更がなさそうな)AppRunだけを抽出して修正し、そこから、あらかじめマウントしたAppImage中のアプリ(この場合はdigiKam5)を起動するようにした。

さっそく、指定したAppImageファイルとAppRunでAppImage中のプログラムを起動するスクリプトを作り、それでdigiKam5のAppImageを起動したら、無事、日本語入力できるようになった。実際に日本語入力している例を以下に示す(筆者の好みで、英語モードにしている)。

AppImage版のdigiKam5で日本語入力ができるようになった。

一般的な説明を書くと、あるAppImage(Qt5を使っているもの)を日本語入力できるようにする手順の流れは、以下のとおりである。

  1. AppImageをマウントする(AppImageに--appimage-mountを指定して起動する)。
  2. AppImageがマウントされたトップディレクトリのAppRunを別のディレクトリにコピーする。
    • マウントディレクトリは/tmp/の下の一時的なもの(例: /tmp/.mount_XXXXXYYYY)になる。マウントポイントは指定できないので、AppImageの出力をscriptコマンドを使って取得することにした(なぜか、バッククォートやリダイレクトでは取れなかった)。
  3. AppRunの先頭にあるであろう、環境変数QT_PLUGIN_PATHの設定に、元のOSのディレクトリ(例: /usr/lib/x86_64-linux-gnu/qt5/plugins/)を追加する。
    • digiKam5での例: export QT_PLUGIN_PATH=$DIR/usr/plugins/:/usr/lib/x86_64-linux-gnu/qt5/plugins/
  4. 同様に、AppRunの先頭にあるであろう、環境変数DIR(およびAPPDIR)を適宜修正する。これは、AppImageのマウントされたトップディレクトリを想定しているようなので、筆者はカレントディレクトリにした。
    • digiKam5での例: DIR=`pwd`
  5. AppImageのマウントポイントにchdirし、修正したAppRunを実行する。

digiKam5のAppImageが更新された場合には、基本的には上記手順で2と3を省略し、同じ修正版のAppRunを起動するだけで良いはずだが、AppImage中のAppRunが変わった場合にはうまく動かなくなるので、再度修正が必要である。 → (11/27 6:58追記) 修正したAppRunを実行する前(上記手順5のchdir後)に、AppImage中の(最新の)AppRunとの差分を求めて、修正の必要があるかをチェックするようにした。

 

なお、SpotifyのSnap版も同様にQT_PLUGIN_PATHを設定すれば日本語入力ができるようになるかと思ったのだが、Qt5を使っていないようなのでできなかった。 (11/27 8:44追記) その後、GTKを使っていることが分かったので、immodulesにライブラリを追加したり、関連する環境変数(例: GTK_IM_MODULE)をいくつか指定してみたのだが、なぜか駄目だった。設定が間違っているのかSpotifyが対応していないのか不明だが、フォーラムでは数年前に指摘されているものの「修正を待つように」と書かれているだけなので、(Snapには関係なく、)元々のSpotifyアプリが対応していない可能性が高い。

 

(仕事ブログより転載、題をわずかに変更: 元の投稿日時: 2018/11/26 21:26)

  •   0
  •   0