Author: egorochkin
Date: Tue Sep 28 09:33:56 2010
New Revision: 23983
URL: https://svn.nixos.org/websvn/nix/?rev=23983&sc=1
Log:
MySql-Workbench: packaged
Patch by Karn Kallio
Added:
nixpkgs/trunk/pkgs/applications/misc/mysql-workbench/
nixpkgs/trunk/pkgs/applications/misc/mysql-workbench/default.nix
Modified:
nixpkgs/trunk/pkgs/top-level/all-packages.nix
Added: nixpkgs/trunk/pkgs/applications/misc/mysql-workbench/default.nix
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ nixpkgs/trunk/pkgs/applications/misc/mysql-workbench/default.nix Tue Sep
28 09:33:56 2010 (r23983)
@@ -0,0 +1,76 @@
+{ stdenv, fetchurl, makeWrapper, autoconf, automake, boost, file, gettext
+, glib, glibc, gnome_keyring, gtk, gtkmm, intltool, libctemplate, libglade
+, libgnome, libsigcxx, libtool, libuuid, libxml2, libzip, lua, mesa, mysql
+, pango, paramiko, pcre, pexpect, pkgconfig, python, sqlite
+}:
+
+stdenv.mkDerivation rec {
+ name = "mysql-workbench";
+ version = "5.2.27";
+
+ src = fetchurl {
+ url =
"http://mirror.services.wisc.edu/mysql/Downloads/MySQLGUITools/mysql-workbench-gpl-${version}.tar.gz";
+ sha256 = "01l15f9nvcpcsb56r7qb39jjlknh0dkj5iwfg1pj5bm12pbligng";
+ };
+
+ buildInputs = [ autoconf automake boost file gettext glib glibc
gnome_keyring gtk gtkmm intltool
+ libctemplate libglade libgnome libsigcxx libtool libuuid libxml2 libzip
lua makeWrapper mesa
+ mysql paramiko pcre pexpect pkgconfig python sqlite ];
+
+ preConfigure = ''
+ substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in
--replace "catchsegv" "${glibc}/bin/catchsegv"
+
+ ./autogen.sh --prefix=$out
+ '';
+
+ postInstall = ''
+ wrapProgram "$out/bin/mysql-workbench-bin" \
+ --prefix LD_LIBRARY_PATH : "${python}/lib" \
+ --prefix LD_LIBRARY_PATH : "$(cat
${stdenv.gcc}/nix-support/orig-gcc)/lib64" \
+ --prefix PATH : "${gnome_keyring}/bin" \
+ --set PYTHONPATH $PYTHONPATH \
+ --run '
+# The gnome-keyring-daemon must be running. To allow for environments like
+# kde, xfce where this is not so, we start it first.
+# It is cleaned up using a supervisor subshell which detects that
+# the parent has finished via the closed pipe as terminate signal idiom,
+# used because we cannot clean up after ourselves due to the exec call.
+
+# Start gnome-keyring-daemon, export the environment variables it asks us to
set.
+for expr in $( gnome-keyring-daemon --components=ssh,pkcs11 --start ) ; do
eval "export "$expr ; done
+
+# Prepare fifo pipe.
+FIFOCTL="/tmp/gnome-keyring-daemon-ctl.$$.fifo"
+[ -p $FIFOCTL ] && rm $FIFOCTL
+mkfifo $FIFOCTL
+
+# Supervisor subshell waits reading from pipe, will receive EOF when parent
+# closes pipe on termination. Negate read with ! operator to avoid subshell
+# quitting when read EOF returns 1 due to -e option being set.
+(
+ exec 19< $FIFOCTL
+ ! read -u 19
+
+ kill $GNOME_KEYRING_PID
+ rm $FIFOCTL
+) &
+
+exec 19> $FIFOCTL
+ '
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A MySQL visual database modeling, administration and
querying tool.";
+ longDescription = ''
+ MySQL Workbench is a modeling tool that allows you to design
+ and generate MySQL databases graphically. It also has administration
+ and query development modules where you can manage MySQL server instances
+ and execute SQL queries.
+ '';
+
+ homepage = http://wb.mysql.com/;
+ license = licenses.gpl2;
+ maintainers = [ maintainers.kkallio ];
+ platforms = platforms.linux;
+ };
+}
Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix
==============================================================================
--- nixpkgs/trunk/pkgs/top-level/all-packages.nix Tue Sep 28 09:33:49
2010 (r23982)
+++ nixpkgs/trunk/pkgs/top-level/all-packages.nix Tue Sep 28 09:33:56
2010 (r23983)
@@ -6953,6 +6953,11 @@
tex = tetex;
};
+ mysqlWorkbench = newScope gnome ../applications/misc/mysql-workbench {
+ lua = lua5;
+ inherit (pythonPackages) pexpect paramiko;
+ };
+
pgadmin = callPackage ../applications/misc/pgadmin { };
pgf = pgf2;
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits