# Maintainer: zxp19821005 pkgname=imfile _pkgname=imFile pkgver=1.1.0 _electronversion=30 _nodeversion=20 pkgrel=2 pkgdesc="A full-featured download manager.Forked from motrix." arch=( 'aarch64' 'armv7h' 'x86_64' ) url="https://imfile.io/" _ghurl="https://github.com/imfile-io/imfile-desktop" license=('MIT') conflicts=( "${pkgname}" "${pkgname}-electron" "motrix" ) provides=("motrix") depends=( "electron${_electronversion}" ) makedepends=( 'npm' 'yarn' 'nvm' 'gendesk' 'curl' ) source=( "${pkgname}-${pkgver}.tar.gz::${_ghurl}/archive/refs/tags/v${pkgver}.tar.gz" "${pkgname}.sh" ) sha256sums=('5ec9fb0a02b92ad48a5c2cc2be798842d547bb640d00d813744d84b44b3ff7d4' '2b2e8aeed33fd71c521e49fd54fb2fa81218d16aef8bccb88d77909055ab8051') _ensure_local_nvm() { export NVM_DIR="${srcdir}/.nvm" source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]] nvm install "${_nodeversion}" nvm use "${_nodeversion}" } build() { sed -e "s|@electronversion@|${_electronversion}|" \ -e "s|@appname@|${pkgname}|g" \ -e "s|@runname@|app.asar|g" \ -e "s|@cfgdirname@|${_pkgname}|g" \ -e "s|@options@|env ELECTRON_OZONE_PLATFORM_HINT=auto|g" \ -i "${srcdir}/${pkgname}.sh" _ensure_local_nvm gendesk -f -n -q --pkgname="${pkgname}" --pkgdesc="${pkgdesc}" --categories="Network" --name="${_pkgname}" --exec="${pkgname} %U" cd "${srcdir}/${pkgname}-desktop-${pkgver}" export npm_config_build_from_source=true export ELECTRON_SKIP_BINARY_DOWNLOAD=1 #export SYSTEM_ELECTRON_VERSION="$(electron${_electronversion} -v | sed 's/v//g')" #export npm_config_target="${SYSTEM_ELECTRON_VERSION}" #export ELECTRONVERSION="${_electronversion}" HOME="${srcdir}/.electron-gyp" mkdir -p "${srcdir}/.electron-gyp" touch "${srcdir}/.electron-gyp/.yarnrc" if [ `curl -s ipinfo.io/country | grep CN | wc -l ` -ge 1 ];then export npm_config_registry=https://registry.npmmirror.com export npm_config_disturl=https://registry.npmmirror.com/-/binary/node/ export npm_config_electron_mirror=https://registry.npmmirror.com/-/binary/electron/ export npm_config_electron_builder_binaries_mirror=https://registry.npmmirror.com/-/binary/electron-builder-binaries/ else echo "Your network is OK." fi yarn install --cache-folder "${srcdir}/.yarn_cache" yarn run build:dir } package() { install -Dm755 "${srcdir}/${pkgname}.sh" "${pkgdir}/usr/bin/${pkgname}" install -Dm644 "${srcdir}/${pkgname}-desktop-${pkgver}/release/linux-"*/resources/app.asar -t "${pkgdir}/usr/lib/${pkgname}" cp -r "${srcdir}/${pkgname}-desktop-${pkgver}/release/linux-"*/resources/engine "${pkgdir}/usr/lib/${pkgname}" install -Dm644 "${srcdir}/${pkgname}.desktop" -t "${pkgdir}/usr/share/applications" install -Dm644 "${srcdir}/${pkgname}-desktop-${pkgver}/build/256x256.png" "${pkgdir}/usr/share/pixmaps/${pkgname%-git}.png" install -Dm644 "${srcdir}/${pkgname}-desktop-${pkgver}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}" }