[Dresden-pm] Perl-Scripte in Debian-Pakete packen

Daniel Leidert daniel.leidert.spam at gmx.net
So Mai 4 17:13:10 PDT 2008


hm, irgendwie Off-Topic, aber ich sende es mal trotzdem an die Liste

Am Sonntag, den 04.05.2008, 10:03 +0200 schrieb Hans-Dietrich Kirmse:
> Torsten Werner schrieb:
> > 2008/5/3 Hans-Dietrich Kirmse <hd.kirmse at gmx.de>:

[..]
> >> Spätestens an der Stelle steigt dann mein Verständnis aus. Überspitzt
> >> gesagt, will ich ja nur 2 Dateien in ein solches Paket packen, aber
> >> alles was da geschrieben wird, das passt nicht zu meinem Anliegen.

Doch tut es. Schmeiss doch einfach alles raus, was sich ums Kompilieren
oder make-Aufrufe dreht. Ziele, die aufgerufen werden und die du nicht
einfach löschen solltest, sind IMO: clean, build, install und
binary(-indep|arch). Aber für clean reicht auch:

clean:
	dh_testdir
	dh_testroot
	dh_clean

wenn du nichts spezielles zu tun hast. Ein Beispiele für ein Paket, das
nur Dateien installiert, ist z.B. docbook-xsl.

Mehr Links zum Thema:
http://debian.wgdd.de/links#package
http://wiki.debian.org/HowToPackageForDebian

> > Einfach mit dh_install installieren. 
> 
> hm, dh_install ist mir bei meinen Recherchen bisher noch nicht über den
> Weg gelaufen.

dh_* sind debhelper(1)-Skripte. dh_install(1) ist dafür verantwortlich,
einfach nur Dateien von A nach B (wobei B i.d.R. im Paketpfad liegt) zu
kopieren. Skripte wie dieses werden in der debian/rules im Ziel:
binary-(indep|arch) aufgerufen.

Die Zeile (falls du keine debian/install-Datei verwenden willst; siehe
Man-Seite) könnte so aussehen:

dh_install -pblah foo/skript usr/bin/

Das kopiert die Datei foo/skript aus dem Quellverzeichnis in das
Paketverzeichnis des Pakets "blah" (i.d.R. debian/blah/), also nach
debian/blah/usr/bin/. dh_fixperms(1) kümmert sich dann darum, dass das
Skript die richtigen Berechtigungen erhält.

[..]
> >> Achja, noch ein Problem habe ich: CPAN-Pakete sollen bei dem neuen
> >> Server nicht am Paketmanager vorbei eingespielt werden. Also sollen die
> >> auch in Debian-Pakete vorher konvertiert werden. gibt es da einen Automaten?
> > 
> > 
> > 'reportbug wnpp' ;-) 
> 
> damit kann ich nichts anfangen. und Google auch nicht wirklich. :(

Torsten wollte dir damit ironisch/lustig sagen, dass man den Wunsch nach
bestimmten Paketen i.d.R. als Fehlermeldung gegen das Pseudo-Paket
"wnpp" schreibt und sich dann jemand findet, der das Paket erstellt -
ein gewisser Automatismus.

In deinem Fall wäre wohl ein Blick in das Paket dh-make-perl und nach
http://svn.debian.org/wsvn/pkg-perl/trunk/?rev=0&sc=0 angebracht.
Ersteres ist eine spezielle Variante von dh_make, zugeschnitten auf
CPAN-Module. In letzterem findest du die Paketdateien für die
unterschiedlichsten Perl-Pakete (in Debian) und darunter eine Unmenge
von CPAN-Paketen. Die Maintainer haben auch eine eigene Mailing-Liste,
wenn du spezifische Fragen an diese Leute hast. Alle
Kontaktmöglichkeiten findest du unter
http://pkg-perl.alioth.debian.org/.

Einen vollständig automatisierten Weg gibt es AFAIK (noch) nicht.

MfG Daniel