Все расширения
В этом разделе описаны все официальные расширения Denix.
Args
| Название | args |
|---|---|
| Описание | Более удобный способ задавать значение _module.args с помощью myconfig |
| Ответственные | yunfachi (GitHub, Telegram) |
Настройки
| Название | Значение по умолчанию | Описание |
|---|---|---|
path | "args" | Путь в myconfig, где будут созданы опции |
Base
| Название | base |
|---|---|
| Описание | Создаёт функциональные и тонко настраиваемые модули для хостов и райсов с минимальными усилиями |
| Ответственные | yunfachi (GitHub, Telegram) |
Настройки
| Название | Значение по умолчанию | Описание |
|---|---|---|
enableAll | true | Обозначает значение по умолчанию для hosts.enable и rices.enable |
args
Название Значение по умолчанию Описание enablefalseОбозначает значение по умолчанию для hosts.args.enableиrices.args.enablepath"args"Обозначает значение по умолчанию для hosts.args.pathиrices.args.path
assertions
Название Значение по умолчанию Описание enabletrueОбозначает значение по умолчанию для hosts.assertions.enableиrices.assertions.enablemoduleSystem"home-manager"Обозначает значение по умолчанию для hosts.assertions.moduleSystemиrices.assertions.moduleSystem
hosts
Название Значение по умолчанию Описание enableenableAllСоздавать ли модуль хостов extraSubmodules[]Дополнительные подмодули, используемые для создания собственных опций в типе хоста. Пример значения: [ ({ config, ... }: { options.coolName = "cool " + config.name; }) ]
hosts.args
Название Значение по умолчанию Описание enableargs.enableСоздавать ли аргументы hostиhostsс расширениемargspathargs.pathПуть к опциям расширения args
hosts.system
Название Значение по умолчанию Описание enabletrueСоздавать ли string-опцию systemв подмодуле хоста, которая задает значения опциямhomeManagerSystem,nixos.nixpkgs.hostPlatformиdarwin.nixpkgs.hostPlatform
hosts.assertions
Название Значение по умолчанию Описание enableassertions.enableДобавлять ли delib.hostNamesAssertionsв опциюassertionsуказанной модульной системыmoduleSystemassertions.moduleSystemМодульная система в которую будут добавлены assertions. Можно указать любое значение, даже "myconfig", если у вас есть специальный для этого модуль. Значения"home-manager"и"nix-darwin"автоматически преобразуются в"home"и"darwin"соответственно
hosts.type
Название Значение по умолчанию Описание enabletrueСоздавать ли enum-опцию typeв подмодуле хостаgenerateIsTypetrueГенерировать ли булевую опцию для каждого hosts.type.typesв следующем формате:"is{Type}". Также создает"isPC"со значениемisDesktop || isLaptoptypes["desktop" "latop" "server"]Все допустимые значения для опции typeв подмодуле хоста. Заметьте, если вы хотите добавить новый элемент в список, а не полностью перезаписать его, то это делается так:types = prev.types ++ ["newType"];
hosts.features
Название Значение по умолчанию Описание enabletrueСоздавать ли опцию featuresс типом enum-список в подмодуле хостаgenerateIsFeaturedtrueГенерировать ли булевую опцию для каждого hosts.features.featuresв следующем формате:"{feature}Featured"features[]Все допустимые значения для опции featuresв подмодуле хостаdefault[]Значение по умолчанию для опции featuresв подмодуле хостаdefaultByHostType{}Attrset, где ключи - это одно из значений hosts.type.types, а значения - список, аналогичныйhosts.features.default. Сhosts.features.defaultобъединяется список, чей ключ равен значению опцииtypeв подмодуле хоста
hosts.displays
Название Значение по умолчанию Описание enabletrueСоздавать ли опцию displaysв подмодуле хоста, тип которой - это список подмодулей со следующими опциями:enable(bool; по умолчаниюtrue),name(str; нет значения по умолчанию),primary(bool; по умолчаниюtrue, но только если элементов в опции хостаdisplaysне более одного),touchscreen(bool; по умолчаниюfalse),refreshRate(int; по умолчанию60),width(int; по умолчанию1920),height(int; по умолчанию1080),x(int; по умолчанию0),y(int; по умолчанию0)
rices
Название Значение по умолчанию Описание enableenableAllСоздавать ли модуль райсов extraSubmodules[]Дополнительные подмодули, используемые для создания собственных опций в типе райса. Пример значения: [ ({ config, ... }: { options.coolName = "cool " + config.name; }) ]
rices.args
Название Значение по умолчанию Описание enableargs.enableСоздавать ли аргументы riceиricesс расширениемargspathargs.pathПуть к опциям расширения args
rices.assertions
Название Значение по умолчанию Описание enableassertions.enableДобавлять ли delib.riceNamesAssertionsв опциюassertionsуказанной модульной системыmoduleSystemassertions.moduleSystemМодульная система в которую будут добавлены assertions. Можно указать любое значение, даже "myconfig", если у вас есть специальный для этого модуль. Значения"home-manager"и"nix-darwin"автоматически преобразуются в"home"и"darwin"соответственно.
User
WIP
Overlays
| Имя | overlays |
|---|---|
| Описание | Модуль упрощённой конфигурация оверлеев |
| Ответственные | Zonni (GitHub) |
Настройки
| Имя | Значение по умолчанию | Описание |
|---|---|---|
defaultTargets | ["nixos" "home"] | Цели по умолчанию, к которым будут применяться оверлеи |
moduleNamePrefix | "overlays" | Префикс, добавляемый к именам модулей, когда withPrefix равняется true |
Библиотека
overlayModule
Создаёт модуль, который применяет оверлеи к указанным целям. Если withPrefix равен true, создаётся опция ${moduleNamePrefix}.${name}.enable со значением delib.overlayModule :: enabled; в противном случае то же самое создаётся в ${name}.enable.
Аргументы:
| Имя | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
name | string | обязательный | Имя модуля этого оверлея |
overlay | overlay function | null | Применяемый оверлей |
overlays | list of overlay functions | [] | Список применяемых оверлеев |
targets | list of strings | defaultTargets | Целевые системы, к которым будут применены оверлеи. Разрешённые значения: "nixos", "home", "darwin" |
withPrefix | boolean | true | Добавлять ли moduleNamePrefix перед именем модуля этого оверлея |
enabled | boolean | true | Включать ли этот оверлей по умолчанию |