Neutrino auf der Dreambox

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

na gut, aber wenn mann sich alleine diesen thread durchliest sollte man im stande sein ein neutrino image für die 500er zu erstellen...
ich geh mal von dem 0815 menschen wie ich der windows benutzt, mann nehme den vmwareplayer, der kostenlos ist, dazu stinkylinux, weil da schon alles dabei ist und mann muß keine pakete installaieren oder sonst was, ein terminalfenster öffnen und da gibt mann folgendes ein

Code: Alles auswählen

mkdir tuxbox-cvs
cd tuxbox-cvs
export CVS_RSH=ssh
cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -f -r dreambox -P .
cd cdk
chmod ugo+x prepare_neutrino
./prepare_neutrino dm500
make checkout_neutrino
./prepare_neutrino dm500
make dreamboximage_neutrinoroot
make rebuild-flash
make flash-compress
am ende hat mann in dem ordner root/cdkflash/ ein fertiges imge complete.img

nun da sind paar sachen die nicht so richtig funktionieren und deswegen habe ich gerne seifes patch genommen, weil das image dann wirklich brauchbar ist, nur leider sind durch die änderungen die seit april im cvs gemacht wurden, an viele stellen die sachen nicht mehr an der selben stelle und der patch funktioniert nicht mehr... an dieser stelle währe es toll wenn seife uns mal erklären könnte wie er sein patch erstellt hat damit wir den auch anpassen könnten...

dann gibt es noch so leute wie audioslyer die basteln an neutrino, halten es aber np, ok die haben ihre gründe dafür, währe aber trotzdem schön wenn die sich da beteiligen würden, von ihm kam auch die beschreibung wie man ein maxvar image erstellen kann:

man muß dazu die datei dreambox.c aus dem ordner cdk/linux/drivers/mtd/maps ändern, nur diese datei wird erst erstellt nachdem mann den befehl: make dreamboximage_neutrinoroot ausgeführt hat, dazu öffne ich einen zweiten terminal fenster und warte bis die datei da ist und ändere diese während dem makevorgang und zwar so:

------------------------------------------------------------

static struct mtd_partition dreambox_flash_partitions[] = {
{
name: "DreamBOX cramfs+squashfs",
offset: 0x000000,
size: 0x500000,
},
{
name: "DreamBOX jffs2",
offset: 0x500000,
size: 0x2c0000,
},
{
name: "DreamBOX OpenBIOS",
offset: 0x7c0000,
size: 0x040000,
mask_flags: MTD_WRITEABLE /* force read-only */
},
{
name: "DreamBOX (w/o bootloader)",
offset: 0,
size: 0x7c0000,
},
{
name: "DreamBOX (w/ bootloader)",
offset: 0,
size: 0x800000,
mask_flags: MTD_WRITEABLE /* force read-only */
},
{
name: "DreamBOX SquashedFS",
offset: 0x120000,
size: 0x3e0000
},
{
name: "DreamBOX Cramfs",
offset: 0,
size: 0x120000
}
};

------------------------------------------------------------

und damit am ende nicht eine zu große squashfs partition erstellt wird, die überprüfung an die neue größe angepasst wird, die datei makefile.am ändern:

------------------------------------------------------------

$(flashprefix)/root-squashfs.img:
touch $(flashprefix)/root/.flash
$(flashprefix)/mksquashfs $(flashprefix)/root $(flashprefix)/root-squashfs.img -be -all-root
rm $(flashprefix)/root/.flash
@if [ `stat -c %s $(flashprefix)/root-squashfs.img` -gt 4063232 ]; then \
echo "ERROR: SquashFS part is too big for image (max. allowed 4063232 bytes)"; \
rm -f $(flashprefix)/root-squashfs.img.too-big 2> /dev/null || /bin/true; \
mv $(flashprefix)/root-squashfs.img $(flashprefix)/root-squashfs.img.too-big; \
exit 1; \
fi

------------------------------------------------------------

