aboutsummaryrefslogtreecommitdiff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/firmware/default.nix33
-rw-r--r--pkgs/kfmon/default.nix29
-rw-r--r--pkgs/kobo-patch/default.nix29
-rw-r--r--pkgs/kobo-utils/default.nix23
-rw-r--r--pkgs/koreader/default.nix27
-rw-r--r--pkgs/nickel-menu/default.nix26
-rw-r--r--pkgs/plato/default.nix27
7 files changed, 194 insertions, 0 deletions
diff --git a/pkgs/firmware/default.nix b/pkgs/firmware/default.nix
new file mode 100644
index 0000000..813746a
--- /dev/null
+++ b/pkgs/firmware/default.nix
@@ -0,0 +1,33 @@
+{ stdenvNoCC, fetchzip, lib, ... }:
+{ hardware, date, version, hash ? "", sha256 ? "", ... }:
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "kobo-firmware";
+ inherit version hardware date;
+
+ src = fetchzip {
+ url = "https://ereaderfiles.kobo.com/firmwares/${finalAttrs.hardware}/${finalAttrs.date}/kobo-update-${finalAttrs.version}.zip";
+ inherit hash sha256;
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ runHook preInstall
+
+ cp -r $src $out
+
+ runHook postInstall
+ '';
+
+ passthru = {
+ inherit hardware date;
+ };
+
+ meta = with lib; {
+ homepage = "https://pgaskin.net/KoboStuff/kobofirmware.html";
+ description = ''
+ Kobo firmware files.
+ '';
+ platform = platforms.all;
+ };
+})
diff --git a/pkgs/kfmon/default.nix b/pkgs/kfmon/default.nix
new file mode 100644
index 0000000..6cb9c23
--- /dev/null
+++ b/pkgs/kfmon/default.nix
@@ -0,0 +1,29 @@
+{ stdenvNoCC, fetchzip, lib, ... }:
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "kfmon";
+ version = "1.4.6-89-g8daae26";
+
+ src = fetchzip {
+ url = "https://storage.gra.cloud.ovh.net/v1/AUTH_2ac4bfee353948ec8ea7fd1710574097/kfmon-pub/OCP-KFMon-${finalAttrs.version}.zip";
+ stripRoot = false;
+ hash = "sha256-yaFRNdnlzelLsdGdmBjeH1hx8anYFx6zpcaRpRzqDlY=";
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ runHook preInstall
+
+ cp -ra $src $out
+
+ chmod +x $out/.adds/kfmon/bin/*
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = "https://github.com/NiLuJe/kfmon";
+ platform = platforms.all;
+ license = licenses.gpl3Plus;
+ };
+})
diff --git a/pkgs/kobo-patch/default.nix b/pkgs/kobo-patch/default.nix
new file mode 100644
index 0000000..dc80f00
--- /dev/null
+++ b/pkgs/kobo-patch/default.nix
@@ -0,0 +1,29 @@
+{ stdenvNoCC, fetchzip, lib, ... }:
+{ version, hash ? "", sha256 ? "", ... }:
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "kobo-patch";
+ inherit version;
+
+ kobopatchVersion = "84";
+
+ src = fetchzip {
+ url = "https://github.com/pgaskin/kobopatch-patches/releases/download/v${finalAttrs.kobopatchVersion}/kobopatch_${finalAttrs.version}.zip";
+ inherit hash sha256;
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ runHook preInstall
+
+ cp -r $src $out
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = "https://github.com/pgaskin/kobopatch-patches";
+ platform = platforms.all;
+ };
+
+})
diff --git a/pkgs/kobo-utils/default.nix b/pkgs/kobo-utils/default.nix
new file mode 100644
index 0000000..9e00064
--- /dev/null
+++ b/pkgs/kobo-utils/default.nix
@@ -0,0 +1,23 @@
+{ buildGoModule, fetchFromGitHub, lib, util-linux, ... }:
+buildGoModule rec {
+ pname = "kobo-utils";
+ version = "2.2.0";
+
+ src = fetchFromGitHub {
+ owner = "pgaskin";
+ repo = "koboutils";
+ rev = "v${version}";
+ sha256 = "sha256-8w3kHj4wB2tEoZMRT5yE5sbXgnCr6dMhFN7BrJ48ouw=";
+ };
+
+ vendorHash = "sha256-0ju5ovqUXaCjv0tLSa+hDJPtaf0fdUQd5O0U5XN9AX8=";
+
+ buildInputs = [
+ util-linux
+ ];
+
+ meta = with lib; {
+ homepage = "https://github.com/pgaskin/koboutils";
+ license = licenses.mit;
+ };
+}
diff --git a/pkgs/koreader/default.nix b/pkgs/koreader/default.nix
new file mode 100644
index 0000000..fb81d71
--- /dev/null
+++ b/pkgs/koreader/default.nix
@@ -0,0 +1,27 @@
+{ stdenvNoCC, fetchzip, lib, ... }:
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "koreader";
+ version = "2024.07";
+
+ src = fetchzip {
+ url = "https://github.com/koreader/koreader/releases/download/v${finalAttrs.version}/koreader-kobo-v${finalAttrs.version}.zip";
+ stripRoot = false;
+ hash = "sha256-9Ga42XSCC5FUQmlAygPhhXlFs0TIdxAf3/sWBmZ5URU=";
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ runHook preInstall
+
+ cp -ra $src/koreader $out
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = "https://github.com/koreader/koreader";
+ platform = platforms.all;
+ license = licenses.agpl3Plus;
+ };
+})
diff --git a/pkgs/nickel-menu/default.nix b/pkgs/nickel-menu/default.nix
new file mode 100644
index 0000000..c151aaf
--- /dev/null
+++ b/pkgs/nickel-menu/default.nix
@@ -0,0 +1,26 @@
+{ stdenvNoCC, fetchzip, lib, ... }:
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "NickelMenu";
+ version = "0.5.4";
+
+ src = fetchzip {
+ url = "https://github.com/pgaskin/NickelMenu/releases/download/v${finalAttrs.version}/KoboRoot.tgz";
+ stripRoot = false;
+ hash = "sha256-BJC7zuvEHzI9zP9GR0K6psxumXcz5cDYhyCPxCsr8J0=";
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ runHook preInstall
+
+ cp -ra $src $out
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = "https://github.com/pgaskin/NickelMenu";
+ platform = platforms.all;
+ };
+})
diff --git a/pkgs/plato/default.nix b/pkgs/plato/default.nix
new file mode 100644
index 0000000..797044c
--- /dev/null
+++ b/pkgs/plato/default.nix
@@ -0,0 +1,27 @@
+{ stdenvNoCC, fetchzip, lib, ... }:
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "plato";
+ version = "0.9.43";
+
+ src = fetchzip {
+ url = "https://github.com/baskerville/plato/releases/download/${finalAttrs.version}/plato-${finalAttrs.version}.zip";
+ stripRoot = false;
+ hash = "sha256-1E9trfAF3w0+ix8JVDJwYjWQ/dfsLjLPmkCLJAYXkZU=";
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ runHook preInstall
+
+ cp -r $src $out
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = "https://github.com/baskerville/plato";
+ platform = platforms.all;
+ license = licenses.agpl3Plus;
+ };
+})