summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorvazknight2024-01-22 20:14:47 -0700
committervazknight2024-01-22 20:14:47 -0700
commit2a64657a59c5806de92c3473abaae19abe9b57aa (patch)
treefbcc930dc30d9ca1fcc2865b8c85680a71082d16
parent616256990473a974343a04cee5d9ed9835e2e13b (diff)
downloadaur-2a64657a59c5806de92c3473abaae19abe9b57aa.tar.gz
push
-rw-r--r--PKGBUILD78
-rw-r--r--xencelabs1.3.0-12.install233
2 files changed, 264 insertions, 47 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 1532853dc238..eee6abd14be9 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,55 +1,39 @@
# Maintainer: Eric Engestrom <aur@engestrom.ch>
-_TARBALL_PKGVER=1.2.1-11
-_UPLOAD_DATE=20220527
-
-pkgname=xencelabs
-pkgver=${_TARBALL_PKGVER/-/.}
-pkgrel=1
-pkgdesc='Driver for the Xencelabs Pen Tablets'
-arch=(x86_64)
-url='https://www.xencelabs.com'
-license=(LGPL3)
-install=$pkgname.install
-source_x86_64=("https://download01.xencelabs.com/file/$_UPLOAD_DATE/XencelabsLinux_$_TARBALL_PKGVER.zip")
-sha256sums_x86_64=('0ee73309d9c2f6681c47542ae1c0efaea8c49f273c835046968d9271b7c7ed03')
-
-prepare() {
- rm -rf $pkgname-$_TARBALL_PKGVER.$CARCH
- tar xf XencelabsLinux_$_TARBALL_PKGVER/$pkgname-$_TARBALL_PKGVER.$CARCH.tar.gz
+_TARBALL_PKGVER=1.3.0-12
+_UPLOAD_DATE=20231214
+
+ pkgname=xencelabs
+ pkgver=${_TARBALL_PKGVER/-/.}
+ pkgrel=1
+ pkgdesc='Drivers for the Xencelabs Pen Tablets and Pen Display'
+ arch=(x86_64)
+ url='https://www.xencelabs.com'
+ license=(LGPL3)
+ install=$pkgname$_TARBALL_PKGVER.install
+ source_x86_64=("https://www.xencelabs.com/support/file/id/46/type/1")
+ sha256sums_x86_64=('870d16df231e983c1e2a1745d662bc47f3e60027dd2b0f30f17fbcfc6c425b48')
+
+
+
+
+ prepare() {
+ rm -rf $pkgname$_TARBALL_PKGVER.$CARCH
+ tar -xf linux/$pkgname-$_TARBALL_PKGVER.tar.gz
+ tar -xf linux/xencelabs-1.3.0-12.tar.gz
}
build() {
- cd $pkgname-$_TARBALL_PKGVER.$CARCH/App
-
- # provided by the `licenses` package
- rm usr/lib/xencelabs/lib/LGPL
-
- # fix FSH to match Arch's
- mv lib/*/ usr/lib/
- rmdir lib
-
- # Replace xencelabs.desktop copy with symlink
- ln -sf ../../../usr/share/applications/xencelabs.desktop \
- etc/xdg/autostart/xencelabs.desktop
-
- # Replace the wrapper script
- mkdir usr/bin
- rm usr/lib/xencelabs/xencelabs.sh
- cat > usr/bin/xencelabs <<'EOF'
-#!/bin/sh
-LD_LIBRARY_PATH=/usr/lib/xencelabs/lib
-export LD_LIBRARY_PATH
-cd /usr/lib/xencelabs/
-./xencelabs "$@"
-EOF
-
- sed s,/usr/lib/xencelabs/xencelabs.sh,xencelabs,g -i \
- usr/share/applications/xencelabs.desktop
+ cd $pkgname-$_TARBALL_PKGVER
+
}
+ package(){
+
+ mkdir ~/.local/share/xencelabs/
+ mkdir /usr/lib/xencelabs/config
+
+ mv ~/.local/share/xencelabs/* /usr/lib/xencelabs/config/
+
+ cd ..
-package() {
- cp -r --no-preserve=ownership,mode $pkgname-$_TARBALL_PKGVER.$CARCH/App/* "$pkgdir"
- chmod +x "$pkgdir"/usr/bin/xencelabs
- chmod +x "$pkgdir"/usr/lib/xencelabs/xencelabs
}
diff --git a/xencelabs1.3.0-12.install b/xencelabs1.3.0-12.install
new file mode 100644
index 000000000000..c1c7614e0c08
--- /dev/null
+++ b/xencelabs1.3.0-12.install
@@ -0,0 +1,233 @@
+pre_install() {
+
+
+ AppName=xencelabs
+ AppDir=xencelabs
+
+ #some operator before deb install
+ echo "try to close driver if it is running"
+ if [ -f "/var/lib/dpkg/lock" ]; then
+ sudo rm /var/lib/dpkg/lock
+ fi
+ if [ -f "/var/lib/dpkg/lock-frontend" ]; then
+ sudo rm /var/lib/dpkg/lock-frontend
+ fi
+
+ pid=`ps -e|grep $AppName`
+ AppName=xencelabs
+ appScript=$AppName".sh"
+ if [ -n "$pid" ]; then
+ echo $pid
+ arr=()
+ while read -r line; do
+ arr+=("$line")
+ done <<< "$pid"
+ for val in "${arr[@]}";
+ do
+ appid=`echo $val | awk '{print $1}'`
+ name=`echo $val | awk '{print $4}'`
+ echo "ID:"$appid
+ echo "Name:"$name
+ if [ "$name" = "$appRunScript" ]; then
+ echo "close $appRunScript"
+ kill -15 $appid
+ elif [ "$name" = "$AppName" ]; then
+ echo "close $AppName"
+ kill -15 $appid
+ fi
+ done
+ fi
+
+ # try to close driver if it exist
+ pid=`ps -e|grep $AppName|awk '{print $1}'`
+ if [ -n "$pid" ]; then
+ echo "close xencelabs"
+ kill -15 $pid
+ fi
+
+}
+
+post_install() {
+
+ #some operator after deb installed
+
+ userinfo=`who`
+ user=`who | awk '{print $1}'|head -1`
+ echo $user
+
+ AppName=xencelabs
+ appPath=/usr/lib/$AppName
+ # change permission
+ if [ -f /usr/lib/$AppName/start.sh ]; then
+ echo "add shell permission"
+ chmod +x $appPath/start.sh
+ fi
+
+ if [ -f /usr/lib/$AppName/$AppName ]; then
+ echo "add exe permission"
+ chmod +x $appPath/$AppName
+ fi
+
+
+ # Copy file to app's data path
+ langDirName=language
+ picDirName=picture
+ appDir=/home/$user/.local/share
+ dataPath=$appDir/$AppName
+ languageDir=$dataPath/$langDirName
+ picDir=$dataPath/$picDirName
+ echo "create user data dir"
+ if [ ! -d $appDir ];then
+ echo `mkdir $appDir`
+ fi
+ if [ ! -d $dataPath ];then
+ echo `mkdir $dataPath`
+ fi
+
+ chmod +0777 $appDir
+ chmod +0777 $dataPath
+
+ confDir=config
+ confName=config.xml
+ templateName=Template.xml
+
+
+ echo "copy config"
+ if [ -f $appPath/$confDir/$confName ];then
+ echo `cp $appPath/$confDir/$confName $dataPath/$confName`
+ chmod 0666 $dataPath/$confName
+ fi
+ chmod +0666 /usr/lib/xencelabs/config/linuxConfig
+
+ echo "copy template config"
+ if [ -f $appPath/$confDir/$templateName ];then
+ echo `cp $appPath/$confDir/$templateName $dataPath/$templateName`
+ chmod 0666 $dataPath/$templateName
+ fi
+
+ echo "copy banner"
+ echo `cp -rf $appPath/$confDir/$picDirName $dataPath`
+ chmod +0777 $picDir
+ chmod +0666 $picDir/banner.png
+ chmod +0666 $picDir/banner2.png
+
+ if [ -d $appPath/$confDir ];then
+ echo "copy lang"
+ echo `cp -rf $appPath/$confDir/$langDirName $dataPath`
+ chmod +0777 $languageDir
+ chmod +0666 $languageDir/ChineseSimplified.ini
+ chmod +0666 $languageDir/ChineseTraditional.ini
+ chmod +0666 $languageDir/English.ini
+ chmod +0666 $languageDir/French.ini
+ chmod +0666 $languageDir/German.ini
+ chmod +0666 $languageDir/Italian.ini
+ chmod +0666 $languageDir/Japanese.ini
+ chmod +0666 $languageDir/Korean.ini
+ chmod +0666 $languageDir/Polish.ini
+ chmod +0666 $languageDir/Russian.ini
+ chmod +0666 $languageDir/Spanish.ini
+ fi
+
+ #change temp file permition
+ echo "change tmp file permition"
+ localfile="/tmp/qtsingleapp-Xencel-fb8d-lockfile"
+ touch $localfile
+ sudo chmod +0777 /tmp/qtsingleapp-Xencel-fb8d-lockfile
+
+ echo "The installation is successful. If this is your first installation, restart your computer please"
+
+}
+
+pre_upgrade() {
+ pre_install
+}
+
+post_upgrade() {
+ post_install
+}
+
+pre_remove() {
+ echo "==========================================================="
+ AppName=xencelabs
+ appRunScript=start.sh
+
+ #some operator before uninstall
+ pid=`ps -e|grep $AppName`
+
+ if [ -n "$pid" ]; then
+ echo $pid
+ arr=()
+ while read -r line; do
+ arr+=("$line")
+ done <<< "$pid"
+ for val in "${arr[@]}";
+ do
+ appid=`echo $val | awk '{print $1}'`
+ name=`echo $val | awk '{print $4}'`
+ echo "ID:"$appid
+ echo "Name:"$name
+
+ if [ "$name" = "$appRunScript" ]; then
+ echo "close $appRunScript"
+ kill -15 $appid
+ elif [ "$name" = "$AppName" ]; then
+ echo "close $AppName"
+ kill -15 $appid
+ fi
+ done
+ fi
+
+ pid=`ps -e|grep $AppName|awk '{print $1}'`
+ if [ -n "$pid" ]; then
+ echo "close xencelabs"
+ kill -15 $pid
+ fi
+
+ AppName=xencelabs
+ AppDir=xencelabs
+
+ #some operator after deb uninstalled
+ if [ -f "/usr/share/applications/$AppName.desktop" ]; then
+ rm "/usr/share/applications/$AppName.desktop"
+ fi
+
+ if [ -f "/usr/share/icons/$AppName.png" ]; then
+ rm "/usr/share/icons/$AppName.png"
+ fi
+
+ if [ -d "/usr/lib/$AppDir" ];then
+ rm -rf "/usr/lib/$AppDir"
+ fi
+
+ userinfo=`who`
+ user=`who | awk '{print $1}'|head -1`
+ echo $user
+
+ dataPath=/home/$user/.local/share/$AppDir
+ if [ -d $dataPath ];then
+ echo `rm -rf $dataPath`
+ fi
+
+ echo "The uninstallation is successful."
+
+
+}
+
+post_remove() {
+ echo "remove lockfile"
+ sudo rm /tmp/qtsingleapp-Xencel-fb8d-lockfile
+
+
+}
+
+post_install() {
+ echo "--------------------------------------------------------------------------------"
+ echo "WARNING: Make sure you create the folder ~/.local/share/xencelabs/"
+ echo "WARNING: and copy the contents of /usr/lib/xencelabs/config/ into it."
+ echo "WARNING: xencelabs will not work unless you do this."
+ echo "--------------------------------------------------------------------------------"
+}
+
+post_upgrade() {
+ post_install
+}