# -*- 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 25.2.5
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  dd591d78c853eb2baef8a6c02e3672d00d421a15 \
                        sha256  5aee6b1624010d1d80709ca3f324965d1f4fdc6682956ce4a8645cdd97ce8085 \
                        size    124738037
checksums-append \
                    ${dist_arm64} \
                        rmd160  1f312bc5b6a0dc94ea6fc7dece94e2504ac67736 \
                        sha256  62157bd1eba106ece9c0fc9bd4212d0ec68066a04337527faf0e684ce5b8facb \
                        size    123507238

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}
}
