LINUX.ORG.RU

Для тех, кто думает перейти на Gentoo

 


49

15

Привет

Достаточно часто создаются темы, где люди думают переходить на Gentoo и хотят уточнить некоторые моменты. Чтобы сэкономить время себе и другим, решил создать этот топик, в котором буду собирать ответы на частые вопросы.

TL; DR: Для тех, кто думает перейти на Gentoo (комментарий)

Преимущества
#1 Gentoo очень гибкая и всенастраиваема
Пример того что в Gentoo делается просто:
- Использовать openrc вместо systemd или наоборот; pulseaudio или без него
- Наложить кастомный патч; пример когда это нужно
- Подключить или отключить такие вещи как vaapi, vdpau, opencv и т. п.
- Иметь несколько веток софта; уточню, что это работает только для определённых пакетов; например можно одновременно установить python 2.7, 3.4, 3.5 или qt4 и qt5, но нельзя одновременно установить qt 5.7 и 5.8

#2 Очень удобный и функциональный пакетный менеджер
Примеры удобных фич:
- Прервать установку (вплоть до перегрузки компьютера), а потом ее продолжить. Можно продолжить с последнего пакета (emerge --resume), продолжить но пропустить последний пакет, например, если его установка прервалась с ошибкой (emerge --resume --skipfirst, некоторые нюансы); для больших пакетов можно продолжить саму компиляцию (ebuild <полный путь и имя файла>.ebuild merge).
- Когда при установке обновляется конфиг приложения, определяется редактировался ли предыдущий конфиг пользователем. Если да, конфиг не перезаписывается, а кладётся радом, и выводится сообщение пользователю с предложением обновить конфиг.
- Обновить всю систему, но исключить некоторые пакеты (удобно для исключения больших пакетов из ежедневного обновления)
- Почистить зависимости - удалить те пакеты, которые больше никому не нужны.
- Поскольку ebuild - текстовый файл, то можно пропарсить на предмет требований к количеству ресурсов для установки:

$ for F in $(find /usr/portage -name "*.ebuild") ; do REQ=$(grep "CHECKREQS" "$F") ; if [[ -n "$REQ" ]]; then echo -e "\n$F\n$REQ" ; fi; done
- Вынести компиляцию на другой компьютер (поддержка distcc на уровне пакетного менеджера). Важно когда Gentoo устанавливается на слабый компьютер.


#3 Хорошая документация, по крайней мере на английском. Более того, поскольку Gentoo-специфичные утилиты являются лишь надстройкой на generic механизмами, документация от других дистрибутивов (например от Arch) в большинстве случаев тоже подходит.
Опрос 2014: У какого дистрибутива лучшая документация

#4 Достаточно свежий софт, много сторонних репозиториев.
Список сторонних репозиториев
Gentoo - rolling release, а значит как только новая версия конкретного софта появилась в репозитории, её можно установить. Но здесь не имеется ввиду, что как только новая версия зарелизилась, она моментально становится доступна в основном дереве; лаг есть, но он как правило не большой, хотя зависит от пакета. В тестинг ветке новые версии появляются раньше. Кроме того мейнтейнеры Gentoo могут маскировать некоторые версии, если в них обнаруживаются серьезные баги. Однако всегда можно размаскировать нужную версию. Кроме того для некоторых пакетов есть -live версии, когда исходники скачиваются напрямую из github или аналога.
Пример когда «у меня не самый свежий софт в Gentoo»

#5 Полный порядок в системе, ничего лишнего - эстетическое удовольствие, плюс возможно можно немного улучшить перформанс

#6 В процессе установки и эксплуатации получаешь полное понимание как работает система, а значит возникающие проблемы решаются быстро. На самом деле без должного знания Линукса (или желания его узнать в процессе) Gentoo нормально не установить.

Недостатки
#1 Сложная и долгая первичная установка. Если устанавливать в первый раз, нужно готовиться потратить несколько дней. Для опытных - несколько часов + компиляция.
Время установки (компиляции) Gentoo, еще немного цифр по большим пакетам

#2 Пакетный менеджер хоть и удобный, но очень медленный

#3 Если не обновлять систему долго (полгода и более), то сложность обновления сопоставима с установкой новой системы. Есть мнение, что emerge-webrsync --revert=yyyymmdd должен помочь (лично я не проверял).

Особенности
#1 Высокий порог входа; дистрибутив не для новичков

#2 Обновляться нужно часто

#3 Основные фичи - в командной строке

#4 Есть две ветки: stable и testing. В stable меньше шансов встретить проблему, но в testing более свежий софт. Ветки можно комбинировать.

Мифы
Миф #1 Gentoo даст прирост производительности за счет того, что весь софт компилируется под конкретное железо.
Краткий ответ: В 99% случаев при смене дистрибутива X на Gentoo вы не заметите какого-либо улучшения в плане скорости работы. Если вы зададитесь целью сравнить свежеустановленный дистрибутив X с свежеустановленной Gentoo, то в 90% вы не увидите значительной разницы.

