diff options
author | zxp19821005 | 2024-01-09 07:00:37 +0800 |
---|---|---|
committer | zxp19821005 | 2024-01-09 07:00:37 +0800 |
commit | 73831b69bf07b06a5ca353d48f892b2e21e10a6e (patch) | |
tree | 7c227885a1c2d31c6cd7bd36672e7f1df17e1ee6 | |
parent | 9daf414100ba2d83d9da565e962a0d895400432b (diff) | |
download | aur-73831b69bf07b06a5ca353d48f892b2e21e10a6e.tar.gz |
fix errors
-rw-r--r-- | .SRCINFO | 23 | ||||
-rw-r--r-- | PKGBUILD | 99 | ||||
-rw-r--r-- | figma-linux.sh | 22 |
3 files changed, 87 insertions, 57 deletions
@@ -1,18 +1,23 @@ pkgbase = figma-linux-git - pkgver = 0.11.2.r0.g27fd357 - pkgrel = 1 pkgdesc = The collaborative interface design tool. Unofficial Figma desktop client for Linux + pkgver = 0.11.2.r7.g21a518c + pkgrel = 1 url = https://github.com/Figma-Linux/figma-linux arch = any license = GPL2 - depends = hicolor-icon-theme makedepends = git - makedepends = nodejs>=18.11.18 - makedepends = npm>=9.8.1 + makedepends = nvm + makedepends = npm makedepends = xdg-utils + depends = electron27 + depends = hicolor-icon-theme + depends = libdbusmenu-glib + depends = libdbusmenu-gtk3 provides = figma-linux - source = figma-linux::git+https://github.com/Figma-Linux/figma-linux.git#tag=v0.11.2 - sha256sums = SKIP conflicts = figma-linux - conflicts = figma-linux-bin -pkgname = figma-linux-git
\ No newline at end of file + source = figma-linux.git::git+https://github.com/Figma-Linux/figma-linux.git + source = figma-linux.sh + sha256sums = SKIP + sha256sums = d4272fed78cdcacd9edfb019134ac485d65b43f4d8c7a4179edbaed56af9b231 + +pkgname = figma-linux-git @@ -1,54 +1,75 @@ -_pkgname="figma-linux" -pkgname="${_pkgname}-git" -pkgver="0.11.2.r0.g27fd357" -pkgrel="1" -arch=("any") +# Maintainer: zxp19821005 <zxp19821005 at 163 dot com> +# Contributor: iFlygo +pkgname=figma-linux-git +pkgver=0.11.2.r7.g21a518c +_electronversion=27 +_nodeversion=18 +pkgrel=1 +arch=('any') pkgdesc="The collaborative interface design tool. Unofficial Figma desktop client for Linux" url="https://github.com/Figma-Linux/figma-linux" license=("GPL2") -depends=("hicolor-icon-theme") -makedepends=("git" "nodejs>=18.11.18" "npm>=9.8.1" "xdg-utils") -provides=("figma-linux") -_pkgver="0.11.2" -source=("${_pkgname}"::"git+${url}.git#tag=v${_pkgver}") -sha256sums=("SKIP") -conflicts=("figma-linux" "figma-linux-bin") - - +provides=("${pkgname%-git}") +conflicts=("${pkgname%-git}") +depends=( + "electron${_electronversion}" + 'hicolor-icon-theme' + 'libdbusmenu-glib' + 'libdbusmenu-gtk3' +) +makedepends=( + 'git' + 'nvm' + 'npm' + 'xdg-utils' +) +source=( + "${pkgname%-git}.git::git+${url}.git" + "${pkgname%-git}.sh" +) +sha256sums=('SKIP' + 'd4272fed78cdcacd9edfb019134ac485d65b43f4d8c7a4179edbaed56af9b231') pkgver() { - cd "${srcdir}/${_pkgname}" + cd "${srcdir}/${pkgname%-git}.git" git describe --long --tags --exclude='*[a-z][a-z]*' | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g' } - +_ensure_local_nvm() { + export NVM_DIR="${srcdir}/.nvm" + source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]] + nvm install "${_nodeversion}" + nvm use "${_nodeversion}" +} build() { - cd "${srcdir}/${_pkgname}" + sed -e "s|@electronversion@|${_electronversion}|" \ + -e "s|@appname@|${pkgname%-git}|g" \ + -e "s|@appasar@|app|g" \ + -i "${srcdir}/${pkgname%-git}.sh" + _ensure_local_nvm + cd "${srcdir}/${pkgname%-git}.git" + export npm_config_build_from_source=true + export npm_config_cache="${srcdir}/.npm_cache" + export ELECTRON_SKIP_BINARY_DOWNLOAD=1 + export SYSTEM_ELECTRON_VERSION="$(electron${_electronversion} -v | sed 's/v//g')" + export ELECTRONVERSION="${_electronversion}" + sed '62,73d' -i config/builder.json npm install --no-frozen-lockfile npm run build - ./node_modules/.bin/electron-builder --config=config/builder.json -l dir --c.directories.output=./out + npm run package + sed "s|/opt/${pkgname%-git}/${pkgname%-git}|${pkgname%-git}|g" -i "resources/${pkgname%-git}.desktop" } package() { - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/resources/app.asar" -t "${pkgdir}/usr/lib/${_pkgname}" - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/lib/${CARCH}-linux-gnu/"* -t "${pkgdir}/usr/lib/${_pkgname}/lib" - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/usr/lib/${CARCH}-linux-gnu/"*.* -t "${pkgdir}/usr/lib/${_pkgname}/lib" - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/usr/lib/${CARCH}-linux-gnu/nss/"* -t "${pkgdir}/usr/lib/${_pkgname}/lib/nss" - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/swiftshader/"* -t "${pkgdir}/usr/lib/${_pkgname}/swiftshader" - + install -Dm755 "${srcdir}/${pkgname%-git}.sh" "${pkgdir}/usr/bin/${pkgname%-git}" + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/resources/app.asar" -t "${pkgdir}/usr/lib/${pkgname%-git}" + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/lib/${CARCH}-linux-gnu/"* -t "${pkgdir}/usr/lib/${pkgname%-git}/lib" + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/usr/lib/${CARCH}-linux-gnu/"*.* -t "${pkgdir}/usr/lib/${pkgname%-git}/lib" + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/usr/lib/${CARCH}-linux-gnu/nss/"* -t "${pkgdir}/usr/lib/${pkgname%-git}/lib/nss" + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/swiftshader/"* -t "${pkgdir}/usr/lib/${pkgname%-git}/swiftshader" for _icons in 24x24 36x36 48x48 64x64 96x96 128x128 256x256 512x512;do - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/icons/${_icons}.png" \ - "${pkgdir}/usr/share/icons/hicolor/${_icons}/apps/${_pkgname}.png" + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/icons/${_icons}.png" \ + "${pkgdir}/usr/share/icons/hicolor/${_icons}/apps/${pkgname%-git}.png" done - - install -Dm644 "${srcdir}/${_pkgname}/out/linux-unpacked/icons/scalable.svg" \ - "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_pkgname}.svg" - install -Dm644 "${srcdir}/${_pkgname}/resources/${_pkgname}.desktop" -t "${pkgdir}/usr/share/applications" - - mkdir -p "${pkgdir}/opt/${_pkgname}" - chmod 755 "${srcdir}/${_pkgname}/out/linux-unpacked/figma-linux" - cp -rf ${srcdir}/${_pkgname}/out/linux-unpacked/* ${pkgdir}/opt/${_pkgname} - - mkdir -p "${pkgdir}/usr/bin" - ln -s "/opt/${_pkgname}/figma-linux" "${pkgdir}/usr/bin/${_pkgname}" - - xdg-mime default ${_pkgname}.desktop x-scheme-handler/figma + install -Dm644 "${srcdir}/${pkgname%-git}.git/build/installers/linux-unpacked/icons/scalable.svg" \ + "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${pkgname%-git}.svg" + install -Dm644 "${srcdir}/${pkgname%-git}.git/resources/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications" }
\ No newline at end of file diff --git a/figma-linux.sh b/figma-linux.sh index cf667cedcb39..aacd8f895847 100644 --- a/figma-linux.sh +++ b/figma-linux.sh @@ -1,11 +1,15 @@ -#!/bin/bash -_ELECTRON=/usr/bin/electron27 -APPDIR="/usr/lib/figma-linux" -export PATH="${APPDIR}:${PATH}" -export LD_LIBRARY_PATH="${APPDIR}/swiftshader:${APPDIR}/lib:${APPDIR}/lib/nss:${LD_LIBRARY_PATH}" -_ASAR="${APPDIR}/app.asar" +#!/bin/sh +set -e +_APPDIR="/usr/lib/@appname@" +_ASAR="${_APPDIR}/@appasar@" +export PATH="${_APPDIR}:${PATH}" +export LD_LIBRARY_PATH="${_APPDIR}/swiftshader:${_APPDIR}/lib:${LD_LIBRARY_PATH}" +export ELECTRON_IS_DEV=0 +export NODE_ENV=production +cd "${_APPDIR}" if [[ $EUID -ne 0 ]] || [[ $ELECTRON_RUN_AS_NODE ]]; then - exec ${_ELECTRON} ${_ASAR} "$@" + exec electron@electronversion@ "${_ASAR}" "$@" else - exec ${_ELECTRON} ${_ASAR} --no-sandbox "$@" -fi
\ No newline at end of file + exec electron@electronversion@ "${_ASAR}" --no-sandbox "$@" +fi +exit
\ No newline at end of file |