summary refs log tree commit diff
path: root/pkgs/development/tools/knightos
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/knightos')
-rw-r--r--pkgs/development/tools/knightos/genkfs/default.nix27
-rw-r--r--pkgs/development/tools/knightos/kcc/default.nix28
-rw-r--r--pkgs/development/tools/knightos/kimg/default.nix27
-rw-r--r--pkgs/development/tools/knightos/kpack/default.nix28
-rw-r--r--pkgs/development/tools/knightos/mkrom/default.nix27
-rw-r--r--pkgs/development/tools/knightos/mktiupgrade/default.nix27
-rw-r--r--pkgs/development/tools/knightos/patchrom/default.nix29
-rw-r--r--pkgs/development/tools/knightos/regenkfs/default.nix23
-rw-r--r--pkgs/development/tools/knightos/remkrom/default.nix22
-rw-r--r--pkgs/development/tools/knightos/scas/default.nix27
-rw-r--r--pkgs/development/tools/knightos/z80e/default.nix27
11 files changed, 292 insertions, 0 deletions
diff --git a/pkgs/development/tools/knightos/genkfs/default.nix b/pkgs/development/tools/knightos/genkfs/default.nix
new file mode 100644
index 00000000000..fc13b68258a
--- /dev/null
+++ b/pkgs/development/tools/knightos/genkfs/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, asciidoc, cmake, libxslt }:
+
+stdenv.mkDerivation rec {
+  pname = "genkfs";
+  version = "1.3.2";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "genkfs";
+    rev = version;
+    sha256 = "0f50idd2bb73b05qjmwlirjnhr1bp43zhrgy6z949ab9a7hgaydp";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ asciidoc libxslt.bin cmake ];
+
+  hardeningDisable = [ "format" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "Utility to write a KFS filesystem into a ROM file";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/knightos/kcc/default.nix b/pkgs/development/tools/knightos/kcc/default.nix
new file mode 100644
index 00000000000..90a493697c8
--- /dev/null
+++ b/pkgs/development/tools/knightos/kcc/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchFromGitHub, cmake, bison, flex, boost }:
+
+stdenv.mkDerivation rec {
+  pname = "kcc";
+
+  version = "4.0.4";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "kcc";
+    rev = version;
+    sha256 = "13sbpv8ynq8sjackv93jqxymk0bsy76c5fc0v29wz97v53q3izjp";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ bison cmake flex ];
+
+  buildInputs = [ boost ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "KnightOS C compiler";
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/knightos/kimg/default.nix b/pkgs/development/tools/knightos/kimg/default.nix
new file mode 100644
index 00000000000..70eea0f7b6a
--- /dev/null
+++ b/pkgs/development/tools/knightos/kimg/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, cmake, libxslt, asciidoc }:
+
+stdenv.mkDerivation rec {
+  pname = "kimg";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "kimg";
+    rev = version;
+    sha256 = "040782k3rh2a5mhbfgr9gnbfis0wgxvi27vhfn7l35vrr12sw1l3";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ asciidoc cmake libxslt.bin ];
+
+  hardeningDisable = [ "format" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "Converts image formats supported by stb_image to the KnightOS image format";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/knightos/kpack/default.nix b/pkgs/development/tools/knightos/kpack/default.nix
new file mode 100644
index 00000000000..447959a1e61
--- /dev/null
+++ b/pkgs/development/tools/knightos/kpack/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchFromGitHub, cmake, asciidoc, libxslt }:
+
+stdenv.mkDerivation rec {
+  pname = "kpack";
+
+  version = "1.1.1";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "kpack";
+    rev = version;
+    sha256 = "1l6bm2j45946i80qgwhrixg9sckazwb5x4051s76d3mapq9bara8";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ asciidoc cmake libxslt.bin ];
+
+  hardeningDisable = [ "fortify" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "A tool to create or extract KnightOS packages";
+    license     = licenses.lgpl2Only;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/knightos/mkrom/default.nix b/pkgs/development/tools/knightos/mkrom/default.nix
new file mode 100644
index 00000000000..21caa5b8b32
--- /dev/null
+++ b/pkgs/development/tools/knightos/mkrom/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, libxslt, asciidoc }:
+
+stdenv.mkDerivation rec {
+  pname = "mkrom";
+  version = "1.0.4";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "mkrom";
+    rev = version;
+    sha256 = "sha256-YFrh0tOGiM90uvU9ZWopW1+9buHDQtetuOtPDSYYaXw=";
+  };
+
+  strictDeps = true;
+  nativeBuildInputs = [ asciidoc libxslt.bin ];
+
+  installFlags = [ "DESTDIR=$(out)" ];
+  installTargets = [ "install" "install_man" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "Packages KnightOS distribution files into a ROM";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/knightos/mktiupgrade/default.nix b/pkgs/development/tools/knightos/mktiupgrade/default.nix
new file mode 100644
index 00000000000..efe8d454b2c
--- /dev/null
+++ b/pkgs/development/tools/knightos/mktiupgrade/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, cmake, libxslt, asciidoc }:
+
+stdenv.mkDerivation rec {
+  pname = "mktiupgrade";
+  version = "1.1.6";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "mktiupgrade";
+    rev = version;
+    sha256 = "15y3rxvv7ipgc80wrvrpksxzdyqr21ywysc9hg6s7d3w8lqdq8dm";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ asciidoc cmake libxslt.bin ];
+
+  hardeningDisable = [ "format" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "Makes TI calculator upgrade files from ROM dumps";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/knightos/patchrom/default.nix b/pkgs/development/tools/knightos/patchrom/default.nix
new file mode 100644
index 00000000000..67d7159e502
--- /dev/null
+++ b/pkgs/development/tools/knightos/patchrom/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenv, fetchFromGitHub, cmake, asciidoc, libxslt }:
+
+
+stdenv.mkDerivation rec {
+  pname = "patchrom";
+
+  version = "1.1.3";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "patchrom";
+    rev = version;
+    sha256 = "0yc4q7n3k7k6rx3cxq5ddd5r0la8gw1287a74kql6gwkxjq0jmcv";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ asciidoc cmake libxslt.bin ];
+
+  hardeningDisable = [ "format" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "Patches jumptables into TI calculator ROM files and generates an include file";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/knightos/regenkfs/default.nix b/pkgs/development/tools/knightos/regenkfs/default.nix
new file mode 100644
index 00000000000..1e8b992dfe0
--- /dev/null
+++ b/pkgs/development/tools/knightos/regenkfs/default.nix
@@ -0,0 +1,23 @@
+{ lib, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage {
+  pname = "regenkfs";
+  version = "unstable-2020-10-17";
+
+  src = fetchFromGitHub {
+    owner = "siraben";
+    repo = "regenkfs";
+    rev = "652155445fc39bbe6628f6b9415b5cd6863f592f";
+    sha256 = "sha256-zkwOpMNPGstn/y1l1s8blUKpBebY4Ta9hiPYxVLvG6Y=";
+  };
+
+  cargoSha256 = "sha256-05VmQdop4vdzw2XEvVdp9+RNmyZvay1Q7gKN2n8rDEQ=";
+  cargoBuildFlags = [ "--features=c-undef" ];
+
+  meta = with lib; {
+    description = "Reimplementation of genkfs in Rust";
+    homepage = "https://github.com/siraben/regenkfs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+  };
+}
diff --git a/pkgs/development/tools/knightos/remkrom/default.nix b/pkgs/development/tools/knightos/remkrom/default.nix
new file mode 100644
index 00000000000..837006d1bf8
--- /dev/null
+++ b/pkgs/development/tools/knightos/remkrom/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage {
+  pname = "remkrom";
+  version = "unstable-2020-10-17";
+
+  src = fetchFromGitHub {
+    owner = "siraben";
+    repo = "remkrom";
+    rev = "86a0b19c1d382a029ecaa96eeca7e9f76c8561d6";
+    sha256 = "sha256-DhfNfV9bd0p5dLXKgrVLyugQHK+RHsepeg0tGq5J6cI=";
+  };
+
+  cargoSha256 = "sha256-JUyIbg1SxQ7pdqypGv7Kz2MM0ZwL3M9YJekO9oSftLM=";
+
+  meta = with lib; {
+    description = "Reimplementation of mkrom in Rust";
+    homepage = "https://github.com/siraben/remkrom";
+    license = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+  };
+}
diff --git a/pkgs/development/tools/knightos/scas/default.nix b/pkgs/development/tools/knightos/scas/default.nix
new file mode 100644
index 00000000000..255ecf798d8
--- /dev/null
+++ b/pkgs/development/tools/knightos/scas/default.nix
@@ -0,0 +1,27 @@
+{ fetchFromGitHub, lib, stdenv, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "scas";
+  version = "0.5.5";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "scas";
+    rev = version;
+    sha256 = "sha256-JGQE+orVDKKJsTt8sIjPX+3yhpZkujISroQ6g19+MzU=";
+  };
+
+  cmakeFlags = [ "-DSCAS_LIBRARY=1" ];
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "Assembler and linker for the Z80";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/knightos/z80e/default.nix b/pkgs/development/tools/knightos/z80e/default.nix
new file mode 100644
index 00000000000..b8aa281d413
--- /dev/null
+++ b/pkgs/development/tools/knightos/z80e/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, cmake, knightos-scas, readline, SDL2 }:
+
+stdenv.mkDerivation rec {
+  pname = "z80e";
+  version = "0.5.3";
+
+  src = fetchFromGitHub {
+    owner = "KnightOS";
+    repo = "z80e";
+    rev = version;
+    sha256 = "sha256-FQMYHxKxHEP+x98JbGyjaM0OL8QK/p3epsAWvQkv6bc=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ readline SDL2 knightos-scas ];
+
+  cmakeFlags = [ "-Denable-sdl=YES" ];
+
+  meta = with lib; {
+    homepage    = "https://knightos.org/";
+    description = "A Z80 calculator emulator and debugger";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.unix;
+  };
+}