Alpine
Обновена на: March 24, 2022UPDATE: Manual install
Alpine ми е един от вариантите за нова ежедневна ОС. Що не Дебиан? От Стреч насам testing && sid репотата губят пакети по-често от приятното. Защо не ползвам stable? Завински.
Alpine e musl-based, което значи, че повечето ти апове, които ползваш сега, вероятно няма да работят out of the box. Защото та се компилирани спрямо glibc, или стандартната С библиотека на Gnu. Musl е друга stdlib, която е по-лека, но предлага и по-малко функционалност по подразбиране. Тук е моментът да кажа, че Алпайн е предвиден за embedded devices – затова и мъсъл, затова и busybox. Хората се кефят на дистрото и защото то е в основата на най-лекия docker image – 5MB.
Гореспоменатото не значи, че не можеш да ползваш Алпайн като настолна ОС.
Това, което трябва да се има предвид, е че нищо не ти идва наготово. Дори manpages на пакетите се свалят отделно. Което за някои хора си е идеално.
Имах следните проблеми с това да подкарам стандартната си работна среда:
– Няма sakura в репотата – ползвам mrxvt и симлинк като сакура (защото моят dwm е компилиран да търси сакура).
– seamonkey си е в репотата, но точно защото нищо не идва наготово, трябва да си дръпнеш ffmpeg за h.264 поддръжка (за да гледаш Twitch например).
– ca-certificates е пакет, който държи стандартните authorities; трябва да го свалиш и да пуснеш update-ca-certificates, иначе файда от SSL никаква.
– Fonts! Сваляй колкото да тръгнат аповете, които мрънкат. font-adobe, ttf-dejavu.
– Чудно решение за libc апове. Въпреки че Алпайн има libc6-compat пакет, той е в процес на разработка и невинаги върши работа (Telegram desktop). Свали си едно малко live iso (например Gparted), разопаковай го и имаш що-годе работещ Дебиан. Wiki-то на Алпайн е готяно и има статия за проксиране на Xorg в chroot-a, който е cd-то. Можеш да маунтнеш някаква фиктивна opt директория към chroot-a, после да скалъпиш скрипт, който пуска въпросния ап през chroot-a, за да се възползваш от libc-то на Gparted (или квото си си избрал).
– Неща, които ги няма в репотата, можеш да си набавиш от slackware пакети и да инсталираш наръка. Слак, защото са най-vanilla пакетите, които можеш да дръпнеш. deb-овете често са малко по-свързани със средата на Debian и не се знае колко добре ще вървят под Алпайн – може да си търят дебиански билдове на библиотеките.
Сега казвам, че apk – package manager-a на Алпайн, е също толкова бърз, колкото xbps на Void. Даже поддържа системата по-добре, понеже чисти orphan-и при всяко изтриване на пакет. Репотата са г/д stable && edge, където първото е както звучи, а второто е rolling release. Всяко от тях има main, community, testing.
От няколко дни си играя да пиша “универсялен мениджър”, който е просто обвивка около по-използваните мениджъри. Снощи написах интеграция със slackonly репото, за да може да правиш гореспоменатото сваляне по-бързичко. Цялостната идея на т’ва е mng +firefox +mousepad -chromium
|| mng ?whatever
Чикиджийството е да се избягва systemd. Изразявам се вулгарно, защото някои правят инициативана на мем. Аз не се кефя на няколко нива, които не би трябвало да те интересуват, затова и скачам през дистрота, докато се спъна в някое и остана с лице върху асфалта. За позледните няколко години Дебиан ме спъна яко, ама вече се изправям. Алпайн ползва OpenRC (Void – runit) и едно от първите неща, които правиш, след инсталация, е да дръпнеш dbus и да enable-неш следните сървиси:
rc-update add dbus
rc-update add udev
Не е трудно за свикване – OpenRC, а и пичовете нямат планове никога да ползват systemd. Или к’вото и да било на Poettering. Като инсталираш Xorg на новия си Alpine, периферията няма да работи поради липсата на демоните горе. Харесва ти? Окей, има два основни варианта за сваляне – със grsec или без. Приятно custom пачнат кърнъл, ако избереш първото – подсигурен и так далее, а vanilla ревизията включва стандартен пресен Linux.
Помни, че с Grsecurity ще имаш отговорността да пипаш привилегии, когато искаш да правиш странни неща…като да проксираш Xorg за chroot. Яко, че пичовете вече са обеснили тоя момент в уикито, та да мога и аз спокойно да го спомена.
Нямам заключение в момента.
UPDATE: Manual install
Автоинсталацията работи супер, но по-вероятно е да dualboot-ваш.
Пускаш setup-alpine, но даваш none, когато те пита за дискове.
apk add e2fsprogs cfdisk (ако не ти се занимава с fdisk)
mkfs.ext4 за мейна и boot (оказва се, че е задължително да имаш boot партицийка)
В моя случай sda5 – boot, sda6 – swap, sda7 – /
mount /dev/sda7 /mnt
mkdir boot /mnt
mount /dev/sda5 /mnt/boot
SWAP_DEVICE=/dev/sda6 setup-disk -m sys /mnt (Т’ва ще шибне системата).
Бъди сигурен, че /dev/sda5 is marked as bootable.
Ако след инсталацията не буутне, приложи mbr.bin на /dev/sda:
mount /dev/sda7 /mnt
cat /mnt/usr/share/syslinux/mbr.bin > /dev/sda