diff --git a/pkgs/os-specific/linux/gw6c/default.nix b/pkgs/os-specific/linux/gw6c/default.nix
new file mode 100644
index 00000000000..ea29f5b2776
--- /dev/null
+++ b/pkgs/os-specific/linux/gw6c/default.nix
@@ -0,0 +1,30 @@
+{stdenv, fetchurl, nettools, openssl, procps}:
+stdenv.mkDerivation {
+  name = "Gateway6-Client";
+
+  src = fetchurl {
+    name = "GateWay6-Client.tar.gz";
+    url = http://www.go6.net/4105/file.asp?file_id=142;
+    sha256 = "1578i6j3kq7g5f55gy1nksl4q0lxssdk39ilrgqjc20gb6k5j7j3";
+  };
+
+  setSourceRoot = "sourceRoot=tspc*";
+
+  preBuild = "sed -e 's@/dev/net/tun@/dev/tun@' -i platform/linux/tsp_tun.c;
+	sed -e 's@/sbin/@/var/run/current-system/sw/sbin/@' -i template/linux.sh";
+
+  makeFlags = "target=linux";
+  installFlags = "installdir=\$(out)";
+
+  buildInputs = [nettools openssl procps];
+
+  meta = {
+    description = "
+	Gateway6 client. Provides IPv6 tunnel (by default - using 
+	Freenet6 anonymous server, which means dynamic IPv6 address, 
+	but if you register at any tunnel broker you can easily 
+	enter you data in configuration.nix). You need also to enable
+	service \"gw6c\". And check that tun, ipv6 and sit are modprobed.
+";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index abad521179a..1abb0f85247 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2485,9 +2485,9 @@ rec {
     inherit fetchurl stdenv;
   };
 
-  /*gw6c = import ../os-specific/linux/gw6c {
-    inherit fetchurl stdenv nettools openssl;
-  };*/
+  gw6c = import ../os-specific/linux/gw6c {
+    inherit fetchurl stdenv nettools openssl procps;
+  };
 
   nss_ldap = import ../os-specific/linux/nss_ldap {
     inherit fetchurl stdenv openldap;