ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Получение списка пакетов по зависимостям rpm
@ 2012-05-26 11:02 Vitaly Lipatov
  2012-05-26 12:13 ` Igor Vlasenko
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Vitaly Lipatov @ 2012-05-26 11:02 UTC (permalink / raw)
  To: ALT Devel discussion list


Возникла необходимость по списку зависимостей бинарного пакета 
(получаемого через rpm --requires) получить
список названий пакетов, удовлетворяющих эти зависимости.
В сущности, это происходит при установке пакета с помощью hsh-install: 
там вызывается rpmi для установки пакетов по перечню.

Ну то есть надо в ответ на rpm-зависимость 'perl(Text/ParseWords.pm)' 
получить perl-base.

Как получить такой список снаружи, есть ли доступный способ?


-- 
С уважением,
Виталий Липатов,
Etersoft


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-26 11:02 [devel] Получение списка пакетов по зависимостям rpm Vitaly Lipatov
@ 2012-05-26 12:13 ` Igor Vlasenko
  2012-05-27 18:36 ` Paul Wolneykien
  2012-05-27 18:45 ` Dmitry V. Levin
  2 siblings, 0 replies; 10+ messages in thread
From: Igor Vlasenko @ 2012-05-26 12:13 UTC (permalink / raw)
  To: ALT Linux Team development discussions; +Cc: Vitaly Lipatov

On Sat, May 26, 2012 at 03:02:46PM +0400, Vitaly Lipatov wrote:
> Возникла необходимость по списку зависимостей бинарного пакета
> (получаемого через rpm --requires) получить
> список названий пакетов, удовлетворяющих эти зависимости.
> В сущности, это происходит при установке пакета с помощью
> hsh-install: там вызывается rpmi для установки пакетов по перечню.
> 
> Ну то есть надо в ответ на rpm-зависимость
> 'perl(Text/ParseWords.pm)' получить perl-base.
> 
> Как получить такой список снаружи, есть ли доступный способ?

Я для buildreq-src и робота импорта извратился с помощью repocop-а:

Спациальный отчет repocop-а публикует текстовую базу данных,
включающую в себя, в частности, таблицы разрешения Provides, на
http://repocop.altlinux.org/pub/repocop/data/repocop-distromap-db-sisyphus-current.tar.gz
а утилита distromap-update-repocop-db-altlinux-sisyphus
из пакета perl-DistroMap ее скачивает в ~/.cache/distrodb/.
Для доступа к этой базе использую класс из perl-DistroMap.
Могу написать утилитку - pipe filter, которая бы делала
преобразование из командной строки.



-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-26 11:02 [devel] Получение списка пакетов по зависимостям rpm Vitaly Lipatov
  2012-05-26 12:13 ` Igor Vlasenko
@ 2012-05-27 18:36 ` Paul Wolneykien
  2012-05-28 15:10   ` Igor Vlasenko
  2012-05-27 18:45 ` Dmitry V. Levin
  2 siblings, 1 reply; 10+ messages in thread
From: Paul Wolneykien @ 2012-05-27 18:36 UTC (permalink / raw)
  To: ALT Linux Team development discussions

26.05.2012 15:02, Vitaly Lipatov написал:
>
> Возникла необходимость по списку зависимостей бинарного пакета
> (получаемого через rpm --requires) получить
> список названий пакетов, удовлетворяющих эти зависимости.
> В сущности, это происходит при установке пакета с помощью hsh-install:
> там вызывается rpmi для установки пакетов по перечню.
>
> Ну то есть надо в ответ на rpm-зависимость 'perl(Text/ParseWords.pm)'
> получить perl-base.
>
> Как получить такой список снаружи, есть ли доступный способ?
>
>

http://www.altlinux.org/Check-unmets

Базовый инструментарий

   Я всё это немного написал и немного пользовался. И оно даже работало. 
