# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           github 1.0

github.setup        dbeaver dbeaver 26.1.0
github.tarball_from releases
revision            0
name                dbeaver-community

categories          databases
supported_archs     x86_64 arm64
license             Apache-2

maintainers         {judaew @judaew} {mascguy @mascguy} openmaintainer

description         Free multi-platform database tool for developers, SQL \
                    programmers, database administrators and analysts.
long_description    \
    {*}${description} Supports any database which has JDBC driver (which \
    basically means - ANY database). Has a lot of features including metadata \
    editor, SQL editor, rich data editor, ERD, data export/import/migration, \
    SQL execution plans, etc. Uses plugins architecture and provides \
    additional functionality for the following databases: MySQL/MariaDB, \
    PostgreSQL, Greenplum, Oracle, DB2 LUW, Exasol, SQL Server, Sybase/SAP \
    ASE, SQLite, Firebird, H2, HSQLDB, Derby, Teradata, Vertica, Netezza, \
    Informix, etc.
homepage            https://dbeaver.io/

use_dmg             yes

set dist_x86_64     dbeaver-ce-${version}-macos-x86_64${extract.suffix}
set dist_arm64      dbeaver-ce-${version}-macos-aarch64${extract.suffix}

variant all_arches description {Download files for all arches} {
    distfiles       ${dist_x86_64} \
                    ${dist_arm64}
}

checksums-append \
                    ${dist_x86_64} \
                        rmd160  48a9415f6120f2831803268775a78e1d2388f207 \
                        sha256  20d7d7bd1f4525972bb82f0a791b5cd122075141dcd29de38c3364e1e064ecba \
                        size    123613471
checksums-append \
                    ${dist_arm64} \
                        rmd160  db811725d594366b33c0e86a7a11c3bedf9be366 \
                        sha256  b3e350e61a7736242927f6f79a9ec5763879ac499fd549d2cff022e59e37a848 \
                        size    122413111

switch ${configure.build_arch} {
    x86_64 {
        distfiles   ${dist_x86_64}
    }
    arm64 {
        distfiles   ${dist_arm64}
    }
    default {
        known_fail  yes
        pre-fetch {
            ui_error "${subport} @ ${version} only supported for architectures ${supported_archs}"
            return -code error "Unsupported architecture: ${build_arch}"
        }
    }
}

use_configure       no

build {}

destroot {
    copy ${worksrcpath}/DBeaver.app ${destroot}${applications_dir}
}
