Выбор линукса

Dimon89

Собираю новый комп, хочу поставить туда линукс.
Задачи:
1) Роутер: раздача интернета, фоновая закачка торрентов, перенаправление портов, фаерволл, шейпер трафика.
2) Работа: программирование C++ \ Python.
3) Быт: игры (большая часть скорее всего под wine офис, медиа.
Требования в порядке убывания значимости:
1) Всё это должно быть красиво и удобно. Крайне необходим удобный гуй ко всему этому. Хочется ещё и красивый, но такого я в линуксах пока ещё ни разу не видел.
2) Усилия по приведению дистрибутива из состояния "только поставил" в состояние "всё вышеперечисленное работает" должны быть минимальны. Я не хочу потратить месяц на копиляцию и чтение манов.
3) В процессе работы у меня не должно возникать желание лезть в ман и гугль каждые две минуты. Да, я убежден, что линукс-разработчики не знают словосочетания "юзер-френдли интерфейс", но вдруг у кого-нибудь случайно получилось...
Итак, что выбрать?
UPD: Ставлю OpenSuse

juliuzz

[ mode]ставь 2.6.37 не ошибёшься[/ mode] :smirk:

juliuzz

Итак, что выбрать?
винду
а инет раздавать да торренты качать поставь роутер типа asus wl500gp

Dimon89

винду
а инет раздавать да торренты качать поставь роутер типа asus wl500gp
Винду вернуть всегда успею, это на 15 минут делов. А тут клёвый повод побаловаться с новой игрушкой - вдруг понравится.

dangerr

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

oliver11

2) Усилия по приведению дистрибутива из состояния "только поставил" в состояние "всё вышеперечисленное работает" должны быть минимальны.
3) В процессе работы у меня не должно возникать желание лезть в ман и гугль каждые две минуты.
Несовместимо с линуксом. Шейпер, перенаправление портов и фаервол одними кликами мышки ты не настроишь. +1 к ставь винду.

dangerr

+1 к ставь винду
А там это всё одним кликом настраивается?
Я помнится года 3-4 назад просто NAT через RRAS делал... тонны галочек и мастеров, непонятно что делающих, очень доставляли. :)

oliver11

А там это всё одним кликом настраивается?
Не одним. Кликать надо долго. (Все же помнят мануал в картинках от айвенго?)

Dimon89

А там это всё одним кликом настраивается?
Там нет шейпера как факт, а фаерволл приходится отключать. NAT и перенаправление портов делаются в 5 кликов (в 2008-й).

juliuzz

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

dangerr

Как раз только благодаря этому мануалу у меня тогда и получилось. Но он уже канул в лету вместе с fds-net.ru
Без него даже с гуглом скорее всего бы не вышло. Интерфейс напрочь лишён всякой логики, результат любой настройки можно понять только экспериментально.

Viktory-s

Задачи:
1) Роутер: раздача интернета, фоновая закачка торрентов, перенаправление портов, фаерволл, шейпер трафика.
2) Работа: программирование C++ \ Python.
3) Быт: игры (большая часть скорее всего под wine офис, медиа.
Требования в порядке убывания значимости:
1) Всё это должно быть красиво и удобно. Крайне необходим удобный гуй ко всему этому. Хочется ещё и красивый, но такого я в линуксах пока ещё ни разу не видел.
2) Усилия по приведению дистрибутива из состояния "только поставил" в состояние "всё вышеперечисленное работает" должны быть минимальны. Я не хочу потратить месяц на копиляцию и чтение манов.
3) В процессе работы у меня не должно возникать желание лезть в ман и гугль каждые две минуты. Да, я убежден, что линукс-разработчики не знают словосочетания "юзер-френдли интерфейс", но вдруг у кого-нибудь случайно получилось...
1) Firewall Builder -
http://www.fwbuilder.org/4.0/features.html
http://www.fwbuilder.org/4.0/how_it_works.html
Что-то из этого делается в два клика в mcc из Mandriva Linux.
2) С этим нет проблем почти во всех дистрах. Гуёвых и "очень" умных сред для них в линуксе достаточно.

3) Этому условию удовлетворяют уже многие дистрибутивы.
Критерии в твоём случае скорее должен быть такими.
1) Размер репозитария должен быть большим (компилить тогда не придётся)
2) Скорость добавления новых версий программ. (wine например)
3) Количество квалифицированных людей пользующихся оным дистрибутивом (например на форуме)
По пунктам могу назвать субъективно несколько лидеров:
1) Debian (основанные на нём скорее Mandriva - из бинарных дистрибутивов имеют несравненно бо'льшие репозитарии чем все остальные.
2) Из рпм основанных дистрибутивов Мандрива просто вне конкуренции. Про дебиаовские дистры ничего не могу сказать.
3) Тут, по крайней мере у нас на форуме, преобладают дебиановцы (я имею ввиду его разновидности).
Таким образом для rpm могу посоветовать следующие дистры:
Mandriva,OpenSUSE
В deb не силён. Пусть посоветуют знатоки.

oliver11

Там нет шейпера как факт
Гугл выдаёт какой-то Traffic Shaper XP. Судя по описанию, всё умеет.
Не надо гнать на винду, это почти нормальная операционная система. Там почти всё есть.

dangerr

кроме того "фоновая закачка торрентов" предполагает клиент-серверную модель приложения по типу демона трансмиссии — тоже прямо скажем нетривиальная задача
Ну это в отличие от остального всё же просто(easy): установил, запустил, зашёл браузером на localhost:9091 и вперёд.

juliuzz

установил
удовлетворил кучу зависимостей пока это дело соизволило скомпиляццо
запустил
изрядно поправил дефолтный конфиг и прописал в "автозагрузку"
зашёл браузером
а перед этим открыл соответствующий порт в фаерволе
и всё это удалённо
теперь оно конечно работает, но блять вышла новая версия!

Dimon89

Как раз только благодаря этому мануалу у меня тогда и получилось. Но он уже канул в лету вместе с fds-net.ru
У меня есть, если надо.

Dimon89

Выбрал OpenSuse
Да чем же так все недовольны-то? Мнусуют, и ни одного комментария. Где конструктивная критика?

dangerr

удовлетворил кучу зависимостей пока это дело соизволило скомпиляццо
Зависимости в любом уважающем себя пакетном менеджере автоматом удовлетворятся. Да и их у него по-минимуму: если это дистр с предустановленным DE (а очевидно только такие могут удовлетворить критериям минимальной необходимой настройки то скорее всего все зависимости уже будут удовлетворены.
Скомпиляться - это по желанию, опять же ТС хочет бинарный дистр, а не сырцовый. Да и кроме чуть большего времени на установку компиляция ничего нового не привнесёт.
 
изрядно поправил дефолтный конфиг и прописал в "автозагрузку"
Дефолтный конфиг для этого править не надо. В автостарт - фича опциональная, на работе не скажется. Хотя в убунте например все устанавливаемые демоны туда автоматом добавляются.
 
а перед этим открыл соответствующий порт в фаерволе
Вспомнился советский мульт: "Чтобы продать что-нибудь ненужное, надо сначала купить что-нибудь ненужное".
 
но блять вышла новая версия!
До которой обновление произойдёт автоматически ;) (либо по запросу юзера, но без дополнительных телодвижений кроме этого запроса).

dangerr

У меня есть, если надо.
Мне уже нет :grin:
А вообще выложи на форум, кому-нибудь да пригодится, зачем зря добру пропадать?
В раздел FAQ наверное...

juliuzz

я рад за ТС
в моём случае всё было много сложнее
трансмиссию из сырцов ставил на головную машину кластера под древним и давно не обновляющимся RHEL, в которой ни в коем случае нельзя было ничего трогать и не работает (поломан?) apt-get

dangerr

Ну это явно нестандартный случай. Не стоит его обобщать :)

Dimon89

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

juliuzz

не стоит
"но осадок остался" :)

fufa58

поставить ... с флэшки
а unetbootin не поможет?

Dimon89

а unetbootin не поможет?
Спасибо. В этих ваших интернетах и официальной вики опенсуси об этой программе ни слова. Скачал - то, что надо. Завтра буду экспериментировать.

Serab

Да чем же так все недовольны-то? Мнусуют, и ни одного комментария. Где конструктивная критика?
выбрал ОСь — получил пару десятков врагов :grin:

Serab

У меня в свое время эта прога не заработала. Если не получится, можешь покурить тут: http://www.gentoo.org/doc/en/liveusb.xml
Ну там emerge надо заменить на <ваш менеджер пакетов>. Ну или если грузишься с live cd/dvd, то syslinux должен там стоять. Так вот тыщу раз делал, все пучком.

Serab

gnetoo еще не предлагали?

Serab

gnetoo
мда :crazy:

Filan

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

shlyumper

Кхм. Давным-давно, еще при царе...
В общем, некоторые клоны RHEL (Scientific Linux, в частности) в районе RHEL3 использовали действительно apt-rpm в качестве замены up2date, бо yum тогда еще был очень убог.

yroslavasako

Я, конечно, уже поздно пришёл, но чтобы не компилить и всё было и при этом настраивать можно было и без ненавидимых мною rpm - Arch Linux. Это разумеется если выбирать дистриб, выбор линукса более прост - последний стабильный

yroslavasako

Гугл выдаёт какой-то Traffic Shaper XP. Судя по описанию, всё умеет.
Судя по описаню он не умеет заёмы. То бишь трафик ограничивается сверху и не может качать больше своего ограничения, если другие классы трафика не занимают канал. А это уже шейпером я бы не назвал.

yolki

НАДО!
Выложи куда-нибудь, а лучше архивом сдай в аплоад.

yolki

ещё нет. ты первый

serega1604

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

dangerr

gnetoo еще не предлагали?
Очевидно он под критерии ТС не подходит. Ему нужен "дружественный интерфейс" и всё такое.
Арча это вроде как тоже касается...

dangerr

лучше архивом сдай в аплоад
Чем это лучше? Тем, что никто в поиске не сможет найти?

danilov

> Да чем же так все недовольны-то? Мнусуют, и ни одного комментария. Где конструктивная критика?
Красноглазые - религиозные фанатики... Ты выбрал не их дистрибутив, вот и минусуют (тока сусники плюсанули).
А реально, ты же не разобрался, что выбрать, из предложенного (Debian (лучше, наверное, Убунта, она более user-friendly Mandriva, Open Suse).
ты выбрал третье, хотя плюсы тебе описали только у первых двух. Зачем вообще тогда это обсуждение, если к советам ты не прислушиваешься?
Я бы рекомендовал убунту (apt очень удобен, тока надо немного попривыкнуть).
Не, ну, если совсем по-пацански, то дебиан, но более красноглазый

Fragaria

Обычно новичкам советуют Ubuntu как самый лучший дистрибутив для новичков, с самым большим комьюнити. Я уже почти 7 лет сижу на линуксе и юзаю убунту, хотя давно не новичок. Но большинство тут на форуме считают, что убунта - это не по-пацански (не знаю, может стыдятся этого дистра, типа он для хомячков и вовсю советуют всякие дистрибутивы для продвинутых (типа генты и arch, ну или как минимум debian). продвигает мандриву, но это локальная флуктуация :) Опенсузе здесь вроде никто всерьез не юзает, разве что федечка изредка его ставит, чтобы убедиться, что линукс- говно, и сносит сразу. Так что если что - придется разбираться во всем самому.

tokuchu

Ну я вот дома Убунту ставил. Сначала удобно казалось, но сейчас уже сильно надоела. Поэтому теперь Arch ставлю дома, если что-то переустанавливаю.

apl13

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

Dimon89

А реально, ты же не разобрался, что выбрать, из предложенного (Debian (лучше, наверное, Убунта, она более user-friendly Mandriva, Open Suse).
ты выбрал третье, хотя плюсы тебе описали только у первых двух. Зачем вообще тогда это обсуждение, если к советам ты не прислушиваешься?
Я обсуждаю эту тему не только на этом форуме. Решающими аргументами в пользу OpenSuse были:
а) её посоветовали везде
б) поблизости есть люди, готовые помочь с настройкой
в) посмотрел livecd

danilov

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

juliuzz

продвигает мандриву, но это локальная флуктуация
я если и ставлю линукс — это всегда мандрива
уж очень мне мандрейк понравился лет 10 назад :)

Dimon89

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

yroslavasako

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





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





Ну и помимо всего прочего, есть множество задач под линуксом, которые ещё не автоматизированы и не раскрашены в гуй под каким-бы то ни было дистрибутивов. Вот я на базе Xephyr недавно делал из одного компа два рабочих места. Кучу гугления, куча экспериментов, и всё это в консоли без малейшего толка от гуя. Сам себе ваял конфиги для kdm, xorg.conf и писал хитрый скрипт инициализации иксов при старте .xinitrc

dangerr

новичкам советуют Ubuntu как самый лучший дистрибутив для новичков
Почему это слово "новичок" обязательно значит, что он хочет этой самой юзерфрендливости и искаробочности? У всех разные мотивы и если человек хочет слезть с винды из-за того, что её невозможно полностью настроить под себя и готов ковыряться в манах, то не стоит ему советовать убунты, мандривы и прочее.
Мне около 7 лет назад посоветовали один из таких дистров - ASPLinux (по-сути - Fedora). Поставил я его, посмотрел на древний унылый гном, который в дефолтном виде оказался ещё менее удобен, чем виндовая оболочка, полазил в его немногочисленных настройках и снёс.
В результате выработалось чёткое неприятие, которое смогло быть переломлено только через 4 года. И то сначала я освоил FreeBSD (не на десктопе, а а для мелкого сервера) и только потом мне объяснили, что есть такой дистрибутив, как Gentoo, который по сути тот же FreeBSD, но с нормальным портажем вместо унылых портов и с ядром, которое больше железа умеет. А вот если бы мне не стали тогда советовать дистрибутив "для новичков", а послушали что я вообще хочу от системы, то я бы уже тогда ушёл с винды.

apl13

Почему это слово "новичок" обязательно значит, что он хочет этой самой юзерфрендливости и искаробочности?
Ну привыкли в каждом новичке подозревать того, кто просто не хочет больше платить за винду и кому нужна такая же винда, но бесплатно.
Надо РеактОС советовать, лол.

Viktory-s

Решающими аргументами в пользу OpenSuse были:
Нормальный выбор. В принципе там даже больше утилит для настройки разных сервисов в YAST чем в Мандриве. Хотя таск пакеты в мандриве рулят. :)

dangerr

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

yolki

ещё как находится, делается так:
ставится ссылка
в посте прописываются ключевые слова/тэги:
настройка rras
настройка маршрутизации windows
routing and remote access service windows
rras by
и после этого всё будет искаться на ура.
правда этот пост тоже будет внезапно находиться :)
но можно будет сюда вписать ссылку на аплоад - вон вверху место оставлено

dangerr

В твоих ключевых словах нет например NAT или PPTP, а в самом мануале они были. Добавишь их - можно будет найти другие.
И зачем нужно скачивать архив и распаковывать вместо того, чтобы просто посмотреть это всё в нормальном виде в форуме? Может это вообще не то, что человеку надо.

yolki

ну не перепосчитвать же его.

Dimon89

Убедили, вечером займусь.

Dimon89

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

Dimon89

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

apl13

Это ты к чему?

apl13

Когда у меня кто-либо спрашивает что ему поставить, я сначала пытаюсь выудить у него как он представляет себе систему его мечты, что ему особенно не нравится в винде, насколько есть желание со всем разобраться.
А если отвечает: "Ну вот там у меня если жмешь на правом крае, то не работает, а надо, чтобы работало, а там мне посоветовали линукс"? :)

Filan

<offtopic>
Gentoo, который по сути тот же FreeBSD, но с нормальным портажем вместо унылых портов
ОМГ. Чем тебе порты то не угодили? Или здесь опять привык к одному и сразу всё остальное кажется нелогичным, неправильным и неудобным?
</offtopic>

yroslavasako

ОМГ. Чем тебе порты то не угодили? Или здесь опять привык к одному и сразу всё остальное кажется нелогичным, неправильным и неудобным?
может отсутствием аналогов USE-флагов и слотов?

dangerr

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

dangerr

Желания разбираться у меня хоть отбавляй. В частности, мне очень понравился твой Ion, но под винду его поставить нельзя.
Тогда тебе в первую очередь надо определиться чего ты хочешь: искаробочности или настройка под себя благодаря, а не вопреки инструментария. Это две совершенно разные идеалогии к построению дистрибутива и объеденить их в одном не представляется возможным.

dangerr

Или здесь опять привык к одному и сразу всё остальное кажется нелогичным, неправильным и неудобным?
Вижу необоснованное обвинение в синдроме утёнка. Требую обосновать. Что и значить "опять"? Когда такое было?
Факт свитча FreeBSD -> Gentoo напротив подтверждает наличие у меня антисиндрома утёнка. Я имел очень неплохой и хорошо изученный инструментарий во фре, но таки решил попробовать Gentoo и понял, что там инструментарий лучше.
А когда я впервые "устанавливал Linux", то ожидал увидеть что-то концептуально новое, удобное, продуманное по сравнению с виндой, а вместо этого увидел идеалогический клон винды (в виде гнома). На тот момент ещё и менее удобный (сейчас гном имхо немножко {совсем немножко} удобнее винды).
То есть, напротив, если даже есть что-то, что меня полностью устраивает, я буду интересоваться альтернативами, надеясь найти ещё лучшее.

dangerr

Чем тебе порты то не угодили?
Как мне при установке чего-нибудь сначала посмотреть что оно поставит по зависимостям?
Далее вылазиет синяя херня на curses (curses! где мне можно выбрать опции сборки. Как их снятие/установка повлияет на зависимости можно только гадать.
Причём эта синяя херня может возникнуть не только в начале процесса, но и в середине. А значит процесс нужно контролировать постоянно и нельзя отправить в nohup И после этого гентушников называют красноглазыми, вечно всё компиляющими - я поставил компиляться и пошёл спать, а за make install или portupgrade следить надо.
И это ещё хорошо когда она вообще есть. Вот для mysql мне make config радостно сообщает, что опций нет, тогда как emerge выдаёт кучу USE-флагов: community perl ssl -big-tables -cluster -debug -embedded -extraengine -latin1 -max-idx-128 -minimal -pbxt -profiling (-selinux) -static -test -xtradb. Это нормально вообще?
А при апгрейде появилась эта синяя хрень и как мне понять какие из опций я выставил ещё в прошлый раз, а какие добавились новые?
Удаление с зависимостями вообще весело: удалил что-нибудь и смотри потом по всем установленным пакетам с помощью pkg_info ненужные тебе пакеты, от который не зависит ни один нужный. Потом ручками их удаляй.
Кстати, если я вдруг до чего-то недопёр и что-то из этого сделать можно, то решения крайне приветствуются - FreeBSD у меня до сих пор на одном серваке стоит.
Что мне точно во фре больше нравится - так это ipfw по сравнению с iptables, но это уже субъективно.

doublemother

Далее вылазиет синяя херня на curses (curses! где мне можно выбрать опции сборки. Как их снятие/установка повлияет на зависимости можно только гадать.
А в генте можно по-человечески получить список доступных юз-флагов для пакета? Ну, мне ради академического интереса, потому что когда мне приходилось ей пользоваться, я этого не находил.
Кроме того во фре есть хотя бы curses, в то время как в генте на все мои вопросы "а есть ли для генты нормальный гуёвый менеджер пакетов, а не комманд-лайн тулзы?" мне все гентушники отвечают что-то в стиле "кажется, что-то такое когда-то кто-то пилил, но это никому не нужно".

tokuchu

А в генте можно по-человечески получить список доступных юз-флагов для пакета?
equery u …
Кроме того во фре есть хотя бы curses
Это не менеджер пакетов curses, а опции (аналог use-флагов) через curses-диалог задаются. Сам пакетный менеджер тоже CLI, хотя может я про какие GUI или TUI не знаю.
"а есть ли для генты нормальный гуёвый менеджер пакетов, а не комманд-лайн тулзы?" мне все гентушники отвечают что-то в стиле "кажется, что-то такое когда-то кто-то пилил, но это никому не нужно".
Конечно, т.к. проблема в том, что "нормальный" имлицирует CLI, и поэтому требование нормального и графического противоречиво. :grin:

dangerr

А в генте можно по-человечески получить список доступных юз-флагов для пакета? Ну, мне ради академического интереса, потому что когда мне приходилось ей пользоваться, я этого не находил.
emerge -pv имя_пакета
eix имя_пакета
equery u имя_пакета
Это вообще самые основы portage
Кроме того во фре есть хотя бы curses
Что значит "хотя бы"? curses/slang/etc - жуткое убожество, сочетающие в себе недостатки как гуя, так и консоли.
а есть ли для генты нормальный гуёвый менеджер пакетов, а не комманд-лайн тулзы?
Во фре он есть? Зачем?
Единственное для чего можно себе представить нужность гуи - это для отображения древа зависимостей, генерируемых equery и emerge с параметром -t

doublemother

Менеджер пакетов, если его можно так назвать, я во фре встречал только в виде sysinstall (кажется, так называется) и оно тоже на curses.
Это не менеджер пакетов curses, а опции (аналог use-флагов) через curses-диалог задаются. Сам пакетный менеджер тоже CLI, хотя может я про какие GUI или TUI не знаю.
Ну да, я это и имел в виду. Работа непосредственно с менеджером во фре заключается в cd /usr/ports/package/name :)
Конечно, т.к. проблема в том, что "нормальный" имлицирует CLI, и поэтому требование нормального и графического противоречиво. :grin:
Вот в этом заключаются все гентушники, да. Я конечно тоже эти ваши gui преимущественно не понимаю и консолька во многом проще и быстрее, но для менеджмента пакетов, коих >9e3, лучше юзать что-нибудь типа aptitude, нежели целиком command-line apt-get.
А гентушники за свой консольный emerge удавятся, даже несмотря на то, что он написан на, прости господи, пейтоне.

doublemother

curses/slang/etc - жуткое убожество, сочетающие в себе недостатки как гуя, так и консоли.
Аргументы?
Я вот вижу, что оно работает на любом терминале и через ssh без всякого прокидывания иксов, что оно не тормозит и не глючит, как различные гуёвые тулкиты, особенно на нестабильных ядрах или когда вводят новую крутую технологию (см. KMS а авторы драйверов (см. Nvidia) под эту новую крутую технологию уже пару лет как не могут допилить свои драйвера.

hwh2010

не глючит
не глючит только вендовый текстовый режим. В консолях юникс-подобных систем с клавиатурой пиздец, как с ssh так и без. С вероятностью 1/2 "непростые" клавиши типа F11 или PgUp не работают. Написать прогу, которая понимает Ctrl+Shift+Insert или Shift+Space невозможно в принципе (перед тем как спорить, напишите). Написать прогу, которая реагирует на отпускание клавиши также невозможно (--//--)

tokuchu

Вот в этом заключаются все гентушники, да.
Ууу...
Я конечно тоже эти ваши gui
Наши? :grin:
но для менеджмента пакетов, коих >9e3, лучше юзать что-нибудь типа aptitude, нежели целиком command-line apt-get.
И чем же это удобнее? Я как-то на дебиане этот аптитуд запустил, увидел дохуя пакетов, попытался даже попользоваться им, но так и не получилось.
А гентушники за свой консольный emerge удавятся
Опять какие-то странные наезды на гентушников. Почему они должны удавиться за emerge я так и не понял. Им пользуются, потому что удобно, а не ради каких-то мировоззрений, а кому не нравится, те пользуют другие системы. В общем мне совершенно непонятен тут твой аргумент.
даже несмотря на то, что он написан на, прости господи, пейтоне.
Я в принципе питон не сильно люблю. Но это для меня не повод впадать в истерию и не пользоваться emerge. :crazy:

Filan

Написать прогу, которая понимает Ctrl+Shift+Insert или Shift+Space невозможно в принципе (перед тем как спорить, напишите). Написать прогу, которая реагирует на отпускание клавиши также невозможно (--//--)
keyboard_seteventhandler из svgalib не подходит?
Естественно оно будет работать только в виртуальной консоли и никак не заработает в псевдо (ssh/... при этом можно остаться и в дефолтном "текстовом" режиме.

Filan

Вижу необоснованное обвинение в синдроме утёнка. Требую обосновать. Что и значить "опять"? Когда такое было?
Такое со всех сторон постоянно. И ты лично тут не причём. :-]

dangerr

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

dangerr

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

dangerr

для менеджмента пакетов, коих >9e3, лучше юзать что-нибудь типа aptitude, нежели целиком command-line apt-get.
А ты вот это аргументируй. Никогда не возникало проблем при большом количестве пакетов. Наоборот делаю вывод в less, а потом удобно им искать флаги, названия пакетов и проч.

dangerr

Естественно оно будет работать только в виртуальной консоли и никак не заработает в псевдо (ssh/... при этом можно остаться и в дефолтном "текстовом" режиме.
А какой тогда в этом прок? GUI через форвардинг иксов будет работать полноценно, CLI - тоже, а curses глючить.

doublemother

Почитал. Вот как раз адептов mc, emacs и nano, имхо, надо закапывать еще в перинатальном периоде.
В то же время ncurses можно использовать в скриптах при помощи специально обученных утилит. В том же дебиане при развертывании пакетов debconf в консоли этим активно пользуется.

dangerr

Такое со всех сторон постоянно.
нераспарсил.... :confused:

doublemother

не глючит только вендовый текстовый режим. В консолях юникс-подобных систем с клавиатурой пиздец, как с ssh так и без. С вероятностью 1/2 "непростые" клавиши типа F11 или PgUp не работают. Написать прогу, которая понимает Ctrl+Shift+Insert или Shift+Space невозможно в принципе (перед тем как спорить, напишите). Написать прогу, которая реагирует на отпускание клавиши также невозможно (--//--)
Ты так говоришь, как будто "консоль говно, юзайте все иксы". Какое это отношение имеет к curses?
Да, в консоли есть глюки с обработкой клавиш, которые восходят к незапамятным временам с зоопарком терминалов и просто к человеческой лени. Вон во фре по-моему до сих пор кнопки home/end из коробки в терминале не работают. Только ncurses в этом не виноватый :)

dangerr

В то же время ncurses можно использовать в скриптах при помощи специально обученных утилит.
Можно конкретный пример. Для того, что обсуждаем, а именно для портов.
Допустим я хочу написать скрипт, который бы запустил make config для какой-то программы и поставил определённую галочку. Само собой хочется чтобы он остался работоспособным, когда другие галочки в этом списке будут добавляться/удаляться произвольным образом. То есть решение типа эмулируем 5 нажатий вниз и одно нажатие на пробел - не подойдут. Это решаемо?

dangerr

curses пытается в этой экосистеме, изначально расчитанной только на "команда, параметры -> результат" получить что-то похожее на GUI. То есть curses нужны все эти через раз работающие вещи, а нормальной консоли - нет. Поэтому это становится проблемой curses.

doublemother

Допустим я хочу написать скрипт, который бы запустил make config для какой-то программы и поставил определённую галочку.
А, ты про это. Ну в дебиане для этого вроде бы существует неинтерактивный режим, правда я им не пользовался, поэтому ничего сказать не могу. Ну, иксы опять же в той же мере не автоматизируются, а большинству людей автоматизация установки программ вообще не нужна. Гораздо удобнее запустить гуёвый менеджер пакетов, где можно посмотреть скриншоты im-клиентов, как, например, в дебиане, чем с удивлением созерцать их названия в каком-нибудь /usr/ports/net-im/

doublemother

Мне в консоли нужны home-end. В простой, блин, консоли, просто по тексту команды взад-вперед ходить. Это - проблема консоли. Ты, извини меня, в данном случае несешь чушь, уже с примесью фанатизма.

tokuchu

Допустим я хочу написать скрипт, который бы запустил make config для какой-то программы и поставил определённую галочку. Само собой хочется чтобы он остался работоспособным, когда другие галочки в этом списке будут добавляться/удаляться произвольным образом. То есть решение типа эмулируем 5 нажатий вниз и одно нажатие на пробел - не подойдут. Это решаемо?
Справедливости ради стоит заметить, что во FreeBSD опции вроде как можно передать параметрами окружения, а не только через curses задавать.

dangerr

Судя по всему ты не уловил суть моего утверждения. Сформулирую по пунктам:
1) У GUI-программ существуют недостатки по сравнению с CLI-программами
2) У CLI-программ существуют недостатки по сравнению с GUI-программами
3) Множество недостатков curses-программ полностью включает в себя два предыдущих множества.
Поэтому
 
иксы опять же в той же мере не автоматизируются
явлется недостатком curses, унаследованным от GUI
Мне в консоли нужны home-end. В простой, блин, консоли, просто по тексту команды взад-вперед ходить. Это - проблема консоли.
явлется недостатком curses, унаследованным от CLI.
 
Гораздо удобнее запустить гуёвый менеджер пакетов, где можно посмотреть скриншоты im-клиентов, как, например, в дебиане, чем с удивлением созерцать их названия в каком-нибудь /usr/ports/net-im/
Удобно иметь как gui (для одних нужд так и cli (для других но не curses-интерфейс, как в портах.
CLI+GUI взаимоисключат недостатки обоих. curses - заставит мириться с недостатками обоих.

dangerr

Мне в консоли нужны home-end
Кстати вместо них для баша рекомендую пользоваться Ctrl-A - Ctrl-E
Во-первых, всегда будет работать.
Во-вторых, не нужно переводить руки с алфавитно-цифровых клавиш для нажатия, значит пальцы останутся на своих позициях для продолжения ввода.

shlyumper

GUI через форвардинг иксов будет работать полноценно
Сразу видно теоретика!

Filan

Как мне при установке чего-нибудь сначала посмотреть что оно поставит по зависимостям?
Например: cd /usr/ports/CATEGORY/NAME && make all-depends-list
А вообще кури /usr/ports/Mk/bsd.port.mk
Далее вылазиет синяя херня на curses (curses! где мне можно выбрать опции сборки. Как их снятие/установка повлияет на зависимости можно только гадать.
less Makefile - там всё есть :-D
Причём эта синяя херня может возникнуть не только в начале процесса, но и в середине. А значит процесс нужно контролировать постоянно и нельзя отправить в nohup И после этого гентушников называют красноглазыми, вечно всё компиляющими - я поставил компиляться и пошёл спать, а за make install или portupgrade следить надо.
http://www.google.ru/search?q=FreeBSD+ports+BATCH или man ports /BATCH
make install BATCH=yes не катит?
Или даже более брутально: echo BATCH=yes >> /etc/make.conf
И это ещё хорошо когда она вообще есть. Вот для mysql мне make config радостно сообщает, что опций нет, тогда как emerge выдаёт кучу USE-флагов: community perl ssl -big-tables -cluster -debug -embedded -extraengine -latin1 -max-idx-128 -minimal -pbxt -profiling (-selinux) -static -test -xtradb. Это нормально вообще?
Есть кошерный способ задавать опции сборки, если их нет в Makefile (по памяти не скажу, а искать ломает но т.к. у меня всего три порта требующих такие настройки, то я их пишу прямиком в /etc/make.conf:
# mysql
WITH_CHARSET=utf8
WITH_XCHARSET=all
BUILD_OPTIMIZED=yes
WITH_COLLATION=utf8_general_ci
# ekiga
SAFE_ZRTP=
# openoffice
LOCALIZED_LANG=ru
WITH_KDE4=YES
"Не гигиенично, зато дёшево, надёжно и практично" (c)
А при апгрейде появилась эта синяя хрень и как мне понять какие из опций я выставил ещё в прошлый раз, а какие добавились новые?
cat /var/db/ports/NAME/options
Удаление с зависимостями вообще весело: удалил что-нибудь и смотри потом по всем установленным пакетам с помощью pkg_info ненужные тебе пакеты, от который не зависит ни один нужный. Потом ручками их удаляй.
pkg_info -r NAME
Потом pkg_delete NAME <+ ещё вывод от предыдущей команды>
Только это надо делать до удаления порта NAME.
Кстати, если я вдруг до чего-то недопёр и что-то из этого сделать можно, то решения крайне приветствуются - FreeBSD у меня до сих пор на одном серваке стоит.
Обращайся ещё. :-D
Что мне точно во фре больше нравится - так это ipfw по сравнению с iptables, но это уже субъективно.
Солидарен. После ipfw iptables выглядит как нагромождение костылей без всякой логики. :-D
Пару раз начинал разбираться с iptables, но всё времени не хватало и сил. Только нагуглил простенькие команды для ната и всё. Роутер на работе на фре - ipfw+DUMMYNET+natd (хочу перейти на ipfw nat, но всё никак не соберусь).

dangerr

Сразу видно теоретика!
Я проверял - работало полноценно, хотя и тормознуто.

doublemother

Ок. Только из твоих постов незаметно вытекает то, что:
bugs(cli) ⊂ bugs(ncurses)
bugs(gui) ⊂ bugs(ncurses)
То есть для абсолютно всех задач ncurses как минимум хуже соответствующего тулкита, потому что включает все его баги. Я пытаюсь донести до тебя ценную информацию, что это не соответствует истине, потому что, например, ncurses быстрее gui (то есть как минимум этого недостатка gui он лишен) и юзабельнее командной строки при оперировании с большим количеством данных. В ответ на это мне почему-то указывают на глюки с работой с клавишами в консоли и заявляют, что это проблемы не консоли, а ncurses.

Filan

А какой тогда в этом прок? GUI через форвардинг иксов будет работать полноценно, CLI - тоже, а curses глючить.
Спроси об этом bashatanov-а - он хотел такую прогу, а я всего лишь написал как это реализовать. В начальных условиях псевдо-терминал не присутствовал.

Filan

нераспарсил.... :confused:
Я об общей практике - постоянно слышу как люди говорят, что что-то им не нравится, при этом реально оно им просто не привычно и разбираться/учиться они не хотят.

hwh2010

Множество недостатков curses-программ полностью включает в себя два предыдущих множества.
ну вот например файловый менеджер, совмещённый с командной строкой, бывает только в curses. Правда, от него меня тошнит нехило, но вот от Far'а не тошнит, так что дело не в идее, а в реализации.
Из текстовых редакторов ты тоже признаёшь только ed и eclipse, никогда не пользуешься всякими vim/pico/хзчто ?
В качестве пакетного менеджера я юзаю именно aptitude. А что оно не понимает delete, а только backspace — очень печально, но альтернативы в виде cli- и gui-прог по мне хуже.

Troyn09

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

hwh2010

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

Filan

циклические зависимости ... в бсд
А можно пример?
На всякий случай добавлю: это запрещено и за такое бьют по рукам маинтейнера порта.

Troyn09

конкретный порт/порты не вспомню, но было несколько раз

Serab

emacs
щито?

Serab

Мне в консоли нужны home-end. В простой, блин, консоли, просто по тексту команды взад-вперед ходить. Это - проблема консоли.
^A ^E, до Home-End далеко тянуться даже на ноуте. И странно, что человеку, который обосрал nano и emacs (напрашивается вывод) нужны кнопки Home и End.

doublemother

^A ^E, до Home-End далеко тянуться даже на ноуте. И странно, что человеку, который обосрал nano и emacs (напрашивается вывод) нужны кнопки Home и End.
У меня есть vim, в нем из коробки всё работает на любых терминалах. А еще я предпочитаю юзать подходящие функционалу клавиши, пусть фанатики ^A^E сами вместо стрелочек юзают hjkl.
Home-end у меня, кстати, вообще нажимаются посредством Fn+стрелка, что позволяет работать двумя руками, а не изгибать одну в попытке дотянуться мизинцем до "A" (контрол я жму подушечкой ладони).

hwh2010

до Home-End далеко тянуться даже на ноуте
может это гавнаноут какой-нить, где эти кнопки втыкнуты в какое-то свободное место?
эти кнопки — они не для того чтобы близко быть. Они для унификации ёп. Чтобы где бы ты ни был — они одно и то же означали. И всем это понятно, кроме юзеров и разработчиков консольных программ.

Serab

Ну блин, по-человечески Ctrl-комбинации, так же как и шифт нажимать разными руками. Это как бэ на автомате.

Serab

Да ты не понял, они нормально расположены, но пользователи vim в этом отношении очень ленивы :grin:

hwh2010

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

Serab

вот если бы были vim-овские сочетания клавиш в libreadline
^A ^E — не вимовские вообще ни разу. А в libreadline, естественно, есть vi-mode.

dangerr

Например: cd /usr/ports/CATEGORY/NAME && make all-depends-list
Полезная команда. Однако она выдёт все вообще зависимости, включая уже удовлетворённые, а чтобы увидеть только то, что будет установлено по make install, придётся грепать этим по выводу pkg_info видимо.
emerge же автоматом выдаст именно то, что будет установлено. Для вообще всех тоже конечно команда есть, но это вообще малоинформативно, так как там тонны всего будут. :)
less Makefile - там всё есть :-D
Открыл /usr/ports/databases/mysql51-server/Makefile , там видно много всяких конструкций типа if defined(WITH_CHARSET)... ну то есть они там конечно есть, но для этого нужно проглядеть весь Makefile, а хотя бы пары слов описания для опции уже нет в отличие от make config.
Если эту опцию указать в /etc/make.conf как у тебя, то она получается будет передаваться всем собираемым портам. А как быть если я захочу передавать одному порту WITH_CHARSET=utf8, а другому - WITH_CHARSET=koi8-r ? Я так понимаю, что вряд ли для mysql эти опции подцепятся из /var/db/ports/NAME/options, так как их нет в выводе make config.
И вообще неясно зачем надо было часть опций выносить в make config, а часть - ищите через мейкфайлы ручками.
http://www.google.ru/search?q=FreeBSD+ports+BATCH или man ports /BATCH
make install BATCH=yes не катит?
Или даже более брутально: echo BATCH=yes >> /etc/make.conf
Надо будет поиграться с этой опцией. Как я понял по ману, она просто мне скажет, что этот порт нельзя собрать полностью автоматически и тут же всё грохнет.
cat /var/db/ports/NAME/options
Здесь хранятся все опции от make config, то есть при обновлении и изменении их списка придётся мне как-то сравнивать два списка. Причём один из них в curses находится. Надо видимо забекапить старый файл, сохранить опции, затем сравнивать их diff-ом. Затем снова запустить make config и указать нужные.
pkg_info -r NAME
Опять же выдаёт все зависящие пакеты. Например, если я решил удалить постфикс, то
pkg_info -r postfix-2.7.2
Information for postfix-2.7.2,1:

Depends on:
Dependency: cyrus-sasl-2.1.23_1
Dependency: pcre-8.11

Однако, от pcre-8.11 зависит также apache-2.2.17_1, который мне нужен, а значит его удалять не надо.
emerge же ведёт отдельный world-файл, куда записываются пакеты, которые тобою реально ставились (а не пришли по зависимости) и после удаления чего-нибудь, вызов emerge --depclean на основе этого файла и анализа зависимостей получает множество "нужных" пакетов и сравнивая с множеством установленных, получает множество ненужных, которые тут же удаляет. Всё уже продумано и автоматизированно :)
Обращайся ещё. :-D
В любом случае спасибо, кое-что новое из твоего поста я узнал, пригодится. Критические ответы связаны со сравнением удобства портов с портажем, но не с полезностью этих знаний :)
И я ни в коем случае не говорю, что порты плохие. Просто портаж удобнее и продуманнее ;)

hwh2010

^A ^E — не вимовские вообще ни разу.
да мне похер что вим что пико что нортон-едитор. ^A ^E — ваще много где встречается, это даже я помню. Только вот как передвинуться на слово вперёд или назад — я уже не запомню никогда, ни в одном из этих редакторов.
Кстати, Ctrl+ArrowLeft и Ctrl+W такой отстой: у них разное понятие слова. Ни грамма порядка
А в libreadline, естественно, есть vi-mode.
зато его столь же естественно нет в гуёвых прогах.

Serab

Хз, вон в FF работает, а больше я мало чем гуёвым пользуюсь. Кстати, а это FF или GTK-таки?

Serab

Только вот как передвинуться на слово вперёд или назад — я уже не запомню никогда, ни в одном из этих редакторов.
Кстати, Ctrl+ArrowLeft
ну да, кстати, как раз эта комбинация и перемещает, хотя Meta B Meta F ближе :grin:

hwh2010

Кстати, а это FF или GTK-таки?
без понятия. Я точно также не понимаю, как можно юзать FF/IE/Chrome/Safari, как не понимаю юзабельность vim/emacs/nano

hwh2010

ну да, кстати, как раз эта комбинация и перемещает
в мир глюков клавиатуры, туда же куда Home и End
хотя Meta B Meta F ближе
конечно, не запомню. Ещё придётся искать из 101 клавиши ту заветную, где написано Meta, разочароваться и не найти

Serab

Ну ладно, Alt :grin:

Serab

FF/IE/Chrome/Safari
дрочешь на оперу?
vim/emacs/nano
Пишешь на папулькиной печатной машинке, а потом распознаешь?

hwh2010

дрочешь на оперу?
только если в ней открыта порнуха
Пишешь на дядиной печатной машинке, а потом распознаешь?
да нет, под гуй полно редакторов

Serab

а зачем редактору гуй? И зачем пользоваться разными редакторами, когда ты под гуем и по ssh?

hwh2010

а зачем редактору гуй?
чтобы работала клавиатура
И зачем пользоваться разными редакторами, когда ты под гуем и по ssh?
чтобы хоть в одном случае работала клавиатура

dangerr

Слово bug тут не очень хорошо употреблять, так как недостатки всё же не баги :) Ну да ладно.
Так же я практически сразу же в этом сказал, что в первую очередь говорю о концепции, нежели реализации. То есть о недостатках неустранимых. Поэтому конечно же проблемы с клавишами Home и End не относятся к существенным недостаткам curses (ну и CLI) в данном случае. Так же как не относится к существенным недостаткам скорость работы. Да и она в любом случае от самого приложения сильно зависит. Легковесные GUI-приложения по скорости не отличаются от curses-приложений. Какой-нибудь firefox или OOo отличаются понятное дело :)
Насчёт большого количества данных, я не очень понял в чём же curses превосходит простую консоль? Подробнее поясни пожалуйста.