wenn eine datei nicht gefunden wird, kopiert mann den dateinamen und sucht mann mit google dannach, bisher habe ich alle dateien irgendwo gefunden, es gibt mittlerweile einiege seiten die diese dateien bereitstellen, dazu speichert man diese in dem ordner Archive und startet mann den makevorgang nochmal, der prozess läuft dann dort weiter wo dieser unterbrochen wurde... es ist praktischer wenn man es einmal hinbekommen hat daß der makevorgang durchläuft, diesen Archive ordner irgendwo ins home verzeichnis zu kopieren und bei spätere experimente diesen einfach in cdk ordner verlinkt...

also bevor mann den befehl: make dreamboximage_neutrinoroot ausführt den symbolischen link zu dem Archive ordner erstellt

Code: Alles auswählen

ln -s /home/slightly/Archive
wenn man z.b. einen patch anwenden möchte, dann legt mann den in der regel in dem ordner tuxbox-cvs und wendet mann den so an

Code: Alles auswählen

patch -p1 < neutrino-dream.diff
liegt der patch in der gepackten form vor muß man den so anwenden

Code: Alles auswählen

zcat neutrino-dream.diff.gz | patch -p1

wie schon geschrieben, ich kann sowas schlecht in worten fassen, habs trotzdem mal versucht so gut ich konnte, alles zusammen zu fassen was ich hier in diesem thread gelesen hab, all daß haben leute bestimmt mit sehr viel mühe ausgetestet und ich kann es bestätigen daß es so klappt

nochmal ein riesen dankeschön an all die leute hier im forum und andere foren auch ohne deren tolle arbeit niemals im stamnde gewesen währ ein aktuelles image zu erstellen :wink:
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Neutrino für die Dreambox bauen.

Beitrag von seife »

mantz hat geschrieben:an dieser stelle währe es toll wenn seife uns mal erklären könnte wie er sein patch erstellt hat damit wir den auch anpassen könnten...
Das ist nun wirklich nicht schwer, und auch im Patch zu sehen:

Code: Alles auswählen

cvs diff -ruNp
Vorher die neu dazugekommenen Dateien (2 Patches oder so) mit

Code: Alles auswählen

cvs add
hinzufügen.

Allerdings bin ich der Meinung, dass mein Patch inzwischen ziemlich überflüssig sein müsste, also wäre es besser die Bugs, die noch im CVS sind einfach zu fixen...
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Neutrino für die Dreambox bauen.

Beitrag von seife »

mantz hat geschrieben:habs mal ohne dem diff gebacken und es läuft auch durch, aber da wird die epg zeit nicht aktualisiert,
Das liegt am "sectionsd -tc" im rcS, das ist einfach falsch wenn man seine Zeit nicht aus dem Netz bekommt => das "-tc" wegmachen und gut.

Ich habe das aber soeben im CVS etwas generischer gefixt (jetzt kann man in /var/etc/neutrino-variables SECTIONSD_OPTS="..." und ZAPIT_OPTS="..." angeben, die werden dann verwendet.)
man muß in der console

Code: Alles auswählen

 console=ttyS0,115200
einfügen damit man einen log bekommt...
...was, wenn man nicht weiss, was man tut (und den "quiet"-Parameter hinzufügt) gerne dazu führt, dass einem der Tunertreiber die Konsole dermassen mit debuginfo zuscheisst, dass die Kiste sich praktisch aufhängt.
also fehlen da schon ein paar sachen...
Ich habe sonst keine gefunden.

Alles andere was in dem Patch drin war ist entweder:
- debugging code, der keinem wirklich weiterhilft
- Überbleibsel von irgendwelchen Experimenten, wo ich selbst nicht mehr weiss, wozu es gut war
- Anpassung an meine private Infrastruktur / an mein Setup

Insofern würde ich den Patch eher nicht mehr verwenden.

...vielleicht hole ich die dm500 ja mal wieder aus der Versenkung und probiere ein Neutrino drauf aus, aber über die Kiste ärgere ich mich jedes mal so, dass ich nicht sagen kann, wann ich das machen werde ;-)
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

ok, jetzt habe ich nochmal ohne patchen ein image erstellt, die uhrzeit wird im epg aktuallisiert nur die uhr geht 2 stunden nach, auch wenn ich in /var/etc die datei profile erstelle und dort die zeile

Code: Alles auswählen

