Debian stretch に mikutter 3.6 を入れてみた

PC
スポンサーリンク

Linux で使っている Twitter クライアント「mikutter

今までは Debian のパッケージをインストールしていました。

Debian stretch に mikutter を入れてみた
僕は Twitter をよく見ます。ヘビーに活用はしていないのですが、流し見している感じですね。Linux で使える Twitter クライアントがないか探した結果、この mikutter にたどり着きました。画面の横に置い...

2017年12月25日、新しい概念の mikutter が誕生しました。

mikutter

早く試したいため、ソースからビルドしてインストールしてみます。

[q3-adsense01]

スポンサーリンク

必要なパッケージのインストール

必要なパッケージは

  • ruby2
  • ruby-gtk2
  • bundler

になります。

ruby2系

パッケージ版をインストールした際に、ruby も一緒にインストールされています。

入っていない場合は、直接インストールしましょう。

$ sudo apt-get install ruby

ruby-gtk2

こちらも apt-get でインストールします。

僕の環境ではなぜかもう入っていました。

~$ sudo apt-get install ruby-gtk2
[sudo] naruhiko のパスワード:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
ruby-gtk2 はすでに最新バージョン (3.1.0-1+deb9u1) です。
ruby-gtk2 は手動でインストールしたと設定されました。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
~$

bundler

gem をインストールするために使います。

~$ sudo apt-get install bundler
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
  libgmp-dev libgmpxx4ldbl ruby-bundler ruby-dev ruby-molinillo
  ruby-net-http-persistent ruby-thor ruby2.3-dev
提案パッケージ:
  gmp-doc libgmp10-doc libmpfr-dev
以下のパッケージが新たにインストールされます:
  bundler libgmp-dev libgmpxx4ldbl ruby-bundler ruby-dev ruby-molinillo
  ruby-net-http-persistent ruby-thor ruby2.3-dev
アップグレード: 0 個、新規インストール: 9 個、削除: 0 個、保留: 0 個。
2,167 kB のアーカイブを取得する必要があります。
この操作後に追加で 8,185 kB のディスク容量が消費されます。
続行しますか? [Y/n] 

関連するパッケージもインストールされます。

mikutter ソースのダウンロード

ソースは git からダウンロードすることにしました。

パッケージ版と分けるため、「.mikutter-git」というディレクトリを作成してその中で作業します。

~$ mkdir .mikutter-git && cd .mikutter-git
~/.mikutter-git$ git clone git://toshia.dip.jp/mikutter.git
Cloning into 'mikutter'...
remote: Counting objects: 22643, done.
remote: Compressing objects: 100% (5838/5838), done.
remote: Total 22643 (delta 16724), reused 21573 (delta 15707)
Receiving objects: 100% (22643/22643), 5.41 MiB | 4.01 MiB/s, done.
Resolving deltas: 100% (16724/16724), done.
~/.mikutter-git$ cd mikutter
~/.mikutter-git/mikutter$ 

Gemfileのインストール

足りないものがいろいろあって、何度も失敗しています。

僕の環境でエラーなくインストールするには、以下の順番で実行していく必要がありました。

sudo apt-get install libidn11-dev
sudo gem install idn-ruby -v '0.1.0'
sudo gem install rake
sudo gem install atk -v '3.2.0'
bundle install

失敗を少なくしたいのなら、この順番で実行してみてください。

実際に僕が実行したコマンドは以下のとおりです。

bundle install の実行(失敗)

必要な Gemfile をインストールします。

~/.mikutter-git/mikutter$ bundle install
Fetching gem metadata from https://rubygems.org/............
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies...

〜長いので非表示〜

An error occurred while installing idn-ruby (0.1.0), and Bundler cannot
continue.
Make sure that `gem install idn-ruby -v '0.1.0'` succeeds before bundling.
~/.mikutter-git/mikutter$ 

エラー内容を見ると、「idn-ruby」がないためにエラーになったようです。

idn-ruby のインストール(失敗)

idn-rubygem でインストールします。

~/.mikutter-git/mikutter$ sudo gem install idn-ruby -v '0.1.0'
Building native extensions.  This could take a while...
ERROR:  Error installing idn-ruby:
    ERROR: Failed to build gem native extension.

〜長いので非表示〜

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/idn-ruby-0.1.0 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/idn-ruby-0.1.0/gem_make.out
~/.mikutter-git/mikutter$

なぜか、エラーになってしまいます。

調べた結果、「libidn11-dev」が必要でした。

libidn11-dev のインストール

apt-get でインストールします。

~/.mikutter-git/mikutter$ sudo apt-get install libidn11-dev
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  libidn11-dev
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
594 kB のアーカイブを取得する必要があります。
この操作後に追加で 894 kB のディスク容量が消費されます。