Serab

У меня работает клавиатура в консольном редакторе :grin:

hwh2010

У меня работает клавиатура в консольном редакторе
тебе так только кажется!

Serab

:facepalm:

dangerr

ну вот например файловый менеджер, совмещённый с командной строкой, бывает только в curses.
Его принципеально невозможно сделать в gui? Есть же терминалы с кнопочками и менюшками, значит можно туда же добавить файловую панельку с текущей директорией например :)

hwh2010

Его принципеально невозможно сделать в gui
клёвая мысль. В венде пытались, но криво (всякие total commander и иже с ними).
тем не менее, я бы предпочёл наличие нормального API для текстового вывода и FAR-подобный ФМ

doublemother

Легковесные GUI-приложения по скорости не отличаются от curses-приложений. Какой-нибудь firefox или OOo отличаются понятное дело :)
Насчёт большого количества данных, я не очень понял в чём же curses превосходит простую консоль?
Увы, отличаются. Кроме того легковесных сейчас всё меньше и меньше - все норовят на недоязыках гуй писать.
Чем превосходят: ну вот, например, настраиваю я систему, надо мне пролистать пакеты, найти, что я забыл, что надо поставить. Или там просто у дебиана при очередном апдейте пришло в репозиторий 300 новых пакетов (вполне типичная ситуация, кстати хочу я их просмотреть, если что-то интересное будет, поставить. В аптитуде у меня есть дерево пакетов, я могу удобно пролистать, сразу помечая, что я планирую ставить, какие-нибудь разделы типа debug, zope или libs я могу легко пропустить. В консоли мне надо было бы делать сначала вывод списка пакетов с краткими описаниями (при этом, возможно, удалось бы указать ненужные категории, но их один фиг придется перечислять, и хорошо, если в конфиг-файле, а не прямо в команде потом отдельно для заинтересовавших пакетов выводить подробное описание (выводить сразу все пакеты с простынями как-то вообще бредово а потом еще отдельно ставить, копипастя нужные названия. Не находишь, что это неудобнее, чем просто пробежаться курсором, нажимая "+" на интересных пакетах и "g" в конце для установки?

dangerr

Из текстовых редакторов ты тоже признаёшь только ed и eclipse, никогда не пользуешься всякими vim/pico/хзчто ?
vim пользуюсь... только когда по ssh захожу. А так - leafpad. Ну sed само собой из скриптов только.

dangerr

Этот аргумент можно принять.
Наверное я слишком жёстко выдал своё утверждение. Надо как-то переформулировать.
То есть в данном юзкейсе curses таки сделает чистую консоль, но при этом gui сделает curses.
То есть утверждение, что CLI+GUI >= ncurses остаётся верным для всех юзкейсов

dangerr

Наверное так лучше сформулировать моё утверждение (соответственно ослабив его):
Для любого юзкейса из тройки: CLI, GUI, TUI (terminal user interface, так наверное более корректно, т.к. curses - это всё же конкретная реализация TUI никогда не окажется на первом месте по юзабельности.
Предыдущий вариант его ставил всегда на последнее, теперь допускается второе. :)
Теперь согласишься?

doublemother

gui медленнее, не забывай. У меня вот нет топового железа, да что там, до недавнего времени у меня основной машиной был десятидюймовый недобук на атоме. Единственное, чем я пользовался гуёвым - это фф. Ща вот постепенно привыкаю к наутилусу, потому что самба у него удобнее, чем у чего бы то ни было в консоли. Полноценно гуями я пользоваться не могу, они тормозят. Когда в линуксах будут по дефолту впиливать нормальные планировщики, или из-за чего там такие лаги, может, гуи и буду делать curses, а пока что без шансов.

dangerr

клёвая мысль.
Ещё одна мысль витает: можно не использовать эмулятор терминала, а из gui-приложения сделать pipe с shell и передавать шелу пользовательский ввод в поле ввода, а его вывод - в простое текстовое поле. Тогда возможна любая интеграция с gui.
Тогда curses конечно совсем запустить не получится, зато в консоли будут работать например хоткеи для вставки из нормального (не мышиного) буфера обмена.

dangerr

gui медленнее, не забывай
Ну я ж говорю, это не концептуальный недостаток. Исправляется более современным железом/более легковесными программами.
Кроме того ты пользуешься наиболее тяжёлыми гуями: firefox, gnome.... Ты бы ещё KDE поставил и удивлялся, что он тормозит. :)
У меня же нет даже такой якобы стандартной вещи, как dbus. И самое тяжёлое чем я пользуюсь - это firefox, с которого уже давно хочу слезть.

yroslavasako

ну вот, например, настраиваю я систему, надо мне пролистать пакеты, найти, что я забыл, что надо поставить. Или там просто у дебиана при очередном апдейте пришло в репозиторий 300 новых пакетов (вполне типичная ситуация, кстати хочу я их просмотреть, если что-то интересное будет, поставить.
А я вот не привык ждать милостей от природы. Когда мне оказывается нужна функциональность, которой на компе пока нет, я нахожу в инете подходящую прогу и ставлю её. Если есть ебилд в портежах или оверлеях - из него, если нет - качаю и делаю свой ебилд в оверлее. Я не буду ждать появления его в портежах, соответственно мне незачем просматривать все обновления. Если появляется более свежий установленный софт - он ставится автоматом, если появился новый неустановленный софт - это не повод для его установки. Зачем ставить то, в чём нет необходимости? Твой подход мне напоминает алгоритм женского похода в магазины

dangerr

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

slonishka

пиздец у вас тут рубки. %
я в качестве гуев для emerge юзал сначала gentoo-portage.com,
а потом вообще: gpo.zugaina.org, который сразу и для попсовых оверлеев гуй.
нет няшной кнопочки [INSTALL], но мне она не нужна.
щас вообще уже только eix-ом пользуюсь, т.к. все скриншоты видел уже. :grin:
***
а во фре нормальные порты, если ман про них прочитать.
мне они даже где-то больше нравятся.
там от атомарных юзфлагов больше в сторону профилей типа WITHOUT_X, которые часто удобнее.
впрочем, спорить по этому поводу не стану, я мало пользовался фрей и уже почти ничего не помню.

slonishka

вот если бы были vim-овские сочетания клавиш в libreadline и во всех гуёвых компонентах,
подразумевающих ввод текста ... мячты-мячтыно я бы их даже выучил!
ну это нормально, ты просто не нужен пока вим-комьюнити.
возможно, когда-нибудь твое сознание расширится и ты тоже станешь адептом нашего уютненького Культа.
а пока сиди @ набирай по одному символу в час в унылых веб-формочках и гуях.
---
Narrowness of experience leads to narrowness of imagination.

juliuzz

пиздец у вас тут рубки. %)
я смотрю линупсоеды способны разводить срачи и холивары даже в отсутствие виндузтнеков :grin:

Dimon89

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

serega1604

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

Dimon89

>Второй день гуглю, как сменить мак на сетевушке. Решения одно другого извращённее
чем же они извращенные? давай хоть парочку примеров.
1) Прописать ifconfig eth<N> hw ether <mac>. Повторять после каждой перезагрузки или поднятия интерфейса или прописывать в соответствующие скрипты.
2) Поправить файл persistent-net.rules. Просто не помогает. После перезагрузки превращает eth0 в eth2, который при этом даже не отображается в YaST'е.
гуглю дальше

