Установка портажа из своего архива.
Гость 2 мая, 2007 - 13:46
Поместил свой архивчик в /usr/portage/distfile/mplayer.tar.gz,
что нужно сделать чтобы emerge mplayer не ругался на раличие в хешах?
»
- Для комментирования войдите или зарегистрируйтесь
добавить
добавить параметр --digest при emerge
FEATURES="digest" emerge
FEATURES="digest" emerge mplayer
Что то не припомню чтобы у емерджа был параметр "--digest", и в мане ничего такого нет, скорее всего имелось ввиду то что я написал.
Вот описание из мана по make.conf:
digest - Autogenerate digests for packages when running the emerge(1) command. If the assume-digests feature is also enabled then existing SRC_URI digests will be reused whenever they are available.
поидее должна перезаписать существующие дайджесты новыми и потом не ругаться, но это будет до первой синхронизации дерева портеджей.
Если хочеш чтобы постоянно твой брался похоже оверлей - лучший выбор.
--digest
--digest работает.
Спасибо.
--digest не работает
Раньше параметр --digest работал, но вот с некоторых пор перестал. emerge выдает вот такое сообщение.
*
* The FEATURES=digest setting can prevent corruption from being noticed.
* The `repoman manifest` command is the preferred way to generate
* manifests and it is capable of doing an entire repository or category at
* once.
*
Подскажите, как теперь устанавливать из своего архива?
или ebuild --force --manifest
или ebuild --force --manifest или repoman manifest Причём emerge совтует именно repoman
а цель? может
а цель? может того-же результата можно добиться другим, более вменяемым способом?
Изменил пару
Изменил пару файлов.
Каким?
--digest не работает
Раньше параметр --digest работал, но вот с некоторых пор перестал. emerge выдает вот такое сообщение.
*
* The FEATURES=digest setting can prevent corruption from being noticed.
* The `repoman manifest` command is the preferred way to generate
* manifests and it is capable of doing an entire repository or category at
* once.
*
Подскажите, как теперь устанавливать из своего архива?
.
sudo ebuild /usr/local/portage/zzz-zzz/xxx/xxx-0.9.ebuild manifest
sudo emerge xxx
Это подпись, которую невозможно истолковать неправильно
downloading
Наверное не совсем то хотел спросить.
У меня подключен репозиторий oss (open sound system). Я кое-что поправил в исходниках, собрал обратно в архив и положил в /usr/portage/distfiles.
Теперь при попытке переустановить пакет emerge проверяет контрольную сумму и естественно находит разницу. Далее он качает пакет с репозитория, а мне надо установить из /usr/portage/distfiles.
Раньше мне помогало emerge --digest.
А что сейчас делать?
.
Теперь положи ebuild в /usr/local/portage,
сделай manifest и всё получится: в локальном манифесте будет другая контрольная сумма.
Может быть (но не уверен) потребуется "слегка увеличить версию", скажем, с xxx-0.9-r5 до xxx-0.9-r6, тогда нужно будет подправить и ebuild и имя тарбола
Ещё можно пользоваться epatch, тогда не надо будет "собирать обратно в архив", но я не пробовал.
Это подпись, которую невозможно истолковать неправильно
downloading
При попытке создать ebuild происходит попытка закачать файл
dbeketov oss # ls -l
total 12
drwxr-xr-x 2 root root 4096 2009-04-17 15:13 files
-rw-r--r-- 1 root root 2178 2009-04-17 15:13 oss-4.0.1016.ebuild
-rw-r--r-- 1 root root 1717 2009-04-17 15:13 oss-4.1.1052.ebuild
dbeketov oss # pwd
/usr/portage/local/layman/oss-overlay/media-sound/oss
dbeketov oss # ebuild oss-4.1.1052.ebuild manifest
>>> Downloading 'http://www.4front-tech.com/developer/sources/stable/gpl/oss-v4.1-build1052-src-gpl.tar.bz2'
--2009-05-29 11:45:38-- http://www.4front-tech.com/developer/sources/stable/gpl/oss-v4.1-build1052-src-gpl.tar.bz2
Resolving www.4front-tech.com... failed: Temporary failure in name resolution.
wget: unable to resolve host address `www.4front-tech.com'
!!! Couldn't download 'oss-v4.1-build1052-src-gpl.tar.bz2'. Aborting.
!!! Fetch failed for oss-v4.1-build1052-src-gpl.tar.bz2, can't update Manifest
???
RESTRICT="fetch" в ебуилд
RESTRICT="fetch" в ebuild
или
SRC_URL убрать
Версию ебилда править не надо, если есть 2 одинаковой версии, первым сработает из оверлея
P.S 2-й способ не пробовал
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
Контрольная сумма
fetch не помогает
!!! media-sound/oss-4.1.1052 has fetch restriction turned on.
!!! This probably means that this ebuild's files must be downloaded
!!! manually. See the comments in the ebuild for more information.
если оставить mirror, но убрать SRC_URL, то происходит следующее:
*
* ERROR: media-sound/oss-4.1.1052 failed.
* Call stack:
* ebuild.sh, line 48: Called src_unpack
* environment, line 2451: Called unpack ''
* ebuild.sh, line 331: Called die
* The specific snippet of code:
* [ -z "$*" ] && die "Nothing passed to the 'unpack' command"
* The die message:
* Nothing passed to the 'unpack' command
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/media-sound/oss-4.1.1052/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/media-sound/oss-4.1.1052/temp/environment'.
* This ebuild is from a repository named 'majeru'
*
Я собираю архив так: tar jcvf oss-v4.1-build1052-src-gpl.tar.bz2 oss-v4.1-build1052-src-gpl
Может надо как-то по-другому?
Если система хочет скачать
Если система хочет скачать новую версию пакета - значит она не находит старую, подправленную тобой - имена не совпадают.
Хотя, думается, изначально был выбран неверный подход. Рспакуй то что ты сделал, и оригинальную версию - и сделай патч. Потом скопируй софтинку в локальный оверлей и поправь ебилд чтобы он применял патч.
выложите ебилд и патч, плиз.
выложите ебилд и патч, плиз.
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
4front-tech
Взять ebuild можно тут
http://hg.atheme.org/users/majeru/portage-overlay/file/6302ab8b9847/media-sound/oss/oss-4.1.1052.ebuild#l1
Я сделал следующее:
Добавил строку в /etc/make.conf
PORTDIR_OVERLAY="/usr/local/portage/overlays"
Создал каталог /usr/local/portage/overlays
Сделал cd /usr/portage/portage/overlays
Потом hg clone hg.atheme.org/users/majeru/portage-overlay oss-overlay
И, наконец, emerge oss
После этого распаковал /usr/distfiles/oss-v4.1-build1052-src-gpl.tar.bz2
Изменил сишник, можно просто в любой сишник добавить, например, printf("<Что-нибудь>");
Запаковал обратно и положил.
Поправил ebuild как написали выше и перегенерил manifest.
После этого emerge его не мог распаковать.
У меня нет конкретного патча, просто пробую что-нибудь изменить и проверить результат.
Более подробная инфа об подключении репозитория oss тут:
http://4front-tech.com/forum/viewtopic.php?t=2269&postdays=0&postorder=asc&start=0
http://pastebin.ca/1441317
http://pastebin.ca/1441317
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
а почему появляется надпись
а почему появляется надпись при установке любых пакетов с инета
* The FEATURES=digest setting can prevent corruption from being noticed.
* The `repoman manifest` command is the preferred way to generate
* manifests and it is capable of doing an entire repository or category at
* once.
как её убрать?
.
Так как при FEATURES=digest происходит Autogeneration, то фраза "The FEATURES=digest setting can prevent corruption from being noticed." справедлива.
Попробуйте убрать digest из FEATURES в /etc/make.conf и убедитесь, что упомянутое вами предупреждение больше не появляется.
а эта строка - это просто подпись