From 4e867c54250b5b126a878feed85fc7663e2ead89 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 22 Dec 2024 21:46:17 +0100 Subject: [PATCH 01/11] wrapper: rename build dir to environemnt --- modules/modules.nix | 2 +- modules/wrapper/{build => environment}/config.nix | 0 modules/wrapper/{build => environment}/default.nix | 0 modules/wrapper/{build => environment}/options.nix | 0 4 files changed, 1 insertion(+), 1 deletion(-) rename modules/wrapper/{build => environment}/config.nix (100%) rename modules/wrapper/{build => environment}/default.nix (100%) rename modules/wrapper/{build => environment}/options.nix (100%) diff --git a/modules/modules.nix b/modules/modules.nix index bc441e96..ee37a0e7 100644 --- a/modules/modules.nix +++ b/modules/modules.nix @@ -48,7 +48,7 @@ # The neovim wrapper, used to build a wrapped neovim package # using the configuration passed in `neovim` and `plugins` modules. wrapper = map (p: ./wrapper + "/${p}") [ - "build" + "environment" "rc" "warnings" "lazy" diff --git a/modules/wrapper/build/config.nix b/modules/wrapper/environment/config.nix similarity index 100% rename from modules/wrapper/build/config.nix rename to modules/wrapper/environment/config.nix diff --git a/modules/wrapper/build/default.nix b/modules/wrapper/environment/default.nix similarity index 100% rename from modules/wrapper/build/default.nix rename to modules/wrapper/environment/default.nix diff --git a/modules/wrapper/build/options.nix b/modules/wrapper/environment/options.nix similarity index 100% rename from modules/wrapper/build/options.nix rename to modules/wrapper/environment/options.nix From 2217565730056e33f92e24b5a996a4e87e350785 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 22 Dec 2024 21:49:11 +0100 Subject: [PATCH 02/11] wrapper: add built package as option --- modules/modules.nix | 1 + modules/wrapper/build/config.nix | 111 ++++++++++++++++++++++++++++++ modules/wrapper/build/default.nix | 6 ++ modules/wrapper/build/options.nix | 12 ++++ 4 files changed, 130 insertions(+) create mode 100644 modules/wrapper/build/config.nix create mode 100644 modules/wrapper/build/default.nix create mode 100644 modules/wrapper/build/options.nix diff --git a/modules/modules.nix b/modules/modules.nix index ee37a0e7..6e05c592 100644 --- a/modules/modules.nix +++ b/modules/modules.nix @@ -48,6 +48,7 @@ # The neovim wrapper, used to build a wrapped neovim package # using the configuration passed in `neovim` and `plugins` modules. wrapper = map (p: ./wrapper + "/${p}") [ + "build" "environment" "rc" "warnings" diff --git a/modules/wrapper/build/config.nix b/modules/wrapper/build/config.nix new file mode 100644 index 00000000..85c87dd6 --- /dev/null +++ b/modules/wrapper/build/config.nix @@ -0,0 +1,111 @@ +{ + inputs, + lib, + config, + pkgs, + ... +} +: let + inherit (pkgs) vimPlugins; + inherit (lib.strings) isString; + inherit (lib.lists) filter map; + + # alias to the internal configuration + vimOptions = config.vim; + + noBuildPlug = {pname, ...} @ attrs: let + src = inputs."plugin-${attrs.pname}"; + in + { + version = src.shortRev or src.shortDirtyRev or "dirty"; + outPath = src; + passthru.vimPlugin = false; + } + // attrs; + + # build a vim plugin with the given name and arguments + # if the plugin is nvim-treesitter, warn the user to use buildTreesitterPlug + # instead + buildPlug = attrs: let + src = inputs."plugin-${attrs.pname}"; + in + pkgs.vimUtils.buildVimPlugin ( + { + version = src.shortRev or src.shortDirtyRev or "dirty"; + inherit src; + } + // attrs + ); + + buildTreesitterPlug = grammars: vimPlugins.nvim-treesitter.withPlugins (_: grammars); + + pluginBuilders = { + nvim-treesitter = buildTreesitterPlug vimOptions.treesitter.grammars; + flutter-tools-patched = buildPlug { + pname = "flutter-tools"; + patches = [../patches/flutter-tools.patch]; + }; + }; + + buildConfigPlugins = plugins: + map ( + plug: + if (isString plug) + then pluginBuilders.${plug} or (noBuildPlug {pname = plug;}) + else plug + ) (filter (f: f != null) plugins); + + # built (or "normalized") plugins that are modified + builtStartPlugins = buildConfigPlugins vimOptions.startPlugins; + builtOptPlugins = map (package: package // {optional = true;}) (buildConfigPlugins vimOptions.optPlugins); + + # additional Lua and Python3 packages, mapped to their respective functions + # to conform to the format mnw expects. end user should + # only ever need to pass a list of packages, which are modified + # here + extraLuaPackages = ps: map (x: ps.${x}) vimOptions.luaPackages; + extraPython3Packages = ps: map (x: ps.${x}) vimOptions.python3Packages; + + # Wrap the user's desired (unwrapped) Neovim package with arguments that'll be used to + # generate a wrapped Neovim package. + neovim-wrapped = inputs.mnw.lib.wrap pkgs { + neovim = vimOptions.package; + plugins = builtStartPlugins ++ builtOptPlugins; + appName = "nvf"; + extraBinPath = vimOptions.extraPackages; + initLua = vimOptions.builtLuaConfigRC; + luaFiles = vimOptions.extraLuaFiles; + + inherit (vimOptions) viAlias vimAlias withRuby withNodeJs withPython3; + inherit extraLuaPackages extraPython3Packages; + }; + + dummyInit = pkgs.writeText "nvf-init.lua" vimOptions.builtLuaConfigRC; + # Additional helper scripts for printing and displaying nvf configuration + # in your commandline. + printConfig = pkgs.writers.writeDashBin "nvf-print-config" "cat ${dummyInit}"; + printConfigPath = pkgs.writers.writeDashBin "nvf-print-config-path" "echo -n ${dummyInit}"; + + # Expose wrapped neovim-package for userspace + # or module consumption. + neovim = pkgs.symlinkJoin { + name = "nvf-with-helpers"; + paths = [neovim-wrapped printConfig printConfigPath]; + postBuild = "echo Helpers added"; + + # Allow evaluating vimOptions, i.e., config.vim from the packages' passthru + # attribute. For example, packages.x86_64-linux.neovim.passthru.neovimConfig + # will return the configuration in full. + passthru.neovimConfig = vimOptions; + + meta = + neovim-wrapped.meta + // { + description = "Wrapped Neovim package with helper scripts to print the config (path)"; + }; + }; +in { + config.vim.build = { + finalPackage = neovim; + }; +} diff --git a/modules/wrapper/build/default.nix b/modules/wrapper/build/default.nix new file mode 100644 index 00000000..0ebefe45 --- /dev/null +++ b/modules/wrapper/build/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./options.nix + ./config.nix + ]; +} diff --git a/modules/wrapper/build/options.nix b/modules/wrapper/build/options.nix new file mode 100644 index 00000000..fa1db61e --- /dev/null +++ b/modules/wrapper/build/options.nix @@ -0,0 +1,12 @@ +{lib, ...}: let + inherit (lib.types) package; + inherit (lib.options) mkOption; +in { + options.vim.build = { + finalPackage = mkOption { + type = package; + readOnly = true; + description = "final output package"; + }; + }; +} From dc5551b0508aa099125c6a7606ae4fe5183fd05f Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 22 Dec 2024 21:50:13 +0100 Subject: [PATCH 03/11] home-manager: use proper submodule type for settings --- flake.nix | 2 +- flake/modules/home-manager.nix | 22 +++++++++++++--------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/flake.nix b/flake.nix index 161ba43f..3a177517 100644 --- a/flake.nix +++ b/flake.nix @@ -31,7 +31,7 @@ }; homeManagerModules = { - nvf = import ./flake/modules/home-manager.nix self.packages lib; + nvf = import ./flake/modules/home-manager.nix self.packages lib inputs; default = self.homeManagerModules.nvf; neovim-flake = lib.warn '' diff --git a/flake/modules/home-manager.nix b/flake/modules/home-manager.nix index 77b8448c..d1e85368 100644 --- a/flake/modules/home-manager.nix +++ b/flake/modules/home-manager.nix @@ -1,5 +1,5 @@ # Home Manager module -packages: lib: { +packages: lib: inputs: { config, pkgs, ... @@ -8,15 +8,19 @@ packages: lib: { inherit (lib.modules) mkIf mkAliasOptionModule; inherit (lib.lists) optional; inherit (lib.options) mkOption mkEnableOption literalExpression; - inherit (lib.types) attrsOf anything bool; - inherit (lib.nvim) neovimConfiguration; - inherit (lib.nvim.types) anythingConcatLists; + inherit (lib.types) anything bool submoduleWith; cfg = config.programs.nvf; - neovimConfigured = neovimConfiguration { - inherit pkgs; - modules = [cfg.settings]; + nvfModule = submoduleWith { + description = "Nvf module"; + class = "nvf"; + specialArgs = { + inherit pkgs lib inputs; + }; + modules = [ + {imports = import ../../modules/modules.nix {inherit pkgs lib;};} + ]; }; in { imports = [ @@ -55,7 +59,7 @@ in { }; settings = mkOption { - type = attrsOf anythingConcatLists; + type = nvfModule; default = {}; description = "Attribute set of nvf preferences."; example = literalExpression '' @@ -78,7 +82,7 @@ in { }; config = mkIf cfg.enable { - programs.nvf.finalPackage = neovimConfigured.neovim; + programs.nvf.finalPackage = cfg.settings.vim.build.finalPackage; home = { sessionVariables = mkIf cfg.defaultEditor {EDITOR = "nvim";}; From e9cc77dff7191d923c7368993f1d7a2f38471d8c Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 22 Dec 2024 21:59:24 +0100 Subject: [PATCH 04/11] module: remove redundant code the bulk of the build step is moved to modules/wrapper/build --- modules/default.nix | 105 ++++---------------------------------------- 1 file changed, 9 insertions(+), 96 deletions(-) diff --git a/modules/default.nix b/modules/default.nix index a2f8730d..a207e0d1 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -9,9 +9,8 @@ extraModules ? [], configuration ? {}, }: let - inherit (pkgs) vimPlugins; - inherit (lib.strings) isString toString; - inherit (lib.lists) filter map concatLists; + inherit (lib.strings) toString; + inherit (lib.lists) concatLists; # import modules.nix with `check`, `pkgs` and `lib` as arguments # check can be disabled while calling this file is called @@ -21,7 +20,12 @@ # evaluate the extended library with the modules # optionally with any additional modules passed by the user module = lib.evalModules { - specialArgs = extraSpecialArgs // {modulesPath = toString ./.;}; + specialArgs = + extraSpecialArgs + // { + inherit inputs; + modulesPath = toString ./.; + }; modules = concatLists [ nvimModules modules @@ -36,102 +40,11 @@ extraModules)) ]; }; - - # alias to the internal configuration - vimOptions = module.config.vim; - - noBuildPlug = {pname, ...} @ attrs: let - src = inputs."plugin-${attrs.pname}"; - in - { - version = src.shortRev or src.shortDirtyRev or "dirty"; - outPath = src; - passthru.vimPlugin = false; - } - // attrs; - - # build a vim plugin with the given name and arguments - # if the plugin is nvim-treesitter, warn the user to use buildTreesitterPlug - # instead - buildPlug = attrs: let - src = inputs."plugin-${attrs.pname}"; - in - pkgs.vimUtils.buildVimPlugin ( - { - version = src.shortRev or src.shortDirtyRev or "dirty"; - inherit src; - } - // attrs - ); - - buildTreesitterPlug = grammars: vimPlugins.nvim-treesitter.withPlugins (_: grammars); - - pluginBuilders = { - nvim-treesitter = buildTreesitterPlug vimOptions.treesitter.grammars; - flutter-tools-patched = buildPlug { - pname = "flutter-tools"; - patches = [../patches/flutter-tools.patch]; - }; - }; - - buildConfigPlugins = plugins: - map ( - plug: - if (isString plug) - then pluginBuilders.${plug} or (noBuildPlug {pname = plug;}) - else plug - ) (filter (f: f != null) plugins); - - # built (or "normalized") plugins that are modified - builtStartPlugins = buildConfigPlugins vimOptions.startPlugins; - builtOptPlugins = map (package: package // {optional = true;}) (buildConfigPlugins vimOptions.optPlugins); - - # additional Lua and Python3 packages, mapped to their respective functions - # to conform to the format mnw expects. end user should - # only ever need to pass a list of packages, which are modified - # here - extraLuaPackages = ps: map (x: ps.${x}) vimOptions.luaPackages; - extraPython3Packages = ps: map (x: ps.${x}) vimOptions.python3Packages; - - # Wrap the user's desired (unwrapped) Neovim package with arguments that'll be used to - # generate a wrapped Neovim package. - neovim-wrapped = inputs.mnw.lib.wrap pkgs { - neovim = vimOptions.package; - plugins = builtStartPlugins ++ builtOptPlugins; - appName = "nvf"; - extraBinPath = vimOptions.extraPackages; - initLua = vimOptions.builtLuaConfigRC; - luaFiles = vimOptions.extraLuaFiles; - - inherit (vimOptions) viAlias vimAlias withRuby withNodeJs withPython3; - inherit extraLuaPackages extraPython3Packages; - }; - - dummyInit = pkgs.writeText "nvf-init.lua" vimOptions.builtLuaConfigRC; - # Additional helper scripts for printing and displaying nvf configuration - # in your commandline. - printConfig = pkgs.writers.writeDashBin "nvf-print-config" "cat ${dummyInit}"; - printConfigPath = pkgs.writers.writeDashBin "nvf-print-config-path" "echo -n ${dummyInit}"; in { inherit (module) options config; inherit (module._module.args) pkgs; # Expose wrapped neovim-package for userspace # or module consumption. - neovim = pkgs.symlinkJoin { - name = "nvf-with-helpers"; - paths = [neovim-wrapped printConfig printConfigPath]; - postBuild = "echo Helpers added"; - - # Allow evaluating vimOptions, i.e., config.vim from the packages' passthru - # attribute. For example, packages.x86_64-linux.neovim.passthru.neovimConfig - # will return the configuration in full. - passthru.neovimConfig = vimOptions; - - meta = - neovim-wrapped.meta - // { - description = "Wrapped Neovim package with helper scripts to print the config (path)"; - }; - }; + neovim = module.config.vim.build.finalPackage; } From f8780947b71cc133204e88e26051ffb97ed2fae3 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 22 Dec 2024 23:05:06 +0100 Subject: [PATCH 05/11] nixos: use proper submodule type for settings --- flake.nix | 2 +- flake/modules/nixos.nix | 22 +++++++++++++--------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/flake.nix b/flake.nix index 3a177517..095419d5 100644 --- a/flake.nix +++ b/flake.nix @@ -42,7 +42,7 @@ }; nixosModules = { - nvf = import ./flake/modules/nixos.nix self.packages lib; + nvf = import ./flake/modules/nixos.nix self.packages lib inputs; default = self.nixosModules.nvf; neovim-flake = lib.warn '' diff --git a/flake/modules/nixos.nix b/flake/modules/nixos.nix index 022b3d94..b4957700 100644 --- a/flake/modules/nixos.nix +++ b/flake/modules/nixos.nix @@ -1,5 +1,5 @@ # NixOS module -packages: lib: { +packages: lib: inputs: { config, pkgs, ... @@ -8,15 +8,19 @@ packages: lib: { inherit (lib.modules) mkIf mkOverride mkAliasOptionModule; inherit (lib.lists) optional; inherit (lib.options) mkOption mkEnableOption literalExpression; - inherit (lib.types) attrsOf anything bool; - inherit (lib.nvim) neovimConfiguration; - inherit (lib.nvim.types) anythingConcatLists; + inherit (lib.types) anything bool submoduleWith; cfg = config.programs.nvf; - neovimConfigured = neovimConfiguration { - inherit pkgs; - modules = [cfg.settings]; + nvfModule = submoduleWith { + description = "Nvf module"; + class = "nvf"; + specialArgs = { + inherit pkgs lib inputs; + }; + modules = [ + {imports = import ../../modules/modules.nix {inherit pkgs lib;};} + ]; }; in { imports = [ @@ -55,7 +59,7 @@ in { }; settings = mkOption { - type = attrsOf anythingConcatLists; + type = nvfModule; default = {}; description = "Attribute set of nvf preferences."; example = literalExpression '' @@ -78,7 +82,7 @@ in { }; config = mkIf cfg.enable { - programs.nvf.finalPackage = neovimConfigured.neovim; + programs.nvf.finalPackage = cfg.settings.vim.build.finalPackage; environment = { variables.EDITOR = mkIf cfg.defaultEditor (mkOverride 900 "nvim"); From 27f343029678231f93baa0f87d2e8f84c147549b Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 22 Dec 2024 23:00:26 +0100 Subject: [PATCH 06/11] lib: remove anythingConcatLists --- lib/types/custom.nix | 55 +++---------------------------------------- lib/types/default.nix | 2 +- 2 files changed, 4 insertions(+), 53 deletions(-) diff --git a/lib/types/custom.nix b/lib/types/custom.nix index 3d4a2bcb..c42cd2ce 100644 --- a/lib/types/custom.nix +++ b/lib/types/custom.nix @@ -1,57 +1,8 @@ {lib}: let - inherit (lib.options) showOption showFiles getFiles mergeOneOption mergeEqualOption; - inherit (lib.strings) isString isStringLike; - inherit (lib.types) anything attrsOf listOf mkOptionType; - inherit (lib.nvim.types) anythingConcatLists; - inherit (builtins) typeOf isAttrs any head concatLists stringLength match; + inherit (lib.options) mergeEqualOption; + inherit (lib.strings) isString stringLength match; + inherit (lib.types) listOf mkOptionType; in { - # HACK: Does this break anything in our case? - # A modified version of the nixpkgs anything type that concatenates lists - # This isn't the default because the order in which the lists are concatenated depends on the order in which the modules are imported, - # which makes it non-deterministic - anythingConcatLists = - anything - // { - merge = loc: defs: let - getType = value: - if isAttrs value && isStringLike value - then "stringCoercibleSet" - else typeOf value; - - # Throw an error if not all defs have the same type - checkType = getType (head defs).value; - commonType = - if any (def: getType def.value != checkType) defs - then throw "The option `${showOption loc}' has conflicting option types in ${showFiles (getFiles defs)}" - else checkType; - - mergeFunctions = { - # Recursively merge attribute sets - set = (attrsOf anythingConcatLists).merge; - - # Overridden behavior for lists, that concatenates lists - list = _: defs: concatLists (map (e: e.value) defs); - - # This means it's a package, only accept a single definition - stringCoercibleSet = mergeOneOption; - - # This works by passing the argument to the functions, - # and merging their returns values instead - lambda = loc: defs: arg: - anythingConcatLists.merge - (loc ++ [""]) - (map (def: { - inherit (def) file; - value = def.value arg; - }) - defs); - }; - in - # Merge the defs with the correct function from above, if available - # otherwise only allow equal values - (mergeFunctions.${commonType} or mergeEqualOption) loc defs; - }; - mergelessListOf = elemType: let super = listOf elemType; in diff --git a/lib/types/default.nix b/lib/types/default.nix index 73b35956..c1c16715 100644 --- a/lib/types/default.nix +++ b/lib/types/default.nix @@ -11,5 +11,5 @@ in { inherit (typesDag) dagOf; inherit (typesPlugin) pluginsOpt extraPluginType mkPluginSetupOption luaInline pluginType borderType; inherit (typesLanguage) diagnostics mkGrammarOption; - inherit (customTypes) anythingConcatLists char hexColor mergelessListOf; + inherit (customTypes) char hexColor mergelessListOf; } From fb96ccb85b37e8645e8d9e9a2dd69c13412396c0 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 29 Dec 2024 18:20:51 +0100 Subject: [PATCH 07/11] home-manager: remove redundant import module --- flake/modules/home-manager.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/flake/modules/home-manager.nix b/flake/modules/home-manager.nix index d1e85368..c109e774 100644 --- a/flake/modules/home-manager.nix +++ b/flake/modules/home-manager.nix @@ -18,9 +18,7 @@ packages: lib: inputs: { specialArgs = { inherit pkgs lib inputs; }; - modules = [ - {imports = import ../../modules/modules.nix {inherit pkgs lib;};} - ]; + modules = import ../../modules/modules.nix {inherit pkgs lib;}; }; in { imports = [ From 835b775fa9d44b00eed47c29bfc381b8375719af Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 29 Dec 2024 18:25:20 +0100 Subject: [PATCH 08/11] nixos: remove redundant import module --- flake/modules/nixos.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/flake/modules/nixos.nix b/flake/modules/nixos.nix index b4957700..b53d4fc9 100644 --- a/flake/modules/nixos.nix +++ b/flake/modules/nixos.nix @@ -18,9 +18,7 @@ packages: lib: inputs: { specialArgs = { inherit pkgs lib inputs; }; - modules = [ - {imports = import ../../modules/modules.nix {inherit pkgs lib;};} - ]; + modules = import ../../modules/modules.nix {inherit pkgs lib;}; }; in { imports = [ From 6daec44f40be7a69a34eac0bd6de6fc91665aff9 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 29 Dec 2024 18:46:55 +0100 Subject: [PATCH 09/11] home-manager: use attr for long function args --- flake.nix | 2 +- flake/modules/home-manager.nix | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 095419d5..d6e700aa 100644 --- a/flake.nix +++ b/flake.nix @@ -31,7 +31,7 @@ }; homeManagerModules = { - nvf = import ./flake/modules/home-manager.nix self.packages lib inputs; + nvf = import ./flake/modules/home-manager.nix {inherit lib self;}; default = self.homeManagerModules.nvf; neovim-flake = lib.warn '' diff --git a/flake/modules/home-manager.nix b/flake/modules/home-manager.nix index c109e774..715f7537 100644 --- a/flake/modules/home-manager.nix +++ b/flake/modules/home-manager.nix @@ -1,9 +1,13 @@ # Home Manager module -packages: lib: inputs: { +{ + self, + lib, +}: { config, pkgs, ... }: let + inherit (self) packages inputs; inherit (lib) maintainers; inherit (lib.modules) mkIf mkAliasOptionModule; inherit (lib.lists) optional; From d14c5e57db4bcfceba5633e7507672501971a9d5 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Sun, 29 Dec 2024 18:47:22 +0100 Subject: [PATCH 10/11] nixos: use attrset for long function args --- flake.nix | 2 +- flake/modules/nixos.nix | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index d6e700aa..c4814296 100644 --- a/flake.nix +++ b/flake.nix @@ -42,7 +42,7 @@ }; nixosModules = { - nvf = import ./flake/modules/nixos.nix self.packages lib inputs; + nvf = import ./flake/modules/nixos.nix {inherit lib self;}; default = self.nixosModules.nvf; neovim-flake = lib.warn '' diff --git a/flake/modules/nixos.nix b/flake/modules/nixos.nix index b53d4fc9..ecc173a1 100644 --- a/flake/modules/nixos.nix +++ b/flake/modules/nixos.nix @@ -1,9 +1,13 @@ # NixOS module -packages: lib: inputs: { +{ + self, + lib, +}: { config, pkgs, ... }: let + inherit (self) inputs packages; inherit (lib) maintainers; inherit (lib.modules) mkIf mkOverride mkAliasOptionModule; inherit (lib.lists) optional; From cfbccedcce500e7bf0215704f1b87dbc266c68ac Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Wed, 1 Jan 2025 11:49:45 +0100 Subject: [PATCH 11/11] fixup! wrapper: add built package as option --- modules/wrapper/build/config.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/wrapper/build/config.nix b/modules/wrapper/build/config.nix index 85c87dd6..56dabee1 100644 --- a/modules/wrapper/build/config.nix +++ b/modules/wrapper/build/config.nix @@ -43,7 +43,7 @@ nvim-treesitter = buildTreesitterPlug vimOptions.treesitter.grammars; flutter-tools-patched = buildPlug { pname = "flutter-tools"; - patches = [../patches/flutter-tools.patch]; + patches = [../../../patches/flutter-tools.patch]; }; };