:) Буду рад, если окажется полезным ещё кому-то, кроме меня. ;)

   Для поиска по исходным пакетам и по файлам (наравне с именами 
пакетов) нужно немного модифицировать libapt и AptPkg 
(http://www.altlinux.org/AptResolve.pm).


     Паша.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-26 11:02 [devel] Получение списка пакетов по зависимостям rpm Vitaly Lipatov
  2012-05-26 12:13 ` Igor Vlasenko
  2012-05-27 18:36 ` Paul Wolneykien
@ 2012-05-27 18:45 ` Dmitry V. Levin
  2012-05-28 15:15   ` Igor Vlasenko
  2012-06-04 23:43   ` Vitaly Lipatov
  2 siblings, 2 replies; 10+ messages in thread
From: Dmitry V. Levin @ 2012-05-27 18:45 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 2082 bytes --]

On Sat, May 26, 2012 at 03:02:46PM +0400, Vitaly Lipatov wrote:
> 
> Возникла необходимость по списку 
> зависимостей бинарного пакета 
> (получаемого через rpm --requires) получить
> список названий пакетов, 
> удовлетворяющих эти зависимости.
> В сущности, это происходит при установке 
> пакета с помощью hsh-install: там вызывается 
> rpmi для установки пакетов по перечню.

То, что делает hsh-install, сводится к простой операции, которая не
требует создания hasher chroot и может быть выполнена отдельно.

> Ну то есть надо в ответ на rpm-зависимость 
> 'perl(Text/ParseWords.pm)' получить perl-base.
> 
> Как получить такой список снаружи, есть 
> ли доступный способ?

$ mkaptbox -f && ~/hasher/aptbox/apt-get install -qqqy -oRPM::PM=external -oDir::Bin::rpm=hsh-rpmi-print-files 'perl(Text/ParseWords.pm)'
/ALT/Sisyphus/noarch/RPMS.classic/setup-2.2.14-alt1.noarch.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/filesystem-2.3.11-alt1.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/glibc-preinstall-2.11.3-alt8.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/glibc-core-2.11.3-alt8.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/bzlib-1.0.6-alt3.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/libgcc1-4.5.3-alt3.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/glibc-pthread-2.11.3-alt8.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/libbeecrypt7-4.2.1-alt7.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/libdb4.7-4.7.25-alt7.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/libelf-0.153-alt1.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/liblzma-5.0.3-alt1.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/libpopt-1.14-alt6.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/zlib-1.2.5-alt3.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/sh-3.2.51-alt1.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/libselinux-2.0.98-alt2.1.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/librpm-4.0.4-alt100.51.x86_64.rpm
/ALT/Sisyphus/x86_64/RPMS.classic/perl-base-5.14.2-alt4.x86_64.rpm

Это, конечно, не список названий пакетов, а список файлов пакетов,
образующих замыкание. 


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-27 18:36 ` Paul Wolneykien
@ 2012-05-28 15:10   ` Igor Vlasenko
  0 siblings, 0 replies; 10+ messages in thread
From: Igor Vlasenko @ 2012-05-28 15:10 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Sun, May 27, 2012 at 10:36:36PM +0400, Paul Wolneykien wrote:
> http://www.altlinux.org/Check-unmets
> 
> Базовый инструментарий
> 
>   Я всё это немного написал и немного пользовался. И оно даже
> работало. :) Буду рад, если окажется полезным ещё кому-то, кроме
> меня. ;)
> 
>   Для поиска по исходным пакетам и по файлам (наравне с именами
> пакетов) нужно немного модифицировать libapt и AptPkg
> (http://www.altlinux.org/AptResolve.pm).

Спасибо, очень интересные штуки.

-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-27 18:45 ` Dmitry V. Levin
@ 2012-05-28 15:15   ` Igor Vlasenko
  2012-05-28 21:15     ` Michael Shigorin
  2012-06-04 23:43   ` Vitaly Lipatov
  1 sibling, 1 reply; 10+ messages in thread
From: Igor Vlasenko @ 2012-05-28 15:15 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Такое хорошо бы где-то на вики собирать.
Раздел "Полезные Совыеты".
On Sun, May 27, 2012 at 10:45:33PM +0400, Dmitry V. Levin wrote:
> $ mkaptbox -f && ~/hasher/aptbox/apt-get install -qqqy -oRPM::PM=external -oDir::Bin::rpm=hsh-rpmi-print-files 'perl(Text/ParseWords.pm)'
> /ALT/Sisyphus/noarch/RPMS.classic/setup-2.2.14-alt1.noarch.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/filesystem-2.3.11-alt1.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/glibc-preinstall-2.11.3-alt8.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/glibc-core-2.11.3-alt8.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/bzlib-1.0.6-alt3.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/libgcc1-4.5.3-alt3.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/glibc-pthread-2.11.3-alt8.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/libbeecrypt7-4.2.1-alt7.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/libdb4.7-4.7.25-alt7.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/libelf-0.153-alt1.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/liblzma-5.0.3-alt1.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/libpopt-1.14-alt6.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/zlib-1.2.5-alt3.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/sh-3.2.51-alt1.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/libselinux-2.0.98-alt2.1.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/librpm-4.0.4-alt100.51.x86_64.rpm
> /ALT/Sisyphus/x86_64/RPMS.classic/perl-base-5.14.2-alt4.x86_64.rpm
> 
> Это, конечно, не список названий пакетов, а список файлов пакетов,
> образующих замыкание.

-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-28 15:15   ` Igor Vlasenko
@ 2012-05-28 21:15     ` Michael Shigorin
  0 siblings, 0 replies; 10+ messages in thread
From: Michael Shigorin @ 2012-05-28 21:15 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Mon, May 28, 2012 at 06:15:31PM +0300, Igor Vlasenko wrote:
> Такое хорошо бы где-то на вики собирать.

http://www.altlinux.org/Hasher/Tips

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-05-27 18:45 ` Dmitry V. Levin
  2012-05-28 15:15   ` Igor Vlasenko
@ 2012-06-04 23:43   ` Vitaly Lipatov
  2012-06-14 21:54     ` Vitaly Lipatov
  1 sibling, 1 reply; 10+ messages in thread
From: Vitaly Lipatov @ 2012-06-04 23:43 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Dmitry V. Levin писал 27.05.2012 22:45:
...
> $ mkaptbox -f && ~/hasher/aptbox/apt-get install -qqqy
> -oRPM::PM=external -oDir::Bin::rpm=hsh-rpmi-print-files
> 'perl(Text/ParseWords.pm)'
...

> Это, конечно, не список названий пакетов, а список файлов пакетов,
> образующих замыкание.
Спасибо, то, что нужно А что делать с
~/hasher/aptbox/apt-get install -qqqy -oRPM::PM=external 
-oDir::Bin::rpm=hsh-rpmi-print-files foomatic-db-engine /usr/bin/lpstat
The following packages have unmet dependencies:
   lprng: Conflicts: foomatic-db-engine
E: Broken packages


-- 
С уважением,
Виталий Липатов,
Etersoft


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-06-04 23:43   ` Vitaly Lipatov
@ 2012-06-14 21:54     ` Vitaly Lipatov
  2012-06-14 22:41       ` Dmitry V. Levin
  0 siblings, 1 reply; 10+ messages in thread
From: Vitaly Lipatov @ 2012-06-14 21:54 UTC (permalink / raw)
  To: devel; +Cc: ldv

Vitaly Lipatov писал 05.06.2012 03:43:
> Dmitry V. Levin писал 27.05.2012 22:45:
> ...
>> $ mkaptbox -f && ~/hasher/aptbox/apt-get install -qqqy
>> -oRPM::PM=external -oDir::Bin::rpm=hsh-rpmi-print-files
>> 'perl(Text/ParseWords.pm)'
> ...
>
>> Это, конечно, не список названий пакетов, а список файлов пакетов,
>> образующих замыкание.
> Спасибо, то, что нужно А что делать с
> ~/hasher/aptbox/apt-get install -qqqy -oRPM::PM=external
> -oDir::Bin::rpm=hsh-rpmi-print-files foomatic-db-engine
> /usr/bin/lpstat
> The following packages have unmet dependencies:
>   lprng: Conflicts: foomatic-db-engine
> E: Broken packages
Помогите, пожалуйста.
Я так понимаю, что /usr/bin/lpstat вызывает lprng к установке, а для 
отсутствия конфликта с foomatic-db-engine
нужно, чтобы /usr/bin/lpstat разрешалось в cups.
Есть какой-то выход, или нужно добавить явную зависимость на cups в 
пакет?

-- 
С уважением,
Виталий Липатов,
Etersoft


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [devel] Получение списка пакетов по зависимостям rpm
  2012-06-14 21:54     ` Vitaly Lipatov
@ 2012-06-14 22:41       ` Dmitry V. Levin
  0 siblings, 0 replies; 10+ messages in thread
From: Dmitry V. Levin @ 2012-06-14 22:41 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1188 bytes --]

