Ubuntu 10.10でGrowl::Anyを使うまでの手順

読了まで:約2分


Net::DBus を入れるまでの道のり


  • @mattn さんの作った Growl::Anyなんかつくりたくなって、Linux (Ubuntu 10.10)で使えないかと思ってソースみたら、 Net::DBus使ってる Desktop::Notify対応してることがわかったので、せっかくだからインストールしてみようということで、Ubuntu 10.10 で perl-5.12.2 on perlbrew な環境で、Growl::Any を使えるようにするまでの道のりをまとめてみる

環境

OS:     Ubuntu 10.10 Japanese Remix (32bit)
Perl:   perl-5.12.2 on perlbrew
CPAN:   cpanm

Net::DBus のインストール

まず、Net::DBusコンパイルするには DBus のヘッダが必要なので、Ubuntu ソフトウェアセンターか、apt-getあるいはaptitudeで、libdbus-1-dev入れます。

で、これでNet::DBusコンパイルできるかと思いきや、Net::DBus require しているXML::TwigXML::Parser要求していて、さらにそのXML::Parserexpatヘッダを要求するので、libexpat1-devこれまたインストールします。

これでXML::Parserインストール可能となり、同時にXML::Twigインストール可能となるので、あとは端末で適当に、

$ cpanm -v Net::DBus

すればNet::DBusインストールされます。

Desktop::Notify のインストール

次にGrowl::Any使ってるDesktop::Notifyインストールします。

これは特につまらずに、

$ cpanm -v Desktop::Notify

すれは OK

Growl::Any のインストール

これで下準備は整ったので、cpanm使って、

$ cpanm -v Growl::Any

すれはGrowl::Anyインストールされます。

いうことで作業は終了

以上でGrowl::Anyインストール作業は終了です。

あとは、適当なスクリプトで、

#!/usr/bin/env perl

use strict;
use warnings;

use Growl::Any;

my $growl = Growl::Any->new;
$growl->register('MyApp',  [[ 'tweet' ]] );
$growl->notify('tweet', 'My Title', 'hello word!');

1;

って感じでコードを書けば、DBus の notify を使って通知がきます。

さらに嬉しいことに、Growl::Any Windows とか Mac とか Linux とかの通知環境を抽象化してくれるので、スクリプトに環境依存なコードが含まれていない限り、他の環境でも問題なく動作させることができます。

まあGrowl::Any使って何作るかは考えてませんでしたが、これでGrowl::Any使う環境は整ったので、また気が向けば何かを作って公開したいかと思います。

つーわけでGrowl::Anyインストールするための手順でした。

#使い方 - #Perl - #2010-12 #2010-12-09

アバターアイコン兼ロゴ

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。次に備えて待機中。

今は趣味でプログラミングをして生活しています。