diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index ddc0ae1a2ad..b70d62ffb10 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -1,7 +1,7 @@
 # This script was inspired by the ArchLinux User Repository package:
 #
 #   https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=oh-my-zsh-git
-{ stdenv, fetchFromGitHub }:
+{ stdenv, fetchFromGitHub, fetchpatch }:
 
 stdenv.mkDerivation rec {
   version = "2020-08-24";
@@ -14,6 +14,12 @@ stdenv.mkDerivation rec {
     sha256 = "0af37smv0bqw37bng2halzgszf8y3m2sxahdff54m16asm0py2cr";
   };
 
+  patches = [(fetchpatch {
+    # TODO: remove once https://github.com/ohmyzsh/ohmyzsh/pull/9210 is merged
+    name = "0001-pygmalion-use-pure-zsh-instead-of-perl.patch";
+    url = "https://github.com/flokli/ohmyzsh/commit/299b48ce422957c0f5ca06cd5ccade55e0a08d87.patch";
+    sha256 = "1cxj3c9bbcqd8zj9fccn117n2rzhx6krzbl4db059g2vsycadwmi";
+  })];
 
   installPhase = ''
     outdir=$out/share/oh-my-zsh