Add devicepkg-dev which generate the touchscreen udev rule based on the deviceinfo (#995)
* Use devicepkg-dev by default in new device wizard * Add link to reference wiki page
This commit is contained in:
parent
b031017414
commit
4782ffd01f
5 changed files with 92 additions and 18 deletions
20
main/devicepkg-dev/APKBUILD
Normal file
20
main/devicepkg-dev/APKBUILD
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
pkgname="devicepkg-dev"
|
||||
pkgver=0.1
|
||||
pkgrel=0
|
||||
pkgdesc="Provides default device package functions"
|
||||
url="https://github.com/postmarketOS"
|
||||
arch="all"
|
||||
license="MIT"
|
||||
source="
|
||||
devicepkg_build.sh
|
||||
devicepkg_package.sh
|
||||
"
|
||||
|
||||
package() {
|
||||
install -Dm755 "$srcdir/devicepkg_build.sh" \
|
||||
"$pkgdir/usr/bin/devicepkg_build"
|
||||
install -Dm755 "$srcdir/devicepkg_package.sh" \
|
||||
"$pkgdir/usr/bin/devicepkg_package"
|
||||
}
|
||||
sha512sums="e6f96f8942fa8124ca7461bcf9c78879e08ef00da4a728735046503cae86548505594e078eb14056af74616b17332474f1473f72127299773e075bfd970af13b devicepkg_build.sh
|
||||
c732792596f56860f6ab9ddd53b9a7a80224400dd20097b20cebe17a6e7330e9178783f09db16132a28a555f83e29ef3643bfe069638b62998912a9a7ffefdc0 devicepkg_package.sh"
|
||||
34
main/devicepkg-dev/devicepkg_build.sh
Normal file
34
main/devicepkg-dev/devicepkg_build.sh
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
#!/bin/sh
|
||||
startdir=$1
|
||||
pkgname=$2
|
||||
|
||||
if [ -z "$startdir" ] || [ -z "$pkgname" ]; then
|
||||
echo "ERROR: missing argument!"
|
||||
echo "Please call devicepkg_default_build() with \$startdir and \$pkgname as arguments."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
srcdir="$startdir/src"
|
||||
|
||||
if [ ! -f "$srcdir/deviceinfo" ]; then
|
||||
echo "NOTE: $0 is intended to be used inside of the build() function"
|
||||
echo "of a device package's APKBUILD only."
|
||||
echo "ERROR: deviceinfo file missing!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC1090,SC1091
|
||||
. "$srcdir/deviceinfo"
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
if [ ! -z "$deviceinfo_dev_touchscreen" ]; then
|
||||
# Create touchscreen udev rule
|
||||
{
|
||||
echo "SUBSYSTEM==\"input\", ENV{DEVNAME}==\"$deviceinfo_dev_touchscreen\", \\"
|
||||
# shellcheck disable=SC2154
|
||||
if [ ! -z "$deviceinfo_dev_touchscreen_calibration" ]; then
|
||||
echo "ENV{WL_CALIBRATION}=\"$deviceinfo_dev_touchscreen_calibration\", \\"
|
||||
fi
|
||||
echo "ENV{ID_INPUT}=\"1\", ENV{ID_INPUT_TOUCHSCREEN}=\"1\""
|
||||
} > "$srcdir/90-$pkgname.rules"
|
||||
fi
|
||||
27
main/devicepkg-dev/devicepkg_package.sh
Normal file
27
main/devicepkg-dev/devicepkg_package.sh
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
#!/bin/sh
|
||||
startdir=$1
|
||||
pkgname=$2
|
||||
|
||||
if [ -z "$startdir" ] || [ -z "$pkgname" ]; then
|
||||
echo "ERROR: missing argument!"
|
||||
echo "Please call devicepkg_default_package() with \$startdir and \$pkgname as arguments."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
srcdir="$startdir/src"
|
||||
pkgdir="$startdir/pkg/$pkgname"
|
||||
|
||||
if [ ! -f "$srcdir/deviceinfo" ]; then
|
||||
echo "NOTE: $0 is intended to be used inside of the package() function"
|
||||
echo "of a device package's APKBUILD only."
|
||||
echo "ERROR: deviceinfo file missing!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
install -Dm644 "$srcdir/deviceinfo" \
|
||||
"$pkgdir/etc/deviceinfo"
|
||||
|
||||
if [ -f "$srcdir/90-$pkgname.rules" ]; then
|
||||
install -Dm644 "$srcdir/90-$pkgname.rules" \
|
||||
"$pkgdir/etc/udev/rules.d/90-$pkgname.rules"
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue