LINUX.ORG.RU

Install Djentoo

 , ,


3

2

Всё! Чтоб его, установил-таки этот проклятый всеми богами Gentoo! И даже умудрился джентануть немножечко (и даже больше – да простит меня покойный Эдди)! Правда, через кое-как настроеный Guitarix, но это детали…

А теперь всё по порядку.

Как-то в декабре меня в очередной раз посетила мысль – а не накатить ли мне Gentoo? Несколько раз, между прочим, ещё с прошлого года, я уже пробовал, да только вечно что-то мешало – то нехватка времени (почему-то я думал, что мощностей пятой "ряженки" хватит для компиляции всего за ночь; хватить-то может и хватило бы, но установка "генты" – это ведь не только компиляция!), то как раз в этот момент что-то сломали в репозитории, и Python не ставился, а месяц назад вообще Wiki легла, стоило мне только до загрузчика добраться!

Но наконец-то наступил новый 2022 век год, и я таки поборол этого монстра! Так как я "арчевод" со стажем, большинства проблем мне удалось избежать. Однако не всех, ой не всех…

Итак, с чем мне пришлось столкнуться:

  • OpenRC – для новичка это хтоническое нечто с непонятными "ранлевелами" и таким же непривычным после "детища Лёни" синтаксисом. Я же заблаговременно вооружился таблицей сравнения комманд, поэтому не пропал. Однако, был и неприятный момент – SDDM можно запускать либо вручную, либо через сервис display-manager-init – и понял я об этом аж через два дня! Надо было всё же Systemd ставить, меньше "невров" попортил бы.

  • Здесь с лицензиями чуть ли не построже, чем в Debian. Поэтому надо заблаговременно лезть в /etc/portage/package.license и добавлять нужные пакеты. И это обязательно, иначе не заработает половина всего без "фирмотвари"! К примеру:

app-arch/unrar unRAR
sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE
sys-firmware/intel-microcode intel-ucode
  • Когда я в прошлом месяце пытался поставить, за каким-то макаром настраивал ядро вручную. НЕ НАДО! Я и так сломал загрузку тогда, уж лучше genkernel all всё сделает.

  • Авторазмаскировка пакетов. Я пока нашёл в Интернете, что, оказывается, надо после этого ещё etc-update делать, сломал не одну голову. И это тоже обязательный шаг – иначе ALSA не установится и звук не заведётся.

  • Кстати, о звуке. С ним вообще весёлое приключение было – все выходные промучился с настройкой связки PA+JACK на внешней звуковой карте. И дело было даже не в установке – банально не было системных звуков, и я даже не мог понять, что не так. А знаете, как решилось?

Надо было воткнуть наушники!

  • Ещё один момент – USE-флаги. Экспериментальным образом выявил нужные для полноценного настольного ПК (в случае с Systemd-профилем четвёртый и последний флаги удаляются):
USE="jack alsa pulseaudio elogind policykit dbus -systemd"
  • Оно требует создать реально сложный пароль при создании пользователя, имейте в виду, золотые рыбки!

  • Без Polkit жить сложно: захочешь такой изменить тему SDDM, лезешь в настройки, выбираешь, жамкаешь «Применить» – а оно пароль "рута" запрашивает. Не пользователя, который в группе wheel, что записана в sudoers, но "рута", который заблокирован через passwd -l root.

  • Надо указывать вручную платформу для GRUB в make.conf, причём ещё до установки оного!

  • Ну и самый главный косяк, который есть у "генты": если не "красноглазить" над USE-флагами, не конфигурировать вручную ядро и не шаманить с оверлеями, то смысл от её установки нулевой! Серьёзно, у меня на "арче" с Zen-ядром задержку на звуковухе можно меньше выставить, и никаких XRUN-ов я не увижу! Зато натурального, простите на слове, пердолинга – выше всяких разумных пределов.

Так что, как говорится, спасибо этому дому, а я почалапав додому. И не ругайтесь на кривой скриншот, у меня ручки после занятий на гитаре болят.

P.S. На обоине – Джон Петруччи, гитарист Dream Theater, винодел и немножечко смахивающий бородой на RMS индивид. Собственно, из-за сходства и возникла задумка о скриншоте с названием "INSTALL DJENTOO".

