From owner-dev-commits-ports-all@freebsd.org Wed Jul 14 10:43:50 2021 Return-Path: Delivered-To: dev-commits-ports-all@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 600E564834B for ; Wed, 14 Jul 2021 10:43:50 +0000 (UTC) (envelope-from decke@bluelife.at) Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [IPv6:2a00:1450:4864:20::12f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4GPvHp1Rjkz4X4l for ; Wed, 14 Jul 2021 10:43:49 +0000 (UTC) (envelope-from decke@bluelife.at) Received: by mail-lf1-x12f.google.com with SMTP id a12so2818120lfb.7 for ; Wed, 14 Jul 2021 03:43:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bluelife.at; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hC0gofbe1+F8RpL+TirAnyRoLtG0ryBY3zgVmMBNkNM=; b=WZY07qSFC00/2Ry2bTLcYLvXJHjF40rAP6w0DziAmSWHVBPJBCwPHJ1xUC2LWgOiVi pfTlBeXTV/VilYajFAJa62Q4MsugbJXe0mCzjbd8dFFzhxDorQkevA8jwQvM14oce6n3 4+zQzMLa8q7RrWSu6qrXKEhuA4QTrtQ3EKt8Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=hC0gofbe1+F8RpL+TirAnyRoLtG0ryBY3zgVmMBNkNM=; b=hmObXsMiQRv2OxlIi2WiLMNnsTSMrWSpt338aRgxE9wLTMJC9++irV/IQ/24zkVi8S IHdJrd4f6ge1VwLmJzWFP7ZwkmiMhHwfAl7ifkrfJSymYCJJXDjUkWTeh8MGMaIwm+sR x+9M5jWgL2rOoAx8U4hjBbyORlXh79OhaYd+3+8Jqddk9lE0yxBZZusS/Z74Z74DjwGk 0/EHLA5/XkfoLTjEVN0ddCB4D6CF8pjVaFnZYfl+nnaKeMBKtItSZRyQBZsTxQ2Apm5K AO/bG9CQADOapmsct5wxmUv2vThPJ05GIed4VH8aIGZJgYwq3P796vn5Q2VM6rvI6FXs LAbA== X-Gm-Message-State: AOAM530QXQn1/ax2Q4t3bwm3TLabVfLP9TUs9ilpIqkSBPZtURZZrS0O S8BSMYXxV5Dwb9HtkzvNbEJn5MmW14yz4sJD/HTWFg== X-Google-Smtp-Source: ABdhPJxpzjrorIVyw1T//1xZ5WsCYAHmUWUCrhpXIC2E20QVCqB/G+SgJH6R29Xk3kZKM2ezD7UKFs/a05+rVzzyS9A= X-Received: by 2002:ac2:5990:: with SMTP id w16mr7890213lfn.44.1626259427699; Wed, 14 Jul 2021 03:43:47 -0700 (PDT) MIME-Version: 1.0 References: <202107141037.16EAbQPk045725@gitrepo.freebsd.org> In-Reply-To: <202107141037.16EAbQPk045725@gitrepo.freebsd.org> From: =?UTF-8?Q?Bernhard_Fr=C3=B6hlich?= Date: Wed, 14 Jul 2021 12:43:31 +0200 Message-ID: Subject: Re: git: 5529844e1456 - main - net/remarkable-devd: new port -- Devd hotplug rules for Remarkable Tablet To: "Tobias C. Berner" Cc: ports-committers@freebsd.org, dev-commits-ports-all@freebsd.org, dev-commits-ports-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 4GPvHp1Rjkz4X4l X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: dev-commits-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the ports repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Jul 2021 10:43:50 -0000 On Wed, Jul 14, 2021 at 12:37 PM Tobias C. Berner wrote: > > The branch main has been updated by tcberner: > > URL: https://cgit.FreeBSD.org/ports/commit/?id=5529844e1456e2692b756ca5368e215cea0e0a17 > > commit 5529844e1456e2692b756ca5368e215cea0e0a17 > Author: Trenton Schulz > AuthorDate: 2021-07-14 10:32:37 +0000 > Commit: Tobias C. Berner > CommitDate: 2021-07-14 10:36:53 +0000 > > net/remarkable-devd: new port -- Devd hotplug rules for Remarkable Tablet > > Automatic IP address when connecting a Remarkable Tablet to USB. This > makes it possible to access your Remarkable tablet via ssh or its USB > web interface when it's enabled. > > PR: 256754 > --- > net/Makefile | 1 + > net/remarkable-devd/Makefile | 27 +++++++++++++++++ > net/remarkable-devd/files/pkg-message.in | 14 +++++++++ > net/remarkable-devd/files/remarkable.conf.in | 7 +++++ > net/remarkable-devd/files/remarkable.in | 45 ++++++++++++++++++++++++++++ > net/remarkable-devd/pkg-descr | 3 ++ > 6 files changed, 97 insertions(+) > > diff --git a/net/Makefile b/net/Makefile > index c4dcdcab2497..8c6f797407df 100644 > --- a/net/Makefile > +++ b/net/Makefile > @@ -1179,6 +1179,7 @@ > SUBDIR += recvnet > SUBDIR += redir > SUBDIR += relayd > + SUBDIR += remarkable-devd > SUBDIR += remmina > SUBDIR += remotebox > SUBDIR += remotedesk > diff --git a/net/remarkable-devd/Makefile b/net/remarkable-devd/Makefile > new file mode 100644 > index 000000000000..bf533ed082be > --- /dev/null > +++ b/net/remarkable-devd/Makefile > @@ -0,0 +1,27 @@ > +# Created by: Trenton Schulz > + > +PORTNAME= remarkable-devd > +PORTVERSION= 1.0 > +CATEGORIES= net > +MASTER_SITES= # > +DISTFILES= # > + > +MAINTAINER= trueos@norwegianrockcat.com > +COMMENT= Devd hotplug rules for Remarkable Tablet > + > +LICENSE= BSD2CLAUSE > + > +USE_RC_SUBR= remarkable > + > +NO_BUILD= yes > + > +SUB_FILES= pkg-message \ > + remarkable.conf > + > +PLIST_FILES= etc/devd/remarkable.conf > + > +do-install: > + ${INSTALL_DATA} ${WRKDIR}/remarkable.conf ${STAGEDIR}${PREFIX}/etc/devd/remarkable.conf > + ${INSTALL_SCRIPT} ${WRKDIR}/remarkable ${STAGEDIR}${PREFIX}/etc/rc.d/remarkable > + > +.include > diff --git a/net/remarkable-devd/files/pkg-message.in b/net/remarkable-devd/files/pkg-message.in > new file mode 100644 > index 000000000000..fd0cd91764e5 > --- /dev/null > +++ b/net/remarkable-devd/files/pkg-message.in > @@ -0,0 +1,14 @@ > +[ > +{ type: install > + message: < +A devd rule and rc script has been added to get an address from the > +remarkable tablet when it is connected. This is disabled by default. > +Set remarkable_enable=YES if you want this to happen automatically. Devd must also be restarted. > + > +# sysrc remarkable_enable=YES > +# service devd restart > + > +For details, see %%PREFIX%%/etc/devd/remarkable.conf and %%PREFIX%%/etc/rc.d/remarkable > +EOM > +} > +] > diff --git a/net/remarkable-devd/files/remarkable.conf.in b/net/remarkable-devd/files/remarkable.conf.in > new file mode 100644 > index 000000000000..66efd43b8dc2 > --- /dev/null > +++ b/net/remarkable-devd/files/remarkable.conf.in > @@ -0,0 +1,7 @@ > +# Connect the Remarkable 1 device and get the IP address > +attach 100 { > + device-name "urndis.+"; > + match "vendor" "0x04b3"; > + match "product" "0x4010"; > + action "%%PREFIX%%/etc/rc.d/remarkable start $device-name"; > +}; > diff --git a/net/remarkable-devd/files/remarkable.in b/net/remarkable-devd/files/remarkable.in > new file mode 100644 > index 000000000000..5033009ea16a > --- /dev/null > +++ b/net/remarkable-devd/files/remarkable.in > @@ -0,0 +1,45 @@ > +#!/bin/sh > +# > +# PROVIDE: webcamd That should be remarkable not webcamd. > +# REQUIRE: FILESYSTEMS netif dbus > +# BEFORE: devd > +# KEYWORD: shutdown > + > +. /etc/rc.subr > + > +name=remarkable > +rcvar=remarkable_enable > +load_rc_config $name > + > +devd_device=${2} > +start_cmd="${name}_start" > + > +remarkable_start_devd() > +{ > + # Find the USB Ethernet for the device > + # We first grab the total number of interfaces in > + # the case when all the interfaces are USB Ethernet > + local total_ifs=`sysctl -n net.link.generic.system.ifcount` > + local i=0 > + for i in $(seq 0 $total_ifs) > + do > + ueparent=`sysctl -n net.ue.$i.%parent` > + if [ $? -eq 0 ] && [ $ueparent = $devd_device ]; then > + /sbin/dhclient ue$i > + return > + fi > + done > + echo "Couldn't find a remarkable tablet." > +} > + > +remarkable_start() > +{ > + if [ "$devd_device" ]; then > + remarkable_start_devd > + else > + echo "Plug in your Remarkable to connect to it" > + fi > +} > + > +run_rc_command "$1" > + > diff --git a/net/remarkable-devd/pkg-descr b/net/remarkable-devd/pkg-descr > new file mode 100644 > index 000000000000..1196e4e754b6 > --- /dev/null > +++ b/net/remarkable-devd/pkg-descr > @@ -0,0 +1,3 @@ > +Automatic IP address when connecting a Remarkable Tablet to USB. This > +makes it possible to access your Remarkable tablet via ssh or its USB > +web interface when it's enabled.