diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..a0908ad9a262 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,85 @@ +# Maintainer: zxp19821005 <zxp19821005 at 163 dot com> +pkgname=md-tauri-git +_pkgname='MD-Tauri' +pkgver=r775.e0f005b +_nodeversion=23 +pkgrel=1 +pkgdesc="A modern Markdown editor built with Tauri and Vue 3, providing a seamless desktop experience for Markdown editing and preview." +arch=('any') +url="https://github.com/CrazyMrYan/md-tauri" +license=('MIT') +provides=("${pkgname%-git}=${pkgver%.r*}") +conflicts=("${pkgname%-git}") +depends=( + 'gtk3' + 'gdk-pixbuf2' + 'webkit2gtk' + 'libsoup' +) +makedepends=( + 'nvm' + 'git' + 'curl' + 'rust' + 'npm' + 'yarn' +) +source=( + "${pkgname%-git}.git::git+${url}.git" +) +sha256sums=('SKIP') +pkgver() { + cd "${srcdir}/${pkgname%-git}.git" + set -o pipefail + git describe --long --abbrev=7 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/v//' || + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)" +} +_ensure_local_nvm() { + local NVM_DIR="${srcdir}/.nvm" + source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]] + nvm install "${_nodeversion}" + nvm use "${_nodeversion}" +} +prepare() { + _ensure_local_nvm + cd "${srcdir}/${pkgname%-git}.git" + export CARGO_HOME="${srcdir}/.cargo" + HOME="${srcdir}/.electron-gyp" + if [[ "$(curl -s ipinfo.io/country)" == *"CN"* ]]; then + { + echo -e '\n' + echo 'registry "https://registry.npmmirror.com"' + echo "cacheFolder "${srcdir}"/.yarn/cache" + echo "pluginsFolder "${srcdir}"/.yarn/plugins" + echo "globalFolder "${srcdir}"/.yarn/global" + echo 'useHardlinks true' + echo 'linkWorkspacePackages true' + echo 'fetchRetries 3' + echo 'fetchRetryTimeout 10000' + } >> .yarnrc + find ./ -type f -name "yarn.lock" -exec sed -i "s/registry.yarnpkg.com/registry.npmmirror.com/g;s/registry.npmjs.org/registry.npmmirror.com/g" {} + + export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static + export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup + fi + NODE_ENV=development yarn install --cache-folder "${srcdir}/.yarn_cache" +} +build() { + cd "${srcdir}/${pkgname%-git}.git" + sed -i "s/, \"app\", \"dmg\", \"msi\"//g" src-tauri/tauri.conf.json + NODE_ENV=production yarn run tauri:build +} +package() { + install -Dm755 "${srcdir}/${pkgname%-git}.git/src-tauri/target/release/bundle/deb/${pkgname%-git}_"*/data/usr/bin/"${pkgname%-git}" \ + -t "${pkgdir}/usr/bin" + install -Dm644 "${srcdir}/${pkgname%-git}.git/src-tauri/target/release/bundle/deb/${pkgname%-git}_"*/data/usr/share/applications/"${pkgname%-git}.desktop" \ + -t "${pkgdir}/usr/share/applications" + sed -i -e " + s/Development/Utility/g; + s/Name=${pkgname%-git}/Name=${_pkgname}/g; + " "${pkgdir}/usr/share/applications" + for _icons in 32x32 128x128 256x256@2;do + install -Dm644 "${srcdir}/${pkgname%-git}.git/src-tauri/target/release/bundle/deb/${pkgname%-git}_"*/data/usr/share/icons/hicolor/"${_icons}/apps/${pkgname%-git}.png" \ + -t "${pkgdir}/usr/share/icons/hicolor/${_icons}/apps" + done + install -Dm644 "${srcdir}/${pkgname%-git}.git/package.json" -t "${pkgdir}/usr/share/licenses/${pkgname}" +}
\ No newline at end of file |