diff options
-rw-r--r-- | .SRCINFO | 29 | ||||
-rw-r--r-- | OpenTabletDriver.desktop | 10 | ||||
-rw-r--r-- | PKGBUILD | 118 | ||||
-rw-r--r-- | notes.install | 53 | ||||
-rw-r--r-- | opentabletdriver.service | 12 | ||||
-rwxr-xr-x | otd | 13 | ||||
-rwxr-xr-x | otd-gui | 3 |
7 files changed, 68 insertions, 170 deletions
@@ -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 @@ -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 "$@" |