On Fri, Jun 15, 2012 at 01:54:15AM +0400, Vitaly Lipatov wrote:
> Vitaly Lipatov писал 05.06.2012 03:43:
> >Dmitry V. Levin писал 27.05.2012 22:45:
> >...
> >>$ mkaptbox -f && ~/hasher/aptbox/apt-get install -qqqy
> >>-oRPM::PM=external -oDir::Bin::rpm=hsh-rpmi-print-files
> >>'perl(Text/ParseWords.pm)'
> >...
> >
> >>Это, конечно, не список названий 
> >>пакетов, а список файлов пакетов,
> >>образующих замыкание.
> >Спасибо, то, что нужно А что делать с
> >~/hasher/aptbox/apt-get install -qqqy -oRPM::PM=external
> >-oDir::Bin::rpm=hsh-rpmi-print-files foomatic-db-engine
> >/usr/bin/lpstat
> >The following packages have unmet dependencies:
> >  lprng: Conflicts: foomatic-db-engine
> >E: Broken packages
> Помогите, пожалуйста.
> Я так понимаю, что /usr/bin/lpstat вызывает lprng к 
> установке, а для отсутствия конфликта с 
> foomatic-db-engine
> нужно, чтобы /usr/bin/lpstat разрешалось в cups.
> Есть какой-то выход, или нужно добавить 
> явную зависимость на cups в пакет?

Есть варианты.  Например, можно поменять приоритеты с пом.
-oDir::Etc::PkgPriorities=/path/to/pkgpriorities
И в этот свой pkgpriorities добавить пакет cups.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-06-14 22:41 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-26 11:02 [devel] Получение списка пакетов по зависимостям rpm Vitaly Lipatov
2012-05-26 12:13 ` Igor Vlasenko
2012-05-27 18:36 ` Paul Wolneykien
2012-05-28 15:10   ` Igor Vlasenko
2012-05-27 18:45 ` Dmitry V. Levin
2012-05-28 15:15   ` Igor Vlasenko
2012-05-28 21:15     ` Michael Shigorin
2012-06-04 23:43   ` Vitaly Lipatov
2012-06-14 21:54     ` Vitaly Lipatov
2012-06-14 22:41       ` Dmitry V. Levin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git