summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO29
-rw-r--r--OpenTabletDriver.desktop10
-rw-r--r--PKGBUILD118
-rw-r--r--notes.install53
-rw-r--r--opentabletdriver.service12
-rwxr-xr-xotd13
-rwxr-xr-xotd-gui3
7 files changed, 68 insertions, 170 deletions
diff --git a/.SRCINFO b/.SRCINFO
index d2e14f39bc9b..2d584f0e2075 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,33 +1,30 @@
pkgbase = opentabletdriver-git
pkgdesc = A cross-platform open source tablet driver
- pkgver = v0.5.3.1.r221.g96516285
- pkgrel = 3
- url = https://github.com/OpenTabletDriver/OpenTabletDriver
+ pkgver = v0.7.0.0pre.r786.gf14a184f
+ pkgrel = 2
+ url = https://opentabletdriver.net
install = notes.install
arch = x86_64
license = LGPL3
makedepends = git
- makedepends = dotnet-sdk-5.0
- depends = dotnet-runtime-5.0
- depends = dotnet-host>=5.0
+ makedepends = dotnet-sdk-7.0
+ makedepends = jq
+ depends = dotnet-runtime-7.0
depends = gtk3
depends = libevdev
optdepends = libxrandr: x11 display querying support
optdepends = libx11
provides = opentabletdriver
conflicts = opentabletdriver
+ conflicts = digimend-kernel-drivers-dkms-git
+ conflicts = digimend-drivers-git-dkms
+ conflicts = digimend-kernel-drivers-dkms
+ conflicts = digimend-kernel-drivers
+ options = !strip
+ options = !debug
source = git+https://github.com/OpenTabletDriver/OpenTabletDriver
- source = otd
- source = otd-gui
- source = opentabletdriver.service
- source = OpenTabletDriver.desktop
source = notes.install
sha256sums = SKIP
- sha256sums = 8a09d29e683aefcbf54e5fe891d5688f959d9399804f9c151f0e8f6e6a1ede1a
- sha256sums = 20aac1584a8e08b5a9add1d02ce38e60ddfede615227df6f25c7422217df82b0
- sha256sums = 88f7d9ae1e9402cfbf9266ddf0de642195b64de13a3d5ce6f93460ba035cf7f2
- sha256sums = 4399359bf6107b612d10aaa06abb197db540b00a973cfec64c2b40d1fbbb2834
- sha256sums = f1f88e4a57b4caf503192a773fdbb88531b51499bfb9b350421d7e92795736fd
+ sha256sums = 5b9db850e29b66a218a165f2d109375e15416069d2c759cac79cc6af6b04688a
pkgname = opentabletdriver-git
-
diff --git a/OpenTabletDriver.desktop b/OpenTabletDriver.desktop
deleted file mode 100644
index 7eaa6bc46710..000000000000
--- a/OpenTabletDriver.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Version=OTD_VERSION
-Name=OpenTabletDriver
-Exec=/usr/bin/otd-gui
-Icon=otd
-Terminal=false
-Type=Application
-StartupNotify=true
-Categories=Accessories;
-X-Desktop-File-Install-Version=0.15
diff --git a/PKGBUILD b/PKGBUILD
index caa94c116a67..2ea8a85bb27f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,38 +1,43 @@
-# Maintainer: MoeLava <me@lava.moe>
-# Maintainer: InfinityGhost <infinityghostgit@gmail.com>
+# Maintainer: Sebastian 'gonX' Jensen <gonx@gonx.dk>
+# Contibutor: MoeLava <me@lava.moe>
+# Contibutor: InfinityGhost <infinityghostgit@gmail.com>
pkgname=opentabletdriver-git
_pkgname=OpenTabletDriver
_lpkgname=opentabletdriver
_spkgname=otd
-pkgver=v0.5.3.1.r221.g96516285
-pkgrel=3
+pkgver=v0.7.0.0pre.r786.gf14a184f
+pkgrel=2
pkgdesc="A cross-platform open source tablet driver"
arch=('x86_64')
-url="https://github.com/OpenTabletDriver/OpenTabletDriver"
+url="https://opentabletdriver.net"
license=('LGPL3')
-depends=('dotnet-runtime-5.0' 'dotnet-host>=5.0' 'gtk3' 'libevdev')
+depends=('dotnet-runtime-7.0' 'gtk3' 'libevdev')
optdepends=('libxrandr: x11 display querying support' 'libx11')
-makedepends=('git' 'dotnet-sdk-5.0')
+makedepends=('git' 'dotnet-sdk-7.0' 'jq')
provides=("opentabletdriver")
-conflicts=("opentabletdriver")
+conflicts=('opentabletdriver' 'digimend-kernel-drivers-dkms-git' 'digimend-drivers-git-dkms' 'digimend-kernel-drivers-dkms' 'digimend-kernel-drivers')
install="notes.install"
+# unified binary dotnet releases break when stripped, see https://github.com/dotnet/runtime/issues/54947
+# disabling debug is necessary for the time being, see https://gitlab.archlinux.org/archlinux/packaging/packages/pacman/-/issues/19
+options=('!strip' '!debug')
source=('git+https://github.com/OpenTabletDriver/OpenTabletDriver'
- "$_spkgname"
- "$_spkgname-gui"
- "$_lpkgname.service"
- "$_pkgname.desktop"
- "notes.install")
+ "notes.install"
+ )
sha256sums=('SKIP'
- '8a09d29e683aefcbf54e5fe891d5688f959d9399804f9c151f0e8f6e6a1ede1a'
- '20aac1584a8e08b5a9add1d02ce38e60ddfede615227df6f25c7422217df82b0'
- '88f7d9ae1e9402cfbf9266ddf0de642195b64de13a3d5ce6f93460ba035cf7f2'
- '4399359bf6107b612d10aaa06abb197db540b00a973cfec64c2b40d1fbbb2834'
- 'f1f88e4a57b4caf503192a773fdbb88531b51499bfb9b350421d7e92795736fd')
+ '5b9db850e29b66a218a165f2d109375e15416069d2c759cac79cc6af6b04688a')
pkgver() {
cd "$srcdir/$_pkgname"
- git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+ # check for the DI rewrite commit that makes plugins incompatible
+ if git merge-base --is-ancestor 10a3c07206028f7df5befbdeca6aadb30efe4cb3 HEAD >/dev/null; then
+ printf "%s.r%s.g%s\n" \
+ "v0.7.0.0pre" \
+ $(git log --oneline 10a3c072.. | wc -l) \
+ $(git describe --long --tags | sed 's/.*-g\(.*\)/\1/')
+ else
+ git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+ fi
}
build() {
@@ -40,72 +45,21 @@ build() {
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
cd "$srcdir/$_pkgname"
- PREFIX=$(git describe --long --tags | sed 's/-.*//;s/v//')
- SUFFIX=$(git describe --long --tags | sed 's/^[^-]*-//;s/\([^-]*-g\)/r\1/;s/-/./g')
+ # check for the DI rewrite commit that makes plugins incompatible
+ if git merge-base --is-ancestor 10a3c07206028f7df5befbdeca6aadb30efe4cb3 HEAD >/dev/null; then
+ PREFIX="0.7.0.0-pre"
+ else
+ PREFIX=$(git describe --long --tags | sed 's/-.*//;s/v//')
+ fi
- dotnet publish OpenTabletDriver.Daemon \
- --configuration Release \
- --framework net5 \
- --runtime linux-x64 \
- --self-contained false \
- --output "./$_pkgname/out" \
- /p:VersionPrefix="$PREFIX" \
- /p:SuppressNETCoreSdkPreviewMessage=true \
- /p:PublishTrimmed=false
+ if check_option "strip" y; then
+ EXTRA_OPTIONS="/p:DebugType=None /p:DebugSymbols=false"
+ fi
- dotnet publish OpenTabletDriver.Console \
- --configuration Release \
- --framework net5 \
- --runtime linux-x64 \
- --self-contained false \
- --output "./$_pkgname/out" \
- --version-suffix "$SUFFIX" \
- /p:VersionPrefix="$PREFIX" \
- /p:SuppressNETCoreSdkPreviewMessage=true \
- /p:PublishTrimmed=false
-
- dotnet publish OpenTabletDriver.UX.Gtk \
- --configuration Release \
- --framework net5 \
- --runtime linux-x64 \
- --self-contained false \
- --output "./$_pkgname/out" \
- --version-suffix "$SUFFIX" \
- /p:VersionPrefix="$PREFIX" \
- /p:SuppressNETCoreSdkPreviewMessage=true \
- /p:PublishTrimmed=false
-
- dotnet build OpenTabletDriver.Tools.udev \
- --configuration Release \
- --framework net5.0 \
- --runtime linux-x64 \
- --output "./$_pkgname/out-udev" \
- /p:SuppressNETCoreSdkPreviewMessage=true
-
- dotnet "./$_pkgname/out-udev/$_pkgname.Tools.udev.dll" \
- "$srcdir/$_pkgname/$_pkgname/Configurations" \
- "90-$_lpkgname.rules" > /dev/null
+ ./eng/linux/package.sh --dog-food "false" --package Generic -- /p:VersionPrefix="$PREFIX" $EXTRA_OPTIONS
}
package() {
- cd "$srcdir"
-
- install -do root "$pkgdir/usr/share/$_pkgname"
-
- cd "$srcdir/$_pkgname/$_pkgname/out"
- for binary in *.dll *.json *.pdb; do
- install -Dm 755 -o root "$binary" -t "$pkgdir/usr/share/$_pkgname"
- done
- cd "$srcdir"
-
- sed -i "s/OTD_VERSION/$pkgver/" "$_pkgname.desktop"
-
- install -Dm 644 -o root "$srcdir/$_pkgname/90-$_lpkgname.rules" -t "$pkgdir/usr/lib/udev/rules.d"
- install -Dm 644 -o root "$srcdir/$_pkgname/$_pkgname.UX/Assets/$_spkgname.png" -t "$pkgdir/usr/share/pixmaps"
- cp -r "$srcdir/$_pkgname/$_pkgname/Configurations" "$pkgdir/usr/share/$_pkgname/"
-
- install -Dm 755 -o root "$_spkgname" -t "$pkgdir/usr/bin"
- install -Dm 755 -o root "$_spkgname-gui" -t "$pkgdir/usr/bin"
- install -Dm 644 -o root "$_lpkgname.service" -t "$pkgdir/usr/lib/systemd/user"
- install -Dm 644 -o root "$_pkgname.desktop" -t "$pkgdir/usr/share/applications"
+ cd "${srcdir}/${_pkgname}"
+ cp -r ./dist/files/* "${pkgdir}/"
}
diff --git a/notes.install b/notes.install
index 950aef3cffff..c68a0ae63768 100644
--- a/notes.install
+++ b/notes.install
@@ -11,52 +11,25 @@ msg_starting() {
echo "The daemon can be started with:"
echo -e " $ ${GREEN}otd${RESET}"
echo "You can fork it to the background and use output redirection to a log file if desired."
- echo "A systemd user service is also provided and can be used instead:"
+ echo "A systemd user service is also provided and can be used instead, assuming you have a correct systemd user graphical-session.target set up:"
echo -e " $ ${GREEN}systemctl --user enable --now opentabletdriver.service${RESET}"
echo
}
msg_modules() {
- echo "You will have to manually disable built-in kernel modules in order for this driver to work properly."
- echo -e "This can be done by blacklisting the kernel module by creating a file in ${GREEN}/etc/modprobe.d/blacklist.conf${RESET} with a single line:"
- echo -e " ${GREEN}blacklist <module>${RESET}"
- echo "Where <module> is 'wacom' if you own a wacom tablet, and 'hid_uclogic' otherwise."
+ echo "You will have to manually unload built-in kernel modules (or reboot) in order for this driver to work properly."
echo "To unload the module immediately, run:"
echo -e " # ${GREEN}rmmod <module>${RESET}"
+ echo "Where <module> is 'wacom' if you own a wacom tablet, and 'hid_uclogic' otherwise."
echo
}
msg_faq() {
- echo -e "In the case that you still have issues after following these instructions, the FAQ at ${GREEN}https://github.com/InfinityGhost/OpenTabletDriver/wiki/Linux-FAQ${RESET} may help."
- echo
-}
-
-
-msg_upgrade_starting() {
- if [ $(vercmp $1 'v0.4.2.r282.g4372321-2') -gt -1 ]
- then
- return 0
- fi
-
- echo "The method of starting the daemon has changed since your previous version of OpenTabletDriver."
- msg_starting
-}
-
-msg_upgrade_systemd() {
- if [ $(vercmp $1 'v0.5.0.r63.g309e422-2') -gt -1 ]
- then
- return 0
- fi
-
- echo "OpenTabletDriver's systemd user service has been updated since your previous version"
- echo "To make systemd aware of this and apply changes immediately, please run the following commands:"
- echo -e "${GREEN}systemctl --user daemon-reload"
- echo "systemctl --user reenable opentabletdriver.service"
- echo -e "systemctl --user restart opentabletdriver.service${RESET}"
+ echo -e "As of version 0.6.2.0, having the package installed will ${BOLD}block${RESET} any modules related to drawing tablets"
+ echo -e "In the case that you still have issues after following these instructions, the FAQ at ${GREEN}https://opentabletdriver.net/Wiki/FAQ/Linux${RESET} may help."
echo
}
-
post_install() {
echo
echo -e "${BOLD}Welcome to OpenTabletDriver!${RESET}"
@@ -69,6 +42,18 @@ post_install() {
}
post_upgrade() {
- msg_upgrade_starting $2
- msg_upgrade_systemd $2
+ echo -e "${BOLD}Mismatching OpenTabletDriver versions between GUI and daemon isn't supported${RESET}"
+ echo -e "Restart your daemon with ${GREEN}systemctl --user restart opentabletdriver${RESET}"
+ echo
+ if [ $(vercmp $2 0.6.0-1) -lt 0 ]; then
+ echo -e "${BOLD}The plugin API and tablet configuration format has changed in OpenTabletDriver 0.6${RESET}"
+ echo -e "You may want to clear the contents of the ${GREEN}Plugins/${RESET} and ${GREEN}Configurations/${RESET} folder in ${GREEN}~/.config/OpenTabletDriver/${RESET}"
+ echo
+ fi
+ if [ $(vercmp $2 0.7.0.0pre) -lt 0 ]; then
+ echo -e "${BOLD}The plugin API and tablet configuration format has again changed in OpenTabletDriver 0.7${RESET}"
+ echo -e "You may want to clear the contents of the ${GREEN}Plugins/${RESET} and ${GREEN}Configurations/${RESET} folder in ${GREEN}~/.config/OpenTabletDriver/${RESET}"
+ echo
+ fi
+ msg_faq
}
diff --git a/opentabletdriver.service b/opentabletdriver.service
deleted file mode 100644
index 96e76e3da8d1..000000000000
--- a/opentabletdriver.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=OpenTabletDriver Daemon
-StartLimitIntervalSec=300
-StartLimitBurst=5
-
-[Service]
-ExecStart=/usr/bin/otd
-Restart=on-failure
-RestartSec=8s
-
-[Install]
-WantedBy=default.target
diff --git a/otd b/otd
deleted file mode 100755
index f4a779ebe6ba..000000000000
--- a/otd
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/bash
-cd /usr/share/OpenTabletDriver
-if [ $# -eq 0 ]
-then
- if [[ ! -v DISPLAY ]] && [[ ! -v WAYLAND_DISPLAY ]]
- then
- echo "DISPLAY and/or WAYLAND_DISPLAY is not set"
- exit 64
- fi
- dotnet ./OpenTabletDriver.Daemon.dll -c ./Configurations
-else
- dotnet ./OpenTabletDriver.Console.dll "$@"
-fi
diff --git a/otd-gui b/otd-gui
deleted file mode 100755
index 8a71b9faf550..000000000000
--- a/otd-gui
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-cd /usr/share/OpenTabletDriver
-dotnet ./OpenTabletDriver.UX.Gtk.dll "$@"