Skip to content

Instantly share code, notes, and snippets.

@bmaupin
Last active March 12, 2024 17:13
Show Gist options
  • Star 11 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save bmaupin/ad02e5b4a17abfc662d61664bced2773 to your computer and use it in GitHub Desktop.
Save bmaupin/ad02e5b4a17abfc662d61664bced2773 to your computer and use it in GitHub Desktop.
Install Oracle SQL Developer on Ubuntu (and Debian?)
  1. Install alien and OpenJDK 11

    sudo apt install alien openjdk-11-jdk
    

    ⚠ For Debian, this may require alien >= 8.95.5. See this comment for more information.

  2. Download SQL Developer >= 19.2
    https://www.oracle.com/tools/downloads/sqldev-downloads.html

    • Download the Linux RPM
  3. Install SQL Developer

    Note: This might take several minutes

    sudo alien -i sqldeveloper-*.rpm
    
  4. (Optional) Disable the welcome page

  5. (Optional) Create a desktop entry

    echo "[Desktop Entry]
    Type=Application
    Name=Oracle SQL Developer
    Exec=sqldeveloper
    Icon=/opt/sqldeveloper/icon.png
    Terminal=false" >> ~/.local/share/applications/sqldeveloper.desktop
    
  6. (Optional) Disable unnecessary features

    1. Tools > Features

    2. Uncheck everything that's not needed

      For example, for minimal non-DBA development tasks, the following features are sufficient and everything else (including Database Migrations and Version Control) can be unchecked:

      - Oracle SQL Developer - Schema Browser
      - Oracle SQL Developer - Snippet
      - Oracle SQL Developer - SSH Support
      - Oracle SQL Developer - XML Schema
      
    3. Apply Changes

@bmaupin
Copy link
Author

bmaupin commented Feb 15, 2023

@Grelo4ka @Nishant0073 @lobtx @AgustinArroyos @Cavalari0100

I'm still using these steps to this day to install SQL Developer on the latest Ubuntu LTS (22.04). So it seems this bug must be specific to Debian.

I did some searching, and it sounds like Debian has something called dh_userlocal (dh = "Debian helper?") that kicks in when packages try to install files under /usr/local:

As best as I can tell, this causes issues with alien as per this bug: Bug#992188: alien: Fails to create packages that place files in /usr/local

If that's the case, then it appears to have been fixed in alien v8.95.5, based on the changelog: https://debian.pkgs.org/sid/debian-main-amd64/alien_8.95.6_all.deb.html

So for anyone else running into this issue on Debian, you may want to upgrade alien first. I'll add a note to the steps in case this fixes it.

@sgtcortez
Copy link

For today, the debian bullseye version is 8.95.4 and fails.
I believe that the version 8.96.6 is only available in sid repository.

What I done was:

apt remove --purge alien
wget --quiet -O /tmp/alien.deb http://ftp.de.debian.org/debian/pool/main/a/alien/alien_8.95.6_all.deb
dpkg -i /tmp/alien.deb

Then, use alien to convert to deb package

@paul-schuhm
Copy link

paul-schuhm commented Jul 15, 2023

Thanks for discussion. While the solution proposed by @lobtx works fine, @sgtcortez is right and updating alien package to version 8.95.6 allows to convert the .rpm package do .deb without encountering the dh_usrlocal: error bug. Happy database modeling

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment