diff options
| author | Chris Wells <chris@mathematicaster.org> | 2024-09-10 11:52:55 -0500 |
|---|---|---|
| committer | Chris Wells <chris@mathematicaster.org> | 2024-09-10 11:53:30 -0500 |
| commit | 5cb16c34a8c5b803ec723934c1dc828c0e8e3bad (patch) | |
| tree | 082671e90b6da26a0c06c1a5abc7a4571e0dcc84 /modules/kobo/default.nix | |
| parent | 8eae39e8e670f228e9675fb3bc432ce512560396 (diff) | |
| download | kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.tar kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.tar.gz kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.tar.bz2 kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.tar.lz kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.tar.xz kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.tar.zst kobo-manager-5cb16c34a8c5b803ec723934c1dc828c0e8e3bad.zip | |
Trying to get everything to actually work
Diffstat (limited to 'modules/kobo/default.nix')
| -rw-r--r-- | modules/kobo/default.nix | 40 |
1 files changed, 26 insertions, 14 deletions
diff --git a/modules/kobo/default.nix b/modules/kobo/default.nix index 47dfe91..cdf9728 100644 --- a/modules/kobo/default.nix +++ b/modules/kobo/default.nix @@ -18,19 +18,23 @@ in { type = types.str; readOnly = true; internal = true; - deafault = "/mnt/onboard/${cfg.path}"; + default = "/mnt/onboard/${cfg.path}"; }; file = mkOption { default = {}; type = types.attrsOf (types.submodule (pkgs.callPackage ../lib/file-type.nix {})); + apply = filterAttrs (_: v: v.enable); }; _allFiles = mkOption { type = types.package; readOnly = true; internal = true; - default = (pkgs.callPackage ../lib/merge-files.nix {}) (attrValues cfg.file); + default = pkgs.symlinkJoin { + name = "kobo-files"; + paths = mapAttrsToList (v: v._package) cfg.file; + }; }; conf = mkOption { @@ -40,19 +44,27 @@ in { }; }; - config = { - kobo = { - conf = { - FeatureSettings.ExcludeSyncFolders = ''(\.(?!kobo|adobe).+|([^.][^/]*/)+\..+)''; - ApplicationPreferences = { - SideloadedMode = true; - QuickTourShown = true; + config = mkMerge [ + { + kobo = { + conf = { + FeatureSettings.ExcludeSyncFolders = ''(\.(?!kobo|adobe).+|([^.][^/]*/)+\..+)''; + ApplicationPreferences = { + SideloadedMode = true; + QuickTourShown = true; + }; }; - }; - file = mkIf (cfg.conf != {}) { - "Kobo eReader.conf".text = generators.toINI {} cfg.conf; + file = mkIf (cfg.conf != {}) { + "Kobo eReader.conf".text = generators.toINI {} cfg.conf; + }; }; - }; - }; + } + (mkIf cfg.enable { + koboroot.include = singleton (pkgs.linkFarm [{ + name = cfg.devicePath; + path = cfg._allFiles; + }]); + }) + ]; } |
