LINUX.ORG.RU

Пердоллинг с ебилдами в Gentoo

 , , , ,


0

1

Приффки, как делиффки?

Имеется проблема в виде отсутствия в генте пакетов вина с staging+nine. Решил запилить свой оверлей с блэкджеком и шлюхами с данными плюшками, но что-то пошло не так, а именно - процесс патчинга вина найном. То есть в ебилде прописано, что патчить, но что-то идёт не так - некоторые файлы не находятся патчем.

Как победить это? Если что, оверлей тут, ебилд в нём (ваш кэп).

Кусок лога сборки:

>>> Source unpacked in /var/tmp/portage/app-emulation/wine-1.9.3/work
>>> Preparing source in /var/tmp/portage/app-emulation/wine-1.9.3/work/wine-1.9.3 ...
patching file configure.ac
patching file Makefile.in
patching file d3d9-nine.spec
patching file d3d9_main.c
patching file d3dadapter9.c
patching file d3dadapter9.h
patching file dri3.c
patching file dri3.h
patching file libd3d9-nine.def
patching file present.c
patching file present.h
patching file version.rc
patching file Makefile.in
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file Makefile.in.rej
can't find file to patch at input line 4245
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|#diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
|index 5bcc03e..46082f3 100644
|--- a/dlls/ntdll/loader.c
|+++ b/dlls/ntdll/loader.c
--------------------------
File to patch: 

mradermaxlol
() автор топика

скачай сорс, наложи все патчи, полностью подготовь к компиляции, как если бы это был обычный пакет и емержи по ебилду, зачем тебе патчи через ебилд?

kep
()

Nine+staging вместе через раз не собирается просто потому, что они вносят несовместимые изменения или базируются на разных версиях вайна. Собирай два вайна параллельно.

anonymous
()
Ответ на: комментарий от mradermaxlol

а SRC_URI=«» укажи прямую ссылку на дропбокс или гитхаб, куда зальешь подготовленный архив.

kep
()

некоторые файлы не находятся патчем

значит патч не канает. ищи/делай новый патч, или правь текущий

Deleted
()
Ответ на: комментарий от anonymous

Ну или ещё можно вручную код править, лол.

anonymous
()
Ответ на: комментарий от mradermaxlol

Зачем ты мне это показываешь, копипасть себе в ебилд.

anonymous
()
Ответ на: комментарий от Novell-ch

Спасибо. Кажется, дальше будет только копипаст... Чекну.

mradermaxlol
() автор топика

Как победить это?

Равняй руки.

iVS ★★★★★
()

Школьник, но не шкальник

Кальник.

anonymous
()
Ответ на: комментарий от tailgunner

Да ни разу. Как раз Ъ было бы держать в директории с ебилдами files с патчами внутри и накладывать их при сборке, но почему-то kep даёт вредные советы.

beresk_let ★★★★★
()
Ответ на: комментарий от tailgunner

Это проще, зачем создавать себе проблемы там, где и их нет.

kep
()
Ответ на: комментарий от beresk_let

kep даёт вредные советы.

Да ни разу.

У него локальный оверлей, чего ради мудохаться с патчеванием, если это ебилд на один раз? В следующей версии совсем всё по другому костыли-костылики костылять придется.

Это грамотный совет как качественно и по-быстрому емержнуть пакет.

kep
()
Ответ на: комментарий от mradermaxlol

то, что ты его вынес в публичный гитхаб, ещё не значит, что он кому-либо нужен и понадобится

Deleted
()
Ответ на: комментарий от kep

по-быстрому

Да.

качественно

Нет.

Насколько я понял, ТС хочет нанести окружающим немного пользы и решить ту проблему, с которой столкнулся сам — это хороший, годный подход. А ты ему советуешь костыльный способ, который работает один раз и пригодится только ему самому, потому что сборочку от васяна с левого гитхаба качать никто не будет.

beresk_let ★★★★★
()
Ответ на: комментарий от anonymous

Не совсем.

Да, кстати, вроде починил и оно даже собирается. Буду ждать.

mradermaxlol
() автор топика

Всё, свой оверлей (рабочий) со всеми необходимостями сделан и выложен в ентырнеты. Тема закрыта, всем спасибо.

mradermaxlol
() автор топика

Можно поставить playonlinux, в нем свои сборочки вайна, там есть 1.9

loz ★★★★★
()

Самое простое - это ./configure --prefix=/usr --disable-tests. Это позволит получить Wine здесь и сейчас! (Удали Wine, установленный из ебилда, перед установкой в обход emerge). После make install сделай make clean, и не удаляй каталог с файлами. Потом сделаешь make uninstall, когда версия устареет.

Критиканам: вы можете сколько угодно говорить про каноничность и rm -rf /usr/ lib, но когда нужно протестировать много патчей, сборка вручную подходит гораздо лучше.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

из-за тебя система слетела, пишу с телефона, как теперь восстановить, записывать флешку с телефона среди ночи, а?

anonymous
()
Ответ на: комментарий от ZenitharChampion

Накатываю патчи в коротком самописном ебилде и обоссываю любителей

не удаляй каталог с файлами. Потом сделаешь make uninstall

anonymous
()
Ответ на: комментарий от Deleted

Хоспаде, люди, вы что, слепые, что ли? Нужен был свой оверлей для портажки, где был бы только один ебилд.

К тому же, плайонлинух тут не подходит, ибо нужен стагинг + найн + последняя версия вина, а не одно из вышеперечисленных.

Большой привет.

mradermaxlol
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.