LINUX.ORG.RU
ФорумTalks

Ищу истории успеха с LFS

 , нефиг делать,


2

2

Есть тут такие, кто не поленился собирать LFS (который Linux from scratch)? В чём преимущество? Насколько оправдано и насколько геморройно?

Можно ли потом сделать свой дистрибутив?

Есть ли смысл пилить свой велосипед? Свой пакетный менеджер? (Высший пилотаж - пакетный менеджер, собирающий пакеты сразу из tar.{bz2,gz,xz} и устанавливающий их).

Ну и сколько на это потребуется времени?

//P.S. Да я помню про видеодрайверы. После выпуска буду этим вопросом заниматься более активно.

★★★★

Мы как-то на работе собрали, году в 2004м. Собрали caca-lib и mplayer, смотрели Шрека в терминале.

Shaman007 ★★★★★
()

Пробовал LFS - не понравилось (для embedded). День (и больше) убитого времени. Проще дистрибутив на основе gentoo или slackware сделать.

Смысл пилить свой пакетный менеджер есть - чтобы разобраться в основах написания пакетных менеджеров :)

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

Я не поленился. Собрал кеды и весь необходимый набор софта. Уже готовился переходить с генты. Но сегодня психанул и удалил все. Сдали нервы. Так и не удалось заставить gtk менять темы при работе в КДЕ.

Трудозатрат очень много. Преимуществ кроме понта перед гентой нет. В ходе сборки приходит понимание, как вручную установить что угодно на кокой угодно дистрибутив. Это, пожалуй, единственный профит.

curufinwe ★★★★★
()

Есть ли смысл пилить свой велосипед? Свой пакетный менеджер? (Высший пилотаж - пакетный менеджер, собирающий пакеты сразу из tar.{bz2,gz,xz} и устанавливающий их).

Портеж уже существует, но, говорят, не всех устраивает. Лучше уж вписаться в его разработку и улучшение, если прям так горит. А про профит эльфы выше уже всё написали: умение поставить руками что хочешь.

beresk_let ★★★★★
()

Высший пилотаж - пакетный менеджер, собирающий пакеты сразу из tar.{bz2,gz,xz} и устанавливающий их

Значит ФрееБЗД высший пилотаж. Лет 20 как.

IPR ★★★★★
()

Я собирал скриптами которые всё автоматически делают. Сам почти ничего не делал и за пару дней скомпилировалась основная система (без графики). Я запустил, потыкал и подумал «зачем оно мне нужно?...».

Поставь генту и будет у тебя всё. Если хочешь осуществить всё из списка - приготовься к тому что через пару месяцев всё забросишь так как изобретаешь велосипеды.

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

caca-lib и mplayer

Забавно, там еще была такая штука, как matrix. Сейчас в манах что-то не нашел.

Eddy_Em ☆☆☆☆☆
()

Я собирал. Сидел долго...даже преупаковал всё это однажды в RPM и гордо назвал «Совя дистра» потом повзрослел и ушёл в убунту. Практического смысла нет как такового зато есть опыт и понимание как ЭТО всё работает.

chapay ★★★
()

да начинай, делов-то. только сначала ответь себе на вопрос «Зачем?»

aiqu6Ait ★★★★
()

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

Spoofing ★★★★★
()

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

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

Предыдущая тема по поводу глюков арча. Вечно в арче что-то отваливается.

Ну и да, надо же расти :-)

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

А как же ко-ко развитие? Надо же новое учить.

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

Так ведь там только мейк, мейк инсталл клин.

Ты тупой? Тебе уже раз двести сказали, что это не ваши линаксовские мейк инсталлы в тарболах. Там всё это делается в дереве портов и регистрируется в /var/db/pkg. Ну можно поставить портмастер и использовать его, если у некоторых словосочетание мейк инсталл вызывает такую боль.

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

Я просто фряху вообще не знаю, считай.

Именно. Во ФрееБЗД система портов очень неплохо развита, удобный поиск и установка, в любой момент можно исправить Makefile нужного приложения под свои нужды.

IPR ★★★★★
()

Преимущество в полном контроле над системой. Над всеми опциями сборки, над каждым файлом. «Your distro, your rules» (c) И, если не обновлять ежедневно систему, то и пакетные менеджеры не актуальны.

saahriktu ★★★★★
()

Вам шашечки или ехать?

Если делать нефиг и хочется покрасноглазить - LFS или хотя бы Lunar. Если хочется немного покрасноглазить и собрать систему для дальнейшего домашнего использования - Gentoo.

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

Кстати, когда я летом смотрел Gentoo, то, например, не мог собрать midnight commander. Ибо, он требовал для сборки того, что в моей системе не должно было быть. Можно было решить через свой оверлей, но не проще ли собрать руками?!

saahriktu ★★★★★
()

Могу сразу сказать

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

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

