about summary refs log tree commit diff
path: root/pkgs/applications/misc/dbeaver
diff options
context:
space:
mode:
authorSamuel Dionne-Riel <samuel@dionne-riel.com>2018-01-08 18:22:32 -0500
committerSamuel Dionne-Riel <samuel@dionne-riel.com>2018-01-10 09:24:49 -0500
commita4d529d36f43caddcf3aab3cb42dd36a91cbb5b0 (patch)
tree38df5be250cf9c9890cf9a20376d09eeb712160f /pkgs/applications/misc/dbeaver
parentb6829f5d6a83ef8e6a51c16e1e6a84c57a85d8a1 (diff)
downloadnixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.tar
nixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.tar.gz
nixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.tar.bz2
nixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.tar.lz
nixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.tar.xz
nixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.tar.zst
nixlib-a4d529d36f43caddcf3aab3cb42dd36a91cbb5b0.zip
dbeaver: inits at 4.3.2
Diffstat (limited to 'pkgs/applications/misc/dbeaver')
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix70
1 files changed, 70 insertions, 0 deletions
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
new file mode 100644
index 000000000000..cb0e08613719
--- /dev/null
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -0,0 +1,70 @@
+{ stdenv, fetchurl, makeDesktopItem, makeWrapper
+, fontconfig, freetype, glib, gtk2
+, jdk, libX11, libXrender, libXtst, zlib }:
+
+# The build process is almost like eclipse's.
+# See `pkgs/applications/editors/eclipse/*.nix`
+
+stdenv.mkDerivation rec {
+  name = "dbeaver-ce-${version}";
+  version = "4.3.2";
+
+  desktopItem = makeDesktopItem {
+    name = "dbeaver";
+    exec = "dbeaver";
+    icon = "dbeaver";
+    desktopName = "dbeaver";
+    comment = "SQL Integrated Development Environment";
+    genericName = "SQL Integrated Development Environment";
+    categories = "Application;Development;";
+  };
+
+  buildInputs = [
+    fontconfig freetype glib gtk2
+    jdk libX11 libXrender libXtst zlib
+  ];
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  src = fetchurl {
+    url = "https://dbeaver.jkiss.org/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
+    sha256 = "0spiwx5dxchpl2qq10rinj9db723w2hf7inqmg4m7fjaj75bpl3s";
+  };
+
+  installPhase = ''
+    mkdir -p $out/
+    cp -r . $out/dbeaver
+
+    # Patch binaries.
+    interpreter=$(cat $NIX_CC/nix-support/dynamic-linker)
+    patchelf --set-interpreter $interpreter $out/dbeaver/dbeaver
+
+    makeWrapper $out/dbeaver/dbeaver $out/bin/dbeaver \
+      --prefix PATH : ${jdk}/bin \
+      --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk2 libXtst ])} \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+
+    # Create desktop item.
+    mkdir -p $out/share/applications
+    cp ${desktopItem}/share/applications/* $out/share/applications
+
+    mkdir -p $out/share/pixmaps
+    ln -s $out/dbeaver/icon.xpm $out/share/pixmaps/dbeaver.xpm
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://dbeaver.jkiss.org;
+    description = "Universal SQL Client for developers, DBA and analysts. Supports MySQL, PostgreSQL, MariaDB, SQLite, and more";
+    longDescription = ''
+      Free multi-platform database tool for developers, SQL programmers, database
+      administrators and analysts. Supports all popular databases: MySQL,
+      PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access,
+      Teradata, Firebird, Derby, etc.
+    '';
+    license = licenses.asl20;
+    platforms = [ "x86_64-linux" ];
+    maintainers = [ maintainers.samueldr ];
+  };
+}