diff --git a/manifest.dhall b/manifest.dhall
index b8255035df383fc8bb04532f8f82e548883b5ee1..97e937f99cc6e9ca01062d27af74d31af3358292 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -380,6 +380,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "retry" "0.9.3.0"
     , callHackage "rope-utf16-splay" "0.4.0.0"
     , callHackage "safe-coloured-text" "0.2.0.1"
+    , callHackage "safe-exceptions" "0.1.7.3"
     , callHackage "saltine" "0.1.1.1"
     , callHackage "scotty" "0.12"
     , callHackage "scientific" "0.3.7.0"
diff --git a/overlay.nix b/overlay.nix
index fde827dad27122720a82bc2bfedb47d8826a9f89..937ab6cbbd81a0f850e3024a1062be164bea3cb0 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -467,6 +467,8 @@ final: prev: with pkgs.haskell.lib; {
 
   safe-coloured-text = prev.callPackage (./pkgs/safe-coloured-text.nix) { };
 
+  safe-exceptions = prev.callPackage (./pkgs/safe-exceptions.nix) { };
+
   saltine = prev.callPackage (./pkgs/saltine.nix) { };
 
   scientific = prev.callPackage (./pkgs/scientific.nix) { };
diff --git a/pkgs/safe-exceptions.nix b/pkgs/safe-exceptions.nix
new file mode 100644
index 0000000000000000000000000000000000000000..5e4839fce29dbdd83af171981035b88675ca94de
--- /dev/null
+++ b/pkgs/safe-exceptions.nix
@@ -0,0 +1,30 @@
+{ mkDerivation
+, base
+, deepseq
+, exceptions
+, hspec
+, lib
+, transformers
+, void
+}:
+mkDerivation {
+  pname = "safe-exceptions";
+  version = "0.1.7.3";
+  sha256 = "91ce28d8f8a6efd31788d4827ed5cdcb9a546ad4053a86c56f7947c66a30b5bf";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [ base deepseq exceptions transformers ];
+  testHaskellDepends = [ base hspec transformers void ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/fpco/safe-exceptions#readme";
+  description = "Safe, consistent, and easy exception handling";
+  license = lib.licenses.mit;
+  broken = false;
+}