mirror of
https://abf.rosa.ru/djam/dbeaver.git
synced 2025-02-22 15:53:06 +00:00
153 lines
4.8 KiB
RPMSpec
153 lines
4.8 KiB
RPMSpec
%define debug %nil
|
|
%define debug_package %nil
|
|
%define _jdk_path /opt/jdk17/jdk/bin
|
|
%define jdk_ver 17.0.11
|
|
%define liberica_rel 13
|
|
|
|
Name: dbeaver
|
|
Version: 24.3.5
|
|
Release: 1
|
|
Summary: Universal database manager and SQL client
|
|
URL: https://dbeaver.io
|
|
Source0: https://github.com/dbeaver/dbeaver/archive/%{version}/%{name}-%{version}.tar.gz
|
|
#Source1: https://github.com/bell-sw/Liberica/releases/download/%{jdk_ver}%2B%{liberica_rel}/bellsoft-jdk%{jdk_ver}+%{liberica_rel}-linux-amd64-crac.tar.gz
|
|
Source1: https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz
|
|
Source100: %{name}.rpmlintrc
|
|
Group: Development/Databases
|
|
License: ASL 2.0
|
|
ExcludeArch: x86 i386 i486 i586 i686
|
|
BuildRequires: maven >= 3.9
|
|
#BuildRequires: java-devel >= 11
|
|
#BuildRequires: jdk17
|
|
BuildRequires: imagemagick
|
|
BuildRequires: git-core
|
|
BuildRequires: %{_lib}xext6
|
|
BuildRequires: %{_lib}x11_6
|
|
BuildRequires: %{_lib}xcb1
|
|
BuildRequires: pkgconfig(openssl3.3)
|
|
Requires: jdk17
|
|
|
|
|
|
%description
|
|
Free multi-platform database tool for developers,
|
|
SQL programmers, database administrators and analysts.
|
|
Supports any database which has JDBC driver (which basically
|
|
means - ANY database). EE version also supports non-JDBC
|
|
datasources (WMI, MongoDB, Cassandra, Redis).
|
|
|
|
Has a lot of features including metadata editor, SQL editor,
|
|
rich data editor, ERD, data export/import/migration,
|
|
SQL execution plans, etc.
|
|
Based on Eclipse platform.
|
|
Uses plugins architecture and provides additional functionality
|
|
for the following databases: MySQL/MariaDB, PostgreSQL,
|
|
Oracle, DB2 LUW, Exasol, SQL Server, SQLite, Firebird, H2,
|
|
HSQLDB, Derby, Teradata, Vertica, Netezza, Informix.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
tar -xf %{SOURCE1}
|
|
|
|
|
|
%build
|
|
[ ! -d ../dbeaver-common ] && git clone https://github.com/dbeaver/dbeaver-common.git ../dbeaver-common
|
|
[ ! -d ../dbeaver-jdbc-libsql ] && git clone https://github.com/dbeaver/dbeaver-jdbc-libsql.git ../dbeaver-jdbc-libsql
|
|
|
|
cd product/aggregate
|
|
JAVA_HOME=../../jdk-17.0.11+9/ mvn clean install -Pdesktop -T 1C
|
|
cd ../..
|
|
|
|
|
|
%install
|
|
install -d %{buildroot}%{_bindir}
|
|
install -d %{buildroot}%{_datadir}
|
|
install -d %{buildroot}%{_datadir}/applications
|
|
install -d %{buildroot}%{_iconsdir}/hicolor/{16x16,24x24,32x32}/apps
|
|
|
|
#ifarch x86_64
|
|
pushd product/community/target/products/org.jkiss.dbeaver.core.product/linux/gtk/x86_64/
|
|
cp -a %{name} %{buildroot}%{_datadir}
|
|
popd
|
|
#else
|
|
#pushd product/standalone/target/products/org.jkiss.dbeaver.core.product/linux/gtk/x86
|
|
#cp -a %{name} %{buildroot}%{_datadir}
|
|
#popd
|
|
#endif
|
|
|
|
#start script
|
|
cat > %{buildroot}%{_bindir}/%{name} <<EOF
|
|
#!/bin/bash
|
|
|
|
%{_datadir}/%{name}/%{name} -vm %{_jdk_path}
|
|
|
|
EOF
|
|
|
|
chmod +x %{buildroot}%{_bindir}/%{name}
|
|
|
|
# menu-entry
|
|
cat > %{buildroot}%{_datadir}/applications/%{name}.desktop <<EOF
|
|
[Desktop Entry]
|
|
Name=DBeaver
|
|
Name[ru]=DBeaver
|
|
GenericName=DBeaver
|
|
GenericName[ru]=DBeaver
|
|
Comment=Free universal database manager and SQL client
|
|
Comment[ru]=Универсальный менеджер баз данных SQL
|
|
Exec=%{name}
|
|
Icon=%{name}
|
|
Terminal=false
|
|
Type=Application
|
|
StartupNotify=true
|
|
Categories=Application;Development;IDE;X-DataBases
|
|
EOF
|
|
|
|
|
|
# install icons product/standalone/icons-sources
|
|
pushd product/community/icons-sources
|
|
|
|
for i in 16 24 32 48 64 128 256 512; do
|
|
|
|
convert -resize "$i" icon_512x512.png %{name}.png
|
|
|
|
install -Dm0644 %{name}.png %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps/%{name}.png
|
|
|
|
done
|
|
|
|
popd
|
|
|
|
# fix error solaris libs
|
|
|
|
#pushd %{buildroot}%{_datadir}/dbeaver/plugins/com.sun.jna_5.14.0.v20231211-1200/com/sun/jna/
|
|
#find %{buildroot}%{_datadir}/dbeaver/plugins/com.sun.jna_5.14.0.*/com/sun/jna/ -type d -not -name "linux-x86-64" -exec rm -rf {} \;
|
|
#rm -rf $(ls --hide="linux-x86" --hide="linux-x86_64" --hide="internal" --hide="ptr" %{buildroot}%{_datadir}/dbeaver/plugins/com.sun.jna_5.14.0*/com/sun/jna/)
|
|
|
|
#/builddir/build/BUILDROOT/dbeaver-24.3.1-1-R11.x86_64-buildroot/usr/share/dbeaver/plugins/com.sun.jna_5.15.0.v20240915-2000/com/sun/jna/sunos-sparc/libjnidispatch.so'
|
|
#popd
|
|
|
|
#find '%{buildroot}%{_datadir}/dbeaver/plugins/com.sun.jna_[0-9.]*-v[0-9]*-com/sun/jna/' -type d \
|
|
# -name linux-x86 \
|
|
# -o -name linux-x86_64 \
|
|
# -o -name internal \
|
|
# -o -name ptr \
|
|
# -prune \
|
|
# -o -exec rm -rf {} \;
|
|
|
|
#find '%{buildroot}%{_datadir}/dbeaver/plugins/com.sun.jna_[0-9.]*-v[0-9]*-com/sun/jna/' \
|
|
# -type f -name "*.so" -not \
|
|
# -path "*linux-*" -o \
|
|
# -path "internal" -o \
|
|
# -path "ptr" \
|
|
# -delete
|
|
|
|
find %{buildroot}%{_datadir}/dbeaver/plugins/ \
|
|
-type d -path "*com.sun.jna_*" \
|
|
-exec sh -c "if [ -n \"\$(find {} -type f -name '*.so' -not -path '*linux-*' -o -path 'internal' -o -path 'ptr')\" ]; then rm -rf {}; fi" \;
|
|
|
|
|
|
%files
|
|
%doc README.md LICENSE.md
|
|
%{_bindir}
|
|
%{_datadir}/%{name}
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{_iconsdir}//hicolor/*/apps/%{name}.png
|