Я вот не готов поддерживать три разные системы. У дочки есть ноут с виндой, и терминал с линуксом (с ковидных времен - для школьной удаленки). У жены линуксовый десктоп - потому что ей по факту нужны только libreoffice и браузер,
далее - вот у меня два (а в перспективе три) раззных заказчика, у которых есть текущие проекты, есть легаси, а иногда и древнее зло которому надо gcc _меньше_ чем 7.0. И мне в том числе надо, чтобы у всех разрабов было одинаковое все. Иметь "по ноутбуку" на проект и переставлять систему под другие условия - тоже такое себе.
Так вот инструкция всем "поставить nix (опция - взять докер или виртуалку)," - раз, запустить в проекте nix-shell - два. Опционально - поставить в любимый IDE плагин для direnv. Альтернативой было - yocto/openembedded в докере. (у нас целевая платформа собирается на OE,
"бока" от никса я тоже вижу если что. Зоопарк версий от 2.0 до 2.7, нежелание его обновлять, обратная совместимость в языке и nixpgks.
> "nix, лучше которого ничего не придумали" Я бы все таки сказал "лучшее что придумано на текущий момент"
> Соответственно, управление пакетами это управление "законами", многие из которых друг другу противоречат (пакеты не могут быть применены одновременно - две версии поддержки SSL, сколько же я с этим боролся) или содержат ненужное прямо тут и сейчас > nix -- это способ хоть как-то лавировать в этом лабиринте.
А какие альтернативы? ничего не делать? Я build/release engineer, я умею из кучи разных говен делать либо хорошо, либо _хотя бы терпимо_.
Я вот не готов поддерживать три разные системы.
У дочки есть ноут с виндой, и терминал с линуксом (с ковидных времен - для школьной удаленки).
У жены линуксовый десктоп - потому что ей по факту нужны только libreoffice и браузер,
далее - вот у меня два (а в перспективе три) раззных заказчика, у которых есть текущие проекты, есть легаси, а иногда и древнее зло которому надо gcc _меньше_ чем 7.0. И мне в том числе надо, чтобы у всех разрабов было одинаковое все. Иметь "по ноутбуку" на проект и переставлять систему под другие условия - тоже такое себе.
Так вот инструкция всем "поставить nix (опция - взять докер или виртуалку)," - раз, запустить в проекте nix-shell - два. Опционально - поставить в любимый IDE плагин для direnv.
Альтернативой было - yocto/openembedded в докере. (у нас целевая платформа собирается на OE,
"бока" от никса я тоже вижу если что. Зоопарк версий от 2.0 до 2.7, нежелание его обновлять, обратная совместимость в языке и nixpgks.
> "nix, лучше которого ничего не придумали"
Я бы все таки сказал "лучшее что придумано на текущий момент"
> Соответственно, управление пакетами это управление "законами", многие из которых друг другу противоречат (пакеты не могут быть применены одновременно - две версии поддержки SSL, сколько же я с этим боролся) или содержат ненужное прямо тут и сейчас
> nix -- это способ хоть как-то лавировать в этом лабиринте.
А какие альтернативы? ничего не делать?
Я build/release engineer, я умею из кучи разных говен делать либо хорошо, либо _хотя бы терпимо_.
Reply
Leave a comment