再度 idn-ruby のインストール(成功)

再度 iden-ruby のインストールを試みます。

~/.mikutter-git/mikutter$ sudo gem install idn-ruby -v '0.1.0'
Building native extensions.  This could take a while...
Successfully installed idn-ruby-0.1.0
Parsing documentation for idn-ruby-0.1.0
Installing ri documentation for idn-ruby-0.1.0
Done installing documentation for idn-ruby after 0 seconds
1 gem installed
~/.mikutter-git/mikutter$

うまく行きました!

再度 Gemfile のインストール(失敗)

再度、Gemfile のインストールを試みます。

~/.mikutter-git/mikutter$ bundle install
Fetching gem metadata from https://rubygems.org/................
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies...

〜長いので非表示〜

An error occurred while installing atk (3.2.0), and Bundler cannot
continue.
Make sure that `gem install atk -v '3.2.0'` succeeds before bundling.
~/.mikutter-git/mikutter$ 

また失敗しました。

今度は atk がないとのことです。

atk のインストール(失敗)

atkgem でインストールします。

~/.mikutter-git/mikutter$ sudo gem install atk -v '3.2.0'
Building native extensions.  This could take a while...
ERROR:  Error installing atk:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/atk-3.2.0/dependency-check
/usr/bin/ruby2.3 -rubygems /usr/share/rubygems-integration/all/gems/rake-10.5.0/bin/rake RUBYARCHDIR=/var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/atk-3.2.0 RUBYLIBDIR=/var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/atk-3.2.0
/usr/bin/ruby2.3: No such file or directory -- /usr/share/rubygems-integration/all/gems/rake-10.5.0/bin/rake (LoadError)

rake failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/atk-3.2.0 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/atk-3.2.0/gem_make.out
~/.mikutter-git/mikutter$

むぅ。今度は rake がないためにエラーになったようです。

rake のインストール(成功)

rakegem でインストールします。

~/.mikutter-git/mikutter$ sudo gem install rake
Fetching: rake-12.3.0.gem (100%)
Successfully installed rake-12.3.0
Parsing documentation for rake-12.3.0
Installing ri documentation for rake-12.3.0
Done installing documentation for rake after 0 seconds
1 gem installed
~/.mikutter-git/mikutter$

うまく行きました。

再度 atk のインストール(成功)

再度、atkgem でインストールします。

~/.mikutter-git/mikutter$ sudo gem install atk -v '3.2.0'
Building native extensions.  This could take a while...
Successfully installed atk-3.2.0
Parsing documentation for atk-3.2.0
Installing ri documentation for atk-3.2.0
Done installing documentation for atk after 0 seconds
1 gem installed
~/.mikutter-git/mikutter$ 

うまく行きました。

再度 Gemfile のインストール(成功)

では、もう一度 Gemfile のインストールをします。

~/.mikutter-git/mikutter$ bundle install
Fetching gem metadata from https://rubygems.org/................
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies...

〜長いので非表示〜

Bundle complete! 23 Gemfile dependencies, 47 gems now installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.
~/.mikutter-git/mikutter$ 

今度こそ成功です!

 

[q3-adsense01]

mikutter の起動

では、早速起動してみます。

~/.mikutter-git/mikutter$ ./mikutter.rb

無事に起動しました!

起動スクリプトの作成

マイクラのときと同じように Gnome3 のランチャーに登録するスクリプトを作成します。

~$ vi ~/.local/share/applications/mikutter-git.desktop
[Desktop Entry]
Name=mikutter-git
Comment=Twitter Client
Comment[ja]=至高のTwitterクライアント
Exec=.mikutter-git/mikutter/mikutter.rb
Icon=/home/namotch/.mikutter-git/mikutter/core/skin/data/icon.png
Type=Application
Terminal=false
Categories=Network;
Keywords=Twitter;

Name : ランチャーに表示される名前です。

Exec : mikutter.rb を指定します。

Icon : みくったーちゃんのアイコンを指定しました。絶対表示で指定しないとうまく行きませんでした。

保存したらランチャーを開いてみます。

成功ですね。

これでいつでも最新の mikutter が使えるようになりました。

さいごに

mikutter の作者の Twitter アカウントが凍結したため、mikutter 界隈は一気に Mastodon に移動しました。

mikutter 自体も Twitter 以外のアカウントでも情報が取れるように何年も構想を練っていたようです。

今回の凍結騒ぎのタイミングに併せて、mikutter も大きく変わりました。

まだまだバグがあるようですが、僕もバグ取りに貢献しようと思い、最新バージョンを入れてみました。

また新しい物が出てきたら、そのことも書いていこうと思います。

 

[q3-adsense01]

コメント

  1. […] Debian stretch に mikutter 3.6 を入れてみた […]