serega1604

>1) Прописать ifconfig eth<N> hw ether <mac>. Повторять после каждой перезагрузки или поднятия интерфейса или прописывать в соответствующие скрипты.
ну а как по-твоему должен был выглядеть неизвращенный вариант? чтоб все как в винде, только бесплатно? такого не будет.

tokuchu

2) Поправить файл persistent-net.rules. Просто не помогает.
Этот файл для другого предназначен. Чтобы сетевуха с тем же mac-ом всегда была под одним номером. А не чтобы у неё мак менять.

doublemother

Видимо потому что исторически вообще считается, что хотеть этого не должен ты, в винде на некоторых дравйверах такой возможности вообще вон нет.
Поэтому если тебе оно надо, то надо устанавливать мак при старте, вместе с остальными сетевыи параметрми. В дебианах это делается непосредственно в сетевом конфиге /etc/network/interfaces, если в опенсусе такого нет, то видимо придётся писать дополнительный выполняющийся при загрузке скрипт (да, именно про ifconfig в гугле десятки предложений сделать именно это.
А вообще, мне кажется, ты выбрал плохую сторону силы. Я что-то почитал ща опенсусёвый форум, и какие-то они... гхм... странные. Вот, например, предлагают человеку всё, как он хочет.

Dimon89

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

Fragaria

ну я лично на убунте прописывал мак в /etc/network/interfaces в соответствующем интерфейсе.

serega1604

>неизвращенный - когда я это один раз прописываю в одном конфиге
ну лично я не сусей не пользовался, поэтому файлик не знаю, есть или нет, но чем тебе скрипт, запускающийся перед поднятием интерфейса/в процессе загрузки - не конфиг?

serega1604

кстати, куда внезапно пропал пункт б) из причин выбора суси?

