Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
rpm dummy

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Software
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
brum
Gast





BeitragVerfasst am: 19. März 2006 10:36   Titel: rpm dummy

Hallo,

ich möchte ein rpm-Paket durch eine Software ersetzen, welche ich nur als Source zur Verfügung habe. Und ich möchte dann nicht durch das -aketmanagment auf fehlende Abhängigkeit hingrwiesen zu werden. Kann man bei den RPM-Verfahren auch so was wie einen Platzhalter, ein Dummy-Paket bauen ?

bye brum
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 19. März 2006 17:36   Titel: Re: rpm dummy

brum hat folgendes geschrieben::
ich möchte ein rpm-Paket durch eine Software ersetzen, welche ich nur als Source zur Verfügung habe. Und ich möchte dann nicht durch das -aketmanagment auf fehlende Abhängigkeit hingrwiesen zu werden. Kann man bei den RPM-Verfahren auch so was wie einen Platzhalter, ein Dummy-Paket bauen ?

Für diesen Zweck gibt es checkinstall.

Statt "make install" als letztem Schritt einer Installation aus dem Quellen gibt man "checkinstall" ein. Dann wird ein Paket (auf rpm-Systemen normalerweise rpm) erzeugt, das man ganz normal mit der Paketmanagementsoftware des Systems bearbeiten kann.

Janka
 
Benutzer-Profile anzeigen Private Nachricht senden

komsomolze



Anmeldungsdatum: 03.03.2006
Beiträge: 429

BeitragVerfasst am: 19. März 2006 18:14   Titel:

hallo,

Im Fall von SuSE kannst Du als Vorlage das *.src.rpm der Software verwenden:
Hierin befindet sich ein *.spec-File. das das Bauen des *.rpm aus den enthaltenen Quellen steuert. Passe das speq-File an und ersetze die Quellen durch deine eigenen. Nach dem Bauen deines rpm-Paketes ('rpm -bb SPEC-File') kannst das erhaltene Paket installieren

http://www.linux-magazin.de/Artikel/ausgabe/1999/10/RPM/rpm1.html
http://www.linux-magazin.de/Artikel/ausgabe/2001/04/RPM/rpm.html


Zuletzt bearbeitet von komsomolze am 19. März 2006 21:09, insgesamt 1-mal bearbeitet
 
Benutzer-Profile anzeigen Private Nachricht senden

brum
Gast





BeitragVerfasst am: 19. März 2006 19:41   Titel: rpm

Hallo

und danke für die Tips, aber Beides geht ncht immer:

checkinstall funktioniert nicht mit Postgresql-Source und in dem Fall, wo man keinen Dreisatz ausführt, wie Kerneltreiber installieren.

Mit Source habe ich die wirklich die Source.tgz und nicht die source.src.rpm gemeint Wink

bye brum
 

brum
Gast





BeitragVerfasst am: 19. März 2006 19:45   Titel: rpm

Hallo

und danke für die Tips, aber Beides geht ncht immer:

checkinstall funktioniert nicht mit Postgresql-Source und in dem Fall, wo man keinen Dreisatz ausführt, wie Kerneltreiber installieren.

Mit Source habe ich die wirklich die Source.tgz und nicht die source.src.rpm gemeint Wink

Bei Debian gibts dafür die Methode, Dummipakete zu bauen, die dem Paketmanagment das Vorhandensein des Paketes vorgaukelt.
Sowas suche ich analog für rpm.
Will ich z.B. den Madwifi-Treiber durch einen Madwifi-NG-Treiber ersetzen, welchen ich nicht als rpm habe, so meckert die Hardwarerkennung und meint: Bitte CD einlegen Rolling Eyes

bye brum
 

komsomolze



Anmeldungsdatum: 03.03.2006
Beiträge: 429

BeitragVerfasst am: 19. März 2006 20:15   Titel:

@brum:
Ich habe Dich auch so verstanden, dass Du die source.tgz bei Dir vorliegen hast.

In den source.rpm sind die normalen Quellen der Software enthalten zuzueglich der von SuSE darauf angewendeten Patches.
zur Funktion:
Die source.rpm von SuSE entpacken sich in eine Struktur nach /usr/src/packages oder /usr/src/rpm. Beim Anwenden von
'rpm -v -bb SPEC-Datei' (Bitte bei den Links und in der manpage nachsehen)
wird die source entpackt, die Patches angewendet, kompiliert und ein rpm erstellt.
Hierbei sollst Du jetzt ansetzen: Die Quellen durch Deine ersetzen und die spec-Datei anpassen.

Der Grund fuer das Ganze ist, dass Dir die enthaltene spec-Datei als Vorlage dienen soll, denn eine solche 'from scratch' zu Erstellen ist kein Zuckerschlecken, das Anpassen sollte allerdings easy sein.
Wenn Du dir die Datei mal ansiehst wirst Du meist das bekannte "configure, make, make install" erkennen, angereichert mit einer Patchliste und Aufraeum- und SteuerSequenzen.
Fuer Dich ist dann noetig, die Patchliste zu loeschen und den Namen des Quellpaketes zu aendern.
Ein bisschen damit zu experimentieren hat noch kein Linux zum Absturz gebracht.
 
Benutzer-Profile anzeigen Private Nachricht senden

brum
Gast





BeitragVerfasst am: 20. März 2006 9:37   Titel: ;-)

Danke,
wieder was dazugekernt, werde es mal probieren Wink

bye brum
 

brum
Gast





BeitragVerfasst am: 20. März 2006 18:35   Titel: teufelskreis

Hallo,

jetzt brauch ich noch eine geniale Idee:

Habe das src.rpm ausgepackt

$ rpm2cpio postgresql-8.1.3-1mdk.srcp.rpm |cpio --extract --make-directories --no-absolute-filenames --preserve-modification-time

die Patches rausgeschmissen und aus dem SPEC auskommentiert, die source.bz2 und md5 nach /usr/src/RPM/SOURCES/ kopiert.

Jetzt habe ich das Problem beim Ausführen von
# rpm -bb postgres.spec
das da kurz vor Ende der Aktion ein initdb ausgeführt wird, was root nicht darf, das darf nur user postgres Crying or Very sad und Abbruch ...

bye brum
 

komsomolze



Anmeldungsdatum: 03.03.2006
Beiträge: 429

BeitragVerfasst am: 22. März 2006 21:53   Titel:

hallo,

Lauft die Kompilierung denn mit dem eigentlichen Inhalt des src.rpm durch?

Obwohl sich das eher nach einer Eigenheit der postgre-Quellen anhoert, und dann solltest Du vielleicht jetzt einen postgre/mandrake-Thread starten.
Es handelt sich ja auch um ein umfangreiches und komplexes Paket.
 
Benutzer-Profile anzeigen Private Nachricht senden

brum
Gast





BeitragVerfasst am: 23. März 2006 8:48   Titel: rpm

Hallo,

habe dann als user das nochmal durchgeführt und es lief durch...
Also im Home die Verzeichnisse wie im /usr/src/RPM nachgebaut und die und Pfade gesetzt.
Es lief dann auch mit der Originalsource.tar.gz durch. Allerding musste ich die Distrie-Patche wieder reinnehmen, die waren in den spec-File irgendwie definiert.

Brachte mir aber unterm Strich nixxxx, ich wollte eigentlich nur den Befehlsvorrat wie im pro-linux-OpenLogos-Beitrag (pg_lscluster, ...) haben. Auch als ich dass dann mit dem RedHat-spec ausführte hatte ich die im PostgreSQL Befehle nicht Sad

bye brum
 

komsomolze



Anmeldungsdatum: 03.03.2006
Beiträge: 429

BeitragVerfasst am: 24. März 2006 18:16   Titel: Re: rpm

Hallo,

brum hat folgendes geschrieben::
habe dann als user das nochmal durchgeführt und es lief durch...
Also im Home die Verzeichnisse wie im /usr/src/RPM nachgebaut und die und Pfade gesetzt.
wie im Lehrbuch Wink

brum hat folgendes geschrieben::
Es lief dann auch mit der Originalsource.tar.gz durch. Allerding musste ich die Distrie-Patche wieder reinnehmen, die waren in den spec-File irgendwie definiert.
->Schwierig, zum einen sind die Patches ja Sicherheitspatches, zum anderen wird damit die Originalquelle an die Distribution angepasst und sind zudem noch auf genau diese Quellen zugeschnitten. Dass sie mit einer anderen Quellen-Version voellig fehlerfrei funktionieren ist eher unwahrscheinlich. Du muesstest Dir die Patche dann vornehmen und sie auf Deine Quellen-Version anpassen.

brum hat folgendes geschrieben::
Brachte mir aber unterm Strich nixxxx, ich wollte eigentlich nur den Befehlsvorrat wie im pro-linux-OpenLogos-Beitrag (pg_lscluster, ...) haben. Auch als ich dass dann mit dem RedHat-spec ausführte hatte ich die im PostgreSQL Befehle nicht Sad
->Neues Problem, geht weit ueber meine Horizont. Wenn Du allerdings Deine Quellen angepasst und kompiliert bekommst, kannst Du halt mit dem SPEC- und 'rpm -bb'-Mechanismus Dein RPM erzeugen. Wink
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Software Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy