about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/servers/owntracks-recorder/default.nix82
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 84 insertions, 0 deletions
diff --git a/pkgs/servers/owntracks-recorder/default.nix b/pkgs/servers/owntracks-recorder/default.nix
new file mode 100644
index 0000000000000..47b3b696fd4c5
--- /dev/null
+++ b/pkgs/servers/owntracks-recorder/default.nix
@@ -0,0 +1,82 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, mosquitto
+, curl
+, openssl
+, lmdb
+, lua
+, libsodium
+, libuuid
+, libconfig
+, testers
+, owntracks-recorder
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "owntracks-recorder";
+  version = "0.9.3";
+
+  src = fetchFromGitHub {
+    owner = "owntracks";
+    repo = "recorder";
+    rev = finalAttrs.version;
+    hash = "sha256-w0wk69hERGz6fs6uXBYiomcVlQeeTGCfTICu2q7ryNg=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    (lib.getDev curl)
+    (lib.getLib libconfig)
+    (lib.getDev openssl)
+    (lib.getDev lmdb)
+    (lib.getDev mosquitto)
+    (lib.getDev libuuid)
+    (lib.getDev lua)
+    (lib.getDev libsodium)
+  ];
+
+  configurePhase = ''
+    runHook preConfigure
+
+    cp config.mk.in config.mk
+
+    substituteInPlace config.mk \
+      --replace "INSTALLDIR = /usr/local" "INSTALLDIR = $out" \
+      --replace "WITH_LUA ?= no" "WITH_LUA ?= yes" \
+      --replace "WITH_ENCRYPT ?= no" "WITH_ENCRYPT ?= yes"
+
+    runHook postConfigure
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+
+    install -m 0755 ot-recorder $out/bin
+    install -m 0755 ocat $out/bin
+
+    runHook postInstall
+  '';
+
+  passthru.tests.version = testers.testVersion {
+    package = owntracks-recorder;
+    command = "ocat --version";
+    version = finalAttrs.version;
+  };
+
+  meta = with lib; {
+    description = "Store and access data published by OwnTracks apps";
+    homepage = "https://github.com/owntracks/recorder";
+    changelog = "https://github.com/owntracks/recorder/blob/master/Changelog";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ gaelreyrol ];
+    mainProgram = "ot-recorder";
+  };
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 61fafe75c3eda..b06dc94d26045 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -11121,6 +11121,8 @@ with pkgs;
 
   owncast = callPackage ../servers/owncast { };
 
+  owntracks-recorder = callPackage ../servers/owntracks-recorder { };
+
   update-dotdee = with python3Packages; toPythonApplication update-dotdee;
 
   update-nix-fetchgit = haskell.lib.compose.justStaticExecutables haskellPackages.update-nix-fetchgit;