dangerr

там от атомарных юзфлагов больше в сторону профилей типа WITHOUT_X, которые часто удобнее.
Ну так в Gentoo тоже можешь прописывать все флаги в /etc/make.conf - будет тоже самое.
То есть если тебе достаточно прописывать всё только на глобальном уровне, то разницы не будет. А вот если надо задавать опции для каждого пакете отдельно, то ты ощутишь преимущество portage.
Да, я тут вспомнил ещё один момент, который в портаже лучше: для большиства пакетов можно выбрать какую версию ставить: есть стабильная, нестабильная и замаскированная. Иногда бывают слоты, а с помощью eselect можно выбирать между разными установленными слотами. В портах же такое бывает редко и в виде мусорки из отдельных пакетов по типу этого:
mysql323-server
mysql40-server
mysql41-server
mysql50-server
mysql51-server
mysql55-server
Не пробовал что будет если установить сразу два, думаю ничего хорошего :)

dangerr

я смотрю линупсоеды способны разводить срачи и холивары даже в отсутствие виндузтнеков :grin:
По сравнению со срачами и холиварами тут всё более конструктивно. Холивар с виндузятниками уныл и предсказуем полностью. Стороны просто неспособны друг другу что-то доказать. В таких обсуждениях же можно узнать много нового, задуматься над тем, над чем ещё не задумывался.

Dimon89

ну я лично на убунте прописывал мак в /etc/network/interfaces в соответствующем интерфейсе.
я так и сделал в итоге
Раздача интернета и сответствующие сервисы настроились на удивление легко и быстро.

dangerr

неизвращенный - когда я это один раз прописываю в одном конфиге
Почему стартовый скрипт нельзя считать этим самым конфигом?
А вообще в большинстве дистров для такого уже готов набор скриптов. Вот в убунте ёжик написал уже. В Gentoo настройки сети берутся из /etc/conf.d/net там прописываются все параметры сети, включая ip, шлюз, DNS и проч.
А в задачи ifconfig не входит восстановление значений при перезапуске. Его задача - установить требуемые параметры и всё. И это правильно. Это позволяет избежать потенциальных проблем и повысить гибкость. За остальное ответственны обёртки

Filan

 
То есть если тебе достаточно прописывать всё только на глобальном уровне, то разницы не будет. А вот если надо задавать опции для каждого пакете отдельно, то ты ощутишь преимущество portage.

Млин, ну хватит читать через строчку. Я же уже сказал - есть кошерный способ, но искать мне его лень.
Так же можно в /etc/make.conf делать конструкции вида (за синтаксис не ручаюсь): if DEST_DIR = "database/mysql55-server"; then OPTION1=VALUE; fi
Это устроит отца русской демократии?
 
Да, я тут вспомнил ещё один момент, который в портаже лучше: для большиства пакетов можно выбрать какую версию ставить: есть стабильная, нестабильная и замаскированная. Иногда бывают слоты, а с помощью eselect можно выбирать между разными установленными слотами. В портах же такое бывает редко и в виде мусорки из отдельных пакетов по типу этого:
mysql323-server
mysql40-server
mysql41-server
mysql50-server
mysql51-server
mysql55-server
Не пробовал что будет если установить сразу два, думаю ничего хорошего :)

Не пробовал перед тем как задавать глупые вопросы почитать grep CONFLICTS /usr/ports/database/mysql55-server/Makefile ?
CONFLICTS_INSTALL= mysql-server-[34].* mysql-server-5.[0-46-9].*
Т.е. ты не должен хотеть два разных mysql-я на одной машинке одновременно. Особые извращенцы могут использовать jail или разные PREFIX-ы, PORT_DBDIR и PATH для разных mysql.

Filan

 
Полезная команда. Однако она выдёт все вообще зависимости, включая уже удовлетворённые, а чтобы увидеть только то, что будет установлено по make install, придётся грепать этим по выводу pkg_info видимо.
emerge же автоматом выдаст именно то, что будет установлено. Для вообще всех тоже конечно команда есть, но это вообще малоинформативно, так как там тонны всего будут. :)

БЛЯ! Кури: /usr/ports/Mk/bsd.port.mk
Я её как пример дал. Там ещё куча вариантов - может один как раз твой.
 
Открыл /usr/ports/databases/mysql51-server/Makefile , там видно много всяких конструкций типа if defined(WITH_CHARSET)... ну то есть они там конечно есть, но для этого нужно проглядеть весь Makefile, а хотя бы пары слов описания для опции уже нет в отличие от make config.
Если эту опцию указать в /etc/make.conf как у тебя, то она получается будет передаваться всем собираемым портам. А как быть если я захочу передавать одному порту WITH_CHARSET=utf8, а другому - WITH_CHARSET=koi8-r ? Я так понимаю, что вряд ли для mysql эти опции подцепятся из /var/db/ports/NAME/options, так как их нет в выводе make config.

Уже ответил в предыдущем сообщении.
 
И вообще неясно зачем надо было часть опций выносить в make config, а часть - ищите через мейкфайлы ручками.

Не ищи логики там, где её нет. Просто ещё не сделали. :-]
Когда-то и apache при сборке не выдавал config, а все опции надо было руками прописывать - со временем это исправили.
 
Надо будет поиграться с этой опцией. Как я понял по ману, она просто мне скажет, что этот порт нельзя собрать полностью автоматически и тут же всё грохнет.

Всегда считал, что оно просто выберет все опции по умолчанию. Сам же никогда не пользовался - всегда интересно контролировать сборку. Особенно когда в новой версии при обновлении появилось что-то новое.
А если надо быстро поднять что-то на удалённом хосте и чтобы не отвлекаться на config, то либо ставь из бинарных пакетов либо заранее залей в /var/db/ports/ нужные options.
 
Здесь хранятся все опции от make config, то есть при обновлении и изменении их списка придётся мне как-то сравнивать два списка. Причём один из них в curses находится. Надо видимо забекапить старый файл, сохранить опции, затем сравнивать их diff-ом. Затем снова запустить make config и указать нужные.