Детальный ответ.
Не следует ожидать что просто скомпилировав систему из исходников вы получите сколько-нибудь заметное улучшение перформанса.
Для большинства приложений компиляции под конкретное железо даст прирост производительности в районе 1-2%.
Ложка дегтя: в некоторых случаях даже может быть замедление. Например Firefox, можно ускорить с помощью PGO. В Gentoo по умолчанию это отключено, так как PGO увеличивает время компиляции почти в два раза. В бинарных дистрибутивах соотв. софт может быть скомпилирован с PGO.
Так как добиться улучшения производительности? Узкий круг приложений может быть значительно ускорен при компиляции под конкретную платформу - на 30%-50% и больше. В основном это приложения которые активно занимаются вычислениями. Но для этого требуется соотв. настройки. Например, активация SIMD инструкций, даст прирост производительности в мультимедиа приложениях. Некоторые процессоры имеют аппаратную поддержку шифрования AES. В бинарных дистрибутивах подобные фичи будут отключены, так как не все процессоры это поддерживают, а бинарные дистрибутивы в первую очередь заботятся о совместимости.
Небольшое улучшения перформанса возможно если убрать из системы всё лишнее (мнение 1, мнение 2).
Еще интересный случай

Миф #2 Обновления занимают много времени
Краткий ответ: 5-10 минут на фоне, не мешая основной работе.

Детальный ответ.
Обновления не занимают много времени, но опять же, при правильном подходе.
Во-первых, как было сказано выше, обновляться нужно часто. Для testing ветки это каждый день, или по крайней мере не реже чем в раз 2-3 недели. Для стабильной ветки - раз в неделю достаточно (на стабильной ветке намного реже выпускаются обновления)
Во-вторых, есть пакеты которые правда очень долго компилятся: libreoffice, firefox, chromium... Их всего 10-15. Я их исключаю из ежедневного обновления, а обновляю раз в несколько месяцев.
Еще нужно сказать, что на этом вопросе часто заостряют неоправданно много внимания. Обычно обновления происходят на фоне, и не сильно влияют на работу; так какая разница как долго они выполняются?
В итоге, у меня обновления занимают примерно 5-10 мин ежедневно (у меня тестинг-ветка).
К тому же всё происходит на фоне, в любой момент можно поставить на паузу (Ctrl+Z, fg), продолжить после прерывания (умышленного или случайного).
Мой скрипт ежедневного обновления

Миф #3 Gentoo требует много времени на обслуживание
Краткий ответ: Может быть больше, может быть меньше по сравнению с другими дистрибутивами. Очень зависит от того, насколько вы будете вчитываться в то, что пишет вам пакетный менеджер, и разбираться первопричинах.

Детальный ответ.
Обслуживание Gentoo занимает меньше времени по сравнению с другими дистрибутивами, но только при грамотном обращении, конечно. Достигается это за счет следующего:
- хороший пакетный менеджер: маскировки, глобальные и индивидуальные установки для пакетов (USE флаги, опции компиляции, каталоги), хуки, приоритеты (чтобы компиляция происходила на фоне и можно было работать), много опций для установки и анализа, подсказки после установки.
- всё происходит в CLI, а значит типовые операции можно обернуть в скрипты/алиасы.
- уже существуют много утилит для облегчения обслуживания: eselect, equery, eix, eclean, euse, genlop и др.
Грамотное обращение означает, что вы правильно и регулярно обновляете систему, исполняете предписания emerge, которые он выдает после установки, держите в порядке конфигурационные файлы, а если таки возникает проблема, которую решить вы не можете, то вы обращаетесь в форумы, а не просто жалуетесь на жизнь.
Что до проблем с обновлениями - см. следующий пункт «Миф #4 Установка, обновление постоянно падают; частые блокировки»

Миф #4 Установка, обновление постоянно падают; частые блокировки
Краткий ответ: Не чаще чем в других дистрибутивах

Детальный ответ.
Если говорить про «часто» и «постоянно», то проблемы с обновлением/установкой могут быть если:
- система давно не обновлялась
- система неправильно обслуживается (см. выше про Грамотное обращение)

В редких случаях пакет просто не компилируется. На самом деле это проблема не Gentoo, а тех, кто писал этот софт. И в подавляющим большинстве случаев это не является проблемой, и вот почему. Если это обновление, то можно продолжить процесс запустив emerge с параметрами --resume --skipfirst - он обойдет проблемный пакет, пересчитает зависимости чтобы система осталась консистентной, и продолжит обновление (а можно изначально передать параметр --keep-going, тогда это будет происходить автоматически, прерываний вообще не будет). Если пакет критичен, можно установить предыдущую версию, которая компилировалась (а проблемную замаскировать чтобы пакетный менеджер ее не видел).

