From b2a66e11a18b7c1daa457b5d0ae21e146ddf0c77 Mon Sep 17 00:00:00 2001
From: Daniel Firth <dan.firth@homotopic.tech>
Date: Fri, 21 Oct 2022 20:30:26 +0100
Subject: [PATCH] odd-jobs: init at f6c7bbbcdb383d2eb487ad7fe427ec05a747c14f

---
 manifest.dhall    |  5 ++++
 overlay.nix       |  2 ++
 pkgs/odd-jobs.nix | 59 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 66 insertions(+)
 create mode 100644 pkgs/odd-jobs.nix

diff --git a/manifest.dhall b/manifest.dhall
index 3e47177f..1c25276d 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -287,6 +287,11 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "network-byte-order" "0.1.6"
     , callHackage "newtype-generics" "0.6.2"
     , callHackage "nothunks" "0.1.3"
+    , callCabal2nix
+        "odd-jobs"
+        "https://github.com/saurabhnanda/odd-jobs"
+        (Some "f6c7bbbcdb383d2eb487ad7fe427ec05a747c14f")
+        (None Text)
     , callHackage "optics-core" "0.4.1"
     , callHackage "optics-extra" "0.4.2.1"
     , callHackage "optics-th" "0.4.1"
diff --git a/overlay.nix b/overlay.nix
index 0f5cc535..5a7b1d6a 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -337,6 +337,8 @@ final: prev: with pkgs.haskell.lib; {
 
     nothunks = prev.callPackage (./pkgs/nothunks.nix) { };
 
+    odd-jobs = prev.callPackage (./pkgs/odd-jobs.nix) { };
+
     optics = prev.callPackage (./pkgs/optics.nix) { };
 
     optics-core = prev.callPackage (./pkgs/optics-core.nix) { };
diff --git a/pkgs/odd-jobs.nix b/pkgs/odd-jobs.nix
new file mode 100644
index 00000000..7d6b10f2
--- /dev/null
+++ b/pkgs/odd-jobs.nix
@@ -0,0 +1,59 @@
+{ mkDerivation, aeson, base, bytestring, containers, daemons
+, directory, either, fast-logger, fetchgit, filepath, foreign-store
+, friendly-time, generic-deriving, hedgehog, hostname, lib
+, lifted-async, lifted-base, lucid, mmorph, monad-control
+, monad-logger, mtl, optparse-applicative, postgresql-simple
+, random, resource-pool, safe, servant, servant-lucid
+, servant-server, servant-static-th, string-conv, tasty
+, tasty-discover, tasty-hedgehog, tasty-hunit, text
+, text-conversions, time, timing-convenience, unix, unliftio
+, unliftio-core, unordered-containers, wai, warp
+}:
+mkDerivation {
+  pname = "odd-jobs";
+  version = "0.2.2";
+  src = fetchgit {
+    url = "https://github.com/saurabhnanda/odd-jobs";
+    sha256 = "0iiga6idcbsm2lgcx6ck3bn37950gzhicrqg0xw65dxsfyhma2p0";
+    rev = "f6c7bbbcdb383d2eb487ad7fe427ec05a747c14f";
+    fetchSubmodules = true;
+  };
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    aeson base bytestring daemons directory either fast-logger filepath
+    friendly-time generic-deriving hostname lucid monad-control
+    monad-logger mtl optparse-applicative postgresql-simple
+    resource-pool safe servant servant-lucid servant-server
+    servant-static-th string-conv text text-conversions time
+    timing-convenience unix unliftio unliftio-core unordered-containers
+    wai warp
+  ];
+  executableHaskellDepends = [
+    aeson base bytestring daemons directory either fast-logger filepath
+    foreign-store friendly-time generic-deriving hostname lucid
+    monad-control monad-logger mtl optparse-applicative
+    postgresql-simple resource-pool safe servant servant-lucid
+    servant-server servant-static-th string-conv text text-conversions
+    time timing-convenience unix unliftio unliftio-core
+    unordered-containers wai warp
+  ];
+  testHaskellDepends = [
+    aeson base bytestring containers daemons directory either
+    fast-logger filepath friendly-time generic-deriving hedgehog
+    hostname lifted-async lifted-base lucid mmorph monad-control
+    monad-logger mtl optparse-applicative postgresql-simple random
+    resource-pool safe servant servant-lucid servant-server
+    servant-static-th string-conv tasty tasty-discover tasty-hedgehog
+    tasty-hunit text text-conversions time timing-convenience unix
+    unliftio unliftio-core unordered-containers wai warp
+  ];
+  testToolDepends = [ tasty-discover ];
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  hyperlinkSource = false;
+  homepage = "https://www.haskelltutorials.com/odd-jobs";
+  description = "A full-featured PostgreSQL-backed job queue (with an admin UI)";
+  license = lib.licenses.bsd3;
+}
\ No newline at end of file
-- 
GitLab