История изменений
Исправление balsoft, (текущая версия) :
То, что это не принято – не мешает тебе делать костыли с submodule, и таким образом получать не одинаковые результаты.
Сабмодули гарантируют одинаковые результаты при одинаковом коммите в репозитории. Каналы, unsafePerformIO
или сортировка по пингу в конфиге – не гарантируют, а скорее наоборот.
Например: я склонировал свой конфиг на 6 машин, подтянул сабмодули (это всё делает скриптец) и собрал конфиг. Конфиги совпадают с точностью до конкретных (и при этом чистых) твиков для каждой машины. Так как эти твики зависят от чистого аргумента конфига, их очень легко тестить в виртуалке, например. Если что-то падает на машине, то оно будет падать и в виртуалке для этой машины.
Там, где слова о том, что «противоречит идее чистоты, ради которой все и затевалось» – разбиваются о реальность, в которой нужна возможность делать работу, а не слушать убеждения про то, что «код должен выглядить так и никак иначе».
Так пока что о реальность разбивается как раз Guix, не находите? Я вот попробовал накатить 1.0.0 с несколькими интересными мне пакетами. Ну так вот:
- Хромиум собирается у меня из исходников
- Кеды я так и не осилил накатить
- Никакого аналога home-manager нет и не предвидится, так что декларативные конфиги хомяка отпадают
- Пакетная база на схеме печальна
А если ещё добавить возможность накосячить в коде из-за грязноты схемы – получается ещё печальнее.
На nix конечно тоже есть серьезные проблемы, но такого ужаса я не испытывал со времен шлаки.
Я же ещё раз повторяю: это не религия, это желание завтра утром включить компьютер и работать, а не хромиум из исходников собирать или чинить невоспроизводимые билды у разработчиков. Когда (если) оба эти пункта будут легко решаться на сабже – я с радостью свалю с NixOS, ибо тоже очень интересно писать всё на одном языке. Пока что даже в перспективе я вижу лишь навязывание идеологии «только GNU, только свобода» и бесчисленные возможности выстрела себе в ногу.
Исправление balsoft, :
То, что это не принято – не мешает тебе делать костыли с submodule, и таким образом получать не одинаковые результаты.
Сабмодули гарантируют одинаковые результаты при одинаковом коммите в репозитории. Каналы, unsafePerformIO
или сортировка по пингу в конфиге – не гарантируют, а скорее наоборот.
Например: я склонировал свой конфиг на 6 машин, подтянул сабмодули (это всё делает скриптец) и собрал конфиг. Конфиги совпадают с точностью до конкретных (и при этом чистых) твиков для каждой машины. Так как эти твики зависят от чистого аргумента конфига, их очень легко тестить в виртуалке, например. Если что-то падает на машине, то оно будет падать и в виртуалке для этой машины.
Там, где слова о том, что «противоречит идее чистоты, ради которой все и затевалось» – разбиваются о реальность, в которой нужна возможность делать работу, а не слушать убеждения про то, что «код должен выглядить так и никак иначе».
Так пока что о реальность разбивается как раз Guix, не находите? Я вот попробовал накатить 1.0.0 с несколькими интересными мне пакетами. Ну так вот:
- Хромиум собирается у меня из исходников
- Кеды я так и не осилил накатить
- Никакого аналога home-manager нет и не предвидится, так что декларативные конфиги хомяка отпадают
- Пакетная база на схеме печальна
А если ещё добавить возможность накосячить в коде из-за грязноты схемы – получается ещё печальнее.
На nix конечно тоже есть серьезные проблемы, но такого ужаса я не испытывал со времен шлаки.
Я же ещё раз повторяю: это не религия, это желание завтра утром включить компьютер и работать, а не хромиум из исходников собирать или чинить невоспроизводимые билды у разработчиков. Когда (если) оба эти пункта будут легко решаться на сабже – я с радостью свалю с NixOS, ибо тоже очень интересно писать всё на одном языке.
Исправление balsoft, :
То, что это не принято – не мешает тебе делать костыли с submodule, и таким образом получать не одинаковые результаты.
Сабмодули гарантируют одинаковые результаты при одинаковом коммите в репозитории. Каналы, unsafePerformIO
или сортировка по пингу в конфиге – не гарантируют, а скорее наоборот.
Например: я склонировал свой конфиг на 6 машин, подтянул сабмодули (это всё делает скриптец) и собрал конфиг. Конфиги совпадают с точностью до конкретных (и при этом чистых) твиков для каждой машины. Так как эти твики зависят от чистого аргумента конфига, их очень легко тестить в виртуалке, например.
Там, где слова о том, что «противоречит идее чистоты, ради которой все и затевалось» – разбиваются о реальность, в которой нужна возможность делать работу, а не слушать убеждения про то, что «код должен выглядить так и никак иначе».
Так пока что о реальность разбивается как раз Guix, не находите? Я вот попробовал накатить 1.0.0 с несколькими интересными мне пакетами. Ну так вот:
- Хромиум собирается у меня из исходников
- Кеды я так и не осилил накатить
- Никакого аналога home-manager нет и не предвидится, так что декларативные конфиги хомяка отпадают
- Пакетная база на схеме печальна
А если ещё добавить возможность накосячить в коде из-за грязноты схемы – получается ещё печальнее.
На nix конечно тоже есть серьезные проблемы, но такого ужаса я не испытывал со времен шлаки.
Я же ещё раз повторяю: это не религия, это желание завтра утром включить компьютер и работать, а не хромиум из исходников собирать или чинить невоспроизводимые билды у разработчиков. Когда (если) оба эти пункта будут легко решаться на сабже – я с радостью свалю с NixOS, ибо тоже очень интересно писать всё на одном языке.
Исправление balsoft, :
То, что это не принято – не мешает тебе делать костыли с submodule, и таким образом получать не одинаковые результаты.
Сабмодули гарантируют одинаковые результаты при одинаковом коммите в репозитории. Каналы, unsafePerformIO
или сортировка по пингу в конфиге – не гарантируют, а скорее наоборот.
Там, где слова о том, что «противоречит идее чистоты, ради которой все и затевалось» – разбиваются о реальность, в которой нужна возможность делать работу, а не слушать убеждения про то, что «код должен выглядить так и никак иначе».
Так пока что о реальность разбивается как раз Guix, не находите? Я вот попробовал накатить 1.0.0 с несколькими интересными мне пакетами. Ну так вот:
- Хромиум собирается у меня из исходников
- Кеды я так и не осилил накатить
- Никакого аналога home-manager нет и не предвидится, так что декларативные конфиги хомяка отпадают
- Пакетная база на схеме печальна
А если ещё добавить возможность накосячить в коде из-за грязноты схемы – получается ещё печальнее.
Я же ещё раз повторяю: это не религия, это желание завтра утром включить компьютер и работать, а не хромиум из исходников собирать или чинить невоспроизводимые билды у разработчиков. Когда (если) оба эти пункта будут легко решаться на сабже – я с радостью свалю с NixOS, ибо тоже очень интересно писать всё на одном языке.
Исправление balsoft, :
То, что это не принято – не мешает тебе делать костыли с submodule, и таким образом получать не одинаковые результаты.
Сабмодули гарантируют одинаковые результаты при одинаковом коммите в репозитории. Каналы, unsafePerformIO
или сортировка по пингу в конфиге – не гарантируют, а скорее наоборот.
Там, где слова о том, что «противоречит идее чистоты, ради которой все и затевалось» – разбиваются о реальность, в которой нужна возможность делать работу, а не слушать убеждения про то, что «код должен выглядить так и никак иначе».
Так пока что о реальность разбивается как раз Guix, не находите? Я вот попробовал накатить 1.0.0 с несколькими интересными мне пакетами. Ну так вот:
- Хромиум собирается у меня из исходников
- Кеды я так и не осилил накатить
- Никакого аналога home-manager нет и не предвидится, так что декларативные конфиги хомяка отпадают
- Пакетная база на схеме печальна
А если ещё добавить возможность накосячить в коде из-за грязноты схемы – получается ещё печальнее.
Я же ещё раз повторяю: это не религия, это желание завтра утром включить компьютер и работать, а не хромиум из исходников собирать или чинить невоспроизводимые билды у разработчиков. Когда (если) оба эти пункта будут выполнены – я с радостью свалю с NixOS, ибо тоже очень интересно писать всё на одном языке.
Исходная версия balsoft, :
То, что это не принято – не мешает тебе делать костыли с submodule, и таким образом получать не одинаковые результаты.
Сабмодули гарантируют одинаковые результаты при одинаковом коммите в репозитории. Каналы – не гарантируют.
Там, где слова о том, что «противоречит идее чистоты, ради которой все и затевалось» – разбиваются о реальность, в которой нужна возможность делать работу, а не слушать убеждения про то, что «код должен выглядить так и никак иначе».
Так пока что о реальность разбивается как раз Guix, не находите? Я вот попробовал накатить 1.0.0 с несколькими интересными мне пакетами. Ну так вот:
- Хромиум собирается у меня из исходников
- Кеды я так и не осилил накатить
- Никакого аналога home-manager нет и не предвидится, так что декларативные конфиги хомяка отпадают
- Пакетная база на схеме печальна
А если ещё добавить возможность накосячить в коде из-за грязноты схемы – получается ещё печальнее.
Я же ещё раз повторяю: это не религия, это желание завтра утром включить компьютер и работать, а не хромиум из исходников собирать или чинить невоспроизводимые билды у разработчиков. Когда (если) оба эти пункта будут выполнены – я с радостью свалю с NixOS, ибо тоже очень интересно писать всё на одном языке.