diff --git a/manifest.dhall b/manifest.dhall
index 61b80d458370ba9a2d5e2387e0add42ca04dbb7b..e67a79bc8849e301dba3c0e1caaaa3ca7f73350c 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -71,6 +71,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "OpenGLRaw" "3.3.4.1"
     , callHackage "PyF" "0.11.1.0"
     , callHackage "aeson" "2.1.0.0"
+    , callHackage "aeson-yaml" "1.1.0.1"
     , callHackage "ansi-terminal" "0.11.3"
     , callHackage "apecs" "0.9.4"
     , callHackage "assoc" "1.0.2"
diff --git a/overlay.nix b/overlay.nix
index 640cce6afc7992c025b58544337fd615a79f6781..2264a760a6653cd712887c56e1a6f87d46e06771 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -25,6 +25,8 @@ final: prev: with pkgs.haskell.lib; {
 
     aeson = prev.callPackage (./pkgs/aeson.nix) { };
 
+    aeson-yaml = prev.callPackage (./pkgs/aeson-yaml.nix) { };
+
     ansi-terminal = prev.callPackage (./pkgs/ansi-terminal.nix) { };
 
     apecs = prev.callPackage (./pkgs/apecs.nix) { };
diff --git a/pkgs/aeson-yaml.nix b/pkgs/aeson-yaml.nix
new file mode 100644
index 0000000000000000000000000000000000000000..cacbbfbf2615e6508e803a0a952895ff92279eb0
--- /dev/null
+++ b/pkgs/aeson-yaml.nix
@@ -0,0 +1,28 @@
+{ mkDerivation, aeson, base, bytestring, lib, string-qq, tasty
+, tasty-discover, tasty-hunit, text, unordered-containers, vector
+, yaml
+}:
+mkDerivation {
+  pname = "aeson-yaml";
+  version = "1.1.0.1";
+  sha256 = "44b44e2ea2d3c7def8e9e90b48fb0054b7a72f2edee2da8545eeef0614a0a11b";
+  revision = "3";
+  editedCabalFile = "11srm7kkslnicqvbk728kzpy58am8rz680f7l6axn2nfh5ykx8n6";
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    aeson base bytestring text unordered-containers vector
+  ];
+  testHaskellDepends = [
+    aeson base bytestring string-qq tasty tasty-hunit
+    unordered-containers yaml
+  ];
+  testToolDepends = [ tasty-discover ];
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/clovyr/aeson-yaml";
+  description = "Output any Aeson value as YAML (pure Haskell library)";
+  license = lib.licenses.bsd3;
+}
\ No newline at end of file