snap in Ubuntu
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Вкотре видаляю цей чудовий встановлювач пакетів. Дійсно. Він може допомогти, коли у вас конфлікт версій бібліотек для якогось задрипаного пропрієтарного пакету а ля Вайбер чи Скайп. Або є якийсь корисний вам рідкісний пакет, якого нема в ppa наприклад(поки я такого не знаю, але це можливо)
Але майте на увазі! Використовуйте його лише, коли без цього не можна обійтися. От треба дуже, а не можна встановити штатними засобами ніяк, навіть якщо руками вставити лівий пакет з попередніх релізів і заборонити йому оновлюватися! Або іншими хитросплетіннями...
Чому? Бо інакше він з'їсть все, що у вас є.
Недоліки:
1. Буде закачано додаткове оточення core. Отже втрата місця на накопичувачі і в пам'яті коли буде виконуватися якесь корисне ПЗ з snap.
2. Буде встановлюватися оновлення всіх пакетів, що ви ставили і... Зберігати їх історію! Тобто ви зможете завжди відкотитися на потрібну вам версію, навіть якщо її вже нема в мережевому сховищі! Це ж мегафіча! Особливо, якщо треба підвищити попит на купівлю SSD великого об'єму...
3. Ваші пакети при запуску будуть повільно запускатися, бо їм треба пройти всі перевірки безпеки, сумісності, (що є неодмінно плюсом) та завантажити додаткове оточення в пам'ять. По суті всі ваші snap-lдодатки працюють у окремих контейнерах з своїм оточенням...
4. Часом пакет пухне через завантажене сміття(Вайбер) і це лежить не в хомяку, а в root! Як результат - ви не можете оновити ядро, хоча до цього у вас було десь до 1Гб вільного місця. В моєму випадку Вайбер+ядро з'їли до 700Мб. І це при тому, що старі версії ядра я вже поприбивав штатно.
5. Якість пакетів у snap часто заслабка. Один з моїх перших пакетів встановлених, десь, рік назад - LibreOffice. Все чудово стало, швиденько. Але замість кирилиці він показував cp-1252...((( Хто його компілив я думаю, зрозуміло. А от чого, я, такий лошара, його поставив - це вже інше питання. Недавно прогриміло, що в snap були якісь пакети, що майнили після встановлення. На що Канонікал відповіла - не заборонено. Ви самі обираєте той пакет який вам треба. А якщо автор вирішив трошки на вас заробити, то його право. Як ви здогадуєтеся, джерельных кодів пакетів у snap немає.
6. Я навіть намагався зробити свій пакет у цьому чуді, але через певні обмеження доступу до встановлених бібліотек(безпека і фсьо такоє), мій perl скрипт не міг використовувати на повну потужність бібліотеки imagemagick, тобто я не міг оброблювати графічні файли! Відповіді в підтримці не отримав і з радістю видалив свої потуги.
7. Він годиться лише для того, що ви самі нахардкодили. Легко і просто запхнути свою версію говнокоду у сховище, щоб всі його собі встановили, мало того потім зберігали всі версії і могли у випадку чого швиденько перемкнутися на ту версію, що хоть якось працювала!. У світлі останніх напрямків бізнесу - дуже перспективненько. Хуяк-хуяк і в продакшн! Тобто збираєте собі пакет, компілюєте і все у вас є. Але якщо треба використовувати зовнішні системні бібліотеки, то ви можете отримати дулю з маком! Отже що? Пишемо свій велосипед! Бо мені ж якось треба малюнки оброблювати! Це я думаю легше ніж інтегрувати код imagemagick у твій perl скрипт. Тобто все що компилиться - більше менш. ПЗ на скриптових мовах може відгребти ще той пучок щастя в залежності від того що він хоче робити.
Мало того ще й без вихідних кодів! Тобто повна протилежність ppa! А як все добре починалося...(((
Це бізнес, дитинко!
Отже я вас попередив...
no subject
Я таки нашел 2 недостатка в сем чуде.
1. Таки много места занимает.
2. Не создает отдельного юзверя и не запускается от его имени. ПОэтому геморройно фаер для него настроить.
no subject
Но создавание отдельного пользователя, может бы и имело смысл, если б это было в одном пространстве, но когда это отдельный chroot, то юзер уже никому не нужен...
Но это полдела.
А как вы будете фаер(я так понял фаервол) настраивать по пользователю?)))
Не ужели фаервол(netfilter например) умеет резать пакеты по пользователю иницировавшему/принимающему пакеты?
no subject
-A OUTPUT -m owner --uid-owner ХХХХХ -j ACCEPT
Я так торы и ... забыл как зовется фигня для синхронизации времени пропустил в мир.
Я хреново пониаю принцип работы этих снап, поэтому может и не в тему про фаер ляпнул. Но вот зело бы хотелось такую же фичу и для snap и flatpak.
no subject
2. Ну по сути snap - это контейнер. Соответственно, там уже свой ограничитель должен быть. Там их вообще пучок. Ограничение доступа к файлам, организация доступа к файлам за пределами контейнера(если надо) и т.д.
Как создавать свой фаервол под конкретный snap не интересовался, но думаю это есть из коробки ибо нафиг он тогда нужен без этого?)))