Local Feed Server Plugin for DreamOS

  • Da mir die Feed Diskussion im DP Board auf den Wecker geht, poste ich Euch hier das Local Feed Server Plugin fürs DreamOS.


    Wer den Local ipk Server kennt weis was man damit machen kann ;)


    Nach der Installation des Plugins kann man *.deb kits auf /data/localfeed kopieren und diese werden nach einem reboot oder wenn man es im Plugin auswählt dem Software Feed hinzugefügt und sind dann ganz normal über die Softwareverwaltung zu installieren oder mit apt-get installl pluginname


    Auf der dm52x sollte man halt damit man ein echtes /data hat das Mr. Big (Flash) Plugin verwenden, alle anderen Boxen sollten auf /data genug Platz haben.


    Ich HOFFE damit kann sich jetzt jeder selber helfen 8)

    LG

    gutemine

  • damit es nicht heißt, dass das keiner testet ;)


    Ich hab's kurz getestet. So mag ich es, funktionell und schnörkellos


    Das Plugin tut was es soll und apt-get install findet lokal Sachen die definitiv auf keinem offiziellen Feed liegen ;)


    dein etwas modifizierte script läuft mittlerweile am Raspberry Pi und stellt 3 lokale sourcen bereit: all, mipsel und armhf

    Die lokale source.list auf den Boxen ist natürlich angepasst


    gibt es einen bestimmten grund warum du file:/ anstatt copy:/ verwendest?


    PS:

    mein "dbackup update scanner" läuft auch bereits, bin gespannt wie lange es dauert, bis dbackup_0.96 in der lokalen source.list ohne mein zutun auftaucht. Aber das ist nur ein Test, ich wollte nur wissen wieviel Aufwand das wirklich ist - hält sich in Grenzen ;)



    \\Edit:

    Ich bin zufällig darüber gestolpert. Wenn ich mir das localfeed.sh ansehe, gehören als dependencies tar und binutils ins control file damit es keine troubles gibt ...


    auf meiner Box war es egal, weil beides schon installiert war ...

  • Danke fürs testen. Die busybox versionen von ar und tar muessten eigentlich ausreichen, kann das mal wer probieren, sonst passe ich es gerne an?


    PS: file läuft lokal, sonst muesste der webserver es bedienen.

  • ich hab' mal binutils und tar deinstalliert, wie vermutet:


    ar ist im package binutils enthalten, da gibt es kein busybox ar, zumindest nach der deinstallation der binutils

    Code
    1. root@dm900uhd:~ # ar --help
    2. -bash: ar: command not found
    3. root@dm900uhd:~ #


    das busybox tar kennt den Schalter -J scheinbar doch, das muss neu sein


    um binutils wirst du nicht rumkommen - oder du verwendest dpkg-deb -e, dann liegt das control file in ./DEBIAN und kannst dir ar und tar gänzlich sparen

  • Servus. Hab nur das Plugin installiert. Sobald ich aber .debs nach /data/localfeed kopiere, bekomme ich eine Fehlermeldung.

    Im DP Board hat jemand geschrieben, daß ich noch ein dpkg-scanpackages installieren muß. Wo bekomme ich das Teil her?



  • nein das sollte egal sein, aber das script geht davon aus das die control files standardkonform befuellt sind, wenn die reihenfolge anders ist oder zusaetzliche zeilen funktioniert es nicht 100%ig weil ich die control files nur mit tail und head zurechtschneide aber nicht sauber parse. Ich muss mir ueberlegen ob ich das anpasse, weil alle faelle kann ich schwer erahnen. Ich schaue mir mal am Abend an was bei dem paket im control file anders ist.


    In python waere es einfacher zu machen, aber als shellscript macht es mehr sinn weil man es auch ausserhalb der Dreambox benutzen kann.


    Bei den ipks war das einfacher, deb control files haben mehr mögliche felder.


    Skinnen macht da aber wirklich wenig sinn, ich war zu faul das zu modernisieren.

  • Hab ich das richtig verstanden:

    Wenn ich bei mir was reinkopiere, ist es dann für alle verfügbar. Ist ein deb bei mir veraltet bzw wird von irgend jemand ein aktuelleres reinkopiert, können es alle updaten?


    Oder ist es ein Ersatz für dpkg -i /media/hdd/backup/*deb, damit es mit apt-get installierbar ist?

  • Gut gemacht Gutemine....


    @ alle das sich bei uns anzapfen will:

    Wundert euch nicht wenn euer box nicht mehr startet! Gegenmaßnahme werden eingeschaltet.:thumbdown:

  • da ist gar nichts für alle, das teil macht genau was der Name sagt einen lokalen feed auf der box selber womit man kein dpkg -i braucht.


    Ohne manuellen eingriff kannst du den lokalen Feed nicht mal von einer anderen box im heimnetzwerk benutzen.


    und wenn es fehler im packages file hat muss ich die halt fixen, da bringen Gegenmaßnahmen wenig. Ich habe da nichts eingebaut was packages von fremden feeds zieht oder aehnliches.


  • @ alle das sich bei uns anzapfen will:

    Wundert euch nicht wenn euer box nicht mehr startet! Gegenmaßnahme werden eingeschaltet.:thumbdown:

    Ich vermute du beziehst dich auf mich


    Wer hat etwas vom IHAD anzapfen gesagt? Ich habe das weder vor noch habe ich das jemals gemacht, ich glaube du verrennst dich gerade in etwas.


    Im DMM Board gings nur darum einem notifier zu basteln, wenn es eine neue Version des besagten Plugins gibt, aber selbst das würde ich nie puplic machen. Aber auf solche Ideen können andere auch kommen, da braucht es mich nicht dazu

  • Also werden nur die selbst reinkopierten genommen. Man selber muß dann seine Pakete aktuell halten?


    Ich hatte das Plugin so verstanden, wir User befüllen es für alle.


    Kopiere ich was rein, können es alle installieren.

    Kopiert jemand anderes was rein, dann auch.


    Also so ne Art virtueller Server.


    Dann werde ich wieder die herkömmliche dpkg benutzen. Kommt aufs gleiche raus.

  • nein, du bist nicht gemeint.

    Bei dem Vorgehen mancher User muss man sich aber nicht wundern, wenn alles dicht gemacht wird.

    Viele Grüße
    Jürgen


    "Kaum macht man es richtig, .... schon geht es!"

  • also hier aus dem forum etwas runterladen ohne angemeldet zu sein wird schwierig ...


    etwas vom image feed automatisiert zu laden geht, ist aber nicht immer aktuell ...

    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • So deppert wird doch keiner sein, Feeds zweier Images zu vermischen.

    Hätte ja keinen Sinn.

    Bei einem Update geht es sowieso schief.

    Dann würde vermutlich verfügbare Updates angezeigt werden, aber nichts upgedatet werden.


    Und IhaD braucht sich erst recht keine Gedanken machen.

    Das GeminiPlugin kann man auf jedes Image installieren. Da muß keiner rumwurschteln.

  • Also werden nur die selbst reinkopierten genommen. Man selber muß dann seine Pakete aktuell halten?

    ja, das ist dein privater feed

    dort kannst du Pakete ablegen, die nicht am image feed liegen oder die du selbst gebaut hast udgl. Wenn du mehrere Boxen im Netzwerk hast, kannst du den lokalen feed über nfs oder cifs share bereitstellen und die /etc/apt/sources.list.d/localfeed.list entsprechend anpassen. Das Feedupdate erledigst du auf der Serverbox (neue Pakete hinzufügen, updates etc.)

    der Vorteil: nach einem neuflash einfach den localen feed hinzufügen, dann kannst du alle "Fremdpakete" ganz normal über apt-get installieren

  • Danke für die Aufklärung. Werde es mal eine weile testen.

    Obwohl es für mich keinen Unterschied macht, ob dpkg oder apt.

    Ich hab für meinen Neuflashprozess eine Notitzdatei mit Befehlen, die ich nur ins Telnet kopieren muß.

    Meine Favoritenliste, deb Pakete usw hab ich auf meiner Festplatte.

    Die debs tausch ich immer gg die neueste.

  • Fred Bogus Trumper ,

    Es geht nicht um einzelne user das die Kenntnisse haben und wissen was die tuen.


    Nur wenn dafür ein plugin entwickelt wird, dann kann jeder d*p alles mögliche damit einführen, und dann kommt auch die frage warum dehnen ihre Box nicht mehr Stabil läuft, und das schuld an andere gesetzt wird.


    Ein externe feed ist im GP3 seit immer möglich gewesen, und wird auch weiter möglich sein. Nur das anzapfen Möglichkeit durch ein plugin an unsere Server, macht es das wir dadurch konsequent dagegen reagieren müssen. Wir haben kein offene Server zur Verfügung gestellt.


    gutemine ,

    Du fragst das deine plugins nicht außerhalb dieses Board geladen wird. Das respektieren wir. Dann respektiere auch die User das bei uns was zur Verfügung stellt, und nirgends anderes haben möchte.

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von cepheus ()

  • Darum geht es hier eigentlich nicht

    wenn einer fremdfeeds in sein image macht wird er eh schnell merken, dass das keine gute Idee war


    alleup


    wenn du per dpkg -i ein paket installierst, musst du apt-get install -f nachjagen, wenn Abhängigkeiten nicht installiert sind

    apt-get install installiert die Depends automatisch, sofern sie am feed liegen

  • Deswegen gibt's von mir auch keine updatechecks in den plugins. Ich koennte natürlich auch wieder allen ein Ablaufdatum verpassen um updates zu erzwingen wenn Euch das lieber ist :)


    Ausserdem gibt's den mechanismus mit den meta files laengst, nur benutzt ihn keiner.

  • OK, da ware noch ein cut & paste Fehler wenn das *.deb ein control.tar.xz beinhaltet. Ich habe das script entsprechend angepasst und auch die binutils als dependency dazu gemacht und eine 0.3 vom Local Feed Plugin hochgeladen.


    Viel Spass beim Testen


    gutemine

  • du hast nicht verstande um was es geht, denn worüber wir uns aufregen sind User, die den Feed von GP3 für Dinge wie Picons und einige Plugins, die es fast nur bei uns gibt anzapfen, @OoZooN möchte bestimmt auch nicht, dass User ohne sein Image auf seinen Feed für die Plugins von gm zugreifen. Mit dieser Vorgehensweise werden die Wünsche der Plugin- und Piconersteller mit Füßen getreten und dann wundert man sich, wenn genau diese Leute die Lust verlieren und nichts mehr machen.

    Viele Grüße
    Jürgen


    "Kaum macht man es richtig, .... schon geht es!"

  • gutemine


    wie packst du die .deb's


    ich bekomme hier bei einigen selbsterstellten Paketen einen Hash Sum mismatch bzw. Size Error wenn ich über apt-get installieren will.


    Wenn ich allerdings die MD5sum und Size des Paketes mit der MD5sum und Size in der Packages vergleiche stimmen die überein.


    dein localfeed.deb geht durch


    ein apt-get clean && rm -rf /var/lib/apt/lists/* etc. bringt auch keine Abhilfe


    Ich hab' das betroffene Paket jetzt schon auf unterschiedliche Arten und und Systemen erstellt, immer der gleiche Fehler


    Hast du eine vielleicht eine Idee? Könnte das an deinem Script liegen?




    @Jogi



    ich kann euch schon verstehen, was euch Kopfweh macht. Aber man muss keine feeds mischen um aus dem GP3 feed Pakete zu klauen. Da gäbe es auch andere Möglichkeiten. Ohne dem localfeed plugin installiert der Bösewicht eben mit dpkg - also hat das eine nichts mit dem anderen zu tun.



    Wenn jemand an eure Pakete will, kommr er auf bestimmten Wegen immer ran, das werdet ihr glaube ich nicht verhindern können.

  • es ist immer noch sinnvoller sich ein paket 1x zu holen und lokal abzulegen.


    Aber wie schon gesagt das Plugin unterstützt nichts was ein dpkg -i nicht auch koennte.


    Wenn es probleme bei der installation vom lokalen feed gibt bräuchte ich ein installationslog, wobei manche warnings immer kommen werden, weil das minimale Packages file z.B. ausser der md5sum keine signatur beinhaltet umdie pakete zu verifizieren

  • Das mit der Signatur ist klar, die Meldung kommt ja auch, wenn ich das localfeed.deb installiere.


    lösche ich die MD5sum aus der Packages kommt Size mismatch, lösche die Size aus der Packages kommt noch ein Error, den habe ich jetzt nicht mehr im Kopf, irgend etwas mit 201, vermute weil keine Sig mehr findet


    als letze Meldung kommt immer

    Code
    1. E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

    update und --fix-missing habe ich natürlich auch versucht.


    Es tritt auch nur bei bestimmten selbst erstellten Paketen auf, die sich ohne weiteres mit dpkg installieren und removen lassen


    Ich muss mir das am Abend nochmal in Ruhe ansehen, aber ich denke das hat nichts mit dem localfeed plugin zu tun, da läuft eher hier etwas falsch ...