summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: cdd33147752b6e3a5e6326c46265608f60581d6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Maintainer: Didrole <Didrole@gmail.com>

pkgname=bixolon-label-cups
pkgver=1.3.3
pkgrel=1
pkgdesc="CUPS drivers for Bixolon label printers"
arch=('i686' 'x86_64' 'armv7h' 'aarch64')
url="https://bixolon.com/support.php?kind=download#product-lilstlabel"
license=('custom')
depends=('glibc' 'libcups')
source=("${pkgname}-${pkgver}.zip::https://www.bixolon.com/_lib/download_single.php?FILE_INFO=driver|driver_file|driver_idx|113|driver")
sha256sums=('a7a6ebe26b72286f65649aebaa0a05ae0f0ae7b05ba61bd2dbafec1b747bf402')

prepare() {
    cd "Software_Linux_Label_CUPS_Driver_V${pkgver}"
    tar -xf Software_BxlLabelCupsDrv_Linux_v${pkgver}.tar.xz
}

package() {
    local -rA filters=(
        ["i686"]="rastertoBxlLabel_v${pkgver}_x86"
        ["x86_64"]="rastertoBxlLabel_v${pkgver}_x64"
        ["armv7h"]="rastertoBxlLabel_v${pkgver}_RaspberryPi_x86"
        ["aarch64"]="rastertoBxlLabel_v${pkgver}_RaspberryPi_x64"
    )
    local filter="${filters[$CARCH]}"

    if [[ -z "${filter}" ]]; then
        echo "Error: No cups filter available for $CARCH architecture." >&2
        return 1
    fi

    cd "Software_Linux_Label_CUPS_Driver_V${pkgver}/Software_BxlLabelCupsDrv_Linux_v${pkgver}"

    install -D "filters/${filter}" "${pkgdir}/usr/lib/cups/filter/rastertoBxlLabel"
    install --mode=644 -D --target-directory="${pkgdir}/usr/share/cups/model/Bixolon/" Bixolon/*.ppd
    install --mode=644 -D SoftwareLicense.txt "${pkgdir}/usr/share/licenses/${pkgname}/SoftwareLicense.txt"
}