Что может заблокировать обновление полностью:
- просьба пакетного менеджера поменять флаги пакета. При этом emerge предлагает сделать это автоматически, но лично я предпочитаю делать вручную. Для ручного способа, решается добавлением строчки в package.use
- просьба пакетного менеджера задать лицензию. Это валидно только для не-свободных лицензий, например EULA, Skype, Adobe Flash и т. п. Если мы говорим имено про обновление, то такое бывает только когда лицензия обновляется, что бывает очень редко (как много у вас пакетов под не-свободной лицензией, и как часто они меняют лицензию?). Решается добавлением одного слова в make.conf
- просьба пакетного менеджера размаскировать пакет. По моему опыту нужно не размаскировывать, а наоборот замаскировывать пакеты, которые тянут замаскированные зависимости. Это, да, требует минут 5-10 на разобраться. Но, если только у вас нет смешения веток и live пакетов, такой вариант случается раз в пятилетку.
- сложные блокировки. Большинство блокировок пакетный менеджер разрешает сам; по моим наблюдениям, качество данного механизма значительно улучшилось пару лет назад. Из своего опыты скажу, что (учитывая частые обновления) блокировок, которые бы совсем останавливали обновление я уже не видел года 1.5. Но если они есть, то это действительно сложный кейс.

Иными словами, при порядке в системе, кейсы, которые требуют значительного времени и напряжения уственых усилий (сложные блокировки, замаскированные зависимости) случаются раз в несколько лет; кейсы, которые решаются за пару минут - раз в несколько месяцев.

Миф #5 В Gentoo нет бинарных пакетов
Краткий ответ: Есть там, где это действительно нужно.

Детальный ответ
Во-первых есть Calculate Linux - полностью бинарный форк Gentoo.
Во-вторых даже в самом Gentoo в основном репозитории есть несколько бинарных пакетов: libreoffice-bin, firefox-bin, некоторые другие. Связано это с тем, что из исходников они очень долго компилируются, и иногда проще поставить бинарник.
Бинарный пакет можно сделать самому командой quickpkg --include-config y <установленный пакет> - удобно для бекапов.

FAQ

#1 Установка на слабый компьютер
Смотря что есть слабый компьютер.
Из собственного опыта: Intel Core2 Duo 6600 @ 2.40GHz, 2Gb RAM + 4Gb swap хватало для комфортной работы в Gentoo.
Зачастую ebuld'ы содержат информацию о том, сколько нужно памяти для компиляции пакета. TOP 5:
16G - chromium
8G - ledger, isabelle
7G - ceph
6G - firefox x64 (для x32 нужно 3G), pypy x64 (для x32 нужно 3G)
5G - electron
Если компьютер и вправду слабый, то лучше выбрать не Gentoo (точнее не-source-based дистрибутив). Альтернатива - можно вынести компиляцию на другой «не-слабый» компьютер с помощью distcc.


Опрос 2018: Какой ОС вы пользуетесь на основном ПК?
Опрос 2017: Какую ОС вы используете на основном ПК?
Опрос 2014: Какой дистрибутив вы используете на десктопе?
W3Tech стастика дистрибутивов на серверах
Отличия дистрибутивов, время работы ноутбука
Чем удобны USE флаги
Сколько памяти нужно для РАБОТЫ Gentoo (сколько нужно для компиляции было указано выше)
Сколько места на диске нужно для Gentoo
Правильное полное обновление Gentoo, Мой скрипт ежедневного обновления, Еще вариант
Gentoo для девелоперов
Практика инсталляции Gentoo: в двух словах простым языком
Небольшой скрипт - сборка livecd

★★★★★

Ответ на: комментарий от init_6

А что, есть только шланг? Над icc не задумываются?

Да и тред вроде как для тех, кому лень в поисковик.

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

А что, есть только шланг?

Компилятор?

Над icc не задумываются?

И он тоже есть в портежах. Тебе он нужен? Ставь делай аналогично шлангу. Профит.

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

Ну, собственно, так можно сделать, кхм, мягко говоря, не только на генте.)

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

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

BceM_IIpuBeT ★★ ()

Из собственного опыта: Intel Core2 Duo 6600 @ 2.40GHz, 2Gb RAM + 4Gb swap хватало для комфортной работы в Gentoo.

на таком конфигурате и винда как олень поскачет - в топку такие генты для слабых компьютеров...

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

в топку такие генты для слабых компьютеров...

Здесь говорилось про железо для компиляции большого количества исходников.

А для работы Генте хватит и i486 (а то и меньше). Как там нынче винда на i486?

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

Преимущество Gentoo в том, что это не Ubuntu, и она на перезапишет твой UEFI убив мать, а блоб Nvidia не превратит твой десктоп в цветную кашу.
Остальные заявления далеки от истины, и смахивают на сектантские проповеди.
Хорошая документация, в т.ч. и русскоязычная, и действительно удобный менеджер пакетов у Debian, но никак не у Gentoo. :)
А вот недостатков куда поболее: первая установка по неопытности может занять неделю, а то и не одну, т.к. нет никаких гарантий, что она пройдет удачно, и пользователь не забудет поддержку ext4 в ядре, в которой все диски, и бесконечная компиляция, компиляция, и компиляция, на «среднем» компьютере установка огнелиса занимает 8 часов, что на фоне постоянных обновлений превращается «5 дней попользовал, 2 обновляю».
Если хотите первый раз окунуться в Gentoo - используйте для этого Calculate Linux с уже скомпилированными пакетами, который позволит вас сначала получить рабочую систему, а уже затем компилировать дни и ночи напролет.

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

