• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Smart benutzt lokales Repository nicht.

Hallo,

ich habe ein Problem mit Smartpm, und zwar habe ich mir mittels aptate ein lokales apt-repository erstellt, in das ich Pakete packe, die ich mir an einem anderen Rechner bereits gezogen habe. Dieses apt-Repository habe ich in den Preferences mit einer PIN-Priorität eingestellt, so dass apt immer schön erst die lokalen Pakete verwendet, bevor es ins Netz geht.

Ich habe jetzt versucht, das Ganze in smart nachzubilden und das lokale apt-Repository als weiteren Channel eingebunden. Die lokalen Pakete werden auch brav angezeigt. Smart installiert allerdings nicht aus diesem lokalen Repository, sondern will in jedem Fall aus dem Internet installieren. Auch das Einstellen einer höheren Priorität für diesen Channel brachte keine Änderung. Ich habe auch versucht, das lokale Apt-Verzeichnis mit den Rpm-Paketen als rpm-dir channel einzurichten, auch damit zeigt er mir die Pakete an, installiert aber nicht, sondern versucht die Version im Internet zu laden.

Hat jemand eine Idee?
Ich benutze Suse 10.0 und smart 0.41

Danke

Steffen
 

oc2pus

Ultimate Guru
hast du das schon mal probiert:
http://lists.labix.org/htdig.cgi/smart-labix.org/2006-January/000530.html

und auch die restlichen Beiträge des Threads lesen.
 
OP
hannesausmwald
Hallo oc2pus,
Danke für die schnelle Antwort.

Im Prinzip bin ich den im Link beschriebenen Weg schon gegangen, da ich (allerdings über die smart-gui) mein lokales Verzeichnis mit den rpm-files als Channel mit dem Typ rpm-dir eingerichtet hatte. Es machte aber keinen Unterschied, da smart trotzdem aus dem Netz ziehen wollte.


Steffen
 

oc2pus

Ultimate Guru
welches Verzeichnis gibst du als rpm-dir an?
hoffentlich das cache Verzeichnis von apt und NICHT das aptate Verzeichnis, dort stehen eigentlich nur Metainformationen für apt drin.
 
OP
hannesausmwald
Ich bin nach der Anleitung unter
http://www.linux-club.de/viewtopic.php?t=14576
gegangen und habe mir ein lokales apt-repository erstellt. Die RPM´s liegen unter /local/EigenePakete-10.0

Die Channel-Definition dafür sieht so aus.

[EigenePakete-10.0]
type = apt-rpm
name = EigenePakete-10.0
priority = 10
baseurl = file:///local/apt/SuSE/10.0-i386
components = EigenePakete-10.0

Dieses Verzeichnis (/local/EigenePakete-10.0) habe ich auch verwendet, als ich den channel als rpm-dir angegeben habe.

Steffen
 

oc2pus

Ultimate Guru
hm, dann solltest du mal den verbose Modus von smart aktivieren und sehen warum er nicht aus dem lokalen Verzeichnis instalieren möchte.

Option: smart config --set explain-changesets=true

siehe auch hier für alle anderen smart-Optionen:
[Tip] Übersicht aller smart-Optionen.
http://www.linux-club.de/viewtopic.php?t=53049
 
OP
hannesausmwald
Ich habe heute noch ein wenig tiefer nachgeforscht. Es kann sein, dass es an den Einstellungen in der aptate.conf Datei liegt. Zumindest habe ich auf der Installation hier vom lokalen Repository installieren können. Ich probier das Ganze mal heute Abend auf meinem Heim-PC und berichte dann.


Steffen
 
OP
hannesausmwald
Hallo,

meine Vermutung, dass es an den Einstellungen in der aptate.conf Datei lag, hat sich bestätigt.

Bisher sah meine aptate.conf so aus:

Code:
<?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">
<opt signed-pkgs-only="no">


 
 <topdir>/local</topdir>
