Skip to content

Добавить поддержку NixOS - #118

Open
endotrizine wants to merge 14 commits into
pluralplay:mainfrom
endotrizine:nix-flake
Open

Добавить поддержку NixOS#118
endotrizine wants to merge 14 commits into
pluralplay:mainfrom
endotrizine:nix-flake

Conversation

@endotrizine

@endotrizine endotrizine commented Jul 29, 2026

Copy link
Copy Markdown

Добавлена поддержка FlClashX на NixOS через Nix flakes.

  • Добавлен flake.nix

  • Изменено README.md и README_EN.md, добавлен гайд по установке

  • Добавлен новый воркфлоу для проверки сборки на Nix:


Важный гайд по обслуживанию

Суть: в flake два хеша

  1. vendorHash - для Go-модулей. Зависит от go.sum.
  2. gitHashes.flutter_js - для Flutter. Зависит от pubspec.lock когда там есть пакет с source: git.

Как чинить хеш мисматч:

  1. Смотрите в error - там всегда есть строка got: sha256-...
  2. Копируете именно это значение (не specified:, это старое)
  3. Вставляете в flake.nix на нужное место:
    • если ошибка про ...-go-modules... то это vendorHash
    • если ошибка про ...-flutter_js-source... или другое имя пакета то это gitHashes."имя_пакета"
  4. Пересобираете. Но может понадобиться повторить для второго хеша. Если там новая ошибка то просто то же самое для другого хеша.

Чтобы не угадывать по названию можно сразу временно поставить pkgs.lib.fakeHash вместо строки с хешем, собрать, и Nix сразу выдаст реальный хеш взамен фейкового. Это все вы увидите в логах воркфлоу, оттуда и брать хеши

Потом может напишу воркфлоу для того чтобы оно само это делало но мне надо разобраться с nix-update
Если лень этим заниматься можно будет просто в раздел ридми с NixOS ссылку на мой форк вставить

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant