diff --git a/pkgs/tools/X11/dragon-drop/default.nix b/pkgs/tools/X11/dragon-drop/default.nix
new file mode 100644
index 00000000000..0aa1c8a8b5a
--- /dev/null
+++ b/pkgs/tools/X11/dragon-drop/default.nix
@@ -0,0 +1,28 @@
+
+{ stdenv, gtk, pkgconfig, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "dragon-drop-${version}";
+  version = "git-2014-08-14";
+
+  src = fetchFromGitHub {
+    owner = "mwh";
+    repo = "dragon";
+    rev = "a49d775dd9d43bd22cee4c1fd3e32ede0dc2e9c2";
+    sha256 = "03vdbmqlbmk3j2ay1wy6snrm2y27faxz7qv81vyzjzngj345095a";
+  };
+
+  buildInputs = [ gtk pkgconfig ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv dragon $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simple drag-and-drop source/sink for X";
+    homepage = "https://github.com/mwh/dragon";
+    maintainers = with maintainers; [ jb55 ];
+    license = licenses.gpl3;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index bd78c7a6aec..3dcfb05a4be 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -825,6 +825,10 @@ let
 
   dlx = callPackage ../misc/emulators/dlx { };
 
+  dragon-drop = callPackage ../tools/X11/dragon-drop {
+    gtk = gtk3;
+  };
+
   dtrx = callPackage ../tools/compression/dtrx { };
 
   duperemove = callPackage ../tools/filesystems/duperemove {