Плюсы и минусы "cl-update" и "emerge -uDNa world"

На данный момент в Calculate Linux есть две команды для обновления дистрибутива до актуального состояния. Это собственно команда cl-update - которая очень удобна тем, что работает автоматически и по этому нет нужды обновляться вручную и команда *emerge uDNa world* которая имеет более расширенный функционал для обновления вручную.

Лично мне нравится cl-update - так как вместе с обновлением, вычислением зависимостей и обновлением базы данных пакетов, эта программа автоматически ещё обновляет библиотеки для связанных с обновлением модулей ядра (например Virtualbox). Очень удобно, честно говоря. Но, есть у этой команды и существенный минус, если что-то надо изменить (обновить конфигурационные файлы, package.use) или ещё что-то команда просто не срабатывает и выглядит это так, как будто обновлений вообще нет.

Если такое происходит, я обычно запускаю *emerge uDNa world* смотрю, что она пишет и делаю соответствующие изменения. Обычно - это добавление в package.use каких-то строк для разрешения зависимостей и dispatch-conf после этого.

Так вот, у меня вопрос, нельзя ли всё это упростить и добавить этот функционал в cl-update - чтобы все вопросы задавались там же и не надо было бы дополнительно запускать обновление мира? Ведь ничего сложного, насколько я понимаю, там нет.

И зачем нужен весь этот огород, когда есть emerge -uDNa world? Превращать дистрибутив в убунтоподобный дистр? Но зачем, ведь убунту уже давно изобрели!

хм… я по-моему описал плюсы и минусы обеих команд?
нет? или как обычно: “не читал, но осуждаю”?

насчёт того, “зачем нужно, когда есть уже…” - это только тем, кто не отличается ясностью сознания, наверное не понятно…

а зачем выпускают машины белого цвета, когда можно ездить на машинах чёрного? или вообще, зачем они все разноцветные? раз что-то существует, значит это кому-то да нужно (например, мне), если вам не нужно, просто не пользуйтесь… благо emerge -uDNa world всё так же прекрасно работает…

Запускайте например так:

 # cl-update -ev --usenew-conf

И вообще, стоит посмотреть

 # cl-update --help

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

дело-то не в том, что cl-update не имеет необходимого функционала, а в том, чтобы сделать эту функцию автоматизированной так же, как и обновления библиотек, так же, как и удаление ненужных программ после обновления… иначе смысл самой cl-update теряется (так как всё равно приходится запускать периодически emerge -UDNa world или предложенную расширенную команду cl-update)…

man cron

B. X. wrote:

Но, есть у этой команды и существенный минус, если что-то надо изменить (обновить конфигурационные файлы, package.use) или ещё что-то команда просто не срабатывает и выглядит это так, как будто обновлений вообще нет.

Если такое происходит, я обычно запускаю *emerge uDNa world* смотрю, что она пишет и делаю соответствующие изменения. Обычно - это добавление в package.use каких-то строк для разрешения зависимостей и dispatch-conf после этого.

А что у Вас выводит emerge -uDNa world в этом случае, и что cl-update ?

И зачем нужен весь этот огород, когда есть emerge -uDNa world? Превращать дистрибутив в убунтоподобный дистр? Но зачем, ведь убунту уже давно изобрели!

Я не имел опыта работы с упомянутым вами дистрибутивом. Возможно вы сможете пояснить, что именно вы имеете ввиду. Удобство работы пользователям? Разве вы не поэтой же причине выбрали Calculate? Может быть потерю контроля над обновлением? Надуманная причина, т.к. скрипт не выполняет ничего нового от себя. Отсутствие магии обновления доступной только избранным? Вы знаете, впервые за много лет мой брат сам смог обновлять свою систему, и это после того, как незадолго до этого он научился переписывать с флешки фотографии. Это на ваш взгляд плохо? А вообще в таких комментариях я всегда вижу возможно неосознанную рекламу.

Alexander Tratsevskiy wrote:

И зачем нужен весь этот огород, когда есть emerge -uDNa world? Превращать дистрибутив в убунтоподобный дистр? Но зачем, ведь убунту уже давно изобрели!

Я не имел опыта работы с упомянутым вами дистрибутивом. Возможно вы сможете пояснить, что именно вы имеете ввиду. Удобство работы пользователям? Разве вы не поэтой же причине выбрали Calculate? Может быть потерю контроля над обновлением? Надуманная причина, т.к. скрипт не выполняет ничего нового от себя. Отсутствие магии обновления доступной только избранным? Вы знаете, впервые за много лет мой брат сам смог обновлять свою систему, и это после того, как незадолго до этого он научился переписывать с флешки фотографии. Это на ваш взгляд плохо? А вообще в таких комментариях я всегда вижу возможно неосознанную рекламу.
Рекламировать убунту? :slight_smile: Вы всё верно написали и это безусловно отлично, но. Если человек не хочет вникать в:

 # emerge -avuDN world

То неужели ему захочется постигать:

 # cl-update -ev --usenew-conf

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

1 Like

А что у Вас выводит emerge -uDNa world в этом случае, и что cl-update ?

cl-update у меня выдаёт ошибку (красными буквами Error) и пишет, что не может произвести обновление (если я его запускаю вручную) - emerge же предлагает, в основном, добавить что-то в package.use, ну и естественно потом нужно обновить конфигурационные файлы через dispatch-conf

В принципе, меня это особо не утомляет, просто я думаю, что скрипт cl-update может это всё делать автоматически, конечно спрашивая на это разрешение при обновлении… точно также, как он спрашивает, нужно ли удалять не нужные более файлы…

То неужели ему захочется постигать: cl-update -ev --usenew-conf

