Skip to content

Instantly share code, notes, and snippets.

@vitaliikuzhdin
Last active March 18, 2025 16:53
AUR package - epson-printer-utility
[epson-printer-utility]
source = "regex"
url = 'https://download.ebz.epson.net/dsc/du/02/DriverDownloadInfo.do?LG2=EN&CN2=US&CTI=177&PRN=Linux%20deb%2064bit%20package&OSC=LX'
regex = 'epson-printer-utility_(.*)-1_amd64.deb'
# user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36'
post_install() {
echo "The ecbd.service must be running for Epson Printer Utility to work."
echo "Execute 'sudo systemctl enable --now ecbd.service' in a terminal."
}
post_upgrade() {
post_install
}
# Maintainer: darkelectron <darkelectron(at)mailfence.com>
# Contributor: Vitalii Kuzhdin <vitaliikuzhdin@gmail.com>
# Contributor: Lukas Michel <lgm(dot)aur(at)outlook(dot)de
# Contributor: Uladzimir Panasiuk <v.s.panasyuk+AUR(at)gmail.com>
pkgname="epson-printer-utility"
pkgver=1.2.2
pkgrel=1
pkgdesc="Epson inkjet printer utility used to check ink levels, view errors and other status messages"
arch=('x86_64') # 'armv7h'
url="https://download.ebz.epson.net/man/linux/utility.html"
license=('custom:Epson End User Software License Agreement') # 'LGPL-2.1-or-later'
depends=('cups' 'gcc-libs' 'glibc' 'libcups' 'libusb' 'qt5-base')
makedepends=('gzip')
install="${pkgname}.install"
_pkgsrc="${pkgname}-${pkgver}"
# source_armv7h=("${_pkgsrc}-armv7h.zip::https://download3.ebz.epson.net/dsc/f/03/00/16/74/32/520f35a925a730ddee9b90c65b158272d4010783/${pkgname}_arm_${pkgver}.zip")
source_x86_64=("${_pkgsrc}-x86_64.deb::https://download3.ebz.epson.net/dsc/f/03/00/16/74/30/9067c71049e81fbbee48a4695c5c0acf308b9f18/${pkgname}_${pkgver}-1_amd64.deb")
noextract=("${source_x86_64[@]%%::*}") # "${source_armv7h[@]%%::*}"
sha256sums_x86_64=('f0e1b61ef6beec5180f6cf31ffbb87f4831b81181ecface5e73d57037d914492')
prepare() {
cd "${srcdir}"
mkdir -p "${_pkgsrc}-${CARCH}"
bsdtar -xf "${_pkgsrc}-${CARCH}.deb" data.tar.*
bsdtar -xzf data.tar.* --strip-components 1 -C "${srcdir}/${_pkgsrc}-${CARCH}"
rm -f data.tar.*
find "${_pkgsrc}-${CARCH}" -type f -name '*.gz' -exec \
gzip -fd "{}" \;
}
package() {
cd "${srcdir}/${_pkgsrc}-${CARCH}/opt/${pkgname}"
find "bin" -type f -exec \
install -vDm755 "{}" "${pkgdir}/opt/${pkgname}/{}" \;
find "lib" -type f -exec \
install -vDm644 "{}" "${pkgdir}/usr/{}" \;
find "resource" -type f -exec \
install -vDm644 "{}" "${pkgdir}/opt/${pkgname}/{}" \;
find "rules" -type f -name '*.rules' -execdir \
install -vDm644 "{}" "${pkgdir}/usr/lib/udev/rules.d/{}" \;
# find "selinux-policy" -type f -exec \
# install -vDm644 "{}" "${pkgdir}/opt/${pkgname}/{}" \;
install -vDm644 "${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
cd "${srcdir}/${_pkgsrc}-${CARCH}/usr"
find "share/doc" -type f \( ! -name '*LICENSE*' ! -name '*COPYING*' ! -name '*INSTALL*' ! -name '*ChangeLog*' \) -execdir \
install -vDm644 "{}" "${pkgdir}/usr/share/doc/${pkgname}/{}" \;
find "share/doc" -type f \( -name '*LICENSE*' -o -name '*COPYING*' \) -execdir \
install -vDm644 "{}" "${pkgdir}/usr/share/licenses/${pkgname}/{}" \;
cd "lib"
find "cups" -type f -exec \
install -vDm755 "{}" "${pkgdir}/usr/lib/{}" \;
cd "epson-backend"
sed -i '/ecbd.conf/d' "ecbd.service"
install -vDm644 "ecbd.service" "${pkgdir}/usr/lib/systemd/system/ecbd.service"
install -vDm755 "ecbd" "${pkgdir}/usr/lib/epson-backend/ecbd"
# find . -mindepth 1 -maxdepth 1 -type f -name '*.pp' -exec \
# install -vDm644 "{}" "${pkgdir}/usr/lib/epson-backend/{}" \;
install -vdm755 "${pkgdir}/usr/bin"
ln -vsf "/opt/${pkgname}/bin/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
}
@arztareef
Copy link

hello there, does this pkgbuild work? thank you

@vitaliikuzhdin
Copy link
Author

I have no idea; I don't own any Epson devices. Try it and report back.

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