ipkg downdate && ipkg downgrade?

  • Gibt es die Möglichkeit auch ein downgrade auf ein bestimmtes Datum zu fahren ohne das man das komplette Image wechseln muss?
    Mir geht der derzeitige nicht benuitzbare Videoplayer auf die Eier, so das ich auf eine ältere Version wechseln möchte. :smiling_face:


    Kann ich im übrigen bestimmen das bestimmte Dateien nicht geupdated werden? Ich würde gerne ändern das enigma2.sh Script nivht mehr durch die CVS Version ersetzt wird.

  • schön sprechen !


    ipkg remove pluginname und dann das ipk File mit dem Wunschdatum installieren, wenn du es nicht hast im OE einfach entsprechendes Build Datum setzen

    Einmal editiert, zuletzt von Lost in Translation ()

  • Ein "komplettes" Downgrade gibt es nicht. Du kannst halt einzelne Pakete per Hand installieren - wenn die aber von älteren anderen Paketen abhängen wird diese Lösung wirklich unangenehm.


    Eine "fertige" Lösung, um das Überschreiben von Einzeldateien zu verhindern gibt es leider auch nicht. Du könntest versuchen, mit den Attributen (sticky) zu spielen, und so ipkg aufs Kreuz zu legen.
    Alternativ kannst du mit Symlinks arbeiten, die musst du aber nach jedem ipkg-update wieder korrigieren. Ich habe mal vor einiger Zeit ein ipkg-divert geschrieben, ein kleines Shell-Skript, was diesen Weg geht. Das Skript muss dan nach jedem ipkg update aufgerufen werden - und es klinkt sich in den Systemstart ein, um seine Symlinks zu prüfen.
    Wenn du das Ding haben möchtest, kann ich mal suchen, ob ich das noch in irgendeinem Backup finde.

  • Nicht so kompliziert denken :smiling_face:


    wenn du in der ipk status database auf /usr/lib/ipkg/status für das entsprechende Paket wo Ihr lieber das alte woll ein Datum weit in der Zukunft reineditiert dann wir ipk annehmen das alte aktueller ist als ein upgrade und diesen nicht installieren

  • Und welches Problem löst du damit? Wenn ich z.B: möchte, dass nur eine Datei aus einem Paket nicht überschrieben wird, dann bringt es ja nix, ein Paket zurückzuhalten.


    Und wenn ich in der Status-Datenbank rumfummel, kann es Probleme mit Abhängikeiten geben - sprich: Wenn z.B. ein enigma2-plugin die enigma-Version vom 15.01.2008 braucht, ich dann beides installiere und dann versuche, enigma2 auf den Stand von *vor* 15.01.2008 zu setzen kann ich das zwar "bruteforcen", es wird aber Probleme mit dem Plugin geben. Somit wäre die "richtige" Lösung auch dieses Plugin downzugraden. So lange das nur zwei, drei Pakete sind, kann man es per Hand machen - sobald es aber wirklich interessant wird ist es leider nicht sauber möglich. Diese Eigenschaft hat ipkg von dpkg "geerbt".


    Letztlich ist es ja das, was ich geschrieben habe: Man kann einzelne Pakete zurücksetzen, aber sobald da echte versionierte Abhängikeitsbeziehungen auftauchen wird es unschön.

    Einmal editiert, zuletzt von LittleBoy ()

  • stimmt, das du damit die dependency checks aushebelst musst du dir natürlich bewusst sein :smiling_face:


    Aber wenn du als welchen Gründen auch immer z.B. alte treiber behalten willst um zu verhindern das die bei jedem Software Update überschrieben werden ist es eine praktikable methode.

    Einmal editiert, zuletzt von Lost in Translation ()

  • Danke euch beiden für die Aufklärung. Die Ideen die ihr ausdiskutiert habt helfen in jedem Fall schonmal.


    Einzelne Pakete downgraden lass ich lieber, da dies in der Vergangenheit schon öfters Probleme gab.


    Es hätte ja sein können das es ein Befehl wie " ipkg update && ipkg upgrade '100308' " gibt. Da es nicht so ist, macht das auch nichts.


    Wegen der enigma2.sh stöber ich mal in /usr/lib/ipkg/ ein bißchen rum, ob man das updaten dieser einzigen Datei verhindern kann.
    Ein zusätzliches Script ist auch eine Klasse Idee, aber es müsste sich wenn dann automatisch nach dem Softwareupdate ausführen, da ich so auch manuell die Box mit einem Tastendruck in Tuxcomander wieder den gewünschten Zustand herstellen kann.