Преимущество Gentoo в том, что это не Ubuntu, и она на перезапишет твой UEFI убив мать делает ровно то, что ты от неё хочешь

fxd

блоб Nvidia не превратит твой десктоп в цветную кашу

Блобу nvidia сугубо похрен в каком дистрибутиве делать «цветную кашу»

действительно удобный менеджер пакетов у Debian LFS

fxd

И да до этого кто-то тут кококо насчет:

Остальные заявления далеки от истины, и смахивают на сектантские проповеди.

Ню ню

А вот недостатков куда поболее: первая установка по неопытности может занять неделю, а то и не одну

по неопытности

«по неопытности» можно и убанту год ставить.

Если хотите первый раз окунуться в Gentoo - используйте для этого Calculate Linux

Вали в свой уютный «Для тех, кто думает перейти на Calculate Linux» с водкой и продажными женщинами и там вот вешай лапшу насчет того как в калькуляйте всё хорошо.

init_6 ★★★★★ ()

Спасибо вам за такой труд! Давно подумываю перейти на Gentoo, ваш топик располагает к этому ).

bff7755a ()

Что мне даст Gentoo Linux взамен FreeBSD?

iZEN ★★★★★ ()

Еще один задрот. Время девать некуда ?

Jopich1 ()

Сравнение Gentoo Linux и FreeBSD

Пример того что в Gentoo делается просто:
- Использовать openrc вместо systemd или наоборот;

rc-скрипты.

pulseaudio или без него

Аналогично на выбор: sndio (нативно), ALSA (наносное), PulseAudio (если необходимо), Jack (если сильно надо).

- Наложить кастомный патч;

Без проблем - по подобию исходного редактируешь свой порт, монтируешь каталог через unionfs со своими патчами в /usr/ports, пересобираешь порт как тебе надо.

- Подключить или отключить такие вещи как vaapi, vdpau, opencv и т. п.

Как правило, такие вещи прописаны в опциях конфигурации портов - можно как включить, так и выключить по команде make config и пересобрать порт.

- Иметь несколько веток софта; уточню, что это работает только для определённых пакетов; например можно одновременно установить python 2.7, 3.4, 3.5 или qt4 и qt5, но нельзя одновременно установить qt 5.7 и 5.8

Во FreeBSD с портами так и сделано.

#2 Очень удобный и функциональный пакетный менеджер

Примеры удобных фич:

- Прервать установку (вплоть до перегрузки компьютера), а потом ее продолжить.

Не задумывался о необходимости этого. portmaster что-то там предлагает сделать с прерванной сборкой - всегда удаляю.

последний пакет, например, если его установка прервалась с ошибкой

Во FreeBSD пакет либо установился, либо нет. Неконсистентное состояние исключается. Хотя есть кольцевые зависимости между пакетами, когда один зависит от другого и наоборот, но тут лучше не допускать ошибок в таких конфигурациях, чем предотвращать их.

- Когда при установке обновляется конфиг приложения, определяется редактировался ли предыдущий конфиг пользователем. Если да, конфиг не перезаписывается, а кладётся радом, и выводится сообщение пользователю с предложением обновить конфиг.

Во FreeBSD текстовая база конфигов установленных пакетов находится в каталоге /var/db/ports. Если версия порта меняется и требуется переконфигурация порта (например, добавилась новая опция), то будет вызван make config автоматически.

- Обновить всю систему, но исключить некоторые пакеты (удобно для исключения больших пакетов из ежедневного обновления)

Опция -x пакет в командной строке portmaster'а при массированном обновлении. Правда, зависимые от этого пакета всё равно потребуют его обновить прежде чем самим обновиться. То есть необходимо перечислять всю ветку зависимых пакетов, которые не должны обновиться, если обновление их базового пакета отложено.

- Почистить зависимости - удалить те пакеты, которые больше никому не нужны.

Сторонняя утилита pkg_cutleaves. Да и portmaster -e удаляемый пакет тоже подтирает ненужные пакеты.

- Вынести компиляцию на другой компьютер

Да хоть в Jail и установку ПО на другие компьютеры из специально созданного репозитория с набором централизованно обновляемых программ, по сети.

#3 Хорошая документация, по крайней мере на английском.

Да.

#4 Достаточно свежий софт, много сторонних репозиториев.

Аналогично. Во FreeBSD легко делается собственный репозиторий pkg repo /path/to/pkgs/All, расшаривается в локальной сети и настраиваются машины на него одной строчкой в конфиге местного pkg.

Gentoo - rolling release

FreeBSD -STABLE и -CURRENT - rolling release. -STABLE стабильный, -CURRENT - экспериментальный срез непрерывной разработки операционной системы. Порты общие, предназначены для -STABLE ветки, учитывают развитие операционной системы в этих направлениях, задавая соответствующие опции сборки.

#5 Полный порядок в системе, ничего лишнего - эстетическое удовольствие, плюс возможно можно немного улучшить перформанс