дело не в том, что нужно что-то постигать… это как раз не проблема, тем более “emerge” при ручном управлении со всем прекрасно справляется… дело просто в улучшении работы скрипта обновления, вот и всё…

Calculate Linux, слава богу, не навязывает какие-то определённые модели и тот же скрипт обновления можно спокойно отключить и не использовать, а о шаблонах вообще не знать, всё и так работает и совместимо с gentoo…

единственное, что немного ухудшает юзабилити этого скрипта (кроме вышеописанного) это кнопочка “Прервать процесс”, она расположена на том же месте, что и кнопка “Да” и часто так бывает, что при случайном двойном нажатии на кнопку “Да”, после неё сразу же оказывается нажатой кнопка “Прервать процесс” и приходится или вызывать скрипт заново (при обновлении, например) или (если это удаление пакетов), можно просто запустить “emerge -ca” в консоли…

Вот картинки, чтобы проще было представить что именно не так:
https://yadi.sk/i/FQ3r5Y2FfSwna
https://yadi.sk/i/tFuE8adUfSwnu

Если бы было возможно, кнопку “Прервать процесс” передвинуть вправо, это решило бы все вопросы и скрипт стал бы лучше…

1 Like

Если человек не хочет вникать в:
emerge -avuDN world
То неужели ему захочется постигать
cl-update -ev --usenew-conf

cl-update прекрасно справляется со своей задачей с настройками по умолчанию.

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

Мне кажется вы путаете две вещи - удобство работы и возможность настраивать систему, либо боитесь, что пользователь имея удобный дистрибутив не захочет в нем что-либо менять. Возьмите для примера cl-kernel. Скрипт сделает именно то, что вам нужно - соберёт ядро с вашими параметрами. Сделает это максимально эффективно, т.к. во-первых вам ненужно думать, что дальше делать с собранным ядром и во вторых, вам не нужно думать, как проделать то же самое при следующих обновлениях ядра. Есть задача - есть решение. Оптимальный подбор параметров ядра не тривиальная задача. Нужно ли вам в это время применять дзен ? Уж наверное не в этот момент.

То же касается и cl-update. Если вы говорите, что для обновления системы вам достаточно выполнить ‘emerge -uDNa world’, вы как минимум лукавите. Подумайте как вы напишите документацию и сколько вставите в ней “если” для того, чтобы пользователь смог получить после обновления рабочую систему. Кстати, помимо прочего, cl-update так же может исправлять все возможные косяки в системе (в т.ч. наши ошибки), изучать которые и писать FAQ для обновления уж точно нет никакого смысла.

B. X. wrote:

А что у Вас выводит emerge -uDNa world в этом случае, и что cl-update ?

cl-update у меня выдаёт ошибку (красными буквами Error) и пишет, что не может произвести обновление (если я его запускаю вручную) - emerge же предлагает, в основном, добавить что-то в package.use, ну и естественно потом нужно обновить конфигурационные файлы через dispatch-conf

cl-update Вы имеете в виду консольный или графический? Что конкретно (лог, скриншот) выдаёт cl-update и что конкретно (лог, скриншот) выдает вызов emerge -uDNa world?

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

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

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

Не нужно думать тем, кому это действительно не нужно. И вместо того, чтобы предлагать им вышеупомянутый дистрибутив “для таких случаев”, подумайте лучше, как вы сможете решить эту проблему с калькой.

Alexander Tratsevskiy wrote:

… подумайте лучше, как вы сможете решить эту проблему с калькой.

а вы не подсказывайте “чё и как” тут и на канале calculate-ru (есть же вполне нормальная документация и /var/lib/layman/calculate/profiles/templates в качестве примеров) , тогда и будут вынуждены пользоваться СВОЕЙ головой для решения своих “проблем” :slight_smile:

а вы не подсказывайте “чё и как” тут и на канале calculate-ru (есть же вполне нормальная документация и /var/lib/layman/calculate/profiles/templates в качестве примеров) , тогда и будут вынуждены пользоваться СВОЕЙ головой для решения своих “проблем” :slight_smile:

Документация как раз нужна тем, кто хочет лучше изучить систему. В большинстве случаев система должна просто работать и просто обновляться. Именно поэтому есть cl-update, задача которого выполнять обновления без “сюрпризов”.

Alexander Tratsevskiy wrote:

Именно поэтому есть cl-update, задача которого выполнять обновления без “сюрпризов”.

если бы “сюрпризов” не было то и вопросов тут бы не было (хотя все решения этих “сюрпризов” на пару минут , типа шаблон/clt правил для еудев-3.0 … но для решения надо знать что делаешь и читать уметь) . Кстати выхлоп emerge -uDN world более информативен и понятен чем “обновление не завершено” без комментариев :slight_smile:
зы . Александр , без проблем не бывает ни в одном дистре (не важно мак ли это , венда или линукс) … и ноют чаще те кто делать сам ничего не хочет … так что делайте всё “для себя любимых” и не забивайте себе голову проблемами ленивых/хитрожопых))

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

Ну вы и нафлудили тут, горячие русские парни :slight_smile: Загляните сюда , может поможете чем…

cl-update Вы имеете в виду консольный или графический? Что конкретно (лог, скриншот) выдаёт cl-update и что конкретно (лог, скриншот) выдает вызов emerge -uDNa world?

К сожалению, ничего не осталось. Ни лога, ни скриншота. cl-update был графический. Эта ошибка периодически проявляется, когда надо что-то добавить в package.use, в последний раз надо было добавить:

=gnome-base/gvfs-1.20.3 udisks
sys-fs/eudev gudev
 # required by xfce-base/thunar-1.6.3[udisks]
 # required by xfce-extra/thunar-archive-plugin-0.3.1
 # required by @selected
 # required by @world (argument)
=gnome-base/gvfs-1.22.3 udisks

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

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