P.P.S. Кто не знает – джентом несведущий народ называет либо музыку, как у коллективов навроде Meshuggah, либо процесс непрерывной долбёжки открытой шестой/седьмой струны, возможно даже в галопном темпе (три ноты плюс пауза такого же размера). На самом деле второй называется "чаг", потому что звук такой – "чух-чух-чух", и Ола Инглунд является авторитетом в сравнении со всякими Вованами-металами.

>>> Просмотр (3840x2160, 3384 Kb)

★★★★★

Проверено: hobbit ()
Последнее исправление: Korchevatel (всего исправлений: 5)

Ответ на: комментарий от modest
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
COMMON_FLAGS="-march=native -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"

# NOTE: This stage was built with the bindist Use flag enabled
PORTDIR="/var/db/repos/gentoo"
DISTDIR="/var/cache/distfiles"
PKGDIR="/var/cache/binpkgs"

# This sets the language of build output to English.
# Please keep this setting intact when reporting bugs.
LC_MESSAGES=C

MAKEOPTS="-j12"

GRUB_PLATFORMS="efi-64"

USE="jack alsa pulseaudio elogind policykit dbus -systemd"

Тут у меня только -j12 и USE-флаги свои, остальное – чистый сток.

P.S. Забыл о GRUB-e, там ведь надо вручную указать платформу.

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

Ну или рано – к Старому Новому Году как раз!

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

А как же PipeWire

А с ним у меня Guitarix артачится. А значит, заартачится ещё что-нибудь.

Korchevatel ★★★★★
() автор топика

покойный Эдди

Это кто?

Безотносительно к предыдущему — спасибо за таблицу сравнения команд. И неологизм «фирмотварь» хорош.

hobbit ★★★★★
()

Кстати, оффтопик. А ты видел вот это:

https://www.youtube.com/watch?v=CqvmUnG25dA

Я, если честно, охренел. Причём, никаких модных нейросеточек, а результат, местами, гораздо лучше, чем у некоторых американских one man band.

Alden ★★★★
()

Почитал с интересом, молоток, ты поставил самый юзабельный и стабильный Linux, ещё чуток и ты влюбишься в него как в гитару, и в подругу(тут приоритет д.б. выше) ;)

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

Ты так не шути. У нас на ЛОРе за последнее время и так умерло несколько людей. Поэтому, когда говорят, что умер кто-то ещё, то веришь в это

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

У нас на ЛОРе за последнее время и так умерло несколько людей. Поэтому, когда говорят, что умер кто-то ещё, то веришь в это

А с чего ты решил, что всегда говорят о ком-то с ЛОР-а? Мир, знаешь ли, куда больше.

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

Оно гуляло ещё в 2012-м, ЕМНИП (не конкретно это видео, но сама идея процедурно сгенерированного метала). Я ещё на Нульчане так три часа грайндкора слушал, гы. :)

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

Тут местами даже мелодии прикольные есть и интересные ритмы :) Я хотел Шильникову скинуть и сказать, что это ранний альбом Головина. Потом можно было бы поржать над тем, как он будет находить непопадание в ударку.

Alden ★★★★
()
Последнее исправление: Alden (всего исправлений: 2)

Ну в целом верно - если не нужна тонкая конфигурация то и смысла в генте нет, да и без опыта в генте она даже сейчас будет касаться сложной. Если не урезать систему и не оптимизировать, то время компиляции будет намного дольше. Даже банально выпилить mosjs/spidermonkey из зависимостей polkit, а rust из rsvg сэкономит кучу времени, так же иногда можно избежать пакетов зависящих от boost, хотя сейчас его сборка не так напрягает. Браузер - головная боль, но в целом решается установкой бинарной версии.

Я обычно стараюсь избегать сборки QT если DE на gtk3 или же наоборот gtk3 если DE не на нём. На данный момент у меня нет gtk3 в системах, gtk2 подтянут только из-за браузера. Даже если не удаётся полностью избежать установки нежелательного тулкита - пробую замаскировать его чтобы не подтянуть лишний раз и в память он подгружался только при запуске зависимого софта, чтобы знать что от него зависит, размаскировывая когда нужно пересобрать этот софт.

Заметно ускорит сборку оптимизация gcc с pgo и lto, но в этом случае сборка самого gcc может затянуться на всю ночь. Потом новые версии gcc маскировать чтобы не собирать каждый раз при минорном обновлении

Касательно лицензий - включай их через ACCEPT_LICENSE чтобы не прописывать каждый пакет. Так же там есть группы лицензий, можно прнять чуть ли не сразу все. Раньше были разрешены по умолчанию почти все кроме EULA, но теперь сделали примерно как в дебиане

