«前の日記(2010-02-22) 最新 次の日記(2010-03-03)» 編集

ポケットを空にして。

1985|10|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2100|01|

「人の心に残るというのが大事」と言う話。

何か連絡がある場合はメールでどうぞ(過去の日記へのツッコミは基本的にみていません)
プレゼントは随時受け付けております :-) ここ最近のツッコミ/トラックバックリスト。

  1. Henrich (04-05)
  2. Jonny (04-05)
  3. yamamoto (03-22)


2010-03-02 [長年日記]

RPM の作成について

実際に手を動かさずにmomongaとvineのガイドだけ読んだ感想。当たり前だけど、deb と rpm は似通っている。ファイルが機能ごとに分割されている vs ひとつのファイルでマクロバリバリ の違い という印象。パッケージ作成に慣れていればもう片方でもお約束に慣れれば作れるような気がする(気がしているだけ)

  • momonga の方は古くに書かれているから spec ファイルがマルチバイト禁止、UTF-8 禁止となってる。もう今はそんなこともなくて単にこのページの記述だけだと思われるが。
  • License: GPL2 のように License タグがあることが moblin の(表向き?)UbuntuからFedoraベースへスイッチした理由のひとつに上げられていたが、実際のソフトウェアでまるっと1つのライセンスじゃない場合というのはままあるんだけど、それはどうするのかな。単に GPL2, MIT のように書くのだろうか
  • Version: と Release: が分かれているのね。debian だと <upstream verison>-<debian revision> という書き方。
  • momonga のは pre とか使っちゃだめよ、となっている。debian だと ~ とか + で対応する場面。3.0pre-1 じゃなくて 3.0~pre1-1だと 3.0-1 > 3.0~pre1-1 となる。
  • Vine の例だと Summary: が二度繰り返されてるがなぜだろう?
  • %description -l ja で日本語の記述ができるのは良いなぁ。できれば debian パッケージでもそういう風にしたい。いまだとdescriptionsの訳にパッケージメンテナがかかわるプロセスがないんだよね。
  • Patch: hoge.patch は複数の場合列挙? 当てる順番とかはここでやるのかな。…ふむ、patch コマンドの列挙で対応するやり方は書いてある。
  • 「パッケージ作成後に確認すること」はちょっと記述が古いかな? pbuilder ライクなのがあるように聞いている。lintian や piuparts 相当のものはないかな?
  • これは面白い、収録されていないファイルがあると警告とな。ほしいな。
     %filesで書かれていないファイルがある場合には、build 時に
    パッケージに未収録のファイルを検査中: /usr/lib/rpm/check-files /var/tmp/hoge-1.1-root
    警告: パッケージに未収録のインストール済みファイルが見つかりました:
    と未収録のファイルの名前などが表示されます。 この部分を利用して %files の部分を作成するのもよいでしょう。 
  • macro は魔窟への入り口っぽい。。。メンテナンス不能パッケージ作成へようこそ!という第一印象
  • 基本的にソースはBUILDROOT以下に展開するのか。debianだと展開された状態で、debian/tmp や debian/以下で作業することになる。
  • 複数ソースは %setup -a 1 -a 2 -n hoge か。debian だとごく最近 package format 3.0 で複数の tarball をそのまま扱えるようにしたばっかりだったり。おそー
  • pre/post スクリプトは考えは同じだな。
  • 「update-desktop-database コマンドがインストールされていなければ実行しない、という形にすることで、twm や icewm や WindowMaker など、GNOME等のメニューとは直接関係ないウィンドウマネージャを使用しているときに、deskto-file-utils に依存せずにすむようになります。 」→後からGNOME入れた場合はどうなるんだろう。
  • 「patchを使いすぎない」…distro間で差分を取れる方が嬉しいけどなぁ。まぁ一括でdiffとってもいいんだけど、それはそれで機能と差分の特定が面倒。patch は独自のもの以外は開発元(upstream)で吸収してもらうように働きかけましょう、の方がbetterだと思うな。
  • fakerootは使わないんだろうか。

ebuildについて。

あれ、sandbagじゃなくて sandbox ではないのかな>wikipediaのページ

概略のプレゼンPDFから読もうかな。

本日のツッコミ(全2件) [ツッコミを入れる]
_ h12o (2010-03-02 17:18)

> →後からGNOME入れた場合はどうなるんだろう。<br>triggerかな?<br>http://www.ibm.com/developerworks/jp/linux/library/l-rpm2/#triggers

_ kudoh (2010-03-02 20:04)

はじめまして。Vineでパッケージャ&メンテナをやっていますkudohといいます。フォント・LXDE・その他GTKアプリケーション等をメンテナンスしています。<br>まだ1年ほどなので駆け出しですが、いくつか補足を。<br><br>・Licenseについては複数の場合GPLv2+ and hogeのような書き方をしています。<br>・Summary: の二度書きは、一つは本来のもの(主に英語)、もう一つは日本語(或いは他の言語)というようになっています。Vineのsynaptic等ではSummary(ja):と書いてあればそちらが表示されるようになっています。<br>・pbuilderライクなツールとしてvbuilderがあります。<br>VineBootstrap &#8211; VineSeed<br><br>http://trac.vinelinux.org/wiki/VineBootstrap<br><br>私自身はひたすらtry&errorで使いこなすに至っておりませんが。。<br>・macroについては概ね共通していますがディストリ毎に独自のmacroが幾つかあり、パッケージの移植の際に悩まされることがあります。便利ではあるのですが。。<br><br>それでは失礼しました。