export TZ=CET-1CEST,M3.5.0/2,M10.5.0/3 
auskommentiert da reinmache und die datei ausführbar gemacht habe :gruebel:
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Neutrino für die Dreambox bauen.

Beitrag von seife »

die wird in rcS anscheinend nicht gelesen. schreib doch dasselbe nochmal in /var/etc/init.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

also uhrzeit geht hier 1a.
fta geht auch wunderbar, nur wie bekomm ich meine brummiere karte ans laufen?
das mit der partitionsaufteilung is mir noch sehr unklar.
das mit der datei init-var.tar.gz is mir noch spanischer ? muss denn das sein ? die wird doch nur beim neuflash gebraucht ?
Insofern würde ich den Patch eher nicht mehr verwenden.
...vielleicht hole ich die dm500 ja mal wieder aus der Versenkung und probiere ein Neutrino drauf aus, aber über die Kiste ärgere ich mich jedes mal so, dass ich nicht sagen kann, wann ich das machen werde ;-)
also geht das auch ohne patch ? wenn ja wäre es ja spitze.
hol doch mal raus :)
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

ich denke daß mit der init-var.tar.gz ist geschmackssache, normalerweise haben alle dreambox image den ordner var_init, da befinden sich die dateien die bei einem flash erase ins var kopiert werden, ich denke seife hat den ordner var_init aus dem ro bereich weggelassen und diesen in init-var.tar.gz gepackt und statt den inhalt von var_init ins var zu kopieren wird das archiv init-var.tar.gz einfach ins var entpackt...
die sache mit brummiere karte, sie läuft in keiner dream, zumindest ohne illegale sachen und daß wird aus diesem grund hier nicht suportet :wink:
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

shit dann muss ich wohl die wieder verkloppen. schade :(
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Neutrino für die Dreambox bauen.

Beitrag von seife »

mantz hat geschrieben:ich denke seife hat den ordner var_init aus dem ro bereich weggelassen und diesen in init-var.tar.gz gepackt und statt den inhalt von var_init ins var zu kopieren wird das archiv init-var.tar.gz einfach ins var entpackt...
genau. Zumindest erinnere ich mich dunkel an sowas ;)
die sache mit brummiere karte, sie läuft in keiner dream, zumindest ohne illegale sachen und daß wird aus diesem grund hier nicht suportet :wink:
Ein Alphacrypt ist wohl nicht so richtig illegal, aber ob das geht, oder ob da im neutrino noch was angepasst werden muss, weiss ich nicht. Und natürlich geht das nicht in der 500.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

