aboutsummaryrefslogtreecommitdiff
path: root/pkgs/plato.nix
diff options
context:
space:
mode:
authorChris Wells <chris@mathematicaster.org>2024-01-24 14:56:56 -0600
committerChris Wells <chris@mathematicaster.org>2024-01-24 14:56:56 -0600
commitd6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6 (patch)
tree7ead1c89bf2490114129d51560280e29b174aaa6 /pkgs/plato.nix
downloadkobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.tar
kobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.tar.gz
kobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.tar.bz2
kobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.tar.lz
kobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.tar.xz
kobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.tar.zst
kobo-manager-d6949fe35c1b4c7a9e93d1430e5c1b1d5dd4d9c6.zip
Getting a whole kobo distribution together!
Diffstat (limited to 'pkgs/plato.nix')
-rw-r--r--pkgs/plato.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/plato.nix b/pkgs/plato.nix
new file mode 100644
index 0000000..815ac76
--- /dev/null
+++ b/pkgs/plato.nix
@@ -0,0 +1,46 @@
+{ stdenvNoCC
+, formats
+, runCommand
+, writeScript
+, lib
+
+, platoSrc
+, platoSettings ? {}
+, platoCfg ? ""
+, dictionaries ? []
+, fonts ? []
+, ... }:
+with builtins // lib;
+stdenvNoCC.mkDerivation (finalAttrs: {
+ name = "plato";
+
+ src = platoSrc;
+
+ dontFix = true;
+ dontPatch = true;
+ dontConfigure = true;
+ dontBuild = true;
+
+ installPhase = ''
+ mkdir -p $out
+ cp -rv . $out
+
+ # mkdir -p $out/.adds/plato/dictionaries
+ for d in ${concatMapStringsSep " " toString dictionaries}; do
+ find $d/share/dictd/ -type f -regex '.*\.\(dict\(\.dz\)?\|index\)' -exec cp -v {} $out/.adds/plato/dictionaries/ \;
+ done
+
+ for d in ${concatMapStringsSep " " toString fonts}; do
+ find $d/share/fonts/truetype/ -type f -regex '.*\.\(ttf\|otf\)' -exec cp -v {} $out/.adds/plato/fonts/ \;
+ done
+
+ ${optionalString (platoSettings != {}) ''
+ cp -v ${(formats.toml {}).generate "Settings.toml" platoSettings} $out/.adds/plato/Settings.toml
+ ''}
+ ${optionalString (platoCfg != "") ''
+ cp -v ${writeScript "config.sh" platoCfg} $out/.adds/plato/config.sh
+ ''}
+ ''
+ ;
+
+})