Касательно polkit - не совсем понял, в чём дело - у него отличается поведение от других дистров?

mittorn ★★★★★
()

Однако, был и неприятный момент – SDDM можно запускать либо вручную, либо через сервис display-manager-init – и понял я об этом аж через два дня! Надо было всё же Systemd ставить, меньше «невров» попортил бы.

В случае systemd всё так же нужно было бы добавить сервис (какой-нибудь) как запускаемый, разве нет? Хотя странно, если ты привык к нему, то и выбрал бы stage3 с ним сразу.

надо заблаговременно лезть в /etc/portage/package.license

Настройка по умолчанию пару лет назад поменялась, поэтому немного упростить задачу можно прописав в make.conf ACCEPT_LICENSE="* -@EULA", вернув старое поведение.

https://www.gentoo.org/support/news-items/2019-05-23-accept_license.html

требует создать реально сложный пароль при создании пользователя

В начале 2020 не требовал. Мож и предупредил, но я проигнорировал.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 2)

Еще не дочитал до конца, но щитаю гитарку перед записью с тюнером подкрутить никогда не мешает.

*ээ схренали мешугга – джент?

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

spidermonkey, rust

экономит кучу времени

Первый собирается минут 15 даже на компах 10-летней давности с 4 Гб оперативки, если ограничить сборку двумя потоками.

Второй вообще не обязательно собирать, так как есть rust-bin.

Librsvg правда вместо 1 минуты после переписывание стал собираться тоже минут 15, но его не так часто обновляют.

Даже я на своём старьё не парюсь по поводу тулкитов. Долго собираются и хотят много памяти всякие qt-, gtk- webengine. Но их хотят не так много пакетов и, например, первый можно поставить из тестового binhost.

Но gcc, llvm, clang с каждой новой версией собираются всё дольше.

grem ★★★★★
()

Кто не знает – джентом несведущий народ называет либо музыку, как у коллективов навроде Meshuggah, либо процесс непрерывной долбёжки открытой шестой/седьмой струны

Пушной, перелогиньтесь!

cocucka ★★★★☆
()

С разговением! Добро пожаловать ).

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

Насчет ядра: попробуй бинарное, если под себя собирать не будешь, genkernel all постоянно делать забодаешься. Тут либо кастомное (чтобы долго не конпелялось), либо бинарное.

gill_beits ★★★★
()

Скриншот зачетный! Я бы тоже снова накатил генту но компилять её на моем старом ноуте это оооочень дорогое удовольствие.

Dumppper001
()

Поэтому надо заблаговременно лезть в /etc/portage/package.license и добавлять нужные пакеты.

echo ACCEPT_LICENSE=«*» >> /etc/portage/make.conf

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

Установи генту! Установи генту, сука! :)

А если серьезно, сколько оно собирается с нуля и на каком железе? Что у тебя в /etc/portage.conf (или как там глобальные use-флаги прописываются)?

hateWin ★☆
()
Ответ на: комментарий от Qui-Gon

