IPKG script gesucht

Wir haben aktuell ein Problem mit dem Board und arbeiten an der Lösung...
  • Kann mir mal wer erklären, wie ich die "Depends:" in der control richtig einsetzten kann. ?
    Z.b. will ich das das ipkg NUR auf GP4.2 zum installieren geht
    Wie finde ich raus was ich da dann genau hinschreiben muss ?

  • ipkg list | grep gemini


    gemini2-addend - 4.2.0+cvs20090424-r3 -
    gemini2-bootlogo - 2.1-r3 -
    gemini2-image-info - 4.2.0+cvs20090424-r12 -
    geminitools - 4.2.0+cvs20090424-r3 -
    libgemini2 - 4.2.0+cvs20090424-r9 -


    Und da such dir eines aus, ich würde das gemini2-image-info nehmen oder das libgemini2 und dann schreibst du noch >= 4.2.0 dazu

    Einmal editiert, zuletzt von gutemine ()

  • Vielen Dank


    Und dann gleich noch eine Frage:
    Obwohl ich im ipkg mein postrm drin habe, bringt er mir beim deinstallieren:

    Code
    Removing package enigma2-skin-glassline-mod from root...
    sh: //usr/lib/ipkg/info/enigma2-skin-glassline-mod.postrm: not found
    postrm script returned status 127


    Was mach ich noch falsch ?

  • ist das p* script ausführbar (chmod 755 p* vor dem ipk bauen), hat es auch ein #!/bin/sh als erste zeile drinnen und ist es sicher auch nicht mit DOS editor geschrieben (dos2unix p*)


    LG
    gutemine

  • Zitat

    Original von gutemine
    und ist es sicher auch nicht mit DOS editor geschrieben (dos2unix p*)


    Ufff danke das war der richtige Tipp.
    Doofes Windows...hat man davon. Da ich das postrm neu erstallt habe und nix als vorlage genommen habe, war der Editor nicht schon auf Unix Format. :winking_face:


    Dank dir, das mit den Depends: bekomme ich wohl nun auch gebacken.....das versuche ich aber nacher...jetzt muss erst mal der Haushalt erledigt werden solange die kleine noch schläft. :winking_face:
    (Ja ich bin sozusagen die "gutemine" nur nicht in Gallien sondern hier bei den Helvetiern. :D)

  • na ja dann viel Spass zuhause :)


    Und ich kenn halt meine User schon was die so üblicherweise falsch machen.

    Einmal editiert, zuletzt von gutemine ()

  • Ich hätte da noch eine weitere Frage zu der Erstellung eine IPKG.


    Was muss ich den machen, das wenn ich eine neue Version (neues Datum) mache, die die alte updaten soll ?
    Mach ich ein neues ipkg mit neuer Versionsnummer, schreibt er auch nicht "updating" sondern installiert die neue Version einfach dazu.


    Danach habe ich natürlich beide Versionen drauf, auch wenn die sich überschreiben:

    Code
    root@dm7025:/# ipkg list *glass*
    enigma2-skin-glassline-mod - 1.2.0-20090501 -
    enigma2-skin-glassline-mod - 1.2.0-20090502 -
    root@dm7025:/#
  • wo hast du den datumsstring reingemacht - in den Pluginamen, die version, oder ...


    Normal verwende ich datum gar nicht, sondern nur raufzählende versionsummern (wobei man die beliebig lang und auch mit text und datum machen kann - eine _r1 ersetzt also eine _r0), weil nur dann ist es ein 'echter' update für die pluginverwaltung.


    LG
    gutemine

    Einmal editiert, zuletzt von gutemine ()

  • Achso das heist also ich kann unter "Version: 1.2.0-20090501" hinschreiben was mir lieb ist, ob es ein Update ist oder nicht wird einzig durch ein "_r0", "_r1" , etc. am Ende dieser Zeile entschieden ?
    (Also das Datum habe ich auch NUR in der Version so wie oben gezeigt.)

  • na ja ein datum würde ich nicht in die version geben, auch wenn es geht (sind ja auch nur raufzählende zahlen)


    es geht aber im Prinzip rein drum ob der string grösser oder kleiner ist (vom zahlenwert und auch text als endung als 1.2.3B ist ein upgrade für 1.2.4A) Insofern kannst du machen was du willst, nur sinn sollte es machen.


    Schau dir einfach ein control fiel von einem ipk von einem enigma2 standard paket an, dann siehst du wie DMM es verwendet.

    3 Mal editiert, zuletzt von gutemine ()

  • Danke, funktioniert !!! :hurra:


    Jetzt muss ich mich noch etwas in Shellscript einarbeiten....aber das wichtigste habe ich von deinen Shellscripts schon abgeschaut....aber nur die ganz einfachen sachen....beim Rest blick ich noch nicht so recht durch. :winking_face:

  • meine shellscripts sind of auch nicht optimal, aber eigentlich geht fast alels damit zu machen, schon weil ich keine komplizierten sachen benutze (routinen, awk,..) sonder versuche mit if/then/else/grep,.. auszukommen.


    Wenn du also Fragen hast oder wissen willst wie man was bestimmtes macht rühre dich halt.


    BA + Multiboot sind schon >10k codezeilen shellscript, da schreckt einem irgendwann nichts mehr :)


    LG
    gutemine

    2 Mal editiert, zuletzt von gutemine ()

  • Naja die Basic's willst du mir hier sicher nicht erklären oder ? :winking_face:
    if/then/else habe ich mehr oder weniger schon kapiert.
    Habe mich aber noch nicht stark damit auseinanndergesetzt.


    Ich könnte jetzt auch irgendwo in deinen Scripts suchen gehen, aber kannst du mir dennoch eine basic's Frage kurz erläutern wie ich den z.b. ein "elif" machen kann ? Oder gibt es das sogar bei Shellscript ?


    Also sowas wie:


    if blabla
    then blabla
    (wenn aber "if blabla" nicht passt...)
    ... dann elif diesda (also hier sowas wie ein elif.)
    then diesda


    oder auch sowas wie:


    if blabla
    then blabla
    (wenn den aber "then blabla" auch nicht passt...)
    ... dann mach diesda <----- wie mach ich das da dann ?


    gute beispiele was ! :grinning_squinting_face:



    Und ich hab auch sonst von programmieren keine Ahnung ich kann also auch kein C oder sonstwas. Nur das elif brauchte ich mal in einer änderung von Python und das habe ich da gesagt bekommen das es so funktioniert. Daher kenne ich das

  • Hallo,


    ich nutze das script um ipk's für meinen infinityHD skin mod zu erstellen. Seit dem neuen GP5.0 bekomm ich beim Installieren folgende Meldung:


    pkg_parse_from_stream_nomalloc: missing new line character at end of file!


    Kann mir jemand sagen, was dies zu bedeuten hat und was man dagegen machen kann ?


    vielen Dank.
    tiMb0

  • Brauche hierzu auch mal etwas Hilfe.
    Ich möchte meinen Skin auf der dm800 in ein ipk packen.
    Wenn ich das script ipkg-build starte mit 'ipkg-build /meinskin /tmp' liegt in /tmp ein Ordner z.B. IPKG_BUILD.5340 der ist aber leer !?!
    Fehlermeldung kommt keine.


    gruß csil


    edit:
    Ich mal mal ein paar echos eingebaut um zu sehen wann das script sich verabschiedet.
    Schein hier zu passieren.
    FILESWITHOUTCONTROL= `cd $pkg_dir; ls -1 | grep -v CONTROL`


    danach passiert nix mehr kommt aber acuh kein error.


    gruß

  • such mal nach skin2ipk - das gibts fertig was du möchtest.


    Und ohne control file und richtige directory struktur wird das ipkg-build nichts sinvolles machen können

  • such mal nach skin2ipk - das gibts fertig was du möchtest.


    Und ohne control file und richtige directory struktur wird das ipkg-build nichts sinvolles machen können


    Lies dich erstmal in Reichi's wiki ein wie man ipk files baut

  • Ist doch alles vorhanden !?!


    Ordner meinskin unter root, darin der Ordner CONTROL darin control, reinst und postrm.


    Aber ich such mal nach skin2ipk.


    Danke und gruß csil

  • Wer lesen kann ist klar im Vorteil :)


    Ich hatte die Struktur usr/share/enigma2/usw.. im Ordner CONTROL und nicht im Ordner meinskin.


    nun gehts.


    gruß csil