LINUX.ORG.RU

NixOS 18.03

 ,


0

4

Увидел свет новый релиз дистрибутива NixOS. Особенностями NixOS являются «функционально чистый» пакетный менеджер Nix, а также собственная система единой конфигурации.

Основные изменения:

  • Пакетный менеджер Nix обновлён до версии 2.0.
  • Значимые обновления пакетов:
    • linux: 4.9 -> 4.14;
    • glibc: 2.25 -> 2.26;
    • gcc: 6 -> 7;
    • systemd: 234 -> 237;
    • gnome: 3.24 -> 3.26;
    • plasma-desktop: 5.10 -> 5.12;
    • mariadb: 10.1 -> 10.2, также MariaDB теперь используется, как реализация MySQL по умолчанию.
  • Добавлено 60 новых сервисов.
  • Сервис OpenSSH по умолчанию больше не поддерживает ключи DSA, а также по умолчанию собирается с поддержкой протокола аутентификации Kerberos.
  • Прекращена поддержка nodejs версии 4.
  • Система аналитики Pikwik переименована в Matomo.
  • Добавлена поддержка индикаторов для дисплейного менеджера LightDM.

Готовые установочные образы предоставляются в варианте с десктопным окружением KDE Plasma 5 и в облегчённом консольном варианте (без предустановленного десктопного окружения).

>>> Подробности

Хороший дистр, сидел на анстейбле, но вынужден был сменить дистрибутив из-за некоторых вещей которых не хватало для разработки на Haxe/Rust

playX ()
Ответ на: Нужно! от anonymous

99% пакетов ставятся из бинарного кэша без компиляции

так везде (кроме генты) сто лет

Есть наборы конфигов типа nixos-mailserver - импортировал его в свой configuration.nix, добавил пару строчек конфигурации, и у тебя поднят полноценный почтовый сервер с DKIM и антиспамом

в любом пакетном дистре можно (кому-то одному) собрать такой пакет. а потом кастануть что-то типа apt install debian-mailserver и «и у тебя поднят полноценный почтовый сервер с DKIM и антиспамом»

Можно скопировать configuration.nix на другую машину, сделать nixos-rebuild switch

Это, конечно, круто, но сомнительной нужности

Минусы: иногда обнаруживаешь, что нужная тебе вещь через configuration.nix не настраивается

логичное продолжение достоинства

Декларативная конфигурация системы - больше не нужно пердолиться с правкой тысячи конфигов чтобы поднять какой-нибудь radicale или gitea. Просто добавил несколько строчек в configuration.nix, и всё работает.

// а так любопытно, пусть расцветает больше свободных цветов

pihter ★☆ ()

мне вот что не нравится:

текстовые конфигурационные файлы — один из столпов СПО. каждый пользователь этих наших линуксов твердо знает, что у любой используемой им программы, настройки (личные) хранятся либо в ~/.prog_name либо в ~/.config/prog_name каждый умеет этим пользоваться.

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

а тут вы мне предлагаете закапать конфиги и завести глобальный?

pihter ★☆ ()

Попытки поставить сабж на виртуалку подтверждают сходство с LFS, в который добавили очень правильный пакетменеджер. Разбираться с софтом придется примерно на том же уровне. Хотя может в арче примерно так же, я его поставить когда-то не смог, тупо запорол себе винт. Кстати при установке сабжа на gpt диск без UEFI груб чот ругнулся. Пробую короче заново.

q0tw4 ★★ ()

В release notes тонна всего про gitlab. В 17.09 он даже не стартовал. Зарепортил баг, и мне сказали

Gitlab is now disabled on master and release-18.03

Не знаю, чему и верить.

t184256 ★★★★★ ()
Ответ на: комментарий от pihter

а тут вы мне предлагаете закапать конфиги

закапать конфиги

закапать

Мы тут вам предлагаем повторно пройти тему «проверяемые безударные гласные в корне слова», примерно второй класс начальной школы.

slonopotamus ()
Ответ на: комментарий от slonopotamus

закапать конфиги

Мы тут вам предлагаем повторно пройти тему «проверяемые безударные гласные в корне слова», примерно второй класс начальной школы.

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

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

anonymous ()
Ответ на: комментарий от BceM_IIpuBeT

А что сложного в установке ArchLinux можно узнать? Разметить диск и сделать pacstrap это уже типа сверх сложность?

А разве я говорил, что Arch установить сложно?

Odalist ★★★★★ ()
Ответ на: комментарий от anonymous

Вот типичный пакет

А там есть возможность какой-нибудь императивщины для особо запущенных случаев скриптов сборки?

UPD Да, вижу там в skype скриптота на баше. Только напрягает, что как строки (без проверки синтаксиса и т.п.). Есть что-то нативное?

KennyMinigun ★★★★★ ()
Последнее исправление: KennyMinigun (всего исправлений: 1)

Поставил на старый ноут, установка прошла почти без проблем (кроме ошибки при создании загрузочной записи в EFI и нерабочей конфигурации железа при генерации конфига при использовании LUKS и btrfs subvolumes, но они решаемы). Установил Emacs и поменял DE. Что дальше делать?

theNamelessOne ★★★★★ ()
Последнее исправление: theNamelessOne (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Насколько характерна шелл-портянка и есть ли в nix средства, чтобы ее писать как-то, эээ, безопасно? Т.е. не на шелле, а декларативно.

Основные функции шелла это запускать утилиты (императивно) и работать с их стандартным вводом/выводом (нетипизированными потоками). Не ясно на каком принципе можно, не ломая совместимость, сделать «безопасную» и элегантную замену этому. На практике, в большинстве случаев, портянки писать не нужно. В nixpkgs есть мета-портянки, например, в stdenv [1] и в хуках [2] и во всяких хитрых обёртках для компиляторов [3]. Эти скрипты уже принимают декларативные параметры, заданные в nix выражениях часто уже без вкраплений шелла. Так декларативность реализована в nixpkgs, но никто не заставляет ей пользоваться. При желании можно писать свои портянки под голый nix.

[1] https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh
[2] https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/tools/build-man...
[3] https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/cc-wrapper/cc...

veprbl ()

собственная система единой конфигурации

Т.е. нельзя просто так взять и настроить некий софт до этого надо курить man-ы по этой самой вашей системе единой конфигурации? Это для кого так? Домохозяйкам похрен в любом случае а нормальным людям к чему эти ненужные телодвижения.

init_6 ★★★★★ ()
Ответ на: комментарий от t184256

т.е. K.I.S.S. ненужен? Зачем тащить за собой лишнюю сущность которая и нужна то не всем? Сходите с этим велосипедом в стан LFS и там попробуйте убедить людей в том, что без этого жизни нет и оно им просто необходимо так же как воздух.

init_6 ★★★★★ ()
Ответ на: комментарий от hateyoufeel

Потому что USE-флаги задумывались как ультимативная конфигурация системы «под себя», но по факту они используются в основном не для добавления фич, а для их отключения. Выгод у отключения ненужных фич, по сути, две. Во-первых, экономия места на диске. Во-вторых, сокращение времени компиляции. Первый пункт - это экономия на спичках, потому что сэкономленные пара гигов сейчас стоят <$1. А время компиляции гораздо лучше экономит NixOS, где большинство пакетов берётся из бинарного кэша. Ирония в том, что USE-флаги и гибкие зависимости как раз и делают бинарное кэширование невозможным. Когда у каждого своя уникальная комбинация флагов, и для каждой из них надо пересобирать всё заново. Также в генте можно забыть о воспроизводимости - каждая инсталяция уникальна и неповторима. Со своими уникальными багами и ошибками компиляции. И о тестировании можно забыть, все возможные комбинации USE-флагов и версий протестировать всё равно невозможно. Лично мне надоело при каждом обновлении разгребать ошибки и лазить в багзиллу, поэтому перешёл на NixOS.

HeipaVai1o ()
Ответ на: комментарий от anonymous

packageOverrides

... для каждого установленного в системе пакета, который зависит от флага, а их сотни. Хочешь выпилить systemd или иксы из своего сервера для локалхоста, и понимаешь, что systemd и иксы - это самое важное и лучше не трогать.

anonymous ()

Что такое «функционально чистый»?! Из текста новости не ясно. Наверное считается, что это общеизвестное определение, но я не в курсе. Прошу объяснить. Спасибо.

ivanlex ★★★ ()
Ответ на: комментарий от Odalist

Скорее для реализации подхода «Я знаю, что мне нужно для работы - потому у меня в ядре только то, что нужно для работы и ничего лишнего». Потому я очень высоко ценю генту как учебник по Linux - пока настроишь, хорошенько поймешь как работает система. Ну или сожжешь колонки, как произошло с моим Chromebook.

dpronyaev ()

Лучший дистрибутив linux и концепция. За ним будущее, все болезни дистрибутивов линукс вроде dependency hell и прочие, будут выброшены на свалку истории.

anonymous ()
Ответ на: Re: Нужно! от anonymous

Чего тебе жирно? Юзеров мало, девелоперов мало, багов вагон. Недавно вот nixos-unstable на целый месяц сломали. Говорю как юзер и мейнтейнер с 2015 года.

Begpoug ()
Ответ на: комментарий от Begpoug

Чего тебе жирно?

Голословные утверждения про маргинальщину. Где там маргинальщина то?

Юзеров мало, девелоперов мало, багов вагон

Москва не сразу строилась. Все это можно сказать про почти любой новый программный продукт.

anonymous ()