Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib, stdenv, makeDesktopItem, makeWrapper, requireFile, unzip, jdk }: 2 3let 4 version = "20.4.0.379.2205"; 5 6 desktopItem = makeDesktopItem { 7 name = "sqldeveloper"; 8 exec = "sqldeveloper"; 9 icon = "sqldeveloper"; 10 desktopName = "Oracle SQL Developer"; 11 genericName = "Oracle SQL Developer"; 12 comment = "Oracle's Oracle DB GUI client"; 13 categories = [ "Development" ]; 14 }; 15in 16 stdenv.mkDerivation { 17 18 inherit version; 19 pname = "sqldeveloper"; 20 21 src = requireFile rec { 22 name = "sqldeveloper-${version}-no-jre.zip"; 23 url = "https://www.oracle.com/tools/downloads/sqldev-downloads.html"; 24 message = '' 25 This Nix expression requires that ${name} already be part of the store. To 26 obtain it you need to 27 28 - navigate to ${url} 29 - make sure that it says "Version ${version}" above the list of downloads 30 - if it does not, click on the "Previous Version" link below the downloads 31 and repeat until the version is correct. This is necessarry because as the 32 time of this writing there exists no permanent link for the current version 33 yet. 34 Also consider updating this package yourself (you probably just need to 35 change the `version` variable and update the sha256 to the one of the 36 new file) or opening an issue at the nixpkgs repo. 37 - accept the license agreement 38 - download the file listed under "Other Platforms" 39 - sign in or create an oracle account if neccessary 40 41 and then add the file to the Nix store using either: 42 43 nix-store --add-fixed sha256 ${name} 44 45 or 46 47 nix-prefetch-url --type sha256 file:///path/to/${name} 48 ''; 49 sha256 = "1h53gl41ydr7kim6q9ckg3xyhb0rhmwj7jnis0xz6vms52b3h59k"; 50 }; 51 52 nativeBuildInputs = [ makeWrapper unzip ]; 53 54 unpackCmd = "unzip $curSrc"; 55 56 installPhase = '' 57 mkdir -p $out/libexec $out/share/{applications,pixmaps} 58 mv * $out/libexec/ 59 60 mv $out/libexec/icon.png $out/share/pixmaps/sqldeveloper.png 61 cp ${desktopItem}/share/applications/* $out/share/applications 62 63 makeWrapper $out/libexec/sqldeveloper/bin/sqldeveloper $out/bin/sqldeveloper \ 64 --set JAVA_HOME ${jdk.home} \ 65 --chdir "$out/libexec/sqldeveloper/bin" 66 ''; 67 68 meta = with lib; { 69 description = "Oracle's Oracle DB GUI client"; 70 longDescription = '' 71 Oracle SQL Developer is a free integrated development environment that 72 simplifies the development and management of Oracle Database in both 73 traditional and Cloud deployments. SQL Developer offers complete 74 end-to-end development of your PL/SQL applications, a worksheet for 75 running queries and scripts, a DBA console for managing the database, 76 a reports interface, a complete data modeling solution, and a migration 77 platform for moving your 3rd party databases to Oracle. 78 ''; 79 homepage = "http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/"; 80 license = licenses.unfree; 81 platforms = [ "x86_64-linux" ]; 82 maintainers = with maintainers; [ ardumont ]; 83 }; 84}