Hallo,
ich würde gerne beim emerge-Vorgang gelegentlich noch schnell manuell
etwas im Sourcecode ändern (zwischen Holen der Sourcefiles und dem Compilieren) - ist das möglich, und wenn ja, wie? Ich habe zwar schon "emerge -f" gefunden, was das Zeug angeblich nur holt statt gleich zu compilieren, aber die Sources finde ich trotzdem nirgendwo, und ich
wüsste auch nicht, wie ich dann weitermachen sollte.
Konkret würde ich gerne in media-plugins/vdr-epgsearch die zwei winzigen Änderungen von der Seite https://projects.vdr-developer.org/git/vdr-plugin-epgsearch.git/commit/?id=49ba796fe6298abf0ebba68a25ddfc92d3d70aad
einbauen (die den Segfault seit letzter Woche ausmerzen sollen). Wäre
im Source mit vi ja ganz simpel zu korrigieren, aber wo, wann und wie?
(Ich bin nicht der große Patch-Freak. Ich kann Apache, Postfix & Co. installieren und - auch sehr komplex - konfigurieren, aber was Compi-
lieren, Patchen & Co. anbelangt, bin ich der totale Noob; da verlasse
ich mich bisher immer auf emerge...)
Danke & Gruß Matthias.
das geht wie hier beschrieben: https://wiki.gentoo.org/wiki//etc/portage/patches[..]
Also im Prinzip muss der Patch da als /etc/portage/patches/${CATEGORY}/${P} liegen.
Konkret wrde ich gerne in media-plugins/vdr-epgsearch die zwei winzigen
nderungen von der Seite
https://projects.vdr-developer.org/git/vdr-plugin-epgsearch.git/commit/?id=49ba796fe6298abf0ebba68a25ddfc92d3d70aad
einbauen (die den Segfault seit letzter Woche ausmerzen sollen). Wre
im Source mit vi ja ganz simpel zu korrigieren, aber wo, wann und wie?
Also konkret, ich nehme mal an, du beziehst dich auf die ~amd Version media-plugins/vdr-epgsearch-2.2.0...:
# mkdir [...]
Und das war's schon.
* Applying vdr-epgsearch-2.2.0_makefile.diff ... [ ok ]Unpacking source...
Unpacking vdr-epgsearch-2.2.0.tgz to /var/tmp/portage/media-plugins/vdr-epgsearch-2.2.0/work
Source unpacked in /var/tmp/portage/media-plugins/vdr-epgsearch-2.2.0/work >>> Preparing source in /var/tmp/portage/media-plugins/vdr-epgsearch-2.2.0/work/vdr-plugin-epgsearch-2.2.0 ...
Am 12.06.19 um 15:09 schrieb Matthias Hanft:
* Applying vdr-epgsearch-2.2.0-no_erase_of_iterator_inside_loop.patch ... >> 2 out of 2 hunks FAILED -- saving rejects to file conflictcheck.c.rej
Du kannst in dieser Datei mal nachgucken, was mit deinem Patch nicht >funktionierte. Aus irgendeinem Grund lsst er sich nicht auf den
Quelltext anwenden.
Der Workspace msste noch in /var/tmp/portage/ liegen, ansonsten noch
ein cooler Trick, um den Workspace zu bekommen:
ebuild filepath.ebuild prepare
erstellt dir in /var/tmp/portage (oder was du als PORTAGE_TMPDIR
konfiguriert hast) den Workspace, so dass du selber darauf rumpatchen
kannst (prepare im Gegensatz zu unpack wendet auch Gentoo Patches
bereits an sowie deine Patches aus /etc/portage/patches).
Um dann einen neuen Patch zu erstellen, ist git sehr hilfreich, wie in
diesem Howto erklrt:
https://wiki.gentoo.org/wiki/Patches
Damit solltest du deinen Patch ins korrekte Format bringen knnen, so
dass er sich auch anwenden lsst.
* Applying vdr-epgsearch-2.2.0-no_erase_of_iterator_inside_loop.patch ...
2 out of 2 hunks FAILED -- saving rejects to file conflictcheck.c.rej
* Applying vdr-epgsearch-2.2.0-no_erase_of_iterator_inside_loop.patch ... >> 2 out of 2 hunks FAILED -- saving rejects to file conflictcheck.c.rejDu kannst in dieser Datei mal nachgucken, was mit deinem Patch nicht funktionierte. Aus irgendeinem Grund lsst er sich nicht auf den
Quelltext anwenden.
Der Workspace msste noch in /var/tmp/portage/ liegen, ansonsten noch
ein cooler Trick, um den Workspace zu bekommen: [...]
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 285 |
Nodes: | 16 (2 / 14) |
Uptime: | 64:31:52 |
Calls: | 6,488 |
Calls today: | 1 |
Files: | 12,096 |
Messages: | 5,274,799 |