Кстати, в своё время меня этот компромисс в виде генты вполне устроил. Профит - научился пользоваться chroot, ещё что-то по мелочи. В последнее время что-то опять тянет в сторону LFS, но пока не созрел.

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

Уверен, что проблему нельзя было решить использованием USE-флагов, для исключения того, что он за собой тянет ненужного?

neocrust ★★★★★
()

Да, почти все собирали в своё время. Через это нужно пройти, потерять LFS девственность. Полезность - 0.0. Только фан.

Высший пилотаж - пакетный менеджер, собирающий пакеты сразу из tar.{bz2,gz,xz} и устанавливающий их

Это ты про emerge?

GreenBag ★★
()

Можно ли потом сделать свой дистрибутив?

Да. Можно. Я собирал в 2005-2006 году на основе uclibc+busybox, с загрузкой через init, ядро 2.4 (i586).
Патчи лдя gcc брал из buildroot и Gentoo, но скомпилять gcc-uclibc нативно не осилил, забросил сделав 80% работы.

pacify ★★★★★
()

В чём преимущество?

Так создаются дистрибутивы.

Есть ли смысл пилить свой велосипед?

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

Ну и сколько на это потребуется времени?

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

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

Пока ты соберешь систему, некоторые пакеты устареют, а при отсутствии репозитория тебе придется собирать их

Это зависит от количества пакетов. Если собирать сам LFS, плюс в пределах нескольких десятков дополнительных, то много времени на это не уйдёт, ничего не устареет.

saahriktu ★★★★★
()

Я собирал. Скучно. Но чувство, что делаешь что-то особенное есть.

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

подскажи. сижу в убунте (12.10) хочу поправить gnome-system-monitor - что бы некоторые индикаторы которые на 2-ух разных вкладках разместить на одной (что бы не нужно было бы переключатся) = для этого нужно уметь билдить бинари из сырцов.

как бы по шагам ( исключая этап коректировки сырцов) - билдить gnome-system-monitor c сырца-пакета , что бы после компиляции «apt-build»(?) разместила бы полученый бинарь по нужным путям. - т.е заменить имеющийся цельнотянутый бинарь , на своё поделие.

qulinxao ★★☆
()

Есть тут такие, кто не поленился собирать LFS (который Linux from scratch)?

Да. Правда, использую DIY Linux, но он похоже несколько лет как мёртв, так что скоро вернусь на LFS. DIY выбрал потому, что инструкции в нём были рассчитаны на сборку своих пакетов.

В чём преимущество?

В системе только то, что нужно. Нет неизвестных/непонятных/нелюбимых сервисов. Вместо того, чтоб париться, куда бы засунуть конфиг, чтобы очередное обновление его не перезатёрло, тупо засовываешь его дефолтным в пакет и не паришься... Вместо того, чтоб париться, откуда достать/как собрать/куда поставить новый пакет, тупо ставишь в /usr вместе с остальными. Вместо того, чтоб париться, какие помойк...^W репозитории подключить, скачиваешь исходник с оффсайта и собираешь. Вместо того, чтоб пловину конфигурации системы помещать в свой /home/user, делаешь эти конфиги глобальными. Вместо того, чтоб думать, какие из сотни пакетов вида php-*.i686.rpm поставить, ставишь только php, и в нём всё есть.

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

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

Кстати, пользуясь случаем, хочу рассказать, как недавно решил попробовать supertuxkart, скачал с оффсайта БИНАРНУЮ сборку и она затребовала установку OpenLDAP. Когда скачал исходник, то собралось и запустилось без всяких лдапов.

Насколько оправдано

Хочется сказать, что совсем неоправдано. Но периодически сталкиваюсь с yum/rpm и «промышленным» CentOS/Fedora, и понимаю, что жить с этим (yum/rpm) я бы не смог, поставил бы хакинтош.

и насколько геморройно?

Многие пакеты содержат идиотские зависимости. Например, openjdk зависит от блоба самого себя. Как это собрать с нуля, непонятно. Или, тут недавно был тред, сборка WebKit стала зависеть от Ruby. Причём только сборка, тогда как для запуска он не нужен. Очередное школоло не осилило perl/awk. Так что будь готов поставить в систему пяток наиболее популярных языков и библиотек к ним, даже если тебе они не нужны.

Ну и сборка второго гнома или (по слухам) OOo - та ещё пытка. Второй гном вообще разбит на триллиарды крошечных пакетиков, зависящих друг от друга. И чтобы собрать какой-нибудь gnome-games приходилось всё равно ставить половину гнома. С KDE это было проще - kdelibs+kdebase, а остальное - по желанию. С другой стороны, e17 и xfce тоже состоят из десятка пакетов каждый, но скрипты сборки там одинаковые, проблем с ними абсолютно нет.

Если есть скрипты, то, как правило, нужно лишь изредка добавлять новые пакеты, или собирать уже известные в другом порядке. ./configure проверяет зависимости не хуже rpm.

