2014-12-30

【備忘録】XMind と Fedora 21

XMindは、マインドマップを作成できるソフトウェアです。

マインドマップを用いることで、物事を視覚的・構造的に整理しやすくなります。普段の業務の中に出てくるアイデアや発想、打ち合わせの内容などをマインドマップに書きとめておくことで、それぞれの物事の関係が非常に分かりやすくなります。こういった PC 上のツールがなければ、紙に書き出せば良いのですが、一度でも PC で利用できるツールを使ってしまうと、もう紙には戻れません。

マインドマップを扱うソフトウェアには、FreeMind という GPL の下で配布されるツールがあり、Fedora で利用できるのですが、個人的にはクローズドソースである XMind の方が機能的に使い易いと思っているので、こちらを使っています。XMind には無料版の XMind と、有料版の XMind Plus、XMind Pro が提供されています。ぞれぞれの機能の違いは下記にまとめられています。

alien による deb ⇒ RPM 変換

ここでは、無料版を Fedora で利用する場合について紹介します。Linux 用パッケージは以下のサイトから入手します。

Linux 版は残念ながら Debian/Ubuntu の deb パッケージのみ提供されていますが、これを alien で RPM へ変換することにします。以前、本ブログの過去記事「【備忘録】マインドマップツール XMind と alien --- rpm, deb などの変換ツール」で、alien を使った変換方法を紹介していますので、これと同じことをします。

# alien --to-rpm --scripts xmind-jp-linux-3.5.1.201411201906_amd64.deb
xmind-3.5.1-2.x86_64.rpm generated

これを、yum localinstall でインストールしようとしたところ、エラーになってしまいました。

# yum localinstall xmind-3.5.1-2.x86_64.rpm
読み込んだプラグイン:langpacks
xmind-3.5.1-2.x86_64.rpm を調べています: xmind-3.5.1-2.x86_64
xmind-3.5.1-2.x86_64.rpm をインストール済みとして設定しています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ xmind.x86_64 0:3.5.1-2 を インストール
--> 依存性解決を終了しました。
adobe-linux-x86_64                                          |  951 B  00:00     
...
(省略)
...
updates/21/x86_64/pkgtags                                   | 1.3 MB  00:01     

依存性を解決しました

================================================================================
 Package      アーキテクチャー
                            バージョン       リポジトリー                  容量
================================================================================
インストール中:
 xmind        x86_64        3.5.1-2          /xmind-3.5.1-2.x86_64        109 M

トランザクションの要約
================================================================================
インストール  1 パッケージ

合計容量: 109 M
インストール容量: 109 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test


Transaction check error:
  ファイル /usr/bin (パッケージ xmind-3.5.1-2.x86_64 から) は、パッケージ filesystem-3.2-28.fc21.x86_64 からのファイルと競合しています。
  ファイル /usr/lib (パッケージ xmind-3.5.1-2.x86_64 から) は、パッケージ filesystem-3.2-28.fc21.x86_64 からのファイルと競合しています。

エラーの要約
-------------

#

自動変換した XMind のSPEC ファイルで /usr/bin/usr/lib の両ディレクトリを定義しているが故の競合であると予想されます。あまり害が無いので rpm コマンドで強制的にインストールするのもアリですが、ここでは SPEC ファイルを編集して yum でエラーが出ないパッケージを作ることにしました。

無料でダウンロードできる XMind は、「デュアルライセンスについて XMind」を読む限り、RPM パッケージでの再配布ができそうですが、確認が不十分ですので、現在のところ、RPM パッケージの作成方法を以下に紹介するに留めます。

SPEC ファイルの編集

alien には、パッケージ変換に使用するファイルを一時ディレクトリに保存してくれる --generate というオプションがあります。このオプションを使って、以下のようにして SPEC ファイルを含むビルドに必要なファイルを取得します。

$ alien --to-rpm --scripts --generate xmind-jp-linux-3.5.1.201411201906_amd64.deb
Warning: alien is not running as root!
Warning: Ownerships of files in the generated packages will probably be wrong.
Directory xmind-3.5.1 prepared.
$ ls xmind-3.5.1
etc  usr  xmind-3.5.1-2.spec
$ 

ディレクトリ xmind-3.5.1 の中にある xmind-3.5.1-2.spec を編集します。と言っても下記の %file セクションの数箇所(緑の行)をコメントアウトするだけです。

