ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] golang
@ 2020-05-01 12:27 Alexey Appolonov
  2020-05-01 20:15 ` Vladimir D. Seleznev
  0 siblings, 1 reply; 9+ messages in thread
From: Alexey Appolonov @ 2020-05-01 12:27 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Всем привет!

Интересно, зачем пакету golang нужен libselinux-utils? (Смотрю в p9)


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

* Re: [devel] golang
  2020-05-01 12:27 [devel] golang Alexey Appolonov
@ 2020-05-01 20:15 ` Vladimir D. Seleznev
  2020-05-02 10:47   ` Alexey V. Vissarionov
  0 siblings, 1 reply; 9+ messages in thread
From: Vladimir D. Seleznev @ 2020-05-01 20:15 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Fri, May 01, 2020 at 03:27:22PM +0300, Alexey Appolonov wrote:
> Всем привет!
> 
> Интересно, зачем пакету golang нужен libselinux-utils? (Смотрю в p9)

$ rpm -qRp /ALT/repo/p9/release/latest/x86_64/RPMS.classic/golang-1.12.17-alt1.x86_64.rpm |grep selinux
/usr/sbin/selinuxenabled

Это — автоматически сгенерированная зависимость, получившаяся из-за
этого скрипта, упакованного в пакет golang:

$ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled; then

$ rpm -q --whatprovides /usr/sbin/selinuxenabled
libselinux-utils-3.0-alt1.x86_64

-- 
   WBR,
   Vladimir D. Seleznev


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

* Re: [devel] golang
  2020-05-01 20:15 ` Vladimir D. Seleznev
@ 2020-05-02 10:47   ` Alexey V. Vissarionov
  2020-05-02 11:32     ` Pavel Vainerman
  2020-05-02 13:25     ` Vladimir D. Seleznev
  0 siblings, 2 replies; 9+ messages in thread
From: Alexey V. Vissarionov @ 2020-05-02 10:47 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On 2020-05-01 23:15:08 +0300, Vladimir D. Seleznev wrote:

 >> Интересно, зачем пакету golang нужен libselinux-utils? (Смотрю в p9)
 > $ rpm -qRp /ALT/repo/p9/release/latest/x86_64/RPMS.classic/golang-1.12.17-alt1.x86_64.rpm |grep selinux
 > /usr/sbin/selinuxenabled
 > Это — автоматически сгенерированная зависимость,
 > получившаяся из-за этого скрипта, упакованного в пакет golang:
 > $ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
 >	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
 > -x /usr/sbin/selinuxenabled ] &
 >	/usr/sbin/selinuxenabled; then

И как такое отключать? Очевидно же, что нужды в libselinux-utils у сабжа
нет, несмотря на то, что сабж умеет с ним работать - потому что он умеет
работать и без него.

Нужен какой-то %requires_skip


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


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

* Re: [devel] golang
  2020-05-02 10:47   ` Alexey V. Vissarionov
@ 2020-05-02 11:32     ` Pavel Vainerman
  2020-05-02 11:50       ` Alexey V. Vissarionov
  2020-05-02 13:25     ` Vladimir D. Seleznev
  1 sibling, 1 reply; 9+ messages in thread
From: Pavel Vainerman @ 2020-05-02 11:32 UTC (permalink / raw)
  To: devel

02.05.2020 13:47, Alexey V. Vissarionov пишет:
> On 2020-05-01 23:15:08 +0300, Vladimir D. Seleznev wrote:
> 
>  >> Интересно, зачем пакету golang нужен libselinux-utils? (Смотрю в p9)
>  > $ rpm -qRp /ALT/repo/p9/release/latest/x86_64/RPMS.classic/golang-1.12.17-alt1.x86_64.rpm |grep selinux
>  > /usr/sbin/selinuxenabled
>  > Это — автоматически сгенерированная зависимость,
>  > получившаяся из-за этого скрипта, упакованного в пакет golang:
>  > $ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
>  >	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
>  > -x /usr/sbin/selinuxenabled ] &
>  >	/usr/sbin/selinuxenabled; then
> 
> И как такое отключать? Очевидно же, что нужды в libselinux-utils у сабжа
> нет, несмотря на то, что сабж умеет с ним работать - потому что он умеет
> работать и без него.
> 
> Нужен какой-то %requires_skip
> 
> 

Не этот?

%add_findreq_skiplist %_datadir/%name/*.sh



-- 
Pavel Vainerman


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

* Re: [devel] golang
  2020-05-02 11:32     ` Pavel Vainerman
@ 2020-05-02 11:50       ` Alexey V. Vissarionov
  2020-05-02 12:53         ` alexei
  0 siblings, 1 reply; 9+ messages in thread
From: Alexey V. Vissarionov @ 2020-05-02 11:50 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On 2020-05-02 14:32:11 +0300, Pavel Vainerman wrote:

 >>> Это — автоматически сгенерированная зависимость,
 >>> получившаяся из-за этого скрипта, упакованного в пакет golang:
 >>> $ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
 >>>	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
 >>> -x /usr/sbin/selinuxenabled ] &
 >>>	/usr/sbin/selinuxenabled; then
 >> И как такое отключать? Очевидно же, что нужды в libselinux-utils у
 >> сабжа нет, несмотря на то, что сабж умеет с ним работать - потому
 >> что он умеет работать и без него.
 >> Нужен какой-то %requires_skip
 > Не этот?
 > %add_findreq_skiplist %_datadir/%name/*.sh

Нет - этот отключает поиск зависимостей в файле, причем сразу всех.
Теоретически, пользоваться им можно, но на практике очень трудоемко:
приходится писать Requires: вручную.

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


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


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

* Re: [devel] golang
  2020-05-02 11:50       ` Alexey V. Vissarionov
@ 2020-05-02 12:53         ` alexei
  2020-05-02 12:59           ` Alexey V. Vissarionov
  0 siblings, 1 reply; 9+ messages in thread
From: alexei @ 2020-05-02 12:53 UTC (permalink / raw)
  To: ALT Linux Team development discussions



----- Исходное сообщение -----
> От: "Alexey V. Vissarionov" <gremlin@altlinux.org>
> Кому: "ALT Linux Team development discussions" <devel@lists.altlinux.org>
> Отправленные: Суббота, 2 Май 2020 г 19:50:01
> Тема: Re: [devel] golang

> On 2020-05-02 14:32:11 +0300, Pavel Vainerman wrote:
> 
> >>> Это — автоматически сгенерированная зависимость,
> >>> получившаяся из-за этого скрипта, упакованного в пакет golang:
> >>> $ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
> >>>	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
> >>> -x /usr/sbin/selinuxenabled ] &
> >>>	/usr/sbin/selinuxenabled; then
> >> И как такое отключать? Очевидно же, что нужды в libselinux-utils у
> >> сабжа нет, несмотря на то, что сабж умеет с ним работать - потому
> >> что он умеет работать и без него.
> >> Нужен какой-то %requires_skip
> > Не этот?
> > %add_findreq_skiplist %_datadir/%name/*.sh
> 
> Нет - этот отключает поиск зависимостей в файле, причем сразу всех.
> Теоретически, пользоваться им можно, но на практике очень трудоемко:
> приходится писать Requires: вручную.
> 
> А я предлагаю явно выкидывать из списка зависимостей отдельные пакеты
> или файлы, не отключая автоматический поиск полностью. Тогда основную
> часть поиска по-прежнему будет выполнять робот электрический, а задача
> мейнтейнера сведется к тому, чтобы в отдельных случаях говорить роботу
> "фу! выкинь каку, ищи дальше!".

Тут только просматривать глазками получающиеся зависимости с последующей
зачисткой паразитных таким образом:

%filter_from_requires /^\/etc\/sysconfig\/network/d


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

* Re: [devel] golang
  2020-05-02 12:53         ` alexei
@ 2020-05-02 12:59           ` Alexey V. Vissarionov
  0 siblings, 0 replies; 9+ messages in thread
From: Alexey V. Vissarionov @ 2020-05-02 12:59 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On 2020-05-02 20:53:32 +0800, alexei@taf.ru wrote:

 >>>>> Это — автоматически сгенерированная зависимость,
 >>>>>	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
 >>>>>	/usr/sbin/selinuxenabled; then
 >>>> И как такое отключать? [...] Нужен какой-то %requires_skip
 >>> Не этот?
 >>> %add_findreq_skiplist %_datadir/%name/*.sh
 >> Нет - этот отключает поиск зависимостей в файле, причем сразу
 >> всех. [...] А я предлагаю явно выкидывать из списка зависимостей
 >> отдельные пакеты
 > Тут только просматривать глазками получающиеся зависимости
 > с последующей зачисткой паразитных таким образом:
 > %filter_from_requires /^\/etc\/sysconfig\/network/d

Ага... кажись, оно. При случае проверю.

Кстати, для /etc/sysconfig/network есть пакет sysconfig-network,
входящий в комплект rcnet и состоящий из одного этого файла - он
реально нужен только для настройки имени хоста.


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


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

* Re: [devel] golang
  2020-05-02 10:47   ` Alexey V. Vissarionov
  2020-05-02 11:32     ` Pavel Vainerman
@ 2020-05-02 13:25     ` Vladimir D. Seleznev
  2020-05-02 13:44       ` Dmitry V. Levin
  1 sibling, 1 reply; 9+ messages in thread
From: Vladimir D. Seleznev @ 2020-05-02 13:25 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Sat, May 02, 2020 at 01:47:32PM +0300, Alexey V. Vissarionov wrote:
> On 2020-05-01 23:15:08 +0300, Vladimir D. Seleznev wrote:
> 
>  >> Интересно, зачем пакету golang нужен libselinux-utils? (Смотрю в p9)
>  > $ rpm -qRp /ALT/repo/p9/release/latest/x86_64/RPMS.classic/golang-1.12.17-alt1.x86_64.rpm |grep selinux
>  > /usr/sbin/selinuxenabled
>  > Это — автоматически сгенерированная зависимость,
>  > получившаяся из-за этого скрипта, упакованного в пакет golang:
>  > $ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
>  >	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
>  > -x /usr/sbin/selinuxenabled ] &
>  >	/usr/sbin/selinuxenabled; then
> 
> И как такое отключать? Очевидно же, что нужды в libselinux-utils у сабжа
> нет, несмотря на то, что сабж умеет с ним работать - потому что он умеет
> работать и без него.
> 
> Нужен какой-то %requires_skip

Как уже раньше написали, можно использовать %filter_from_requires.

Для автосгенерированных шелл-зависимостей есть хак с написание перед
командой фиктивной переменной окружения, однако учитывайте, что
некоторые переменные окружения могут повлиять на выполнение программы:

 do
-       if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled; then
+       if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ] && noreq= /usr/sbin/selinuxenabled; then
                if ! cat $se_mount/booleans/allow_execstack | grep -c '^1 1$' >> /dev/null ; then

-- 
   WBR,
   Vladimir D. Seleznev


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

* Re: [devel] golang
  2020-05-02 13:25     ` Vladimir D. Seleznev
@ 2020-05-02 13:44       ` Dmitry V. Levin
  0 siblings, 0 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2020-05-02 13:44 UTC (permalink / raw)
  To: ALT Devel discussion list

On Sat, May 02, 2020 at 04:25:16PM +0300, Vladimir D. Seleznev wrote:
> On Sat, May 02, 2020 at 01:47:32PM +0300, Alexey V. Vissarionov wrote:
> > On 2020-05-01 23:15:08 +0300, Vladimir D. Seleznev wrote:
> > 
> >  >> Интересно, зачем пакету golang нужен libselinux-utils? (Смотрю в p9)
> >  > $ rpm -qRp /ALT/repo/p9/release/latest/x86_64/RPMS.classic/golang-1.12.17-alt1.x86_64.rpm |grep selinux
> >  > /usr/sbin/selinuxenabled
> >  > Это — автоматически сгенерированная зависимость,
> >  > получившаяся из-за этого скрипта, упакованного в пакет golang:
> >  > $ grep "/usr/sbin/selinuxenabled" /usr/lib64/golang/src/make.bash
> >  >	if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a
> >  > -x /usr/sbin/selinuxenabled ] &
> >  >	/usr/sbin/selinuxenabled; then
> > 
> > И как такое отключать? Очевидно же, что нужды в libselinux-utils у сабжа
> > нет, несмотря на то, что сабж умеет с ним работать - потому что он умеет
> > работать и без него.
> > 
> > Нужен какой-то %requires_skip
> 
> Как уже раньше написали, можно использовать %filter_from_requires.
> 
> Для автосгенерированных шелл-зависимостей есть хак с написание перед
> командой фиктивной переменной окружения, однако учитывайте, что
> некоторые переменные окружения могут повлиять на выполнение программы:
> 
>  do
> -       if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled; then
> +       if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack -a -x /usr/sbin/selinuxenabled ] && noreq= /usr/sbin/selinuxenabled; then
>                 if ! cat $se_mount/booleans/allow_execstack | grep -c '^1 1$' >> /dev/null ; then

Раньше или позже этот код перестанет работать правильно, потому что
местоположение /usr/sbin/selinuxenabled не вечно, а
хак с переменной в любой момент может оказаться исправленным.

Надёжнее будет работать следующий подход:

selinuxenabled=selinuxenabled
if [ -d $se_mount -a -f $se_mount/booleans/allow_execstack ] && type $selinuxenabled >/dev/null 2>&1 && $selinuxenabled; then


-- 
ldv


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

end of thread, other threads:[~2020-05-02 13:44 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-01 12:27 [devel] golang Alexey Appolonov
2020-05-01 20:15 ` Vladimir D. Seleznev
2020-05-02 10:47   ` Alexey V. Vissarionov
2020-05-02 11:32     ` Pavel Vainerman
2020-05-02 11:50       ` Alexey V. Vissarionov
2020-05-02 12:53         ` alexei
2020-05-02 12:59           ` Alexey V. Vissarionov
2020-05-02 13:25     ` Vladimir D. Seleznev
2020-05-02 13:44       ` 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