diff --git a/pkgs/development/python-modules/jsonwatch/default.nix b/pkgs/development/python-modules/jsonwatch/default.nix
new file mode 100644
index 00000000000000..177b0d4cfee97a
--- /dev/null
+++ b/pkgs/development/python-modules/jsonwatch/default.nix
@@ -0,0 +1,35 @@
+{ stdenv
+, buildPythonPackage
+, fetchurl
+, six
+, isPyPy
+}:
+
+buildPythonPackage rec {
+  pname = "jsonwatch";
+  version = "0.2.0";
+  disabled = isPyPy; # doesn't find setuptools
+
+  src = fetchurl {
+    url = "https://github.com/dbohdan/jsonwatch/archive/v0.2.0.tar.gz";
+    sha256 = "04b616ef97b9d8c3887004995420e52b72a4e0480a92dbf60aa6c50317261e06";
+  };
+
+  propagatedBuildInputs = [ six ];
+
+  meta = with stdenv.lib; {
+    description = "Like watch -d but for JSON";
+    longDescription = ''
+      jsonwatch is a command line utility with which you can track
+      changes in JSON data delivered by a shell command or a web
+      (HTTP/HTTPS) API.  jsonwatch requests data from the designated
+      source repeatedly at a set interval and displays the
+      differences when the data changes. It is similar in its
+      behavior to how watch(1) with the -d switch works for
+      plain-text data.
+    '';
+    homepage = "https://github.com/dbohdan/jsonwatch";
+    license = licenses.mit;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 414ae8a1901e74..325a8e83977ca3 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1932,33 +1932,7 @@ in {
 
   jsonrpclib-pelix = callPackage ../development/python-modules/jsonrpclib-pelix {};
 
-  jsonwatch = buildPythonPackage rec {
-    name = "jsonwatch-0.2.0";
-
-    disabled = isPyPy; # doesn't find setuptools
-
-    src = pkgs.fetchurl {
-      url = "https://github.com/dbohdan/jsonwatch/archive/v0.2.0.tar.gz";
-      sha256 = "04b616ef97b9d8c3887004995420e52b72a4e0480a92dbf60aa6c50317261e06";
-    };
-
-    propagatedBuildInputs = with self; [ six ];
-
-    meta = {
-      description = "Like watch -d but for JSON";
-      longDescription = ''
-        jsonwatch is a command line utility with which you can track changes in
-        JSON data delivered by a shell command or a web (HTTP/HTTPS) API.
-        jsonwatch requests data from the designated source repeatedly at a set
-        interval and displays the differences when the data changes. It is
-        similar in its behavior to how watch(1) with the -d switch works
-        for plain-text data.
-      '';
-      homepage = "https://github.com/dbohdan/jsonwatch";
-      license = licenses.mit;
-      platforms = platforms.all;
-    };
-  };
+  jsonwatch = callPackage ../development/python-modules/jsonwatch { };
 
   latexcodec = callPackage ../development/python-modules/latexcodec {};