diff options
author | zxp19821005 | 2024-04-01 16:34:28 +0800 |
---|---|---|
committer | zxp19821005 | 2024-04-01 16:34:28 +0800 |
commit | 6d1f0c5e9b4561417f6d65ceb13b2cac52b93414 (patch) | |
tree | 83f68e858a534aeac169316e9f825b5b9e470213 /PKGBUILD | |
parent | 18c315a0ec5ff5e2e261b505cfe9f54eeea1ebe0 (diff) | |
download | aur-github-desktop-git.tar.gz |
update to release.2.9.10.r4415.ge315c497a1
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 112 |
1 files changed, 75 insertions, 37 deletions
@@ -1,47 +1,85 @@ -# Maintainer: Ian MacKay <immackay0@gmail.com> -# Prior Maintainer: Mikel Pintado <mikelaitornube2010@gmail.com> +# Maintainer: zxp19821005 <zxp19821005 at 163 dot com> +# Contributor: Ian MacKay <immackay0@gmail.com> +# Contributor: Mikel Pintado <mikelaitornube2010@gmail.com> # Contributor: Jiawen Geng - -_pkgname='github-desktop' -pkgname="${_pkgname}-git" -pkgver=r26627.3461639c7 -gitname="linux" +pkgname=github-desktop-git +_pkgname="GitHub Desktop" +pkgver=release.2.9.10.r4415.ge315c497a1 +_electronversion=28 +_nodeversion=18 pkgrel=1 -pkgdesc="GUI for managing Git and GitHub." -arch=('x86_64') -url="https://desktop.github.com" +pkgdesc="GUI for managing Git and GitHub.Use system-wide electron." +arch=('any') +url="https://github.com/shiftkey/desktop" license=('MIT') -depends=('gnome-keyring' 'libsecret' 'git' 'curl' 'libxss' 'gconf' 'nss' 'nspr' 'unzip') -optdepends=('hub: CLI interface for GitHub.') -makedepends=('xorg-server-xvfb' 'nodejs>=10.16.0' 'yarn' 'python2' 'unzip') -provides=(${_pkgname}) -conflicts=(${_pkgname}) -DLAGENTS=("https::/usr/bin/git clone --branch ${gitname} --single-branch %u") -source=( - git+https://github.com/shiftkey/desktop.git - ${_pkgname}.desktop +conflicts=("${pkgname%-git}") +provides=("${pkgname%-git}=${pkgver%.r*}") +depends=( + "electron${_electronversion}" + 'perl' + 'libsecret' ) -sha256sums=( - 'SKIP' - 932e4c456e8c6db03d27172cf0daa37806bf025bb560d8b3d758c0997d1a618c +makedepends=( + 'npm' + 'yarn' + 'git' + 'nvm' + 'gendesk' + 'base-devel' + 'gcc' ) +source=( + "${pkgname%-git}.git::git+${url}.git" + "${pkgname%-git}.sh") +sha256sums=('SKIP' + 'dc0c5ca385ad81a08315a91655c7c064b5bf110eada55e61265633ae198b39f8') pkgver() { - cd desktop - printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" + cd "${srcdir}/${pkgname%-git}.git" + git describe --tags | sed 's/\w\+\///g;s/\([^-]*-g\)/r\1/;s/-/./g;s/v//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 desktop - export DISPLAY=':99.0' - Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & - yarn install - yarn build:prod + sed -e "s|@electronversion@|${_electronversion}|" \ + -e "s|@appname@|${pkgname%-git}|g" \ + -e "s|@runname@|app|g" \ + -e "s|@options@|env ELECTRON_OZONE_PLATFORM_HINT=auto|g" \ + -i "${srcdir}/${pkgname%-git}.sh" + _ensure_local_nvm + gendesk -q -f -n --categories="Utility" --name="${_pkgname}" --exec="${pkgname%-git} %U" + cd "${srcdir}/${pkgname%-git}.git" + 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}" + export npm_config_disturl=https://electronjs.org/headers + 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_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 + rm -rf dist node_mudules out + yarn install --cache-folder "${srcdir}/.yarn_cache" + yarn run build:prod } package() { - install -d "${pkgdir}/opt/${_pkgname}" - cp -r --preserve=mode desktop/dist/github-desktop-linux-x64/* "${pkgdir}/opt/${_pkgname}/" - install -Dm644 "${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop" - install -Dm644 "desktop/app/static/logos/1024x1024.png" "${pkgdir}/usr/share/icons/hicolor/1024x1024/apps/${_pkgname}.png" - install -Dm644 "desktop/app/static/logos/512x512.png" "${pkgdir}/usr/share/icons/hicolor/512x512/apps/${_pkgname}.png" - install -Dm644 "desktop/app/static/logos/256x256.png" "${pkgdir}/usr/share/icons/hicolor/256x256/apps/${_pkgname}.png" - printf "#!/bin/sh\n\n/opt/${_pkgname}/github-desktop \"\$@\"\n" | install -Dm755 /dev/stdin "${pkgdir}/usr/bin/${_pkgname}" -} + install -Dm755 "${srcdir}/${pkgname%-git}.sh" "${pkgdir}/usr/bin/${pkgname%-git}" + install -Dm755 -d "${pkgdir}/usr/lib/${pkgname%-git}" + cp -r "${srcdir}/${pkgname%-git}.git/dist/${pkgname%-git}-linux-"*/resources/app "${pkgdir}/usr/lib/${pkgname%-git}" + for _icons in 32x32 64x64 128x128 256x256 512x512 1024x1024;do + install -Dm644 "${srcdir}/${pkgname%-git}.git/app/static/linux/logos/${_icons}.png" \ + "${pkgdir}/usr/share/icons/hicolor/${_icons}/apps/${pkgname%-git}.png" + done + install -Dm644 "${srcdir}/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications" + install -Dm644 "${srcdir}/${pkgname%-git}.git/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}" +}
\ No newline at end of file |