From owner-svn-ports-head@freebsd.org Sun Feb 14 23:07:33 2021 Return-Path: Delivered-To: svn-ports-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B2DDA5406D1; Sun, 14 Feb 2021 23:07:33 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Df2v94FZhz4j3P; Sun, 14 Feb 2021 23:07:33 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 84B851302B; Sun, 14 Feb 2021 23:07:33 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 11EN7XAX017443; Sun, 14 Feb 2021 23:07:33 GMT (envelope-from wulf@FreeBSD.org) Received: (from wulf@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 11EN7WC0017434; Sun, 14 Feb 2021 23:07:32 GMT (envelope-from wulf@FreeBSD.org) Message-Id: <202102142307.11EN7WC0017434@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wulf set sender to wulf@FreeBSD.org using -f From: Vladimir Kondratyev Date: Sun, 14 Feb 2021 23:07:32 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r565272 - in head/sysutils: . hid-tools hid-tools/files X-SVN-Group: ports-head X-SVN-Commit-Author: wulf X-SVN-Commit-Paths: in head/sysutils: . hid-tools hid-tools/files X-SVN-Commit-Revision: 565272 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Feb 2021 23:07:33 -0000 Author: wulf (src committer) Date: Sun Feb 14 23:07:31 2021 New Revision: 565272 URL: https://svnweb.freebsd.org/changeset/ports/565272 Log: new port: sysutils/hid-tools sysutils/hid-tools: Python scripts to manipulate HID data PR: 253498 Approved by: lwhsu (ports) Added: head/sysutils/hid-tools/ head/sysutils/hid-tools/Makefile (contents, props changed) head/sysutils/hid-tools/distinfo (contents, props changed) head/sysutils/hid-tools/files/ head/sysutils/hid-tools/files/patch-hidtools_hidraw.py (contents, props changed) head/sysutils/hid-tools/files/patch-man_hid-decode.md (contents, props changed) head/sysutils/hid-tools/pkg-descr (contents, props changed) Modified: head/sysutils/Makefile Modified: head/sysutils/Makefile ============================================================================== --- head/sysutils/Makefile Sun Feb 14 22:50:42 2021 (r565271) +++ head/sysutils/Makefile Sun Feb 14 23:07:31 2021 (r565272) @@ -482,6 +482,7 @@ SUBDIR += hexyl SUBDIR += hfsexplorer SUBDIR += hfsutils + SUBDIR += hid-tools SUBDIR += highlnk SUBDIR += hilite SUBDIR += host-setup Added: head/sysutils/hid-tools/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/hid-tools/Makefile Sun Feb 14 23:07:31 2021 (r565272) @@ -0,0 +1,33 @@ +# Created by: Vladimir Kondratyev +# $FreeBSD$ + +PORTNAME= hid-tools +PORTVERSION= 0.2 +CATEGORIES= sysutils python +MASTER_SITES= https://gitlab.freedesktop.org/libevdev/${PORTNAME}/-/archive/${DISTVERSION}/ + +MAINTAINER= wulf@FreeBSD.org +COMMENT= Python scripts to manipulate HID data + +LICENSE= GPLv2 + +IGNORE_FreeBSD_11= Is missing a hidraw(4) driver + +RUN_DEPENDS_FreeBSD_12= iichid>=0.0.6:sysutils/iichid +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click>=0:devel/py-click@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}parse>=0:textproc/py-parse@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyudev>=0:devel/py-pyudev@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}yaml>=0:devel/py-yaml@${PY_FLAVOR} \ + ${RUN_DEPENDS_${OPSYS}_${OSREL:R}} + +USES= python:3.6+ shebangfix tar:bz2 +USE_PYTHON= autoplist distutils + +OPTIONS_DEFINE= MANPAGES +OPTIONS_DEFAULT= MANPAGES + +MANPAGES_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pypandoc>=0:textproc/py-pypandoc@${PY_FLAVOR} + +NO_ARCH= yes + +.include Added: head/sysutils/hid-tools/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/hid-tools/distinfo Sun Feb 14 23:07:31 2021 (r565272) @@ -0,0 +1,3 @@ +TIMESTAMP = 1612900435 +SHA256 (hid-tools-0.2.tar.bz2) = c0a963f75699d69740ecd10549f3ffe32d620703f3090c5e3c55b9af1d469786 +SIZE (hid-tools-0.2.tar.bz2) = 78530 Added: head/sysutils/hid-tools/files/patch-hidtools_hidraw.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/hid-tools/files/patch-hidtools_hidraw.py Sun Feb 14 23:07:31 2021 (r565272) @@ -0,0 +1,58 @@ +Fix ioctl(2) definitions to match and + +--- hidtools/hidraw.py.orig 2019-03-29 01:29:29 UTC ++++ hidtools/hidraw.py +@@ -36,13 +36,14 @@ def _ioctl(fd, EVIOC, code, return_type, buf=None): + + + # extracted from +-_IOC_WRITE = 1 ++_IOC_VOID = 1 + _IOC_READ = 2 ++_IOC_WRITE = 4 + + _IOC_NRBITS = 8 + _IOC_TYPEBITS = 8 +-_IOC_SIZEBITS = 14 +-_IOC_DIRBITS = 2 ++_IOC_SIZEBITS = 13 ++_IOC_DIRBITS = 3 + + _IOC_NRSHIFT = 0 + _IOC_TYPESHIFT = _IOC_NRSHIFT + _IOC_NRBITS +@@ -74,7 +75,7 @@ def _IOW(type, nr, size): + + # define HIDIOCGRDESCSIZE _IOR('H', 0x01, int) + def _IOC_HIDIOCGRDESCSIZE(none, len): +- return _IOR('H', 0x01, len) ++ return _IOR('U', 30, len) + + + def _HIDIOCGRDESCSIZE(fd): +@@ -85,7 +86,7 @@ def _HIDIOCGRDESCSIZE(fd): + + # define HIDIOCGRDESC _IOR('H', 0x02, struct hidraw_report_descriptor) + def _IOC_HIDIOCGRDESC(none, len): +- return _IOR('H', 0x02, len) ++ return _IOC(_IOC_VOID, 'U', 31, 0) + + + def _HIDIOCGRDESC(fd, size): +@@ -102,7 +103,7 @@ def _HIDIOCGRDESC(fd, size): + + # define HIDIOCGRAWINFO _IOR('H', 0x03, struct hidraw_devinfo) + def _IOC_HIDIOCGRAWINFO(none, len): +- return _IOR('H', 0x03, len) ++ return _IOR('U', 32, len) + + + def _HIDIOCGRAWINFO(fd): +@@ -113,7 +114,7 @@ def _HIDIOCGRAWINFO(fd): + + # define HIDIOCGRAWNAME(len) _IOC(_IOC_READ, 'H', 0x04, len) + def _IOC_HIDIOCGRAWNAME(none, len): +- return _IOC(_IOC_READ, 'H', 0x04, len) ++ return _IOC(_IOC_READ, 'U', 33, len) + + + def _HIDIOCGRAWNAME(fd): Added: head/sysutils/hid-tools/files/patch-man_hid-decode.md ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/hid-tools/files/patch-man_hid-decode.md Sun Feb 14 23:07:31 2021 (r565272) @@ -0,0 +1,25 @@ +Remove unsupported sysfs-dependent parts from manpage. + +--- man/hid-decode.md.orig 2019-03-29 01:29:29 UTC ++++ man/hid-decode.md +@@ -11,8 +11,6 @@ SYNOPSIS + + **hid-decode** */dev/hidraw0* + +-**hid-decode** */dev/input/event0* +- + **hid-decode** *hid-recording* + + DESCRIPTION +@@ -20,11 +18,8 @@ DESCRIPTION + **hid-decode** decodes one or more HID report descriptors into into + human-readable format. It supports a variety of inputs: + +-- a binary format as exported in sysfs, e.g. +- _/sys/class/input/event0/device/device/report_descriptor_ + - the format exported by **hid-recorder(1)** + - a _/dev/hidraw_ node +-- a _/dev/input/event_ node + + The format is deduced based on the input arguments. Undetected formats are + assumed to be binary files. Added: head/sysutils/hid-tools/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/hid-tools/pkg-descr Sun Feb 14 23:07:31 2021 (r565272) @@ -0,0 +1,16 @@ +hid-tools is a set of tools to interact with the kernel's HID subsystem. + +hid-recorder prints the HID Report Descriptor from a /dev/hidraw device +node and any HID reports coming from that device. The output format can +be used with hid-replay for debugging. + +hid-replay takes the output from hid-recorder and replays it through a +virtual HID device that looks exactly like the one recorded. + +hid-decode takes a HID Report Descriptor and prints a human-readable +version of it. hid-decode takes binary report descriptors, strings of +bytes, and other formats. + +hid-tools requires hidraw.ko driver to be loaded in to kernel. + +WWW: https://gitlab.freedesktop.org/libevdev/hid-tools