Но добавление новых пакетов из apt-get install pkg превращается в лучшем случае в ./configure && make DESTDIR=$PKG install-strip, а в худшем в пару дней поиска и сборки зависимостей и поиска патчей к ошибкам сборки (особенно, если gcc или glibc последней версии или софтина большая и кривая навроде файрфокса).

В целом, лично я перестал пользоваться монструозным софтом окончательно (сил для сборки требует много, а по качеству работы находится на уровне лёгеньких аналогов, GNOME3 по слухам до сих пор не научился комфортно работать с окнами). Так что никакого gnome/kde/OOo (по крайней мере, не из исходников).

Можно ли потом сделать свой дистрибутив?

ИМХО если НЕ делать свой дистрибутив, то через 2-3 полных пересборки надоест и вернёшься на слаку/арч/генту. Необходимость написания сборочных скриптов почувствуется, когда потратишь полдня, вспоминая, как же собирал какой-нибудь мутный пакет в предыдущий раз.

Есть ли смысл пилить свой велосипед? Свой пакетный менеджер?

Я написал аналог слаковского (отчасти оттого и слезть с LFS не могу, что жалко выкинуть на ветер столько трудов) с аналогами SlackBuild'ов. Но, по большому счёту, это просто shell-скрипты для сборки плюс GNU tar как формат пакетов.

Но думаю, что какой-нибудь pacman/pacman-ng/pkgtools справились бы с задачей немногим хуже, а то и лучше.

(Высший пилотаж - пакетный менеджер, собирающий пакеты сразу из tar.{bz2,gz,xz} и устанавливающий их).

Нет. Каждый пакет собирается по-своему. Описанное тобой будет работать в 90% случаев, может даже в 95%, но определённо не во всех.

Ну и сколько на это потребуется времени?

Если в системе есть всё, что тебе нужно, - нисколько. Установка же нового пакета редко сравнится по времени с apt-get install, а займёт больше времени, т.к. параллельно придётся ставить и зависимости.

Я делаю полную сборку (с нуля) раз в 1-2 года и потом обновляю индивидуальные пакеты. С учётом наличия готовых скриптов, мне нужно лишь поправить номера версий, скачать исходники и запустить сборку. От начала и до конца уходит, как правило, 1-3 недели свободных вечеров и выходных (как повезёт). Но если везёт, то во время сборки можно фильм посмотреть, или ещё чем заняться.

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

Спасибо. Хорошая мотивация в начале рабочего дня.
Под свежий, горячий молочный улун, текст доставляет.

pacify ★★★★★
()

Есть тут такие, кто не поленился собирать LFS

Собирал для работы ноута в режиме читалки в дороге. Операционка «читалки» лежала на СДшке и имела самый минимум софта для загрузки и чтения PDF/Djvu + максимальная заточка под энергосбережение, всё это крутилось на Fujitsu P1510. Добился 6-9 часов работы от 3-хячейки.

В чём преимущество?

В самообразовании.

Можно ли потом сделать свой дистрибутив?

Можно. ЗАЧЕМ?

Ну и сколько на это потребуется времени?

Всё зависит только от тебя.

gear ★★★
()

Интересный тред..

Ага, собрал вот недавно дома на ноуте lenovo e330. Дошел почти до CLFS (нужно было организовать 32битный энвайронмент), тот же скайп и подобное, в конечном счете просто смотрел какие либы были нужны и бинальным образом подкладывал, геморно: да в принципе как и весь процесс сборки LFS. Хотя, хочу сказать, что оно того стоило, довольно интересно. Документации (stable) практически без багов, если все по уму делать, ничего сломать не получиться. Правда бывают всякие случаи. Вот буквально вчера чувак на #lfs-support забыл сделать линк на $LFS/tools в корень рута, и жалуеться почему не может создать директорию в $LFS/tools.

Юзаю почти все легковесное, никакое DE не собирал, из тяжеловесного компилял libreoffice ну и gtk-ные приложения.

Многие могут сказать, что геморно все руками делать, но поверте, если юзать на постоянной основе LFS можно автоматизировать все. Ребята даже реализовали прототип пакетного менеджмента http://www.linuxfromscratch.org/hints/downloads/files/crablfs.txt, позновательно, кстати. В идеале, если убить немного времени можно получить неплохой профит, хотя на корпоративный серверах, энтерпрайзах я бы не стал ставить LFS.

LSF / себе пока оставил/забэкапил. Ну а так вернулся на дженту, да и дебиан всегда под рукой.

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

Ого. Спасибо за подробный ответ.

Попробовать интересно, а вот что смогу постоянно на этом сидеть - сильно сомневаюсь. Вот и думаю, стоит ли вообще начинать.

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

Успех будет только в том, что ты научишься копипастить из книжки в консоль

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