去年、出来が良くないために移行を止めたdigiKam7。依然としてイマイチではあるが、今まで使っていたdigiKam6でGoogleの地図が出なくなってしまって※旧版の居心地の悪さを感じたのと、digiKam7にこれ以上改善の見込みがない(出している人たちは いつも「これで完璧!」のように思ってそうだ・・・)ので、仕方なく移行した。

※あとで気付いたが、地図については下記の7.3での手順と同じようにすれば出ると思うが、終わってしまった製品なので7に移ることにした。

7.3を試して気付いた問題は以下である。(Linux Mint 20 Xfceにて)

  • マウスカーソルが古臭くて嫌。
    • Xfceのテーマが反映されていないのか、古臭いものが出る。特にサムネイル選択時の「指」(下図参照)。

      digiKam7の古臭いマウスカーソル (左付近下部)

  • Googleの地図が出ない。
    • 去年は出せるように直したつもりだったが、今回は出なくなって居た(警告("This page can't load Google Maps correctly.")が出て地図が暗くなる)。
      • 調べたら、Google mapsが有料になり、digiKamではお金が払えないからOpenStreetMap(OSM)をデフォルトにしたようだ。

マウスカーソルは きっとKDEの環境なら問題ないように思う。僕はXfceなのだが、その場合にどうすればいいか分からず対処できなかった。digiKam6では問題なかったので、差分を調べれば分かるかもしれない。

→ 書いたあとでdigiKam6と7の差分を調べたら、X11のマウスカーソルのライブラリの内容が異なっていた。どうもdigiKam7のAppImageのものは古いようで、システムのものに比べて以下のsoが不足していた。

    • libXcursor.so.1.0.2
    • libwayland-cursor.so.0.0.0

それで、最新のカーソルのライブラリを参照するようにしたら、正常なカーソル(下図)になった。手順の概略を最後に示す。

修正したdigiKam7のマウスカーソル (中央付近下部)

なお、digiKam6にはカーソルのライブラリは入っていないので、システムのライブラリが参照されて正しいカーソルが出たようだ。

カーソルが正常になっても そもそものデザインが古い感じなのは否めないが、デスクトップの他の要素と統一されたので良しとする。 (16:37)

 

試行錯誤して、Googleの地図が出るようになった(手順の概略を最後に書く)。最初はOSMでも我慢できそうに思ったが、やっぱりいろいろ今ひとつなので、Googleの地図を出せるようにした。ただ、Googleを使う設定が設定ファイルに保存されず※、digiKamを起動するたびにOSMに戻ってしまうのが気に入らない。いろいろ調べたが直せなかった。まあ、地図は余り出さないし、Googleが出ないよりはいいが、性根が悪いと言いたくなる。

※その後の試行錯誤や調査で、設定変更後に設定ファイルに保存はするが、起動時に必ずOSMになってしまって反映されないようであることが分かった。6と7のソースを比較すれば確証が得られるかも知れないが、分かっても修正が困難なので馬鹿らしい。 (7/18 9:16)

他に、(いつもやっている、)日本語入力ができるようにして(→ 参照)、とりあえず使えるようになった。

 

全般的に、digiKamの「製品」としての詰めは甘く、そのうえAppImageになっているせいでライブラリや設定など、いろいろなことが混沌としている。リリースしてから随分時間が経っても、そこら辺の細かいことを全然書いてくれないのはとても困る。Googleの地図を止めた件だって、僕が調べた限り、フォーラムでの質問への回答にしか書いてない(→ 参照)のでは、みんな分からなくて困るのではないか。

AppImageは手軽に動かせるのは いいが、上述のマウスカーソルのようにライブラリの競合でうまく動かないことがあり、その場合は容易には原因が分からないので今ひとつだ。デモ版とか試用板ならいいが、正式版でも延々と使い続けるのは良くない。かといってSnapは最低なので止めてほしい。Flatpakは良く知らない。次善の策は、AppImageを展開して自分でインストールすることだろうか?? (16:32)

 

