apt-ftparchive Packages Filename

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
qgirl
Beiträge: 224
Registriert: 14.08.2005 09:04:50
Lizenz eigener Beiträge: MIT Lizenz

apt-ftparchive Packages Filename

Beitrag von qgirl » 24.11.2012 14:20:02

Ich möchte mit Debianapt-ftparchive eine Packages-Datei anlegen.

Die Verzeichnisstruktur sieht folgendermaßen aus:

Code: Alles auswählen

dists
  + wheezy
     + main
        + binary-amd64
pool
Unter pool liegen die Pakete.
In binary-amd64 sind Links angelegt, die auf das entsprechende Paket im Verzeichnis pool verweisen.

Code: Alles auswählen

apt-ftparchive packages dist/wheezy/main/binary-amd64/ > dist/wheezy/main/binary-amd64/Packages
In der angelegten Datei ist dann bei allen Paketen bis auf eines auch der relative Pfad (dists/wheezy/main/binary-amd64) eingetragen.
Bei dem einen Paket ist allerdings der absolute Pfad eingetragen (/path/to/dists/wheezy/main/binary-amd64).

Hat jemand eine idee woran das liegen könnte?

Gruss
qgirl

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: apt-ftparchive Packages Filename

Beitrag von rendegast » 25.11.2012 23:40:37

Der Link zwigt auch absolut? 'ls -l [-d] Dateilink-Link'
Ist vielleicht händisch so erzeugt?
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

qgirl
Beiträge: 224
Registriert: 14.08.2005 09:04:50
Lizenz eigener Beiträge: MIT Lizenz

Re: apt-ftparchive Packages Filename

Beitrag von qgirl » 27.11.2012 07:32:37

Die Links sind alle absolut und wurden händisch angelegt.

Code: Alles auswählen

brlcad_7.22.0-0_amd64.deb -> /home/srv/debian/pool/brlcad_7.22.0-0_amd64.deb
FrontDesign-EU-4.1.4-amd64.deb -> /home/srv/debian/pool/FrontDesign-EU-4.1.4-amd64.deb
Bei dem Paket FrontDesign steht in Packages dann der relative Pfad (dists/wheezy/main/binary-amd64) und bei dem Paket brlcad steht in Packages der absolute Pfad (/home/srv/debian/pool).

Gruss
qgirl

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: apt-ftparchive Packages Filename

Beitrag von rendegast » 27.11.2012 10:39:03

Bei dem einen Paket ist allerdings der absolute Pfad eingetragen (/path/to/dists/wheezy/main/binary-amd64).
<->
bei dem Paket brlcad steht in Packages der absolute Pfad (/home/srv/debian/pool).

Hast Du vielleicht über zBsp. Konfigurationsdatei den absoluten Dateipfad eingetragen?
Override-Datei o.ä.?
Vielleicht Delinking für genau dieses Paket? (APT::FTPArchive::DeLinkAct)
Oder eine Programm-Datenbank mit veraltetem Inhalt?

Wird vielleicht mit verschiedenen Mounts gearbeitet?

Wird apt-ftparchive über ein wrapper-Skript (zBsp. als /usr/local/bin/apt-ftparchive) benutzt,
das verschieden erzeugte Packages zBsp. per 'cat' zusammenfügt?


Ich habe das mal mit
lndir /abs/files/
lndir ../rel/files/
auch mit absoluten und relativen (Soft)Links in files/ ausprobiert.
Ein einfaches 'apt-ftparchiv packages target' hat dabei immer einen target-Pfad als 'Filename:' erzeugt,
auch immer passend je nachdem ich nun target als Punkt '.' oder /pfad/target angegeben habe.

Code: Alles auswählen

$ apt-ftparchive --version
apt 0.9.7.6 für i386, kompiliert am Oct 16 2012 16:45:33
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

qgirl
Beiträge: 224
Registriert: 14.08.2005 09:04:50
Lizenz eigener Beiträge: MIT Lizenz

Re: apt-ftparchive Packages Filename

Beitrag von qgirl » 01.12.2012 16:59:26

Ein einfaches 'apt-ftparchiv packages target' hat dabei immer einen target-Pfad als 'Filename:' erzeugt,
auch immer passend je nachdem ich nun target als Punkt '.' oder /pfad/target angegeben habe.
Ja, zum Testen habe ich die Links jetzt auch mal in einem anderen Verzeichnis angelegt und dort apt-ftparchive ausgeführt.
Dort war dann auch der erwartete relative Pfad bei allen Paketen eingetragen...

Warum es ausgerechnet in dem einen Verzeichnis nicht funktioniert, habe ich nicht rausbekommen.
Ich habe die Packages-Datei jetzt einfach von Hand geändert...

Gruss
qgirl

Antworten