Buildroot: /home/bitwalk/ダウンロード/xmind-3.5.1
Name: xmind
Version: 3.5.1
Release: 2
Summary: Professional & Powerful Mind Mapping Software
License: see /usr/share/doc/xmind/copyright
Distribution: Debian
Group: Converted/non-free/editors
...
(省略)
...
(Converted from a deb package by alien version 8.90.)

%files
%dir "/etc/"
%config "/etc/XMind.ini"
#dir "/usr/"
#dir "/usr/bin/"
"/usr/bin/XMind"
#dir "/usr/lib/"
%dir "/usr/lib/xmind/"
"/usr/lib/xmind/.eclipseproduct"
"/usr/lib/xmind/about.html"
%dir "/usr/lib/xmind/about_files/"
"/usr/lib/xmind/about_files/about_cairo.html"
"/usr/lib/xmind/about_files/mpl-v11.txt"
"/usr/lib/xmind/about_files/pixman-licenses.txt"
"/usr/lib/xmind/artifacts.xml"

RPM パッケージのビルド

編集した xmind-3.5.1-2.spec$HOME/rpmbuild/SPECS へ保存し、ディレクトリ xmind-3.5.1 を、xmind-3.5.1-2.x86_64 に名前を変えて $HOME/rpmbuild/BUILDROOT へコピーします。$HOME/rpmbuild/SPECS へカレントディレクトリを移し、下記のようにして RPM パッケージをビルドします。

$ rpmbuild -ba xmind-3.5.1-2.spec
ファイルの処理中: xmind-3.5.1-2.x86_64
...
(省略)
...
パッケージに含まれないファイルの検査中: /usr/lib/rpm/check-files /home/bitwalk/rpmbuild/BUILDROOT/xmind-3.5.1-2.x86_64
警告: インストール済み(ただしパッケージに含まれない)ファイルが見つかりました:
   /xmind-3.5.1-2.spec
書き込み完了: /home/bitwalk/rpmbuild/SRPMS/xmind-3.5.1-2.src.rpm
書き込み完了: ../xmind-3.5.1-2.x86_64.rpm
実行中(%clean): /bin/sh -e /var/tmp/rpm-tmp.noBYpc
+ umask 022
+ cd /home/bitwalk/rpmbuild/BUILD
+ /usr/bin/rm -rf /home/bitwalk/rpmbuild/BUILDROOT/xmind-3.5.1-2.x86_64
+ exit 0
$ 

この場合、xmind-3.5.1-2.x86_64.rpm は、$HOME/rpmbuild/ に出力されます。インストールでは下記のように警告のようなものが出ますが、他パッケージと競合せずにインストールができます。

# yum localinstall xmind-3.5.1-2.x86_64.rpm
読み込んだプラグイン:langpacks
xmind-3.5.1-2.x86_64.rpm を調べています: xmind-3.5.1-2.x86_64
xmind-3.5.1-2.x86_64.rpm をインストール済みとして設定しています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ xmind.x86_64 0:3.5.1-2 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package      アーキテクチャー
                            バージョン       リポジトリー                  容量
================================================================================
インストール中:
 xmind        x86_64        3.5.1-2          /xmind-3.5.1-2.x86_64        109 M

トランザクションの要約
================================================================================
インストール  1 パッケージ

合計容量: 109 M
インストール容量: 109 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction (shutdown inhibited)
  インストール中          : xmind-3.5.1-2.x86_64                            1/1 
Unknown media type in type 'all/all'
Unknown media type in type 'all/allfiles'
Unknown media type in type 'uri/mms'
Unknown media type in type 'uri/mmst'
Unknown media type in type 'uri/mmsu'
Unknown media type in type 'uri/pnm'
Unknown media type in type 'uri/rtspt'
Unknown media type in type 'uri/rtspu'
  検証中                  : xmind-3.5.1-2.x86_64                            1/1 

インストール:
  xmind.x86_64 0:3.5.1-2                                                        

完了しました!
# 

デスクトップ環境が MATE の場合は、メニューには「アプリケーション」→「オフィス」→「XMind」と登録されています。GNOME 3 の場合は、下記のようにアイコンが加えられます。

起動中の画面です。

以下のように無事起動しました。なお、デスクトップ環境は MATE を使っています。

ちょっとしたアイデアを整理したり、ブレインストーミングに使ったり、なかなか重宝するツールです。ロジックツリーなどマインドマップ以外のレイアウトも利用できるので、仕事の整理にも活用しています。下記は自分の強みをまとめているものです。使用例として紹介しておきます。

 

0 件のコメント: