ufm: (Default)
[personal profile] ufm

Очень хочется, что-бы тот, кто первый придумал переименовать в линуксе eth0/1/2 в эту хипстерскую поебень — просто горел в аду. При жизни.

Originally published at U.F.M's Homepage. You can comment here or there.

(no subject)

Date: 2016-10-20 14:40 (UTC)
From: [identity profile] ufm.livejournal.com
Прикольно. Надо будет пощупать.

(no subject)

Date: 2016-10-20 15:17 (UTC)
From: [identity profile] avnik.livejournal.com
Сразу предупреждаю -- там в "знакомых" местах лежат только положеные по позиксу /bin/sh и /usr/bin/env, и те симлинки в /run/current-system/sw/bin, а оный /run/current-system кажет в /nix/store/9v25bkvvinjcjd4qmgx802m0nc9zadbv-nixos-system-bulldozer-17.03.git.0731068 (по крайней мере в настоящий момент на моем локалхосте).

Из плюшек -- zfs почти из коробки, хитрая команда nix-shell, которая умеет делать эфемерное окружение (`nix-shell -pA pkgs.chromium --run chromium` поставит/запустит/забудет о хромиуме сразу после выхода), а так же живое и активное community умеющее irc и принимать PRы на гитхабе без лишней бюрократии)

Потому и почти атомарные апдейты, обновление одного симлинка в tmpfs (с ребутом гарантировано атомарные) -- +список N последних конфиругаций в грубе -- можно вернуться в день когда все работало.

Два серьезных drawbacks -- произвольный скачаный линуксовый бинарник без танцев не запускается (при сборке пакетов им прописывается полный путь ld.so от того libc с которым оно собрано, +rpath так же "выпрямлен" -- впрочем для closed source есть почти готовые решения, которые подгоняются за минуту).

Второй -- когда инвалидируется что-то в корне графа пакетов (openssl, или еще хуже libc) -- протухают хеши у всех зависимых пакетов. Обычно такие изменения проходят staging ветку, чтобы CI успело собрать/закешировать все основное. Но иногда случается срочное security update, и все кто успел раньше CI страдают.