Я бы поспорил насчёт ничего лишнего. Например, зачем нужен Python 2.7 и 3.6 оновременно? Почему не использовать LLVM 5.0.1, установленный для графической системы Mesa3D, в качестве системного компилятора? Ведь технически это возможно.

#6 В процессе установки и эксплуатации получаешь полное понимание как работает система

Несовсем. На уровне пользователя разбираешься, на уровне программиста - в зависимости от квалификации.

#2 Пакетный менеджер хоть и удобный, но очень медленный

На FreeBSD pkg довольно быстрый - за секунду может обновить 1-2 установленных пакета (больше зависит от скорости скачивания по сети).

#3 Если не обновлять систему долго (полгода и более), то сложность обновления сопоставима с установкой новой системы.

Если система и ПО собираются из исходников, то пересборка всего занимает ощутимое время.

Миф #5 В Gentoo нет бинарных пакетов

Почему-то не популярны бинарные пакеты в Gentoo.

iZEN ★★★★★ ()
Последнее исправление: iZEN (всего исправлений: 1)
Ответ на: Сравнение Gentoo Linux и FreeBSD от iZEN

RE Сравнение Gentoo Linux и FreeBSD

iZEN я отвечу только на те твои комментарии где различия, на мой взгляд, существенны ибо как тебе скорее всего известно gentoo создавали уже на опыте FreeBSD.

- Наложить кастомный патч;

Без проблем - по подобию исходного редактируешь свой порт, монтируешь каталог через unionfs со своими патчами в /usr/ports, пересобираешь порт как тебе надо.

И сравни свою возню с тем что просто нужно положить свою заплатку в соответствую директорию перед сборкой.

- Подключить или отключить такие вещи как vaapi, vdpau, opencv и т. п.

Как правило, такие вещи прописаны в опциях конфигурации портов - можно как включить, так и выключить по команде make config и пересобрать порт.

Опять же одно дело что-то править внутри этих твоих портов а совсем другое переменная окружения.

- Прервать установку (вплоть до перегрузки компьютера), а потом ее продолжить.

Не задумывался о необходимости этого. portmaster что-то там предлагает сделать с прерванной сборкой - всегда удаляю.

И webkit, libreoffice и подобное тоже? Соболезную.

#5 Полный порядок в системе, ничего лишнего - эстетическое удовольствие, плюс возможно можно немного улучшить перформанс

Я бы поспорил насчёт ничего лишнего. Например, зачем нужен Python 2.7 и 3.6 оновременно? Почему не использовать LLVM 5.0.1, установленный для графической системы Mesa3D, в качестве системного компилятора? Ведь технически это возможно.

«зачем нужен Python 2.7 и 3.6 оновременно» они и не нужны. Это миф. А вообще ответ на подобный вопрос надо начинать с того о чём именно ты разговариваешь ибо в 100500 пакетах в любом случае найдутся такие которым нужны зависимости и python2 и puthon3 так что не на минимальной системе aka stage1/2/3 наличие обоих python одновременно неизбежность.

#2 Пакетный менеджер хоть и удобный, но очень медленный

На FreeBSD pkg довольно быстрый - за секунду может обновить 1-2 установленных пакета (больше зависит от скорости скачивания по сети).

Про «очень медленный пакетный менеджер» в gentoo говорят лишь те кто забывает обо всех удобствах которые он предоставляет и закрывают глаза на количество поддерживаемых архитектур и самих пакетов.

#3 Если не обновлять систему долго (полгода и более), то сложность обновления сопоставима с установкой новой системы.

Если система и ПО собираются из исходников, то пересборка всего занимает ощутимое время.

Про «сложность обновления сопоставима с установкой новой системы» опять же спорно. Чаще вообще ничего сложного нет. Попасть в действительно неприятную ситуацию можно лишь недообновив систему и уйдя в оффлайн. Когда часть софта обновлена а ещё часть нет в то время как для штатного обновления требовалось сперва обновить всё.

Миф #5 В Gentoo нет бинарных пакетов

Почему-то не популярны бинарные пакеты в Gentoo.

Они не то что-бы непопулярны просто для 95% пакетов в их бинарных вариантах попросту нет никакого смысла пример - тысячи шрифтов при установке иксов их установка это попросту распаковка по соответствующим путям и обновление кеша шрифтов. А для оставшихся 5% пакетов либо уже давно есть бинарные пакеты либо в них нет смысла по неким иным причинам.

Основная же причина даже не в этом а в том, что бинарные пакеты в gentoo по сути то нужны только для бекапа либо для варианта бюлдсервер с бинарными обновлениями и куча клиентов которые получают с него всё готовенькое.

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

- Наложить кастомный патч;

по подобию исходного редактируешь свой порт, монтируешь каталог через unionfs со своими патчами в /usr/ports, пересобираешь порт как тебе надо.

И сравни свою возню с тем что просто нужно положить свою заплатку в соответствую директорию перед сборкой.

