Cinant: цели и задачи кастомизации

Cinant: цели и задачи кастомизации

Овладев со страшной научно-фантастической силой методами пакетного менеджмента Antergos’а (унаследованными от Archlinux’а), можно приступать к его кастомизации. Для чего, в соответствие с заветами наших бывших велики вождей, нужно определить её цели и задачи.

Вступление

Впрочем, цель у нас одна — построение коммунизма идеальной системы. И достигается она решением трёх основных задач:

<оl>

  • обустройство среды обитания;
  • перекомплектация пакетов;
  • интеграционные действия.
  • Первые две задачи — общие при кастомизации любого дистрибутива. Однако их содержание зависит как исходной системы, так и от представлений того, каким видит применитель свой идеал. Здесь они будут рассмотрены применительно к дистрибутиву Antergos, и в соответствие с нашими с Мануалом представлениями о прекрасном. То есть это — своего рода шпаргалка, описывающая последовательность действий при кастомизации системы в заданных условиях.

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

    Организация снапшотов

    Antegros, как и прародительский Arch — дистрибутив со «скользящим» графиком обновления. Что обеспечивает актуальность версий пакетов, но служит и потенциальным источником возможного нарушения целостности системы. И хотя реально такие случаи нынче очень редки, «ломка» каких-то пакетов, особенно установленных из AUR’а вполне вероятна. Так что перед всякими кастомизационными действиями следует обеспечить возможность «отката» системы к одному из последних работоспособных состояний.

    Это делается обычно посредством создания «мгновенных снимков» или «срезов» системы, именуемых попросту снапшотами. И из всех средств для сощдания оных мы с Мануалом остановились на программе Timeshift. Она представляет собой графическую оболочку, интегрирующую инструментарий Btrfs для изготовления снапшотов встроенными средствами этой файловой системы, и механизм Rsync, обеспечивающий достижение той же цели — для остальных нативных файловых систем Linux’а. В Antergos’е она устанавливается командой

    $ sudo pacman -Sy timeshift

    Кстати, это, как и все далее описанные манипуляции с пакетами можно выполнять и через графический менеджер Pamac — правда, сначала его желательно настроить, о чём говорилось в соответствующем очерке.

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

    Среда обитания

    Обустройство среды обитания включает в себя, с одной стороны, настройку консольного режима и CLI, с другой — графической рабочей среды. Первая подзадача, в свою очередь, распадается на две части — настройку собственно «текстовой» консоли (точнее, виртуальных терминалов) и оболочки, обеспечивающей интерфейс командной строки aka CLI (Command Line Interface).

    В Archlinux нет универсальной утилиты конфигурирования, подобной dpkg-reconfigure из deb based систем. И потому настройка консольного ввода/вывода осуществляется прямой правкой конфигов, а включение службы консольной мыши (без которой консоль — не консоль) требует установки требуемого пакета:

    $ sudo pacman -Sy gpm

    И запуска соответствующего сервиса. Все эти вопросы рассмотрены в очередном очерке.

    Следующий шаг относится не только к консоли, но и к терминалам графического режима. Это — установка регистрационной командной оболочки пользователя по умолчанию (так называемый login shell). В этом качестве у нас с Мануалом выступает не традиционный для почти всех Linux’ов Bash, а Zsh, обладающий много более мощными интерактивными возможностями. Так что устанавливаем его:

    $ sudo pacman -Sy zsh

    И настраиваем, как это описал кот Мануал в своих Воззрениях.

    Разумеется, все перечисленные выше пакеты можно установить одной командой, просто перечислив их в качестве аргументов pacman‘а — здесь по отдельности они даны только из эстетических соображений (и наглядности ради).

    С настройкой GUI всё просто. Поскольку Cinnamon штатно поддерживается одной из редакций Antergos’а, никаких ухищрений по выискиванию пакетов в «левых» репозиториях (которые ещё имеют обыкновение помирать) не нужно. Достаточно некоторых действий по приведению среды в идеальный (для конкретного индивидуума) вид. О чём здесь будет рассказано — своевременно, или несколько позже.

    Перекомплектация

    Перекомплектация системы начинается с удаления заведомо ненужных пакетов. И в нашем случае всё обстоит достаточно просто: если на стадии инсталляции при выборе дополнительных пакетов снять все умолчальные отметки, оставив только любимый браузер (на выбор — Chrome, Firefox или Vivaldi) и поддержку AUR поддержку, то удалять останется не так много, ибо никаких ненужных монстров типа LOo или GIMP’а в нашей системе нет.

    Первые кандидаты на удаление — приложения GNOME (за немногими исключениями), которые традиционно включаются в сборки Cinnamon как зависимости. Не из личной антипатии к этой среде (хотя и она имеет место быть), и не из идеологических соображений. Просто приложения GNOME будут заменяться более удобными или более функциональными, по нашему мнению, аналогами. Удалять пакеты мы будем вместе с из конфигами и зависимостями. Начнём с терминала:

    $ sudo pacman -Rsn gnome-terminal

    В роли терминальных программ у нас будут выступать стандартный XTerm, настроенный должным образом, и Guake — без выпадающего терминала мы жизни себе не мыслим:

    $ sudo pacman -Sy xterm guake

    Предлагаемая в умолчальной инсталляции мультимедия представляется нам избыточной:

    $ sudo pacman -Rsn gnome-music totem

    Наши с Мануалом потребности на 146% удовлетворяются простым и универсальным плейером:

    $ sudo pacman -Sy mpv

    Вместо GNOME’вского вьювера документов (PDF, DjVu etc.)

    $ sudo pacman -Rsn evince

    в среде Cimmanon логичней использовать соплеменный по проекту Mint:

    $ sudo pacman -Sy xviever

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

    $ sudo pacman -Rsn brasero

    Остаётся удалить немногое — текстовый редактор, вьювер картинок, скриншоттер:

    $ sudo pacman -Rsn gedit eog gnome-screenshot

    Что за железные кони придут на смену этим крестьянским клячам — будет говориться в следующем разделе. Этот же мы завершим установкой пакетов, которые полагаем необходимыми. В частности, пакетами для удовлетворения офисных потребностей, вместо LOo, от которого отказались при инсталляции:

    $ sudo pacman -Sy abiword gnumeric

    Первый отлично справляется с ответственной задачей — чтением word’овских аттачментов в письмах, второй же, с его изобилием статистических функций, представляет самостоятельную ценность. А потребности в графике перекрываются простым растровым и мощным векторным редакторами:

    $ sudo pacman -Sy pinta inkscape

    Последний штрих — файловый менеджер-двухпанельник:

    $ sudo pacman -Sy sunflower

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

    Интеграция приложений Qt/KDE

    Наконец, третья задача — специфически наша. Как было сказано ранее, из умолчальной инсталляции мы удалили ряд приложений GNOME (или, шире сказать, Gtk), планируя заменить их аналогами, причём классово чуждыми — основанными на Qt/KDE. Почему? Потому что они кажутся нам более функциональными. Или — просто большее нравятся.

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

    $ sudo pacman -Sy qt5ct qt-gtk-platform-plugin qt5-styleplugins

    Кроме того, желательно подобрать тему пиктограмм для среды Cinnamon, которые органично смотрелись бы в приложениях Qt/Gtk. Методом ползучего эмпиризма было установлено, что таковыми являются, кроме mint-y-icons, имеющейся в стандартной инсталляции, ещё минимум две (на больше у нас с Мануалом терпения не хватило) :

    $ sudo pacman -Sy arc-icon-theme papirus-icon-theme

    Далее был определён исполнитель роли текстового редактора:

    $ sudo pacman -Sy kate

    Дополненный терминальной программой, обеспечивающей доступ к CLI из окна редактора:

    $ sudo pacman -Sy konsole

    На роль вьювера картинок было назначено чистое Qt-приложение:

    $ sudo pacman -Sy nomacs

    И, наконец, в амплуа скриншоттера выступили сразу два пакета, KDE’шный и Qt’шный:

    $ sudo pacman -Sy cpectacle hotshot

    Обо всех этих программах будет со временем рассказано.

    Cinant: цели и задачи кастомизации: 4 комментария

    1. Поскольку Cinnamon штатно поддерживается одной из редакций Antergos’а, никаких ухищрений по выискиванию пакетов в «левых» репозиториях (которые ещё имеют обыкновение помирать) не нужно.

      предыдущие, 3.8. версии, не могли этим похвастаться. Параметр «Языки» в панели управления отсутствовал, для чего из AUR отдельно необходимо было установить пакет mintlocale. Иначе в GUI невозможен был следующий финт: удаление всех ненужных языков, кроме родного и буржуйского, задание буржуйского в качестве основного везде, завершение сеанса (НЕ перезагрузка и т.п.), возврат в него, одобрение новых стандартных имён папок (Downloads вместо Загрузки, к примеру), задание родного языка везде в качестве основного, снова завершение сеанса, а затем — снова возврат в него, теперь уже с отказом от переименования стандартных путей (и, в этот раз, с отметкой переключателя «Не показывать снова», так как далее мы имена папок менять не будем). Для чего чехарда и беготня: полностью локализованная (на русском) система, в которой пути стандартных папок по умолчанию — полностью на латинице.

      оставив только любимый браузер (на выбор — Chrome, Firefox или Vivaldi

      а можно иметь их в системе целый зоопарк — для чего что уютней и приличнее (Opera, Palemoon, Chrome, Firefox — все для разных задач), но это — ладно, каждому своё.

      Наши с Мануалом потребности на 146% удовлетворяются простым и универсальным плейером:
      $ sudo pacman -Sy mpv

      к слову сказать, помимо всяких общеизвестных эксплуатантов mpv а-ля mplayer, smplayer, есть, как бы странно это ни звучало, наиболее нативная надстройка над ним, baka-mplayer, развёртывание в полноэкранный режим — Alt+Enter, громкость — колёсиком мыши, нет нужды запоминать клавиатурные комбинации mpv, работается просто и удобно с этой надстройкой.

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

      как ни странно, ещё пригождаются порой: обладаю полноформатным ноутбуком, остальная техника под надзором также не без оптических приводов, поэтому программы работы с носителями востребованы, будь то CD/DVD или USB — вот про это всегда стоит говорить отдельно, так как записать образ из системы на USB-носитель — одна из основных задач любого линуксоида. Промежуточно предложу Etcher и Unebootin.

      На роль вьювера картинок было назначено чистое Qt-приложение

      Вот тут я бы встрял с возможностью предпросмотра разных файлов силами штатного графического файлового менеджера nemo — это nemo-preview, который, по нажатии на файл и после — по пробелу, даёт возможность предпросмотра файлов, весом, ЕМНИП, до 4 Гб. Просто плюшка для удобства.
      В принципе, всё остальное в комментариях не нуждается, тут уже — выбор своих предпочтений, что изначально обеспечивается чистой установкой системы и включением нужных репозиториев.

    2. Дмитрий, спасибо за развёрнутый комментарий. Комментирую его по пунктам 🙂
      > Параметр «Языки» в панели управления отсутствовал
      Он отсутствует уже достаточно давно во ВСЕХ сборках Cinnamon не для Linux Mint и LMDE. Это принципиальная установка: старина Клем считает, что все вопросы, связанные с локализацией, должны решаться средствами дистрибутива, а не среды. Я с ним солидарен. Почему — уходит в прошлое тысячелетие 🙂
      > одобрение новых стандартных имён папок (Downloads вместо Загрузки, к примеру)
      Терпеть ненавижу русские имена (особенно с пробелами!) — всякий много работающий в CLI со мной солидарен, верно? Поэтому всегда и везде, в любой системе, следующей заветами этих… нехороших из freedesktop.org, первым делом даю команду:
      $ LANG=C xdg-user-dirs-gtk-update —force
      отмечаю боксик — больше не спрашивать, и о сём вопросе забываю навсегда.
      > можно иметь их в системе целый зоопарк
      Ну, каждый, чья работа связана с Инетом конкретно (а чья нынче не связана?) обязан иметь минимум два браузера на разных движках (тем более что их всего два и осталось). Просто без первого браузера (для меня это Vivaldi) — как без рук, а по поводу прочих будет время подумать потом.
      Кстати, до не очень давнего времени существовали банк-клиенты, широта эрудиции которых простиралась от IE через FF до Safari, о «хромых» они и не слышали. Почти всегда их можно было обмануть, но не всегда тривиально, проще было FF установить. Хвала Ахурамазде, нынче я пенсенерюга в законе, и меня уже не волнуют эти мелочи 🙂
      > записать образ из системы на USB-носитель — одна из основных задач любого линуксоида. Промежуточно предложу…
      А я уже не первый год предлагаю окончательное решение вопроса, всегда и везде (от root’а любым способом полученного):
      # cp path2/img-name.iso /dev/sd#
      где # — буковка устройства флешки/sd-карты.
      В отличие от dd, нельзя явным образом задать bs, он его сам откуда-то берёт, но некий усреднённый, не 512 байт 🙂
      Про медию и вьюверы файлов — как Вы заметили, сугубо дело вкуса и немножечко задач 🙂

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

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

      Терпеть ненавижу русские имена (особенно с пробелами!) — всякий много работающий в CLI со мной солидарен, верно?

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

      Кстати, до не очень давнего времени существовали банк-клиенты, широта эрудиции которых

      По сю пору существуют и размножаются. Имя им — легион. Декларирование, отчётность, налоги. Даже погружаться не хочется в это: предлагаю людям Linux, спрашивают в первую очередь именно про эти клиенты. Печаль, в общем.

      В отличие от dd, нельзя явным образом задать bs, он его сам откуда-то берёт, но некий усреднённый, не 512 байт

      а я и в этом, стыдно признаться, обленился. Отдаю на откуп инструментам с гуёвым интерфейсом. Тем самым программам выше — для носителей, gparted -при коренной какой-то обработке дисков, хотя там уже не ленюсь подробно разметку, файловую систему, размер кластера, флаги смотреть/задавать/проверять.

    4. И опять же, Дмитрий — спасибо за подробные комментарии, здесь и по всему свету… пардон, сайту.
      > спрашивают в первую очередь именно про эти клиенты.
      Вроде все они работают с FF нормально. Хотя моц сексуальный опыт с ними — ограничен, возможно, ошибаюсь 🙂
      > в этом, стыдно признаться, обленился.
      Так и я тоже. А поскольку проще команды cp ещё ничего не придумано — самое оно для нас, лентяев 🙂

    Добавить комментарий