У меня жирнее :(

# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j4"
FEATURES="preserve-libs sign"

# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="x86_64-pc-linux-gnu"

# These are the USE flags that were used in addition to what is provided by the
# profile used for building.
INPUT_DEVICES="evdev libinput"
VIDEO_CARDS="amdgpu radeon radeonsi vesa fbdev"

LINGUAS="en ru ru_RU"
L10N="${LINGUAS}"
ABI_X86="32 64"
GRUB_PLATFORMS="pc multiboot"
SANE_BACKENDS="hp"

USE="alsa mmx natspec -samba sse sse2 -bindist -bluetooth -geolocation -ipv6 \
     -networkmanager -ppp -vlc wireless"

ACCEPT_LICENSE="* -@EULA"

PORTDIR="/usr/portage"
DISTDIR="${PORTDIR}/distfiles"
PKGDIR="${PORTDIR}/packages"
PORTAGE_ELOG_CLASSES="warn error log qa"
PORTAGE_ELOG_SYSTEM="save"

VIDEO_CARDS="... radeon ..." требовался, так как его через что-то тянет radeonsi, который обычно рекомендуют добавлять в пару к amdgpu, а vesa и fbdev до кучи, если что-то слетит или карту другую вдруг воткну.

grem ★★★★★
()

Мои поздравления. Годнота.

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

А кому нужен этот webengine? Сборка остального не напрягает, а в остальном насколько я помню он везде опционален
касательно svg и rust - я просто не хочу чтобы это УГ было у меня в системе. Когда rust понадобился - собрал, но наличие его в build-time зависимостях librsvg, от которого может зависить много чего мне не нужно. То же самое касается и polkit. Ладно что тянется spidermonkey - его не проблема собрать когда он нужен, но в polkit он не нужен (вроде слышал что сделали возможность использовать вместо него duktape, если да - наверно можно будет не тянуть древний polkit в оверлее). Зависимости и критические пакеты не должны быть тяжёлыми, на этом всё. Тяжёлые компиляторы можно обновлять редко и очень редко, потому gcc замаскировываем пока не решим перекатиться до более свежей мажорки, либо не пришлось обновлять из-за критической баги - такое тоже бывало. Таким образом пересборка мира никогда не займёт много времени, а чем меньше зависимостей тем быстрее их обсчёт. Помню когда-то ещё до чистки дерева расчёт зависимостей мог по полчаса идти.

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

После чистки дерева вполне и через год-два можно обновиться, правда придётся немного пошаманить и возможно снести половину пакетов принудительно. Мне как-то приходилось python-exec сносить из-за сильных изменений в ебилдах питоне, но в итоге систему обновил и до сих пор живая.
Ну и если действительно надо обновить лет на 5 - то делать это поэтапно потому что предстоит несколько миграций профиля и выделить под это хотя бы сутки. Ну и снеся все некритичные тяжёлые пакеты, которые не нужны для обновления - всё равно их пересобирать придётся, так что смысл обновлять несколько раз нет - можно потом доставить. В новостях обычно пишут что нужно для апгрейда профиля сделать. Например после перелопачивания lib/lib32 надо было пересобрать все мультилибовые пакеты, а это немало.

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

webengine

Некоторые софтины на qt/gtk от него зависят неопционально. Но я сам такими сейчас не пользуюсь.

Судя по багзилле, время сборки gtkwebengine ещё больше.

я просто не хочу чтобы это УГ было у меня в системе

У тебя слишком много свободного времени.

Возможно, если librsvg есть в тестовом binhost, то бинарник не тянет зависимости для сборки.

https://gentoo.osuosl.org/experimental/amd64/binpkg/default/linux/17.1/x86-64/gnome-base/librsvg/

пересборка мира

Вообще этим не занимаюсь. После обновления пересобираю libtool. Если поменялся ABI, то дополнительно пару библиотек и софтин, наподобие wxGTK и связанных с ним.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 2)
Ответ на: комментарий от grem

У тебя слишком много свободного времени.

Скорее наоборот слишком мало чтобы потом разгребать эти горы. Подумав 5 минут при настройке и потратив ещё 10 на закидывание нормальных версий пакетов в оверлей можно сэкономить пару дней на починку сломавшейся при обновлении системы через полгода

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

Касательно polkit - не совсем понял, в чём дело - у него отличается поведение от других дистров?

Да ничем, просто есть один нюанс – надо вручную разрешения для wheel прописывать. Как-то даже непривычно.

Korchevatel ★★★★★
() автор топика

ээээ... Это надо прибить гвоздями на главной и каждому новому посетителю выдавать к обязательному прочтению вместо предложения разрешить кукисы.

Лучше бы ты просто на гитаре учился играть. Столько времени убил на ничто и головную попоболь.

И нифига у тебя там не ждент! А Петручи - позёр со своей бородищей. Хотя твой психологический портрет теперь сложился :)

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

В случае systemd всё так же нужно было бы добавить сервис (какой-нибудь) как запускаемый, разве нет?

Ага, sddm.service. Просто дело в том, что для OpenRC его нету, и способ автоматического запуска я нашёл не сразу.

Хотя странно, если ты привык к нему, то и выбрал бы stage3 с ним сразу.

Месяц назад, кстати, пробовал. Тогда пришлось немного голову поломать, какие команды ему нужны. А сейчас захотелось странного. :)

Настройка по умолчанию пару лет назад поменялась, поэтому немного упростить задачу можно прописав в make.conf ACCEPT_LICENSE=«* -@EULA», вернув старое поведение.

А за вот этот "лайфхак" спасибо.

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

Еще не дочитал до конца, но щитаю гитарку перед записью с тюнером подкрутить никогда не мешает.

Гитара нормальная, это руки из жопы. :)

А если честно, то это мой максимум без регулярных занятий и изучения теории. Увы.

ээ схренали мешугга – джент?

Просвещайся.

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