Я просто написал, как это лучше сделать, не трогая основное дерево портов. Никто не запрещает прямо в каталог порта положить свои патчи и/или отредактировать Makefile. Но тогда нужно отслеживать обновления дерева и в этом ключе, чтобы не потерять свои правки и патчи. А с unionfs твои правки и патчи хранятся в другом месте, отдельно от основного дерева портов.

И webkit, libreoffice и подобное тоже? Соболезную.

Себе?

наличие обоих python одновременно неизбежность.

Во FreeBSD это решено тэгом FLAVORS.

Про «сложность обновления сопоставима с установкой новой системы» опять же спорно. Чаще вообще ничего сложного нет. Попасть в действительно неприятную ситуацию можно лишь недообновив систему и уйдя в оффлайн. Когда часть софта обновлена а ещё часть нет в то время как для штатного обновления требовалось сперва обновить всё.

На этот случай, чтобы не оставлять систему и ПО надолго в «переходном» состоянии обновления, на FreeBSD создаются изолированные окружения и в них ведётся работа по обновлению ПО. Когда всё готово, можно довольно быстро обновить установленное ПО в рабочей системе из собранных бинарных пакетов (обновлённого локального или удалённого репозитория). Нужно примерно 5-10 минут (в зависимости от объёма установленного ПО) от начала бинарного обновления до перезагрузки. Изолированные окружения для сборки можно создать на основе jail, либо использовать утилиты развёртывания сред (ports-mgmt/poudriere, sysutils/cbsd).

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

По всем пунктам отвечать лень, но скажу, что я в итоге перешёл FreeBSD-Gentoo-Debian. Ибо долго, нудно, софт старее. В тестинге, вроде, посвежее бывает, но тогда есть риск не собрать. В остальном конфигуряемость генты нра. Поднимается, кстати, если в первый раз, то за день где-то. Больше только если читать не умеешь.

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

Что мне даст Gentoo Linux взамен FreeBSD?

Можешь для начала остаться на FreeBSD, но получить нормальный portage вместо портов, благое гну-окружение, openrc, современный софт итд итп.

madcore ★★★★★ ()
Можно так.
1) Устанавливаешь Calculate Linux.

2) Грузишься.

3 )Распаковываешь portage
emerge poertage

4) Обновляешь
emerge --sync
или
layman -s calculate
или
eix-sync

5) Далее устанавливаешь ядро
emerge gentoo-sources

6) Идешь в /usr/src
И удаляешь символьную ссылку на Calculate ядро
rm linux

7) Делаешь ссылку на ядро gentoo
ln -sf /usr/src/gentoo-4.9.95 /usr/src/linux

8) Или вместо 5,6,7 пункта 
USE="-doc symlink" emerge gentoo-sources

9)Переходишь в linux
cd /usr/src/linux

10) Копируешь текущий конфигурационный файл .сonfig
zcat /proc/config.gz > /mnt/gentoo/usr/src/linux/.config
Если надо правишь через menu
11) make menuconfig

12) Компилируешь и устанавливаешь модули
make && make modules_install

13) Копируешь в /boot
 cp arch/i386/boot/bzImage  /boot/vmlinuz-4.9.95-gentoo
или для 64-битной системы
 cp  cp arch/i386/boot/bzImage  /boot/vmlinuz-4.9.95-gentoo  /boot/vmlinuz-4.9.95-gentoo

(Чтобы избежать блоков с поддержкой диска, разделов, файловой системой - vmlinuz - в начале названия обязательно)
14) Генерируешь intramfs с помощью genkenrel. Это возможно даже, если ядро собиралось вручную, команда примерно такая:
genkernel --install --no-ramdisk-modules initramfs

15) Последний этап - настраиваешь загрузчик, с учетом вышеперечисленного  - это делается автоматически в Calculate Linux, команда
cl-setup-boot 
Или такой командой - убедиться в том, загрузчик видит ядро
grub-mkconfig -o /boot/grub/grub.cfg

Будут примерно такие строчки:
Генерируется файл настройки grub …
Найден фон: /boot/grub/grub-calculate.png
Найден образ linux: /boot/vmlinuz-4.9.95-gentoo
Найден образ initrd: /boot/initramfs-genkernel-x86_64-4.9.95-gentoo

16) Все! Система установлена и переделана в Gentoo.
Можно настроить /etc/portage/make.conf/custom
И компилировать пакеты или устанавливать бинарные пользуясь всем средствами, всеми возможность layman - оверлеев. 


AnonymUser ()
Ответ на: комментарий от madcore

есть одно «но»:

Gentoo FreeBSD is no longer maintained by any active Gentoo developers.

(из wiki)

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

По всем пунктам отвечать лень, но скажу, что я в итоге перешёл FreeBSD-Gentoo-Debian. Ибо долго, нудно, софт старее.

Это в Debian софт старее. FreeBSD на острие прогресса: последние версии Firefox и Mesa3d появляются в портах быстрее, чем в Linux (будто их пишут сначала для *BSD, а через некоторое время переносят на Linux).