@seife
dein cvs diff befehl geht nicht :(

Code: Alles auswählen

cvs diff -ruNp > test.diff
21.06.2008
for security reasons all user ssh-keys older than 04.2008 got deleted
cvs: WARNING: Read-only repository access mode selected via `cvs -R'.
Using this option to access a repository which some users write to may
cause intermittent sandbox corruption.
cvs diff: warning: cannot open /cvs/tuxbox/CVSROOT/val-tags read/write: Permission denied
cvs [diff aborted]: no such tag uNp
ich machs immer so

Code: Alles auswählen

cvs diff -upN > test.diff
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Neutrino für die Dreambox bauen.

Beitrag von seife »

Dann lass das "r" weg. CVS macht ja immer rekursiv.
Ehrlich gesagt erwarte ich eigentlich von Leuten, die mit neutrino auf der dreambox experimentieren wollen auch, dass sie das CVS manual gelesen haben, ansonsten ist das Unternehmen eh zum Scheitern verurteilt ;-)

Und wie schon geschrieben - ich glaube nicht, dass in meinem Diff von damals noch was nützliches drin ist.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

oh doch.
die ganze serielle console und startdateien anpassung ist da drin.
Hier ist der aktuelle diff.
ob das alles noch nötig ist, weist du ja am besten ;)
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Neutrino für die Dreambox bauen.

Beitrag von seife »

Es hat schon einen Grund, warum auf der dreambox die serielle Konsole per default aus ist. Wer das braucht, der kann es ja selbst rein machen. Der Rest sollte nicht nötig sein, das meiste waren experimentelle Sachen, von denen ich meist gar nicht mehr weiss, wofür sie gut waren und ob sie heutzutage nicht Schaden anrichten.

Sprich: wer diesen diff benutzt, sollte auf keinen Fall Bugreports machen.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

so also das image mit den diff geht soweit. das einzigste was ist, es geht kein reboot.
ich werde jetz mal alle patches entfernen, und dann sehn wir was dann passiert.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

so cvs ausgecheckt wie mantz geschrieben.
image gebaut.
nix passiert. also mit cvs ist nix mit bootfähigen image.
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

mhmhm komisch... hab am mittwoch ein image erstellt und es läuft seit dem auf meiner 500er dream bei mir seit dem...
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

nur mit dem cvs ohne patches ??
ich hab mal consoleausgaben eingepatcht.
mal sehn was passiert.
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

jap, ohne jeglichen patch :D
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

aha
na mal sehn. zur zeit baut er ja noch.
BoxMan
Interessierter
Interessierter
Beiträge: 61
Registriert: Mittwoch 1. Mai 2002, 19:09

Re: Neutrino für die Dreambox bauen.

Beitrag von BoxMan »

mantz hat geschrieben: ------------------------------------------------------------

und damit am ende nicht eine zu große squashfs partition erstellt wird, die überprüfung an die neue größe angepasst wird, die datei makefile.am ändern:

------------------------------------------------------------

$(flashprefix)/root-squashfs.img:
touch $(flashprefix)/root/.flash
$(flashprefix)/mksquashfs $(flashprefix)/root $(flashprefix)/root-squashfs.img -be -all-root
rm $(flashprefix)/root/.flash
@if [ `stat -c %s $(flashprefix)/root-squashfs.img` -gt 4063232 ]; then \
echo "ERROR: SquashFS part is too big for image (max. allowed 4063232 bytes)"; \
rm -f $(flashprefix)/root-squashfs.img.too-big 2> /dev/null || /bin/true; \
mv $(flashprefix)/root-squashfs.img $(flashprefix)/root-squashfs.img.too-big; \
exit 1; \
fi
das gilt aber nicht für die DM7000?
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

doch sollte ja egal sein, für welche version
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

weil wenn mann in der dreambox.c die partitionsgröße ändert, sollte mann beim erstellen diese anpassung im makefile machen, den ansonsten kann es passieren wenn man zu viel in die squashfs partition reinpackt, diese größer wie die partition werden könnte...
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Neutrino für die Dreambox bauen.

Beitrag von mb405 »

so meine dream looft 1a nun.
booting neutrino in 12sec. wow.
das einzige, was irgendwie komisch ist. wenn ich sectionsd scan aktiviere, dann bröselt die box nach kurzr zeit ab.
log sagt was von fehlenden speicher.
ich versteh auch die partitionsaufteilung nicht so ganz.
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Re: Neutrino für die Dreambox bauen.

Beitrag von prodigy7 »

Weis nicht, obs wichtig ist:

Code: Alles auswählen

Cryptographic API (CRYPTO) [N/y/?] n
make[2]: Leaving directory `/public/sources/tuxbox-cvs/cdk/linux-2.6.9'
make -C linux-2.6.9 include/linux/version.h \
                ARCH=ppc
/public/sources/tuxbox-cvs/cdk/linux-2.6.9/scripts/gcc-version.sh: line 11: powerpc-tuxbox-linux-gnu-gcc: command not found
/public/sources/tuxbox-cvs/cdk/linux-2.6.9/scripts/gcc-version.sh: line 12: powerpc-tuxbox-linux-gnu-gcc: command not found
Nach Anleitung von http://wiki.tuxbox-cvs.sourceforge.net/ ... geDreambox angefangen zu bauen.
mantz
Einsteiger
Einsteiger
Beiträge: 129
Registriert: Donnerstag 6. Juni 2002, 23:11

Re: Neutrino für die Dreambox bauen.

Beitrag von mantz »

mhmhm zeile 11 und 12

Code: Alles auswählen

MAJOR=$(echo __GNUC__ | $compiler -E -xc - | tail -n 1)
MINOR=$(echo __GNUC_MINOR__ | $compiler -E -xc - | tail -n 1)
hast du die sachen auch auf dem vorgegebenen stand?
habe grad angefangen ein neues image zu bauen und bisher läuft es ohne diese fehlermeldung...