[gelöst] Bindestrich im Paketnamen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
einzeller
Beiträge: 35
Registriert: 14.01.2008 13:57:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

[gelöst] Bindestrich im Paketnamen

Beitrag von einzeller » 11.03.2008 16:35:54

Hi,

ich möchte, dass meine Debian Pakete einen Bindestrich (-) im Namen tragen.
Also zum Beispiel in dieser Form: mein-paket-1.0

wenn ich nun dpkg-buildpackage darauf ausführe, sagt er mir das die Version keine Ziffern enthält. Ich sehe das Problem und ich kenne auch die Form, wie laut der Debian Policy ein Paket auszusehen hat: <Paketname>-<Version>

Allerdings sehe ich auch im Debian Repository häufig Pakete, die einen Bindestrich im Namen tragen, zum Beispiel:
alsaplayer-oss
alsaplayer-common
etc.

Um meine Pakete auf einen Blick in meinem Repository erfassen zu können, möchte ich sie deshalb auch mit einem Bindestrich versehen. Es wäre toll wenn mir jemand sagen kann wie ich das mach. :)

Gruß,
Einzeller
Zuletzt geändert von einzeller am 12.03.2008 10:20:45, insgesamt 1-mal geändert.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: Bindestrich im Paketnamen

Beitrag von gms » 11.03.2008 17:34:43

einzeller hat geschrieben: ich möchte, dass meine Debian Pakete einen Bindestrich (-) im Namen tragen.
Also zum Beispiel n dieser Form: mein-paket-1.0
einzeller hat geschrieben: Ich sehe das Problem und ich kenne auch die Form, wie laut der Debian Policy ein Paket auszusehen hat: <Paketname>-<Version>
zwischen Paketnamen und Version sollte eigentlich ein '_' ( Underline ) stehen. Ein Bindestrich im Paketnamen sollte kein Problem machen, nur eben ein Underline

Gruß
gms

brummer
Beiträge: 182
Registriert: 19.02.2007 19:21:23

Beitrag von brummer » 11.03.2008 20:51:47

wenn ich nun dpkg-buildpackage darauf ausführe, sagt er mir das die Version keine Ziffern enthält.
kommt diese meldung nicht bei dh_make ?

wenn, dann mußt dein paket-ordner zunächst ohne bindestrich benennen und den ordner debian erstellen. Danach kannst du den Namen im controll-file und im changelog deinen wünschen anpassen. dpkg-buildpackage hatt kein problem mit einem Bindestrich im Namen.
zwischen Paketnamen und Version sollte eigentlich ein '_' ( Underline ) stehen. Ein Bindestrich im Paketnamen sollte kein Problem machen, nur eben ein Underline
der Unterstrich steht erst im fertigen Paket, der Source-ordner verwendet einen Bindestrich zwischen Paketname und Versionsnummer.

brummer

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 11.03.2008 21:23:37

brummer hat geschrieben:der Unterstrich steht erst im fertigen Paket, der Source-ordner verwendet einen Bindestrich zwischen Paketname und Versionsnummer.
mir ist zwar (auch) nicht ganz klar, wann diese Fehlermeldung auftritt, aber wenn ich mich nicht arg täusche, war der Name des Source-Ordners ( also der Ordner in dem dpkg-buildpackage aufgerufen wird ) völlig beliebig wählbar

Gruß
gms

edit: hab das mal schnell ausprobiert

Code: Alles auswählen

gms2:~/e-x_p#a+t*1%.§# dpkg-buildpackage &>/dev/null
gms2:~/e-x_p#a+t*1%.§# ls ../expat_*.deb
../expat_1.95.8-3.4_i386.deb

brummer
Beiträge: 182
Registriert: 19.02.2007 19:21:23

Beitrag von brummer » 12.03.2008 06:22:31

mir ist zwar (auch) nicht ganz klar, wann diese Fehlermeldung auftritt, aber wenn ich mich nicht arg täusche, war der Name des Source-Ordners ( also der Ordner in dem dpkg-buildpackage aufgerufen wird ) völlig beliebig wählbar
Yup, dpkg-buildpackage ist es völlig egal, aber eben dh_make nicht.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 12.03.2008 09:11:14

brummer hat geschrieben:
mir ist zwar (auch) nicht ganz klar, wann diese Fehlermeldung auftritt, aber wenn ich mich nicht arg täusche, war der Name des Source-Ordners ( also der Ordner in dem dpkg-buildpackage aufgerufen wird ) völlig beliebig wählbar
Yup, dpkg-buildpackage ist es völlig egal, aber eben dh_make nicht.
aber von dh_make hat "einzeller" ja auch nicht gesprochen :?
und mit dh_make würde es auch kein Problem mit Bindestrichen im Paketnamen geben:

Code: Alles auswählen

root@gms2:~/tmp/lib-expat-1-1.95.8# dh_make -f ../expat_1.95.8.tar.gz -l
Maintainer name : root
Email-Address   : root@gms2.gms.org
Date            : Wed, 12 Mar 2008 09:06:53 +0100
Package Name    : lib-expat-1
Version         : 1.95.8
License         : blank
Type of Package : Library
Hit <enter> to confirm:   
Vielleicht klärt uns "einzeller" noch auf, wo genau das Problem liegt

Gruß
gms

Benutzeravatar
einzeller
Beiträge: 35
Registriert: 14.01.2008 13:57:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von einzeller » 12.03.2008 10:20:21

Wow, danke für die ganzen Antworten, ich hatte gestern gar keine Zeit mehr rein zu schauen.

Also ich habs gelöst. das Problem war, wie ich beschrieben hatte, dass nach dem Aufruf von

Code: Alles auswählen

dpkg-buildpackage -us -uc
er mir die Meldung ausgab, das er in der Version keine Ziffern findet. Den genauen Fehlercode kann ich jetzt nicht reproduzieren, da es inzwischen geht.
Mein Fehler war, dass ich ein bereits vorhandenes Paket ohne Bindestrich im Namen hatte und beim Umbenennen anscheinend nicht alle Dateien konsequent mit angepasst hatte.
rgrep hat mir meine Nachlässigkeit aufgezeigt. ;)


Danke für die Hilfe und Gruß,
Einzeller

Antworten