Для сборки из исходников ПО с нужными опциями нужен производительный процессор или время. Так, например, вчера собрал последнюю версию Chromium-65.0.3325.181. Время сборки пакета - 5 часов (карл!!) на AMD Phenom II X6 1055T. Время сборки самой операционной системы и ядра FreeBSD 11.2-STABLE с отключенными сервисами почты, DNS и всем тем, что не нужно на десктопе, - 3 часа. Так что думайте над конфигурацией компа, если хотите быстро канпелять.

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

Дополню.

rust-1.26.2 собирается 1 час 15 минут, libreoffice-6.0.4 - 1 час 30 минут.

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

Что мне даст Gentoo Linux взамен FreeBSD?

Вы сравниваете разные категории из разряда тёплого с мягким. Гента — это орудие для сбора своей ОС, или инструмент для сбора своего дистрибутива ГНУ/Линюкс, а любая Бздя — это готовый дистр, в котором тоже можно собирать из исходников, но тем не менее это дистр.

Итак: Генту — это не дистр, Генту — это инструменты для сбора лично вашего дистра, вот что надо знать новичку. Нельзя перейти на Генту, можно собрать свою рабочую среду с помощью Генты. Вот как только человек это поймёт и прочувствует, когда это ему понадобится, он возьмёт и поставить stage3 и далее. Если ему вдруг отпадёт в этом надобность, он будет пользоваться чему-то иным: хоть Бздёй, хоть Убунтой, хоть Виндой — делов-то.

За 6 часов можно собрать с тяжёлыми КДЕ, Либрой, Лисой и прочими жирными вещами. Зато получается чистая среда именно под вас. Ну а поставить Генту, то есть просто stage3 с ядром, собранным genkernel, можно за пару десятков минут, если ковырять в носу и бегать к холодильнику за пивом, отвлекаясь на поглаживание кота и (или) бабских прелестей. Остальное — сборка граф. среды и прочей фигни, нужной для работы.

Кстати, в Генте лучше всего работает КДЕ. Но есть бинарный дистр, в котором КДЕ работает не хуже, что радует; этот дистр --КДЕ неон. В нём устанавливается необходимый минимум сторонних пакетов, даже пакетов КДЕ. Поэтому тем, кому лень собирать свою ОС, можно сразу за 10 мин поставить КДЕ неон и приступить к работе, а в замен получаем всю «экосистему» Убунту, но качественно собранную и без всякой фигни. Чем не альтернатива Генты? :)

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

«За 6 часов можно собрать»

Зависит от машины. Если какой-нибудь Phenom, то за 6 часов возможно.

Если процессор Atom, то лучше ставить Calculate, а если потом очень нужно, то переключиться на компилируемый профиль.

AnonymUser ()
Ответ на: комментарий от GluckMan

Собрал kde5-5.12.4.17.12.3 на Phenom II X6 1055T под FreeBSD. Заняло далеко не 6 часов из-за глубокой кастомизации компонентов. Результат - кривой интерфейс, с которым просто противно работать.

Поэтому тем, кому лень собирать свою ОС, можно сразу за 10 мин поставить КДЕ неон и приступить к работе, а в замен получаем всю «экосистему» Убунту, но качественно собранную и без всякой фигни. Чем не альтернатива Генты? :)

Чем это отличается от GhostBSD?

iZEN ★★★★★ ()

Если не обновлять систему долго (полгода и более)

Как дуалбутчик как раз таки с гентой не могу подтвердить сие на 100%. Иногда играешь в какую то игорь под оффтопиком примерно полгода (учитывая что помимо игорь есть еще работа и другие дела НЕ за компом, то это общего, а не сугубо игрового времени). После перехода обратно в генту все нормально обновляется. Но для этого нужно очень внимательно прочесть все новости после emerge --sync, сделать все etc-update и опять таки внимательно прочесть выхлоп после emerge --update --deep --newuse world. Это будет чуть дольше и чуть посложнее чем обычное ежедневное обновление, но оно в сравнение не идет по сложности с первой установкой (хотя и может сравниться по времени сборки).

justin_case ()
Ответ на: комментарий от iZEN

Я последний раз ставил так: установил Calculate linux на нетбук с флешки, затем переключил профиль и перекомпилировал ядро от Gentoo и часть компонентов. А также часть наиболее используемых программ. Устновил весь набор, который может пригодится в работе. LibreOffice, pinta, openshot, geany, php, apache2, плееры, некоторый набор инструментов и максимум кодеков, blender. Всякие просмоторщики pdf и т.д. У меня офисный ноут, но мне на нем ничего нового не нужно.

В меня могут полететь камни, но самая нормальная среда в Linux xfce. Она же мышь. Она стабильна, допилена, поддерживается и минималистична.

Полтора года я не знаю проблем совсем. Все очень быстро работает, я ничего не хочу менять и добавлять. У меня нетбук HP mini 1.6gz

У меня даже на нем получалось в CS поиграть и OpenMorrowind. . Если себя с самого начала ограничить набором средств, то система настраивается один раз, (для боязливых делается образ системы). Минимальный набор программ способствует эффективности реальной работы. А когда есть возможность переставлять софт каждые полчаса, то это уже система ради системы.

Это моя идея: установи только то, что очень нужно. Критическое оптимизируй максимально один раз. Например ffmpeg и т.д. На крайний случай есть wine.

Есть VB. Если это не сервер забудь про обновления! Это комп на котором ты работаешь, пишешь ПО, тексты, рисуешь, смотришь, мультики.

«Зачем тебе выкачивать весь портаж раз в неделю????» Этот вопрос не адресован кому-то конкретному, а вообще пользователям....

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

Если это не сервер забудь про обновления!

Ну, если тебе плевать на уязвимости в софте, которые время от времени латают, то можно не обновляться. Но это плохая практика, чтобы рекомендовать ее всем.

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

Зачем тебе выкачивать весь портаж раз в неделю

Свалите уже с обновления через rsync и такого не будет. «Не обновляться» это совет по Остеру.

Это моя идея: установи только то, что очень нужно. Критическое оптимизируй максимально один раз.

Если один раз, то вместо кальки надо начинать со stage3.

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

Ну, если тебе плевать на уязвимости в софте, которые время от времени латают, то можно не обновляться. Но это плохая практика, чтобы рекомендовать ее всем

Это вполне приемлемая практика для линуксового десктопа.

Ломать тебя спецом никто не будет. Веерные боты и черви нацелены на популярные конфигурации, то бишь на Windows, возможно на MacOS. Здесь Линукс спасает его малая доля на рынка (десктоп, напоминаю).

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

Я, когда ставил людям Gentoo, естественно ее не обновлял, притом лет 5 или более. И всё работало как часы, так что опыт AnonymUser подтвержден на практике. Что заставило перенакатить систему, так это браузеры, которые реально устаревают так как постоянно появляются новые технологии/кодеки и сайты «перестают работать», да Скайп, который сломал обратную совместимость.

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

Один крутой гентовод Закачал однажды хак для ssh, вот!

Да и что ломать на моем ноутбуке. Вдобавок ломать сначала придется маршрутизатор.

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

Да проблема в основном с браузерами

Вот здесь я как раз ищу решение. Смотрю в сторону docker или всяких appimage, но пока решения не сформировал.

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

(Подозреваю что промахнулся ответом - не на мой коммент)

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

Я, когда ставил людям Gentoo, естественно ее не обновлял, притом лет 5 или более.

Ядро надо обновлять, если железо меняется.

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

Если железо меняется, то я ставлю заново систему. Но под сменой железа я понимаю смену компьютера.

Но сейчас у меня идеальная система и идеальное железо.

AnonymUser ()
Ответ на: комментарий от Deleted

> Я, когда ставил людям Gentoo, естественно ее не обновлял, притом лет 5 или более.
Ядро надо обновлять, если железо меняется.

Как часто ты меняешь железо в ноутбуке?
И при смене железа в 90% случаев достаточно проставить нужные галочки в ядре, обновлять не обязательно.

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

На самом деле она не требует даже этих нескольких команд, если использовать утилиты от calculate. Там автоматика полная. По крону можно.

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

У меня десктоп с обновлениями по крону с 2011 работает. (Ноут)

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

Так это все стандартно из года в год и легко автоматизируется. Не понимаю почему в генту еще этого не сделали. Посмотри на cl-update от calculate.

Просто каждый юзер все эти стандартные вещи каждый раз проходит на себе. Кто-то что-то забывает - проблема. Зачем так делать?

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

Он так то не медленный. Есть и бинарники в том числе. Просто кто-то забывает делать индексирование.

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

Я там забыл написать, что это была на ARM система, что чуток усложняет задачу.

devl547 ★★★★★ ()

Я б кое-что добавил к тому, что начал ТС:

1. Gentoo (и Arch) имеют очень продвинутый вики с порогом вхождения выше среднего (повышение собственного level'a - всегда того стоит!). НО

2. Если у тебя только 2 ядра - Gentoo не нужен.

3. Если у тебя больше, чем 2 рабочих, а не простаивающих сервака и много обновляемого ПО - Gentoo не нужен

4. Если у тебя постоянно юзабельный и постоянно переносимый с собой ноут - Gentoo не нужен.

5. Если у тебя есть опыт Gentoo, но тебе лень - то лучше возьми Calculate.

6. В любой случае на выходе ты будешь иметь какую-то степень красноглазия, более заметную по сравнению с другими линуксами.

7. Подумай, если ты не входишь в какое-либо dev-сообщество - оно тебе надо?

SunDoc ()

все это круто, и у генту есть свои фишечки, НО я вижу одну большую проблему - сообщество. Что ни гуглю, какие-то древние форумы 2000-2010, потом в основном тишина. Так-то все работает, как ожидается - но долго ли протянет Бобик?

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

Что ни гуглю, какие-то древние форумы 2000-2010, потом в основном тишина

Вот здесь вполне себе живые сообщества:
www.linux.org.ru
https://forums.gentoo.org

Дальше не искал, обычно первого хватает с лихвой, на второй только по каким-то очень изысканным проблемам обращаюсь.

Kroz ★★★★★ ()
Последнее исправление: Kroz (всего исправлений: 2)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)