LINUX.ORG.RU

Описать процедуру удаления в ебилде

 , , ,


0

2

По определенным причинам нужно объявить свою процедуру удаления в ебилде. Как это можно сделать? При не очень внимательном просмотре devmanual.gentoo.org я этого не увидел.

★★★★★

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

Нужно снести именно директорию с программой, удаление по файлам по определенным причинам не устраивает.
Надо что-то типа:

pkg_remove() {
        rm -rf /opt/proga
}

DeadEye ★★★★★
() автор топика
Последнее исправление: DeadEye (всего исправлений: 1)

Там нет удаления. Он при установке ставит в песочницу и записывает список файлов, после чего переносит на реальную систему. А при удалении грохает по списку (кроме каталога /etc)

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

самое близкое, что я нашёл на devmanual - это функция pkg_prerm

правда, я не знаю, как поведёт себя portage при удалении атома, содержимого которого в ФС уже нет

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

(кроме каталога /etc)

вот это, кстати, раздражает

можно ли как-нибудь заставить portage удалять и конфиги тоже?

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

У проги включено обновление автоматом, а вручную апдейты ставить и ебилд переписывать мне влом. Прога из бинарей.

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

Надеюсь это ебилд для личного пользования и ни в какие официальные оверлеи он не планируется? А то выглядит идея не очень...

Тем не менее - подобная функция есть и называется она pkg_postrm

Вызывается после того как будут удалены все файлы, установленные ебилдом(за исключением конфигов из CONFIG_PROTECT и директорий, установленных через keepdir)

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

У проги включено обновление автоматом

зачем тогда вообще пытаться вводить её под юрисдикцию portage и писать ебилд?

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

ебилд для личного пользования

Да, т.к. большинство ставит ту же самую прогу, но из сорцов. А мне компилять тяжело, поэтому я бинарь пользую.

postrm

О, для моих нужд хватает будто бы. Спасибо.

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

У меня почти все бинарнопроги под ебилдами, так эту тоже надо.

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

Хм, блин, а ведь точно. Надо будет поменять вызов mkdir на dodir. Спасибо.

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

Portage же записывает все действия при установке чего-либо?

Всё что попадает в ${PORTAGE_TMPDIR}/category/package/image и переносится 1 в 1 в ${ROOT} - да, записывается.

${PORTAGE_TMPDIR} по дефолту /var/tmp/portage, ${ROOT} - '/'

Список установленного для пакета category/package можно глянуть в /var/db/pkg/category/package/CONTENTS

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

А что надо сделать? Мне ближе порты FreeBSD, но независимо от очевидно что если нужны скрипты, что-то делается не так.

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

Проблема уже решена, спасибо.

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

можно ли как-нибудь заставить portage удалять и конфиги тоже?

Вроде как можно, там есть какая-то переменная для make.conf, в которой исключения эти прописаны. К сожалению не помню точного названия.

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

ебилд переписывать мне влом

Делай версию 9999, и обновляй smart-live-rebuild.

iVS ★★★★★
()
6 декабря 2015 г.
Ответ на: комментарий от xorik

xorik,не выручиш такая проблемма как линукс снести, я здесь нуб полный ,ставел операционку так как небыло винды теперь снести немагу и установщик виндовс не запускается и в биос не заходит,вытаскиваю hdd виндовс с dvd запускается вставляю жесткий прям при включеном пк установщик не видит hdd подскажи чтонибуть

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

Да блин, я вообще не к тебе обращаюсь.

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