Я читал немного о NixOS и пробовал это в наши дни, потому что у меня сложилось впечатление, что это позволит мне настроить Linux только с одним файлом.Как собрать полную конфигурацию системы NixOS?
Когда я использовал его, я установил кучу пакетов с nix-env
, таким образом, они не попадают в configuration.nix
, но я мог бы просто удалить их позже, и добавить их к configuration.nix
вручную. Я там что-то вроде npm i -g <package>
, который установил бы это глобально, чтобы он попал в configuration.nix
и мог просто быть скопирован на другую машину.
Кроме того, я установил такие вещи, как zsh
и atom
, и они имеют совершенно другой подход к настройке и настройке (bashscript, javascript, less и т. Д.).
Есть ли способ для Nix/NixOS отслеживать конфигурацию, специфичную для пакета?
Это уже происходит, и я не вижу его? Как и выражение nix пакета знает, где пакет будет хранить свою конфигурацию и т. Д.
Я имею в виду, что я могу добавить эти пакеты в основную конфигурацию, а при использовании на другом ПК я получаю то же программное обеспечение, но я по-прежнему вижу, что пишу довольно много конфигураций для установленных пакетов.
Да, я видел это PR после того, как я разместил это. Похоже, что даже если он объединен, конфигурация Atom по-прежнему является JavaScript, а не выражением Nix. Таким образом, это будет, вероятно, всегда так. –
В мире Nix обычно делается так, что пакеты Nix («выражения»), описывающие конкретное приложение, генерируют * конфигурационные файлы приложения (.json, .ini, .rc, .xml или что-то еще) под обертками , на основе «хороших» опций конфигурации, которые можно настроить с помощью * configuration.nix * (или * ~/.nixpkgs/config.nix *). Параметры обычно отображаются на основе «по мере необходимости» разработчиками пакетов (если вы изучаете Nix, вы можете попробовать сделать это сами!); Кроме того, не все приложения упрощают (нужно переопределить местоположение файла конфигурации по умолчанию, чтобы указать на автоматически сгенерированный файл в */nix/store/*). – akavel