<sources-list-file>file:/local//ftp/pub/linux/suse/apt</sources-list-file>
<sources-list-ftp>ftp://ftp.gwdg.de/pub/linux/suse/apt</sources-list-ftp> <sources-list-http>http://ftp.gwdg.de/pub/linux/suse/apt</sources-list-http> 
 
 <distribution id="suse10.0">
  <name>SuSE</name>
  <version>10.0</version>
  <architecture>i386</architecture>
   <component>
   <name>EigenePakete-10.0</name>
   
   <url>EigenePakete-10.0</url>
  </component>
 </distribution>
</opt>

Das war wie gesagt eine Abwandung des Codes unter
http://www.linux-club.de/viewtopic.php?t=14576

Ich habe jetzt die aptate.conf so angepasst:
Code:
<?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">
<opt signed-pkgs-only="no">


 
 <topdir>/local</topdir>
<sources-list-file>file:/local/</sources-list-file>


 
 <distribution id="suse10.0">
  <name>SuSE</name>
  <version>10.0</version>
  <architecture>i386</architecture>
 
  <component>
   <name>EigenePakete-10.0</name>
   
   <url>EigenePakete-10.0</url>
  </component>
 </distribution>

</opt>

Offenbar hatte es sich an den Verweisen auf sources-list-ftp und http gestört.


Viele Grüße
Steffen
 

oc2pus

Ultimate Guru
hannesausmwald schrieb:
Offenbar hatte es sich an den Verweisen auf sources-list-ftp und http gestört.

der Sinn dieses Tags ist: erzeuge einen "Mustereintrag für die sources.list", d.h. den MUSST du logischerweise anpassen auf DEINE Umgebung ;)
 
OP
hannesausmwald
Habe ich:

in der apt sources.list habe ich einen Eintrag angelegt:

Code:
rpm file:/local/apt SuSE/10.0-i386 EigenePakete-10.0

und in der preferences-Datei das lokale Repository gepinnt, so dass er immer erst mal die Pakete daraus nimmt:

Code:
Package: *
Pin: release c=EigenePakete-10.0
Pin-Priority: 900

Lief ja so (und läuft immer noch) unter apt.

Viele Grüße

Steffen
 

oc2pus

Ultimate Guru
hannesausmwald schrieb:
Habe ich:/quote]

offensichtlich nicht ;)
ich rede von der aptate.conf ...
Jeder aptate Lauf generiert einen "Mustereintrag" um diesen in eine sources.list zu übernehmen.

und da es verschiedene Protokolle (http, ftp, file, ..) gibt kann man eben in der aptate.conf konfigurieren, welchen Eintrag man erzeugen will. Wenn du alle Zeilen weglässt, passiert auch nix weiter. Es werden dann eben keine "Mustereinträge" erstellt. Und dieses Verhalten hat nichts mit deinem Ausgangsproblem zu tun!
 
OP
hannesausmwald
Hallo oc2pus,

richtig, ich wollte in meiner aptate.conf nur einen Eintrag für das Protokoll file erstellen.

Wenn du alle Zeilen weglässt, passiert auch nix weiter. Es werden
dann eben keine "Mustereinträge" erstellt.

Warum habe ich deiner Meinung nach "alle Zeilen" weggelassen?


Steffen
 

oc2pus

Ultimate Guru
nochmal, diese Einträge haben NICHTS mit deinem Problem zu tun ...
ob sie da sind oder nicht spielt keine Rolle.

deine preferences ist etwas schräg .. du "Unterpriorisiertst" damit (je höher die Nummer, desto vorrangiger ..)

und nach einer Änderung an einer apt-Konfig Datei IMMER apt update aufrufen ;)
 
OP
hannesausmwald
Hallo an oc2pus und alle die mitgelesen haben,

auf wenn es nicht an den Einstellungen in der aptate.conf gelegen hat, schließe ich mal diesen Thread. Auf jeden Fall - wieder was gelernt!

Steffen
 
Oben