История изменений
Исправление Shushundr, (текущая версия) :
А зачем они так сделали?
https://github.com/gentoo/gentoo/blob/master/profiles/base/package.use.force#L58-L62
# Arthur Zamarin <arthurzam@gentoo.org> (2022-01-13)
# Force to use installed openjdk{,-bin} for bootstrapping
dev-java/openjdk:11 system-bootstrap
dev-java/openjdk:17 system-bootstrap
dev-java/openjdk:21 system-bootstrap
Если этот флаг всегда включен, то он, получается, в принципе не нужен.
Вот если бы они с его помощью могли бы предотвращать циклическую зависимость, это было бы интересно.
DEPEND="
...
|| (
system-bootstrap ( dev-java/openjdk-bin:${SLOT} )
!system-bootstrap ( dev-java/openjdk:${SLOT} )
)
"
но именно так оно не сработает. Надо как-то по-другому.
Есть alternatives и Virtual Packages пакет dev-java/openjdk мог бы зависеть от virtual/openjdk, а представлять интерфейс этого пакета мог бы как dev-java/openjdk-bin, так и dev-java/openjdk.
Там прям с virtuals есть отсылка на установку -bin пакетов в качестве альтернативы.
В общем, мне не ясно, как сделать наилучшим образом.
Например, если в world прописана установка virtual/пакета, то в качестве реализации первой будет установлена первая альтернатива? Или это не определено? GLEP 37 невнятный, в нём непонятно, можно ли/нужно ли прописывать «+system-bootstrap» в IUSE для виртуального пакета.
Исправление Shushundr, :
А зачем они так сделали?
https://github.com/gentoo/gentoo/blob/master/profiles/base/package.use.force#L58-L62
# Arthur Zamarin <arthurzam@gentoo.org> (2022-01-13)
# Force to use installed openjdk{,-bin} for bootstrapping
dev-java/openjdk:11 system-bootstrap
dev-java/openjdk:17 system-bootstrap
dev-java/openjdk:21 system-bootstrap
Если этот флаг всегда включен, то он, получается, в принципе не нужен.
Вот если бы они с его помощью могли бы предотвращать циклическую зависимость, это было бы интересно.
DEPEND="
...
|| (
system-bootstrap ( dev-java/openjdk-bin:${SLOT} )
!system-bootstrap ( dev-java/openjdk:${SLOT} )
)
"
но именно так оно не сработает. Надо как-то по-другому.
Есть alternatives и Virtual Packages пакет dev-java/openjdk мог бы зависеть от virtual/openjdk, а представлять интерфейс этого пакета мог бы как dev-java/openjdk-bin, так и dev-java/openjdk.
Там прям с virtuals есть отсылка на установку -bin пакетов в качестве альтернативы.
В общем, мне не ясно, как сделать наилучшим образом.
Например, если в world прописана установка virtual/пакета, то в качестве реализации первой будет установлена первая альтернатива? Или это не определено?
Исправление Shushundr, :
А зачем они так сделали?
https://github.com/gentoo/gentoo/blob/master/profiles/base/package.use.force#L58-L62
# Arthur Zamarin <arthurzam@gentoo.org> (2022-01-13)
# Force to use installed openjdk{,-bin} for bootstrapping
dev-java/openjdk:11 system-bootstrap
dev-java/openjdk:17 system-bootstrap
dev-java/openjdk:21 system-bootstrap
Если этот флаг всегда включен, то он, получается, в принципе не нужен.
Вот если бы они с его помощью могли бы предотвращать циклическую зависимость, это было бы интересно.
DEPEND="
...
|| (
system-bootstrap ( dev-java/openjdk-bin:${SLOT} )
!system-bootstrap ( dev-java/openjdk:${SLOT} )
)
"
но именно так оно не сработает. Надо как-то по-другому.
Есть alternatives и Virtual Packages пакет dev-java/openjdk мог бы зависеть от virtual/openjdk, а представлять интерфейс этого пакета мог бы как dev-java/openjdk-bin, так и dev-java/openjdk.
Там прям с virtuals есть отсылка на установку -bin пакетов в качестве альтернативы.
В общем, мне не ясно, как сделать наилучшим образом.
Исходная версия Shushundr, :
А зачем они так сделали?
https://github.com/gentoo/gentoo/blob/master/profiles/base/package.use.force#L58-L62
# Arthur Zamarin <arthurzam@gentoo.org> (2022-01-13)
# Force to use installed openjdk{,-bin} for bootstrapping
dev-java/openjdk:11 system-bootstrap
dev-java/openjdk:17 system-bootstrap
dev-java/openjdk:21 system-bootstrap
Если этот флаг всегда включен, то он, получается, в принципе не нужен.
Вот если бы они с его помощью могли бы предотвращать циклическую зависимость, это было бы интересно.
DEPEND="
...
|| (
system-bootstrap ( dev-java/openjdk-bin:${SLOT} )
!system-bootstrap ( dev-java/openjdk:${SLOT} )
)
"
но именно так оно не сработает. Надо как-то по-другому.
Есть alternatives и Virtual Packages пакет dev-java/openjdk мог бы зависеть от virtual/openjdk, а представлять интерфейс этого пакета мог бы как dev-java/openjdk-bin, так и dev-java/openjdk.
В общем, мне не ясно, как сделать наилучшим образом.