- Linux Mint Devuan Edition
Собственно, захотелось попробовать настоящей корицы, а не китайской кассии на настоящем линуксе. Чую звук летящих помидор. Почему девуан настоящий? Без системД, т.е. без системы в системе, используются просто системы инициализации, 100% юникс вей. Пакетный. Универсальный: от серверов до десктопа, от стабильного до свежайшего, нестабильного.
Путь реализации выбран сложный: нетинсталл дебиан->девуан>LMDE. Почему сначала дебиан? У дебиана есть графический инсталлятор и нетинстал образ с несвободными драйверами, чего нет у стокового девуана. Ставить систему без драйвера вайфай по вайфаю крайне неудобно, да и бегать со второй флешкой — не торт. Да и почему бы и нет?
Для тех, кому интересны отдельные этапы приключения — конверсия дебиан в девуан или девуана в LMDvE, оглашу набор использованных команд по ходу повествования.
Этап 1. Установка дебиан из netinstall образа с firmware: ничего сложного, инструкций полно.
Попадаем в страшную и ужасную командную строку в голом терминале. Шрифт мелкий вырвиглазный. Лечим nano /etc/default/console-setup где ставим размер по вкусу (включится после ребута).
Инструкция по мутации на офсайте девуана https://www.devuan.org/os/documentation/install-guides/chimaera/bullseye-to-chimaera работает с опцией sysvinit и не дает возможности оставить дебиан в виде дебиана же, но без системД. Плюс хочу openrc. Идем другим путем.
Итак подпункт: дебиан в дебиан без системд:
Страшный и ужасный вэпэасуппликант для коннекции к вайфаю:
wpa_passphrase имя_сети_wifi пароль | tee /etc/wpa_supplicant.conf
смотрим имя адаптера (wifi: wl***** ):
ip a
wpa_supplicant -B -i wl***** -c /etc/wpa_supplicant.conf
iw wl***** link
dhclient wl*****
Мы в сети.
apt-get install openrc sysvinit-core
reboot
Реконнект wifi после reboot:
wpa_supplicant -B -i wl***** -c /etc/wpa_supplicant.conf
dhclient wl*****
apt-get install elogind libpam-elogind orphan-sysvinit-scripts systemctl procps
reboot
Предотвращаем реинкарнацию системд (будет также полезным при использовании реп иных дистрибутивов):
nano /etc/apt/preferences.d/systemd
содержимое
Package: systemd
Pin: release *
Pin-Priority: -1
Package: *systemd*
Pin: release *
Pin-Priority: -1
Package: systemd:i386
Pin: release *
Pin-Priority: -1
Дебиан с openrc готов, на этом можно остановиться и жить дальше, установив DE, кроме гнома, который не установится, потому что разрабы наглухо прибили его к системд. Дуванцы gnome героически отвязали, но зачем? (Лучше потратить усилия на совершенствование иных гномов: мате, корицы, бажи, имхо)
Получаем девуан.
Комментируем все репы Debian и добавляем репозитории Devuan:
nano /etc/apt/sources.list
содержимое:
deb http://deb.devuan.org/merged chimaera main contrib non-free
deb http://deb.devuan.org/merged chimaera-updates main contrib non-free
deb http://deb.devuan.org/merged chimaera-security main contrib non-free
deb http://deb.devuan.org/merged chimaera-backports main contrib non-free
wpa_supplicant -B -i wl***** -c /etc/wpa_supplicant.conf
dhclient wl*****
apt-get update --allow-insecure-repositories
apt-get install devuan-keyring --allow-unauthenticated
apt-get update
apt-get upgrade
apt-get purge systemd libnss-systemd
Прежде, чем ребутнуться ставим network менеджер — для удобства. В дебиане адаптер вайфай зовется как-то типа wl*****, а на диване, вероятно, превратится в стандартный wlan0. Цирк с впасуппликантом пришлось бы начинать с начала.
apt-get install network-manager
reboot
Коннектимся через TUI network-manager-a и соединение будет активно после перезагрузок
nmtui
apt-get update
apt-get dist-upgrade
если нужно, reboot
Миграция на диван завершена.
Этап 2. Рабочее окружение.
Вариант 1 — скучный. Набираем волшебную команду tasksel, выбираем дефолтное DE из списка, ребутимся и наслаждаемся страшным дефолтом. Неважно какое де, они все страшные в дефолте)) А затем пилить и пилить.
Вариант 2 LMDvE
Полезные утилиты.
apt-get install mc curl rar unrar p7zip-full doas aptitude youtube-dl ufw gufw gparted fsarchiver libunrar5 powertop software-properties-common apt-transport-https wget ca-certificates gnupg2 htop i7z
Примечание1: каждому свое.
Примечание2: rar несвободный и на него его есть своя лицензия.
Подключаем мятные репозитории. Только дебиановские. У LMDE есть еще убунтовская репа для тех пакетов, которые как бы работают на дебиане.
nano /etc/apt/sources.list
добавить строку:
deb http://packages.linuxmint.com elsie main upstream import backport
cd /var/cache/apt/archives/
wget http://packages.linuxmint.com/pool/main/l/linuxmint-keyring/linuxmint-keyring_2022.06.21_all.deb
apt-get install ./linuxmint-keyring_2022.06.21_all.deb
apt-get update
аптитуда — чудесная вещь если нужно решить проблемы с пакетами. Ее и используем (можно через force в apt-get, но зачем?)
aptitude install mint-meta-cinnamon mint-meta-core mint-meta-codecs nemo nemo-emblems nemo-preview xreader gnome-terminal gnome-font-viewer gnome-calendar gnome-calculator gnome-power-manager xviewer xviewer-plugins acpi-support alsa-utils anacron build-essential cups cups-browsed mint-common mint-info-cinnamon xapps-common xorg lightdm hdparm cpufrequtils pm-utils geany bash-completion htop lightdm-settings mint-mirrors muffin blueberry slick-greeter gimp audacious mintmenu mintsystem mint-themes mint-backgrounds-uma mint-backgrounds-una mint-backgrounds-ulyssa mintstick nemo-share synaptic software-properties-common software-properties-gtk gnome-menus firefox-esr bulky caribou webapp-manager xapp-appimage-thumbnailer xapp-epub-thumbnailer xapp-mp3-thumbnailer xapp-raw-thumbnailer apt-clone baobab build-essential lintian
соглашаемся с предложенным решением. Обновлялка минта ставиться не будет. Прибита гвоздями к системD и отдает потом поттеринга. Да и не нужна. Обновиться можно вручную (apt-get update && apt-get dist-upgrade) или настроить крон, если кто-то хочет внезапно обновиться, как в винде. Наверное, единственное или одно из немногих, что не запустится.
reboot
Эта длиннющая команда, наверняка, не является самой оптимальной. Метапакеты тянут в зависимостях нужную мелочевку. Но разбираться в каждом, лишь для того, чтобы сократить команду… Работает же. Набор софта может быть изменен по вкусу. Например, можно добавить mintwelcome и появится окно приветствия минта, можно не ставить обои mint-backgrounds-* или анализатор дисков babobab или сразу добавить pix для картинок и что там еще. Тут по вкусу.
После перезагрузки попадаем в минт. Смотрим чего не хватает для полного счастья, доустанавливаем. Например apt-get install mintinstall — пакетный менеджер минта. В зависимостях он тянет флатпак. Из него можно ставить как обычные пакеты, так и флатпаки.
dconf-editor simple-scan итд
Важный момент. Безопасность. Зе бест, имхо, но наиболее анфрендли — иптабля. Нфтабля, как и свежие поделия красной шляпы — сплошной бэкдор, или уязвимость, или баг, или фича, кто их поймет, но не нужно.
Ну а самый простой вариант — apt-get install ufw gufw
запустить gufw и передвинуть ползунок. Уже сильно лучше.
Но этого мало. Мы живем в эпоху заката линукса и превращения его в виндоподобное поделие на службе у корпи. Поэтому сейчас нужно то, что не было нужно ранее — фаервол приложений.
https://github.com/evilsocket/opensnitch Он и со списками умеет и можно смотреть куда кто идет. И лочить, лочить…
Берем тут https://github.com/evilsocket/opensnitch/releases 2 пакета под нашу архитектуру (амд64) daemon и GUI делаем apt-get install ./opensnitch*.deb ./python3-opensnitch-ui*.deb
запускаем опенснитч из меню. Обучаем его.
Также, не плохо установить и настроить днскрипт https://github.com/DNSCrypt/dnscrypt-proxy, тем самым показав провайдеру фак, хотя бы на уровне днс. Плюс, там удобная реализация черных списков, как по днс, так и по IP адресам (в иптабле как их оптом добавить без боли?) — прощай реклама, сайты вредителей и шпионаж. Вот списочки https://github.com/crazy-max/WindowsSpyBlocker/tree/378dab746e23e4b3e4df1a5965896408947c1cc7/data/dnscrypt шпионов главного вакцинатора и телеметриста. Теперь можно даже заюзать виртуальную форточку не уведомляя его об этом))
Франкендиван на то и франкен, что зачем флатпак, если можно добавить других дистрибутивов?
Добавляем репы MXлинукс. Это безопасно. Совместимость МХ с девуаном даже выше, чем с дебианом.
nano /etc/apt/sources.list.d/mxlinux.list
deb http://mxrepo.com/mx/repo bullseye main non-free
deb http://mxrepo.com/mx/repo bullseye ahs
Приоритет:
nano /etc/apt/preferences.d/mxlinux
Package: *
Pin: release a=mx
Pin-Priority: 100
Ключ:
wget http://mxrepo.com/mx/repo/pool/main/m/mx21-archive-keyring/mx21-archive-keyring_2021.2.19_all.deb
apt-get install ./mx21-archive-keyring_2021.2.19_all.deb
apt-get update
В мх репах есть утилиты MXлинукса, виртуалбокс (если нужен именно виртуалбокс, а не qemu/kvm), то ставить нужно 2 пакета (apt-get install virtualbox virtualbox-guest-additions-iso), иначе поставится более старая версия guset-additions. Что этот зомби пакет делает в репах дивана без самого бокса не ясно, но там такого хватает. В MX в наличии также palemoon (не надо цеплять еще и его репу) и читалка фолиате. Без флатпаков, нормальная "девуанная" версия.
Ну вот, уже лучше. Остается добавить браузеров, коих много не бывает.
Свободный волчонок https://librewolf.net/
Абровзер — прямой конкурент волчонка. В дикой природе водится только в репозиториях трискуел. Которая — суть гну убунта, а не беспорочный девуан. Страшно? Ничуть. зависимостей у него ноль, работает прекрасно, при корректно настроенной pin-priority тянуться оттуда, как и обновляться будет лишь он сам. Качаем скрипт:
wget --no-check-certificate https://dcc.ufmg.br/~lcerf/abrowser-on-debian.sh
запускаем sh abrowser-on-debian.sh, дальше он сделает все как надо. И apt-get install abrowser.
Примечание: все было ОК, но вегда надо просмотреть скрипт перед запуском, вдруг заменили на другой))
Надо больше. Ангуглед хромиум. Пригодится. А вот тут с репами не все хорошо, даже совсем нехорошо. На помощь приходит величайшее изобретение в линукс — аппимаж. Кстати, волчонок тоже есть в такой форме. Качаем UGC отсюда https://github.com/ungoogled-software/ungoogled-chromium-portablelinux/tags Ну, вроде запустил и порядок. Не тут то было. Есть один момент, если вдруг предполагается, что программа будет использоваться не X минут, а существенное время, то раз уж аппимаже — это запакованный архив, значит при работе берет больше ресурсов, чем распакованный архив deb. А батарея при этом живет меньше. Не беда. Аппимаж долго по времени используемой программы можно распаковать и получить перформанс и потребление ресурсов приблизительно такое же, как у установленной (распакованной) из пакета программы. Но он останется портабельным. В качестве примера:
chmod +x ./ungoogled-chromium_102.0.5005.115-1.1.AppImage
./ungoogled-chromium_102.0.5005.115-1.1.AppImage --appimage-extract
mv squashfs-root chromium
Делаем его системным:
ln -s /путь_к/chromium/AppRun /usr/local/bin/chromium
Создаем менюшку:
nano /usr/share/applications/chromium.desktop
[Desktop Entry]
Name=Chromium
Comment=Browser
GenericName=Web Browser
X-GNOME-FullName=UngoogledChromium
Exec=/usr/local/bin/chromium %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=chromium-browser-symbolic
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;
StartupWMClass=chromium
StartupNotify=true
Всё, он прописан в системе. Обновление? Распаковать поверх в папку с распакованным апимажем и все дела.
Далеко не всё, но пока конец истории.
На скрине LMDevE с обоиной из него-же, панель прозрачная.
Комментарии
10:16
Возможно, попробую на своём ноутбуке как-нибудь.
Спасибо тебе, автор, за старания.
^_^
10:23
10:20
10:42
10:35
00:18
Жить будет долго) По аналогии с безопасностью, которая зависит от самого слабого звена. В этой инсталляции зависимость только от 2-х реп: Девуана и LMDE. При желании можно выставить pin-priority исключительно на пакеты забираемые из лмде. Кроме корицы и специфического мятного софта, в базе они полагаются на дебиан, с которым девуан практически 100% совместим. Так что, пока оба проекта существуют каких-то серьезных граблей быть не должно.
Кроме фаерволинга, ИМХО, система должна быть иммутабельной, амнестической или как там по русски, девочкой после перезагрузки. Считаю это маст хэв. Хотя и усложняет жизнь, когда надо что-то подкрутить, обновить, дополнительные ребуты, запись, закрытие, снова ребут. А что делать?
16:53
А зачем вообще нужен "данный путь". Это же извращение ради извращения.
00:22
На выходе - это девуан с настоящей корицей из минта, их темами и несколькими программулинами.
20:05
11:31
Своей версией, может быть?
18:03
18:28
06:19
Два раза имелась миграция серверов с Debian на Devuan. Ибо бэкпортов новой версии LXC не было, при самостоятельной сборке вылазили требовашие отладки проблемы, а dist-upgrade с заменой sysvinit на systemd был неприемлем.
Один раз была трабла с ALSA, связанная, скорее всего, с драйвером, на LMDE. Пляски с бубном закончились установкой Devuan черезе Debian“овский netinstall (Devuano“овский на целевой машине грузиться отказывался) с дополнительными репами LMDE и MX через пины, примерно, как у автора статьи.
Не считал, сколько раз, переезд с Mint (ибо были нужны более свежие версии определённых пакетов) на Ubuntu с остаточным софтом и Mint“овских репов через пины. Был такой вариант корпоративной виртуализации оконечного рабочего места.
Была несколько раз солянка из актуальной версии Devuan с репами от старых (не соотвествующих текущему Devuan) релизов Debian ради depricated, но необходимых в работе пакетов.
18:01
"-Ты меня любишь?
-Да.
-А туфли купишь?
-А зачееем? "
23:06
16:07
То есть, наверное к MX можно рискнуть прикрутить репы минта и поставить любимую корицу.
Но за труды лайк!
19:57
# dpkg -l | grep systemd
ii systemctl 1.4.4181-1.1 all daemonless "systemctl" command to manage services without systemd
22:53
Любой пакет systemd, несмотря на замену репозиториев можно поставить из deb. Либо собрать. Не стоит так категорично, про "не может быть установлен".
00:38
apt-get install openrc sysvinit-core
reboot
apt-get install elogind libpam-elogind orphan-sysvinit-scripts systemctl procps
reboot
После этого система дер**а из системы удаляется сама по себе.
Pin-Priority: -1 предотвращает ее повторное появление, если будут использоваться репозитории не девуана.
apt-get purge systemd libnss-systemd - это зачищает хвосты - конфиги.
Единственное, что я сразу не учел - вездесущая служба времени systemd-timesyncd, которая без системд бесполезна, ничего не делает и может быть легко снесена.
В итоге, на первом этапе (до конвертации в девуан) получается дебиан с openrc без системд. Не выключенной, а удаленной. И он уже может быть использован сам по себе. Такая возможность обозначена в документации дебиан.
Девуан же не просто дебиан без системд, а несколько большее. Часть пакетов там переделана в лучшую сторону для безсистемд дистрибутива. Фактически, в самом дебиане появилась опция смены системы инициализации (или как это правильно называть, ведь системд - не система инициализации, а гораздо более объемная система) благодаря существованию девуана, который двигают бывшие разрабы дебиана.
10:24
21:40
16:15
22:00
16:01
А что за железо использовалось в сабже?
Что в получившейся системе с потреблением ресурсов (RAM, CPU)?
И какие FS использовались? TimeShift на BTRFS будет работать?
19:48
Очень хорошо размял мозг.
А то закисают мозги, или что то другое там ;)
Статья хорошая. Не для большинства ИМХО.
Однозначно нужно!!!