summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD81
1 files changed, 81 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..6939dc6a3c7a
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,81 @@
+# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
+_appname=flowtest
+pkgname="${_appname}ai-git"
+_pkgname=FlowTestAI
+pkgver=r351.36677dd
+_electronversion=29
+_nodeversion=20
+pkgrel=1
+pkgdesc="GenAI powered OpenSource IDE for API first workflows."
+arch=('any')
+url="https://flowtestai.gitbook.io/flowtestai"
+_ghurl="https://github.com/FlowTestAI/FlowTest"
+license=('MIT')
+conflicts=("${pkgname%-git}")
+provides=("${pkgname%-git}=${pkgver%.r*}")
+depends=(
+ "electron${_electronversion}"
+)
+makedepends=(
+ 'npm'
+ 'git'
+ 'nvm'
+ 'gendesk'
+)
+source=(
+ "${pkgname//-/.}::git+${_ghurl}.git"
+ "${pkgname%-git}.sh")
+sha256sums=('SKIP'
+ '0c7b4041ba449cb35cb5cb23503be164af78e85572dda2d8db0ae3dc7fa2629c')
+pkgver() {
+ cd "${srcdir}/${pkgname//-/.}"
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+_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%-git}|g" \
+ -e "s|@runname@|app.asar|g" \
+ -e "s|@options@|env ELECTRON_OZONE_PLATFORM_HINT=auto|g" \
+ -i "${srcdir}/${pkgname%-git}.sh"
+ _ensure_local_nvm
+ gendesk -q -f -n --pkgname="${_appname}ai-git" --categories="Development" --name="${_pkgname}" --exec="${pkgname%-git} %U"
+ cd "${srcdir}/${pkgname//-/.}"
+ 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 npm_config_target="${SYSTEM_ELECTRON_VERSION}"
+ export ELECTRONVERSION="${_electronversion}"
+ export npm_config_disturl=https://electronjs.org/headers
+ HOME="${srcdir}/.electron-gyp"
+ 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
+ npm run clean
+ sed "s|compute\/requestNode|compute\/requestnode|g;s|compute\/complexnode|compute\/complexNode|g" \
+ -i src/components/molecules/flow/graph/Graph.js
+ npm install
+ npm add -D "@babel/plugin-proposal-private-property-in-object"
+ npm run build
+ npm run postinstall
+ cd "${srcdir}/${pkgname//-/.}/packages/${_appname}-electron"
+ npm run pack
+}
+package() {
+ install -Dm755 "${srcdir}/${pkgname%-git}.sh" "${pkgdir}/usr/bin/${pkgname%-git}"
+ install -Dm644 "${srcdir}/${pkgname//-/.}/packages/${_appname}-electron/dist/linux-"*/resources/app.asar -t "${pkgdir}/usr/lib/${pkgname%-git}/resources"
+ cp -r "${srcdir}/${pkgname//-/.}/build" "${pkgdir}/usr/lib/${pkgname%-git}"
+ install -Dm644 "${srcdir}/${pkgname//-/.}/packages/${_appname}-electron/assets/MyIcon.png" "${pkgdir}/usr/share/pixmaps/${pkgname%-git}.png"
+ install -Dm644 "${srcdir}/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications"
+ install -Dm644 "${srcdir}/${pkgname//-/.}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+} \ No newline at end of file