注: 以下はLinux Mint 20 Xfce (x86 64bit)の場合である。その他のLinuxやWindowsやmacOSについては各自考えること。

digiKam7の古いマウスカーソルを直す手順 (概略)

※AppImage中の古いライブラリが余計なので、本来はそれらを削除すればいいのだが、AppImageを作り直さずに済ませる方法を考え付かなかったので こうした。

  1. システムのマウスカーソル関係のライブラリをローカルな場所(例: $HOME/.local/usr/lib/x86_64-linux-gnu)にsym-linkする。
    • 例:
      1. cd
      2. mkdir -p .local/usr/lib/x86_64-linux-gnu
      3. cd $HOME/.local/usr/lib/x86_64-linux-gnu
      4. ln -s /usr/lib/x86_64-linux-gnu/libXcursor.* .
      5. ln -s /usr/lib/x86_64-linux-gnu/libwayland-cursor.so* .
  2. digiKam7のAppImageからAppRunを取り出し、その中のLD_LIBRARY_PATHの設定の最初に上のディレクトリを追加する。
    • 例: export LD_LIBRARY_PATH="$HOME/.local/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH"
  3. digiKam7をそのAppRunで起動する。 (上記のようにLD_LIBRARY_PATHを設定して、AppImageを起動するのでもいいかも知れない。)

digiKam7でGoogle mapsを表示させる手順 (概略)

  1. Google mapsのAPIキーを取得する。→ 参照
    • 注意: Google mapsは有料なので、有効なGoogleアカウントと支払い方法が必要。
      • 料金: digiKamで使うMaps JavaScript APIは1000件で7USD。ただし、毎月200USD分までは無料。
  2. digiKam7のAppImageをマウントする。
    • 例: ./digikam7.appimage --appimage-mount
  3. マウントしたAppImageから、Google mapsを表示するファイル(下記)をローカルな場所($HOME/share/digikam/geoiface)にコピーする。
    • (マウントされたディレクトリ)/usr/share/digikam/geoiface/
      • backend-googlemaps.html
      • backend-googlemaps-js.js
  4. コピーしたbackend-googlemaps.html中のGoogle mapsのAPIキーを自分のものに変更する。
      • 例: 下のXXXXXXXXの部分に自分のAPIキーを書く。
        • <script type="text/javascript"
          src="https://maps.google.com/maps/api/js?key=XXXXXXXX"></script>
      • 注意: APIキーが漏れると他人に使われて料金が増大する可能性があるので、取り扱いに注意すること。
  5. digiKam7を起動し、地図を表示する。
    • digiKam7で標準のOpen Street Mapの地図

  6. 地図左下の地球のボタンのメニューで"Google Maps"を選択すると、Google mapsが表示される。
    • digiKam7でGoogle mapsを表示

 

digiKamの作者たちは ただGoogle mapsを止めるのでなく、Google mapsのキーを設定すれば使えるようにすればいいと思うのだが、なぜかそういう考えはないようだ。お金が絡むので、問題が起こるのが嫌なのだろうか。

それから、(これを言ったら悪いけど、)新バージョンが出ても、問題が直っていないうえに、いろいろ機能が増えても魅力的なものが何一つなくて溜息が出るのはなぜだろうか? digiKamのメインとなる多くのユーザーは僕とは離れたところに居るのだろうか?

 

あと、Google mapsを含むGCPのページは大変分かりにくく、こっちも性根が腐って居ると感じた。※ こんなのだったらGCPは使いたくない。それと同時に、他のページ同様に日本語の翻訳がクソなので更にひどくなっているのではないか。

※仮に性根が悪くないのなら、真面目にやって あんな使いにくい物しか作れない能またはセンス無しだ。

  •  0
  •  0

コメントを書く / Write a comment

名前 / Name    

メール / Mail 

URL