При изменении списка тебе выведется curses меню (make config в котором все твои пунктики будут отмечены, а новые будут по умолчанию.
Ещё не забываем перед обновлениями читать /usr/ports/UPDATING на случай кардинальных изменений в интересующем тебя порте.
 
Опять же выдаёт все зависящие пакеты. Например, если я решил удалить постфикс, то
...
  Однако, от pcre-8.11 зависит также apache-2.2.17_1, который мне нужен, а значит его удалять не надо.
emerge же ведёт отдельный world-файл, куда записываются пакеты, которые тобою реально ставились (а не пришли по зависимости) и после удаления чего-нибудь, вызов emerge --depclean на основе этого файла и анализа зависимостей получает множество "нужных" пакетов и сравнивая с множеством установленных, получает множество ненужных, которые тут же удаляет. Всё уже продумано и автоматизированно :)

А ты попробуй написать pkg_delete postfix-2.7.2 cyrus-sasl-2.1.23_1 pcre-8.11 :-]
AFAIR, оно удалит всё кроме того, у кого есть зависимости не из списка на удаление. Т.е. не бойся написать pkg_delete pcre-8.11 - оно ругнётся, не удалит и пойдёт дальше.
 
В любом случае спасибо, кое-что новое из твоего поста я узнал, пригодится. Критические ответы связаны со сравнением удобства портов с портажем, но не с полезностью этих знаний :)
И я ни в коем случае не говорю, что порты плохие. Просто портаж удобнее и продуманнее ;)

Как уже тебе сказали до меня - ты плохо читал man ports. :-P

Viktory-s

ну я лично на убунте прописывал мак в /etc/network/interfaces в соответствующем интерфейсе.
Точно. Если новый мак нужен постоянно, то вроде MACADDR (или HWADDR) в ifcfg-ethX

Dimon89

Точно. Если новый мак нужен постоянно, то вроде MACADDR (или HWADDR) в ifcfg-ethX
в моём случае сработало LLADDR

BondarAndrey

то вроде MACADDR (или HWADDR) в ifcfg-ethX
Именно HWADDR, а не MACADDR!
Первое используется для замены мака, а второе — для привязки имени интерфейса (eth0, например) к конкретному маку конкретной карты.

Viktory-s

man ifcfg
MACADDR
Manually set the MAC Address (hardware address) of the interface. Note that not all network drivers allow this.

BondarAndrey

$ cat /usr/share/doc/initscripts-8.45.30/sysconfig.txt | grep -A 1 -Ei '(hwaddr|macaddr)'
HWADDR=
ethernet hardware address for this device
MACADDR=
Set the hardware address for this device to this.
Use of this in conjunction with HWADDR= may cause
unintended behavior.

Но мой опыт работы с этими опциями говорит, что MACADDR никогда не меняет адреса интерфейса, а используется для сравнения.

yroslavasako

Т.е. ты не должен хотеть два разных mysql-я на одной машинке одновременно. Особые извращенцы могут использовать jail или разные PREFIX-ы, PORT_DBDIR и PATH для разных mysql.
вот это я и подразумевал, когда говорил, что в портах нет механизма слотов. В генту благополучно живут несовместимые версии. Каждый в свой файлик ставится. Потому что очень часто может оказаться так, что два разных пакета зависят от конфликтующих версий другого пакета.

Filan

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

Ну так PREFIX, PORT_DBDIR и PATH выставляешь другие и всё. Правда придётся в каждом PREFIX держать все порты общего назначения типа iconv, gettext, expat, automake и т.д.
очень часто может оказаться так, что два разных пакета зависят от конфликтующих версий другого пакета.
Не поверишь - во фре это крайне редкая ситуация. Из разряда - пойди поищи. Пытаюсь вспомнить и ничего не приходит в голову за 10+ лет использования FreeBSD.
Хотя не исключаю, что мне так повезло. :-D

Serab

Не поверишь - во фре это крайне редкая ситуация. Из разряда - пойди поищи. Пытаюсь вспомнить и ничего не приходит в голову за 10+ лет использования FreeBSD.
Хотя не исключаю, что мне так повезло. :-D
ну как же? На границе большого апдейта никогда такого не происходило? Сейчас вон 3й питон постепенно шагает. Или там это просто как два разных пакета оформляется? /Фрёй не пользовался, только выходил из вима коллеге как-то раз/

Filan

Там всё хитро - какое-то время есть разные версии в портах: proga1 proga2 proga proga4.
Дефолтной считается proga, в данном примере у неё версия 3.x.
Когда появляется proga 5.x, то она просто добавляется в порты как proga5.
Если хотят изменить дефолтную версию, то ОБЯЗАТЕЛЬНО пишут в /usr/ports/UPDATING это и как обновить на новую версию или сохранить старую.
Переименовывают порты: proga в proga3, а proga4 в proga.
В зависимости от самой proga они как могут быть установлены одновременно, так и не могут - mysql не могут, а autoconf могут.
Если старая версия порта proga 1.x перестаёт поддерживаться и признаётся устаревшей, то об этом тоже делается запись в /usr/ports/UPDATING с инструкциями для апгрейда до одной из более новой версии, а так же запись в /usr/ports/MOVED о причине удаления.

yroslavasako

Ну так PREFIX, PORT_DBDIR и PATH выставляешь другие и всё. Правда придётся в каждом PREFIX держать все порты общего назначения типа iconv, gettext, expat, automake и т.д.
генеально. Как удобно, и место лишнего не тратится.Можно сказать просто: фряха так не умеет. Я, конечно, понимаю что ты не встречался с этой проблемой - наверняка все такие проблемы из портов выбросили, но это не влияет на мой главный тезис: система портов по сравнению с системой портежей убога. Кстати, питоненавистники могут не беспокоиться: для генты есть и чисто плюсовый пакетный менеджер, работающей с той же системой портежей - paludis

dangerr

Ладно, в общем-то отрицать, что во FreeBSD можно достичь всего желаемого так же как в Gentoo, я пожалуй не буду. Остановлюсь больше на удобстве и "тернистости" пути к этому.
 
есть кошерный способ, но искать мне его лень.
Так же можно в /etc/make.conf делать конструкции вида (за синтаксис не ручаюсь): if DEST_DIR = "database/mysql55-server"; then OPTION1=VALUE; fi
Это устроит отца русской демократии?

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

emerge -pv ekiga

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] media-sound/gsm-1.0.13 64 kB
[ebuild N ] net-libs/ptlib-2.6.7-r1 USE="asn audio ffmpeg sdl ssl stun video wav xml -alsa -debug -doc -dtmf -esd -examples -ftp
-http -ieee1394 -ipv6 -jabber -ldap -mail -odbc -oss -pch -qos -remote -sasl -serial -shmvideo -snmp -soap -socks -telnet -tts -v4l
-v4l2 -vxml -xmlrpc" 3,199 kB
[ebuild N ] dev-libs/ilbc-rfc3951-0-r1 323 kB
[ebuild N ] net-libs/opal-3.6.8-r1 USE="audio ffmpeg plugins sip ssl theora video wav x264 xml -capi -celt -debug -doc -dtmf
-examples -fax -h224 -h281 -h323 -iax -ipv6 -ivr -ixj -java -ldap -lid -sbc -sipim -srtp -stats -swig -vpb -vxml -x264-static" 6,678 kB
[ebuild N ] net-voip/ekiga-3.2.7 USE="gstreamer mmx shm xv (-aqua) -avahi -dbus -debug -doc -eds -gconf -gnome -h323 -kde
(-kdeenablefinal) -kontact -ldap -libnotify -nls -static -v4l -xcap" 8,881 kB

Total: 5 packages (5 new Size of downloads: 19,143 kB

Я сразу же вижу каждую опцию каждого устанавливаемого пакета. Через euse -i <опция>, могу посмотреть её описание, а через equery u <пакет> - описание всех опций для пакета (эти действия в отдельном терминале удобно делать). Всё! Мне не надо лезть во все их мейкфайлы и гуглить что значит --with(out)-something, а когда я выберу нужные мне опции и запущу сборку, то она пройдёт _одновременно_ и так, как мне нужно, и так, что не потребует интерактивности (в отличие от BATCH в портах, где нужно выбрать из двух зол).
 
БЛЯ! Кури: /usr/ports/Mk/bsd.port.mk

Я проверил все опции, выдающие зависимости. Все они выдают список, не глядя на то, что установлено, а что - нет. Так что всё же придётся самостояльно отфильтровывать уже установленное, прежде чем рыться в мейкфайлах в поисках опций.
 
Не ищи логики там, где её нет. Просто ещё не сделали. :-]
Вот непонятно почему в Gentoo взяли за правило все опции в USE-флаги выносить, а во FreeBSD годами не могут из мейкфайла опции вынести.
 
При изменении списка тебе выведется curses меню (make config в котором все твои пунктики будут отмечены, а новые будут по умолчанию.
Ну что ж мне в голове держать думал я в прошлый раз над нужностью этой галки или нет? Portage возле новых опций заботливо ставит звёздочку, а в цветной консоли выделяет другим цветом. А так мне придётся открыть старый /var/db/ports/NAME/options с сохранёнными опциями и сравнивать что было, а что - нет.
А ты попробуй написать pkg_delete postfix-2.7.2 cyrus-sasl-2.1.23_1 pcre-8.11 :-]
Я знаю, что без -f мне не удалят пакеты, если они не на конце древа зависимостей. Однако в этот список могут попасть и нужные мне пакеты. Например при удалении php
 

pkg_info -r php5-5.3.5
Information for php5-5.3.5:

