Size: a a a

2021 March 18

VL

Valeriy L in NixOS
понял
источник

АБ

Александр Бантьев... in NixOS
Скачиваешь зависимости в fixed-hash derivation, собираешь в нормальной деривации которая зависит от первой
источник

АБ

Александр Бантьев... in NixOS
Единственное требование -- скачивание зависимостей должно быть повторяемо бит-в-бит, т.е. должен хэш сойтись
источник

VL

Valeriy L in NixOS
ну хэши сгенерировать не проблема
источник

MG

Misha Gusarov in NixOS
Александр Бантьев
Скачиваешь зависимости в fixed-hash derivation, собираешь в нормальной деривации которая зависит от первой
Вот можно было бы еще деривации произвести эти фиксед-хэш деривации в рантайме, то  решилась бы проблема го- и раст-пакетирования.
источник

АБ

Александр Бантьев... in NixOS
Misha Gusarov
Вот можно было бы еще деривации произвести эти фиксед-хэш деривации в рантайме, то  решилась бы проблема го- и раст-пакетирования.
... и ломалась бы гарантия воспроизводимости.
источник

MG

Misha Gusarov in NixOS
Типа, запустил сборку и она первым шагом сообщила, что ей нужен набор из фиксед-хэш дериваций (попарсенных из go.mod или Cargo-что-то-там).
источник

АБ

Александр Бантьев... in NixOS
Так можно, если она первым шагом говорит никсу хэши
источник

АБ

Александр Бантьев... in NixOS
источник

АБ

Александр Бантьев... in NixOS
Это называется IFD (import from derivation)
источник

АБ

Александр Бантьев... in NixOS
Вопрос только в том, что не всегда это возможно, например в opam хэшей просто нет для многих пакетов, и указывают они чаще всего на тэг а не ревизию
источник

MG

Misha Gusarov in NixOS
Интересно. А для го такое есть? Задача ровно та же, и набор метаданных такой же.
источник

MG

Misha Gusarov in NixOS
Для каждой зависимости известен урл и хэш (возможно, другого вида, нежели никс умеет).
источник

MG

Misha Gusarov in NixOS
Александр Бантьев
Вопрос только в том, что не всегда это возможно, например в opam хэшей просто нет для многих пакетов, и указывают они чаще всего на тэг а не ревизию
Плохие пакетные системы только руками.
источник

АБ

Александр Бантьев... in NixOS
Misha Gusarov
Интересно. А для го такое есть? Задача ровно та же, и набор метаданных такой же.
Пока что не видел, всё существующее требует вендоринга с ручным прописыванием хэшей
источник

АБ

Александр Бантьев... in NixOS
Если напишешь, тебя на руках носить будут (наверное)
источник

MG

Misha Gusarov in NixOS
Чесгря меня всё ещё тошнит от всего: и от языка, и от никспкгс, и от никсоси, так что вряд ли. Просто все остальные дистрибутивы настолько хуже, что приходится тошноту бороть!
источник
2021 March 19

TZ

Timofey Zakrevskiy in NixOS
Вот натянут типы на язык, вот проще будет. Другое дело, что не натянут...
источник

TZ

Timofey Zakrevskiy in NixOS
Вообще было бы  интересно посмотреть на реализацию основных идей/фич никса на, скажем, хаскелле. Приколотить гвоздями некоторое количество разрешённых либ, конкретную версию ghc, статически всё слинковать
источник

MG

Misha Gusarov in NixOS
Типы тут побоку. В никспкгс и никсоси написана пачка функциональности, которую нужно в язык втянуть, а то мануал языка бесполезен из-за того, что на голом языке ничего полезного не написать, а никспкгс и никсоси неполон из-за того, что там всё ad hoc сделано.
источник