1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Infos Neues Debian Build Paket

Dieses Thema im Forum "CS VDR-SC" wurde erstellt von TheTom, 18. Mai 2012.

  1. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    Hi Leute,

    ich hab mal mein altes HG (Mercurial) Template komplett aufgeräumt und überarbeitet.

    Hier die Vorteile:
    • es wird nicht mehr im Unterordner "build" ausgecheckt und von dort alles gesymlinkt, sondern direkt in den Hauptordner. Ausserdem wird beim updatehg target erstens gleich alles in ein orig.tar.gz Paket gepackt, mit entsprechender Version versehen und das changelog erweitert. Das Resultat ist somit auch PPA fähig.
    • es gibt jetzt nur noch ein Paket und beim installieren wird man gefragt, welche Module man aktivieren möchte (kann mit dpkg-reconfigure vdr-plugin-sc später einfach geändert werden).
    • Support für PCSC Smartcard-Lesegeräte habe ich aktiviert
    • die Patches aufgeräumt (die Versionen von tecfreak und von BestFriend hatten alle einen Makefile-Patch mit drin, welcher die include Pfade unnötigerweise anpassen) - den AustriaSat-Delay-Patch habe ich aber absichtlich deaktiviert gelassen, da das ganze wohl nicht so fein ist und sich auf alle Systeme auswirkt. Wer es dennoch braucht kommentiert den patch unter debian/patches/series wieder ein.
    • einige kleinere Verbesserungen (wie zb. automatisches clean wenn cleanhg aufgerufen wird, obwohl noch das clean benötigt wird; der command-hook wurde korrigiert, ....)

    Es ist ja schon Interessant was aus meinem Debian Paket so alles geworden ist. Die Idee mit dem Package Builder-Skript von tecfreak finde ich wirklich gut. Hab noch überlegt ob ich auch noch das FFdeCSA-Optimierungscript mit in das Template einbaue. Allerdings würde das beim bauen über einen externen Build-Server (wie bei den Ubuntu PPAs) stören - deswegen hab ichs dann auch weg gelassen.

    Das ganze ist eigentlich für Leute gedacht, die sich mit dem Paketebauen etwas auskennen. Es kann aber auch gerne von Leuten benutzt werden, die sich in das ganze einarbeiten :wacko1:

    Im Paket ist eine README... eigentlich mehr ein Script was mit sh README ausgeführt werden kann und das ganze Paket automatisch baut.

    So, viel Spass damit :emoticon-0150-hands
     
    Zuletzt bearbeitet: 3. Juni 2012
    #1
    derdigge, qwertzsu, sepp.egger und 3 anderen gefällt das.
  2. phantom

    Nervigen User Advertisement

  3. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    Ich habe das Paket nochmal neu hochgeladen. Und zwar habe ich die Datei "debian/install" optimiert. Es werden einfach alle vorhandenen Plugins installiert. So ist das Paket flexibler, falls was neues dazu kommt (z.B. hddevice plugin oder so)
     
    #2
  4. tecfreak
    Offline

    tecfreak Hacker

    Registriert:
    13. September 2010
    Beiträge:
    418
    Zustimmungen:
    128
    Punkte für Erfolge:
    43
    Hallo Tom,

    die Änderungen klingen sehr interessant. Ich habe für meinen Package Builder auch dein altes Template als Vorlage genommen und etwas angepasst.

    Was den AsutriaSat patch angeht, so habe ich mir den schon vor 1-2 Wochen angeschaut und sofort gesehen wieso leslie diesen nicht integrieren wollte.
    Habe daher einen weiteren Patch geschrieben der einen Delay an der richtigen Stelle auslöst ohne all die anderen Cryptsysteme zu beinträchtigen. Leslie hat es dann noch übers OSD konfigurierbar gemacht und das ganze ist seit knapp einer Woche schon im trunk.
    Es ist also kein Patch mehr nötig und AustriaSat/ORF funzt hier seit dem über EMU bestens.

    Zu dem Makefile patch. Ohne die geänderten includes setzt das Makefile voraus, dass sich das Plugin im Unterordner der vdr-Quellen befindet. Hat man dann nur die Header-Files installiert (vdr-dev) und die Plugin-Quellen befinden sich nicht gerade zufällig drei Ebenen weiter oben in der Ordnerstruktur, so klappt das ganze nicht mehr.
    Fürs PPA benötigt man das natürlich nicht.

    Da ich gerade an einer neuen Version des Package Builders mit FullFeatured Support arbeite und vieles nochmal überarbeiten werde hoffe ich, dass du nichts dagegen hast, dass ich die neue Version deines Templates wieder als Vorlage nutze. Schon alleine wegen der Möglichkeit das plugin mit Hilfe von dpkg-reconfigure im nachhinein nochmal konfigurieren zu können klingt nach einem tollen Feature.


    Vielen Dank für deine Arbeit.


    Gruß
    tec
     
    #3
  5. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    nope, schau doch mal:

    wir übergeben in der rules dem make folgendes: VDRDIR=/usr/include/vdr

    Und im Makefile macht er folgendes:

    Code:
    $ grep VDRDIR Makefile
    VDRDIR = ../../..
    INCLUDES      = -I$(VDRDIR)/include
    -include $(VDRDIR)/Make.global
    -include $(VDRDIR)/Make.config
    VDRVERSION := $(shell sed -ne '/define VDRVERSION/ s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/include/vdr/config.h)
    APIVERSION := $(shell sed -ne '/define APIVERSION/ s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/include/vdr/config.h)
    VDRVERSNUM := $(shell sed -ne '/define VDRVERSNUM/ s/^.[a-zA-Z ]*\([0-9]*\) .*$$/\1/p' $(VDRDIR)/include/vdr/config.h)
    APIVERSNUM := $(shell sed -ne '/define APIVERSNUM/ s/^.[a-zA-Z ]*\([0-9]*\) .*$$/\1/p' $(VDRDIR)/include/vdr/config.h)
    LOCALEDIR = $(VDRDIR)/locale
    BYTSPL = $(strip $(shell grep -l 'PlayTsVideo' $(VDRDIR)/include/vdr/device.h))
    
    schau mal was das zusammen ergibt und prüfe ob die Datei(en) da ist/sind :emoticon-0105-wink:

    Dabei wird das erste VDRDIR in der Aufführung durch die Übergabe an das Make überschrieben.

    Das ganze funktioniert, denn ohne VDRVERSION und APIVERSION könnte das Plugin nicht gebaut werden.

    Und nein, habe natürlich nichts dagegen dass du das Template weiter verwendest.
     
    Zuletzt bearbeitet: 19. Mai 2012
    #4
  6. tecfreak
    Offline

    tecfreak Hacker

    Registriert:
    13. September 2010
    Beiträge:
    418
    Zustimmungen:
    128
    Punkte für Erfolge:
    43
    Mensch stimmt, das habe ich vollkommen vergessen. Hatte selber noch vor kurzem compiler flags über die rules an das makefile übergeben um das build auf x86_64 systemen zu fixen bis leslie das vor paar Tagen im trunk gefixt hat. Peinlich, peinlich :)

    Wegen dem FFdecsa Patch. Da ist es nicht zwingend notwendig das ganze gleich als Makefile patch zu integrieren.
    Im vdr-sc Makefile haben wir ja noch ein "-include Make.config" und die FFdecsa Parameter habe ich einfach dort reingepackt.
    Ist wie ich finde eine elegantere Lösung als ein patch.

    Wegen dem AustriaSat patch - schau einfach ins vdr-sc OSD Menü unter "Cryptsystem Optionen".
     
    #5
  7. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    ich bin gerade noch ein einer verbesserung mit dran, dass die sddevice und hddevices noch automatisch gebaut und installiert werden. Bin fast fertig - muss aber nochmal kurz weg. Danach stell ich das fertige template nochmal zur verfügung ;-)

    Ok, habs es doch noch geschafft... jetzt muss ich aber erstmal - sonnst wird jemand ganz schön sauer :boredom:

    habe nochmal eine Version mit dem ffdecsa_opt gemacht.. allerdings extern nicht mit im Template.

    Ob der ffdecsa patch in die Make.config oder direkt in das Makefile patch ist eigentlich egal.. gebe dir aber recht, dass es noch nen Tick besser wäre.. aber halt nur kosmetisch ;-)

    Hab es eigentlich nur aufgenommen, damit es auch ohne ffdecsa_opt mit amd64 kompiliert.

    so, nochmal ein update: mir ist aufgefallen, dass ich aus versehen die docs vergessen habe... es wurden ausserdem noch paar kleine Optimierungen durchgeführt.
     
    Zuletzt von einem Moderator bearbeitet: 20. Mai 2012
    #6
  8. tecfreak
    Offline

    tecfreak Hacker

    Registriert:
    13. September 2010
    Beiträge:
    418
    Zustimmungen:
    128
    Punkte für Erfolge:
    43
    Hi,

    hab noch nen kleinen Fehler gefunden. Hab mich schon gewundert, wieso bei mir im log auf einmal die Meldung "Too many CAIDs definied" erscheint.
    In der debian/rules fehlt das "patch" Kommando hinter common-build-arch.

    ...und wo wir schon beim Thema sind. Hast du eine Idee wie man den "sc" Eintrag per Script in die order.conf bekommt?


    Gruß
    tec
     
    #7
  9. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    Also bei mir hatte er immer automatisch gepatcht.. dafür ist das quillt included.

    Wegen dem sc in der orders datei... hatte ich glaub schon mal was gemacht.... sed ist das zauberwort

    Ich werde das morgen mal prüfen

    Gesendet von meinem GT-I9100 mit Tapatalk 2
     
    #8
  10. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    Hast du schon eine Lösung um das Plugin an erster Stelle einzutragen?

    Wenn die Datei nicht verändert wurde (also der header), dann ist es am einfachsten mit folgendem Kommando:

    Code:
    sed "s/each option in one line$/each option in one line\nsc/g" -i order.conf
    Vorher sollte aber sichergestellt werden, dass es nicht schon dort enthalten ist.

    In etwa so:

    Code:
    sed '/^[#*-]\{0,1\}sc$/d' -i order.conf
    EDIT: ok so funktioniert es nun...

    Ergibt dann also erstens die Zeile zum löschen und dann die Zeile zum einfügen...

    Ich würde aber den Benutzer fragen ob es eingetragen werden soll und nicht einfach jedesmal die Zeile raus löschen wenn postinst aufgerufen wird.

    Das würde nämlich dazu führen, dass wenn der Benutzer die Datei von Hand angepasst hatte und der Header nicht mehr da ist, dass er es jedesmal rauslöscht aber nicht wieder einfügen kann.

    Evtl. könnte man eine Sicherheitskopie vorher erstellen und dann mit "egrep '^sc$' order.conf" prüfen ob die Datei wieder sc enthält.

    Gruß
     
    Zuletzt bearbeitet: 30. Mai 2012
    #9
  11. tomtor
    Offline

    tomtor Newbie

    Registriert:
    19. Januar 2012
    Beiträge:
    5
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    fehler

    hi,

    ich bekomme folgenden fehler auf linux mint (kde):

    g++: Fehler: fehlendes Argument für »-march=«
    make[2]: *** [FFdecsa.o] Fehler 1
    make[2]: Verlasse Verzeichnis '/media/daten/Downloads/TeviiS660/vdr-plugin-sc-1.0.0~hg6-template/vdr-plugin-sc-1.0.0-0~20120601.hg613/FFdecsa'
    make[1]: *** [FFdecsa/FFdecsa.o] Fehler 2
    make[1]: Verlasse Verzeichnis '/media/daten/Downloads/TeviiS660/vdr-plugin-sc-1.0.0~hg6-template/vdr-plugin-sc-1.0.0-0~20120601.hg613'
    make: *** [common-build-arch] Fehler 2
    dpkg-buildpackage: Fehler: Fehler-Exitstatus von debian/rules build war 2
    dpkg: Fehler beim Bearbeiten von ../vdr-plugin-sc_1.0.0-0~20120601.*-1_amd64.deb (--install):
    Auf das Archiv kann nicht zugegriffen werden: Datei oder Verzeichnis nicht gefunden
    Fehler traten auf beim Bearbeiten von:
    ../vdr-plugin-sc_1.0.0-0~20120601.*-1_amd64.deb

    cu
    tom
     
    #10
  12. tecfreak
    Offline

    tecfreak Hacker

    Registriert:
    13. September 2010
    Beiträge:
    418
    Zustimmungen:
    128
    Punkte für Erfolge:
    43
    Hast du die README ausgefürt und damit ffdecsa_opt laufen lassen? Wenn ja, wie schaut die Make.config aus bzw. wie hast du im Makefile den FFdecsa teil angepasst?
    Gabs beim ffdecsa_opt evtl. nen Fehler beim Durchlauf?
     
    #11
  13. tomtor
    Offline

    tomtor Newbie

    Registriert:
    19. Januar 2012
    Beiträge:
    5
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    nein, habe nichts geändert und mich an die vorgaben im ersten posting gehalten. soll ich es nochmal durchlaufen lassen?
     
    #12
  14. tecfreak
    Offline

    tecfreak Hacker

    Registriert:
    13. September 2010
    Beiträge:
    418
    Zustimmungen:
    128
    Punkte für Erfolge:
    43
    Führ die README einfach wie ein ganz normales Script aus.
     
    Zuletzt bearbeitet: 1. Juni 2012
    #13
  15. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    ich habe das und auch das automatische anpassen der order.conf in mein neues vdr-plugin-sc-1.0.0~hg7-template.tar.gz aufgenommen.

    @

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    package das template nochmal neu aus und bevor du das README ausführst, kommentiere die Zeile "sc_optimize ${PWD_OLD}" einfach aus... somit wird das Paket ohne den Aufruf von ffdecsa_opt ausgeführt.

    Gruß
     
    #14
  16. TheTom
    Offline

    TheTom Ist gelegentlich hier

    Registriert:
    10. Februar 2010
    Beiträge:
    40
    Zustimmungen:
    8
    Punkte für Erfolge:
    0
    noch mal ein Update für heute... habe das reload-softcam.key Skript überarbeitet und auch einen "command-hook" für yavdr eingebaut (der andere ist für Debian Pakete wie von e-Tobi)
     
    #15

Diese Seite empfehlen