Depends on:
Dependency: expat-2.0.1_1
Dependency: perl-5.8.9_4
Dependency: pkg-config-0.25_1
Dependency: pcre-8.11
Dependency: db42-4.2.52_5
Dependency: libiconv-1.13.1_1
Dependency: libxml2-2.7.8_1
Dependency: apr-devrandom-db42-1.4.2.1.3.10
Dependency: apache-2.2.17_1

В списке окажется также и apache, от которого после удаления php ничего зависеть не будет. То есть просто написать простой скрипт, который бы прошёлся по всему списку и на всё вызвал бы pkg_delete не катит. Нужно просмотреть список и вспомнить что из этого мне реально нужно, а что так, по зависимости пришло. Порты не делают различий между этими видами пакетов. Это очень неудобно - приходится держать информацию в голове.

dangerr

Во имя справедливости, нужно сказать, что в Gentoo mysql тоже не слотирована.
Я всё же в первую очередь говорил о том, что в портаже для подавляющего числа программ лежит несколько версий (чаще неслотированных). Например хочу я поставить вайн:

eix -e wine
* app-emulation/wine
Available versions: 1.2!t 1.2.1!t (~)1.2.2!t (~)1.3.0!t (~)1.3.1!t (~)1.3.2!t (~)1.3.3!t (~)1.3.4!t (~)1.3.5!t (~)1.3.6!t
(~)1.3.7!t (~)1.3.8!t (~)1.3.9!t (~)1.3.10!t (~)1.3.11!t **9999!t {+X alsa capi cups custom-cflags dbus esd fontconfig +gecko gnutls
gphoto2 gsm gstreamer hal jack jpeg lcms ldap mp3 nas ncurses nls openal +opengl +oss +perl png pulseaudio samba scanner ssl test
+threads +truetype +win32 (+)win64 xcomposite xinerama xml}
Homepage: http://www.winehq.org/
Description: free implementation of Windows(tm) on Unix

А там доступна туева куча версий. Среди них есть стабильная (1.2.1 нестабильная (1.3.11) и замасканная (9999) И я имею возможность выбрать какой пользоваться. В портах же есть только /usr/ports/emulators/wine и всё :)

sergey_m

>> GUI через форвардинг иксов будет работать полноценно
> Сразу видно теоретика!
Кстати как firefox умудряется запустить себя со стороны клиента, когда ты пытаешься его запустить через ssh? ;)

sergey_m

http://www.google.ru/search?q=FreeBSD+ports+BATCH или man ports /BATCH
make install BATCH=yes не катит?
Или даже более брутально: echo BATCH=yes >> /etc/make.conf
Надо будет поиграться с этой опцией. Как я понял по ману, она просто мне скажет, что этот порт нельзя собрать полностью автоматически и тут же всё грохнет.
Неправильно понял, хотя надо признать, что ман в этом месте скуден. Интерактивным считается порт, в котором нужно соглашаться с лицензией, как правило. Те, у которых есть 'make config', в случае с BATCH просто будут собиратся с опциями по умолчанию.

sergey_m

Холивар с виндузятниками уныл и предсказуем полностью.
А ваш нет что ли? :grin:

serega1604

>Кстати как firefox умудряется запустить себя со стороны клиента, когда ты пытаешься его запустить через ssh? ;)
man firefox | grep no-remote

dangerr

Неправильно понял, хотя надо признать, что ман в этом месте скуден. Интерактивным считается порт, в котором нужно соглашаться с лицензией, как правило. Те, у которых есть 'make config', в случае с BATCH просто будут собиратся с опциями по умолчанию.
уже об этом сказал. На что я уже ответил, что это просто ужасно: приходится выбирать между медитацией на бегающие букафки с возможностью контролировать процесс и спокойным занятием своими делами во время фоновой компиляции при совершенно неконтролируемом процессе сборки.
Почему меня заставляют выбирать из двух зол? Неужели нельзя сразу показать опции для всех пакетов, что будут установлены и после проставления уже не тревожить пользователя?
Хотя всё равно из-за того, что добрую половину опций вынести забыли, надо лазить по всем мейкфайлам для нормального контроля над сборкой. Тогда можно и BATCH=yes установить.

AlexV769

Неужели нельзя сразу показать опции для всех пакетов, что будут установлены и после проставления уже не тревожить пользователя?
Можно.
man portinstall в части флажков -c и -C.
А мануальные WITH_ придется действительно один раз прописать в /etc/make.conf.

Sharp

Мне кажется, тебя устроит make config-recursive.
Я правильно понял твое пожелание?
Кстати есть еще portupgrade, ему можно указать с какими параметрами Makefile-а собирать какой пакет, чтобы эти настройки не терялись при обновлении портов.

sergey_m

> man firefox | grep no-remote
Чё то не вижу такой опции: http://www.linuxmanpages.com/man1/firefox.1.php
Вообще вопрос не в том, как её отключить, а механизм её работы.

tokuchu

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

serega1604

Updated: August 07, 2001
в те годы такого и не было ещё.

shlyumper

Примерно так:

nsresult
XRemoteClient::DoSendCommand(Window aWindow, const char *aCommand,
const char* aDesktopStartupID,
char **aResponse, PRBool *aDestroyed)
{
...
XChangeProperty (mDisplay, aWindow, mMozCommandAtom, XA_STRING, 8,
PropModeReplace, (unsigned char *)buffer, len);
...
}

Вообще, забавная реализация: widget/src/xremoteclient/XRemoteClient.cpp

Filan

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

dangerr

man portinstall в части флажков -c и -C.
Сейчас сделал "portupgrade -c -a" в надежде, что будет всё тоже самое, что и при "portupgade -a" только настроечный интерфейс для всего устанавливаемого вызовется сразу, а не когда до этого порта очередь дойдёт.
Вместо этого этот интерфейс стал вызываться для всего установленного софта (причём даже того, для которого в /var/db/ports уже есть файл options). То есть это явно не то, что мне нужно. Ну то есть для первичной установки с помощью portinstall может и то, а для апгрейда точно не то.
А мануальные WITH_ придется действительно один раз прописать в /etc/make.conf.
Вовсе не один. При апгрейде их состав может меняться. Значит просмотр мейкфайлов придётся повторить заново.

Filan

Вовсе не один. При апгрейде их состав может меняться. Значит просмотр мейкфайлов придётся повторить заново.
Это бывает не часто. Я бы даже сказал - это бывает очень редко.

dangerr

Мне кажется, тебя устроит make config-recursive.
Я правильно понял твое пожелание?
Он вызовет интерфейс настройки для всех зависимостей не важно установлены они или нет.
Мне надо make config-recursive-conditional, а такого нет.

dangerr

Вообщето массовая установка софта - это очень редкий юзкейс при использовании FreeBSD в продакшн: либо первая установка, либо глобальный апгрейд. В таком случае ничего страшного в том, что надо следить за ходом сборки раз в пару месяцев я не вижу.
И Gentoo и FreeBSD я обновляю раз в месяц примерно. Обновление как правило занимает не менее получаса. Зачем мне полчаса тратить на вглядывание в бегущие буквы?
Кроме первичной установки есть ещё донастройка дополнительных сервисов. Это делается ради дополнительных сервисов, а не ради развлечения.

dangerr

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

Sharp


/usr/ports/Mk/bsd.port.mk:
...
config-recursive:
@${ECHO_MSG} "===> Setting user-specified options for ${PKGNAME} and dependencies";
@for dir in ${.CURDIR} $$(${ALL-DEPENDS-LIST}); do \
(cd $$dir; ${MAKE} config-conditional); \
done

Специально ради тебя даже перепроверил: сказал сначала make config-recursive, затем make rmconfig-recursive и опять make config-recursive. Итог: make config-recursive — это то, о чем ты пишешь.

dangerr

хм.... очень странно. Пока я экспериментировал куда-то похерились файлы options в /var/db/ports для apache, perl и libiconv. Когда я запускал make config-recursive, то считал, что если пакет установлен, то опции для него я проставлял по-любому (так и было до экспериментов). Мне выдался интерфес настройки для libiconv и я решил, что он по всем зависимостям пошёл с обычным, а не conditional make config.

AlexV769

Сейчас сделал "portupgrade -c -a" в надежде, что будет всё тоже самое, что и при "portupgade -a" только настроечный интерфейс для всего устанавливаемого вызовется сразу, а не когда до этого порта очередь дойдёт.Вместо этого этот интерфейс стал вызываться для всего установленного софта (причём даже того, для которого в /var/db/ports уже есть файл options)
100%, что оно вызвало make config для всего, у чего либо нет сохраненного конфига, либо сохраненный конфиг устарел и требует внимания человека.

dangerr

о нет! ну нафига я на боевом серваке экспериментировал! У меня всё /var/db/ports ушло! :(
Блин, как это вообще возможно? Я просто проверял различные предложенные варианты... make rmconfg-recursive не делал...
Ладно, теперь добавлю /vad/db/ports в список дир для бекапа...
Насчёт portupgrade -c -a
у меня pkg_version -v | grep needs выдаёт только
pcre-8.11 < needs updating (port has 8.12)
(до этого недавно делал апгрейд)
почему же portupgrade -c -a выдал мне настройку для апача, perl и много ещё чего уже установленного, но с похренным /var/db/ports ?

AlexV769

с похренным /var/db/ports
Вообще-то там опции make config и хранятся. Дальше логику развивать или сам? :)

dangerr

Это-то я до того прекрасно понимал. Иначе с чего мне так сокрушаться по поводу их утери? Но какое дело портапгрейду до этих опций, если я ему сказал собирать только pcre, у которого вообще зависимостей нет?
Хотя может без -c он бы тоже самое сделал....
Оставить комментарий
Имя или ник:
Комментарий: