commit:     2e7aa9eed8f8a1bb10838fc6e11cc41e5884d270
Author:     Hans Fredrik Nordhaug <hansfn <AT> gmail <DOT> com>
AuthorDate: Fri Feb 26 21:17:24 2021 +0000
Commit:     Hans Fredrik Nordhaug <hansfn <AT> gmail <DOT> com>
CommitDate: Fri Feb 26 21:17:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2e7aa9ee

net-misc/can-utils: New package 2020.12.0

Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Hans Fredrik Nordhaug <hansfn <AT> gmail.com>

 net-misc/can-utils/Manifest                    |  2 ++
 net-misc/can-utils/can-utils-2020.02.04.ebuild | 49 ++++++++++++++++++++++++++
 net-misc/can-utils/can-utils-2020.12.0.ebuild  | 49 ++++++++++++++++++++++++++
 net-misc/can-utils/can-utils-9999-r3.ebuild    | 49 ++++++++++++++++++++++++++
 net-misc/can-utils/files/slcan.service         | 19 ++++++++++
 net-misc/can-utils/files/slcan.service.conf    | 18 ++++++++++
 net-misc/can-utils/files/slcand.confd          | 18 ++++++++++
 net-misc/can-utils/files/slcand.initd          | 39 ++++++++++++++++++++
 net-misc/can-utils/metadata.xml                |  8 +++++
 9 files changed, 251 insertions(+)

diff --git a/net-misc/can-utils/Manifest b/net-misc/can-utils/Manifest
new file mode 100644
index 00000000..d6ff0f22
--- /dev/null
+++ b/net-misc/can-utils/Manifest
@@ -0,0 +1,2 @@
+DIST can-utils-2020.02.04.tar.gz 121866 BLAKE2B 
64a9e0dbc2e65ef01b6709fc608daecce53592f98c002a46b15a282fff33f52d1d7b34d22ed85f1e2a2eb8a7be6e5ce69a85ba4e2ba19f251994f5022697f474
 SHA512 
5f12a84b82564da5a47e6dc906bf26f0e56db77ce367b5b72a2820cf18447d78a355d0173c678e33dc0e4cc07ef3a12b3a84d6b016c7ee0b1ac5a7f10daee1c8
+DIST can-utils-2020.12.0.tar.gz 132010 BLAKE2B 
626c0b88973c0579728869013f48ec7de4bcd94dd98ed4ae8349a0b71ec2eb9892d267501ff7af58b34ac528f2d6e733aad795582bcc96b03d20ae0710986ea8
 SHA512 
b9d92b7734611deaf445708aabf4f46f7cf3ad88f46618fbae6821d308b2950da014420b194792e4d2458f396bd85f200a8d10112c10191a98624073b8502c19

diff --git a/net-misc/can-utils/can-utils-2020.02.04.ebuild 
b/net-misc/can-utils/can-utils-2020.02.04.ebuild
new file mode 100644
index 00000000..eff9dabb
--- /dev/null
+++ b/net-misc/can-utils/can-utils-2020.02.04.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd
+
+DESCRIPTION="CAN userspace utilities and tools"
+HOMEPAGE="https://github.com/linux-can/";
+SRC_URI="https://github.com/linux-can/can-utils/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd"
+
+DEPEND=""
+
+src_prepare() {
+       default
+
+       eautoreconf
+}
+
+# Default src_install + newconfd and newinitd
+src_install() {
+
+       emake DESTDIR="${D}" install
+
+       if ! declare -p DOCS >/dev/null 2>&1 ; then
+               local d
+               for d in README* ChangeLog AUTHORS NEWS TODO CHANGES THANKS 
BUGS \
+                               FAQ CREDITS CHANGELOG ; do
+                       [[ -s "${d}" ]] && dodoc "${d}"
+               done
+       elif declare -p DOCS | grep -q "^declare -a " ; then
+               dodoc "${DOCS[@]}"
+       else
+               dodoc ${DOCS}
+       fi
+
+       if use systemd ; then
+               systemd_dounit "${FILESDIR}/slcan.service"
+               systemd_install_serviced "${FILESDIR}/slcan.service.conf"
+       else
+               newconfd "${FILESDIR}/slcand.confd" slcand
+               newinitd "${FILESDIR}/slcand.initd" slcand
+       fi
+}

diff --git a/net-misc/can-utils/can-utils-2020.12.0.ebuild 
b/net-misc/can-utils/can-utils-2020.12.0.ebuild
new file mode 100644
index 00000000..eff9dabb
--- /dev/null
+++ b/net-misc/can-utils/can-utils-2020.12.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd
+
+DESCRIPTION="CAN userspace utilities and tools"
+HOMEPAGE="https://github.com/linux-can/";
+SRC_URI="https://github.com/linux-can/can-utils/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd"
+
+DEPEND=""
+
+src_prepare() {
+       default
+
+       eautoreconf
+}
+
+# Default src_install + newconfd and newinitd
+src_install() {
+
+       emake DESTDIR="${D}" install
+
+       if ! declare -p DOCS >/dev/null 2>&1 ; then
+               local d
+               for d in README* ChangeLog AUTHORS NEWS TODO CHANGES THANKS 
BUGS \
+                               FAQ CREDITS CHANGELOG ; do
+                       [[ -s "${d}" ]] && dodoc "${d}"
+               done
+       elif declare -p DOCS | grep -q "^declare -a " ; then
+               dodoc "${DOCS[@]}"
+       else
+               dodoc ${DOCS}
+       fi
+
+       if use systemd ; then
+               systemd_dounit "${FILESDIR}/slcan.service"
+               systemd_install_serviced "${FILESDIR}/slcan.service.conf"
+       else
+               newconfd "${FILESDIR}/slcand.confd" slcand
+               newinitd "${FILESDIR}/slcand.initd" slcand
+       fi
+}

diff --git a/net-misc/can-utils/can-utils-9999-r3.ebuild 
b/net-misc/can-utils/can-utils-9999-r3.ebuild
new file mode 100644
index 00000000..1af5ac07
--- /dev/null
+++ b/net-misc/can-utils/can-utils-9999-r3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_REPO_URI="https://github.com/linux-can/${PN}.git";
+EGIT_BRANCH="master"
+
+inherit autotools git-r3 systemd
+
+DESCRIPTION="CAN userspace utilities and tools"
+HOMEPAGE="https://github.com/linux-can/";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd"
+
+DEPEND=""
+
+src_prepare() {
+       eautoreconf
+}
+
+# Default src_install + newconfd and newinitd
+src_install() {
+
+       emake DESTDIR="${D}" install
+
+       if ! declare -p DOCS >/dev/null 2>&1 ; then
+               local d
+               for d in README* ChangeLog AUTHORS NEWS TODO CHANGES THANKS 
BUGS \
+                               FAQ CREDITS CHANGELOG ; do
+                       [[ -s "${d}" ]] && dodoc "${d}"
+               done
+       elif declare -p DOCS | grep -q "^declare -a " ; then
+               dodoc "${DOCS[@]}"
+       else
+               dodoc ${DOCS}
+       fi
+
+       if use systemd ; then
+               systemd_dounit "${FILESDIR}/slcan.service"
+               systemd_install_serviced "${FILESDIR}/slcan.service.conf"
+       else
+               newconfd "${FILESDIR}/slcand.confd" slcand
+               newinitd "${FILESDIR}/slcand.initd" slcand
+       fi
+}

diff --git a/net-misc/can-utils/files/slcan.service 
b/net-misc/can-utils/files/slcan.service
new file mode 100644
index 00000000..01e4b3d7
--- /dev/null
+++ b/net-misc/can-utils/files/slcan.service
@@ -0,0 +1,19 @@
+[Unit]
+Description=Userspace daemon for serial line CAN interface driver SLCAN
+
+[Service]
+Environment=can_speed=S5
+Environment=tty_baud=460800
+Environment=tty_device=ttyUSB0
+Environment=can_device=can0
+
+
+ExecStartPre=/sbin/modprobe slcan
+ExecStartPre=/bin/stty -F /dev/${tty_device} ${tty_baud} line 0 cs8 -onlcr 
-echo raw min 100 time 2
+ExecStartPre=/bin/sh -c 'echo -e -n "C\rF\r${can_speed}\rO\r" > 
/dev/${tty_device}'
+
+ExecStart=/usr/bin/slcand -F ${tty_device} ${can_device}
+ExecStartPost=/bin/sleep 1
+ExecStartPost=/bin/ip link set can0 txqueuelen 1000 up
+
+ExecStopPost=/sbin/modprobe -r slcan

diff --git a/net-misc/can-utils/files/slcan.service.conf 
b/net-misc/can-utils/files/slcan.service.conf
new file mode 100644
index 00000000..c29e8b83
--- /dev/null
+++ b/net-misc/can-utils/files/slcan.service.conf
@@ -0,0 +1,18 @@
+# This file contains the configuration for the slcan daemon
+
+
+
+# The `stty' command includes support for speeds of 57600, 115200,
+# 230400, 460800, 500000, 576000, 921600, 1000000, 1152000, 1500000,
+# 2000000, 2500000, 3000000, 3500000, or 4000000
+
+# 921600 baud for S6
+# 460800 baud for S5
+
+# Case sensitive speed setting
+
+[Service]
+Environment=can_speed=S5
+Environment=tty_baud=460800
+Environment=tty_device=ttyUSB0
+Environment=can_device=can0

diff --git a/net-misc/can-utils/files/slcand.confd 
b/net-misc/can-utils/files/slcand.confd
new file mode 100644
index 00000000..725fcd10
--- /dev/null
+++ b/net-misc/can-utils/files/slcand.confd
@@ -0,0 +1,18 @@
+# /etc/conf.d/slcand
+# This file contains the configuration for the slcan daemon
+
+
+
+# The `stty' command includes support for speeds of 57600, 115200,
+# 230400, 460800, 500000, 576000, 921600, 1000000, 1152000, 1500000,
+# 2000000, 2500000, 3000000, 3500000, or 4000000
+
+# 921600 baud for S6
+# 460800 baud for S5
+
+# Case sensitive speed setting
+
+can_speed="S5"
+tty_baud="460800"
+tty_device="ttyUSB0"
+can_device="can0"

diff --git a/net-misc/can-utils/files/slcand.initd 
b/net-misc/can-utils/files/slcand.initd
new file mode 100644
index 00000000..ffe08a9b
--- /dev/null
+++ b/net-misc/can-utils/files/slcand.initd
@@ -0,0 +1,39 @@
+#!/sbin/runscript
+# Copyright 2013 Brunvoll AS
+
+
+start() {
+
+       if [ -z "${can_speed}" -o -z "${tty_baud}" -o -z "${tty_device}" -o -z 
"${can_device}" ]; then
+               eerror "CAN speed, CAN device, tty_baud or tty_device not set"
+               return 1
+       fi
+
+       if ! grep -q slcan /proc/modules; then
+               einfo "Loading module slcan"
+               modprobe slcan || return 1
+       fi
+
+       ebegin "Creating can0 at speed ${can_speed} on device ${tty_device}"    
        
+       einfo "Setting baudrate of ${tty_device} to ${tty_baud}"
+       stty -F /dev/${tty_device} ${tty_baud} line 0 cs8 -onlcr -echo raw min 
100 time 2
+       sleep 1
+       einfo "Set bitrate of slcan on ${tty_device} to ${can_speed}: "
+       echo -e -n "C\rF\r${can_speed}\rO\r" > /dev/${tty_device}
+       sleep 1
+       einfo "Starting slcand"
+       start-stop-daemon --start --background --make-pidfile \
+                                         --pidfile /var/run/slcand.pid \
+                                         --exec /usr/bin/slcand -- 
${tty_device} ${can_device}
+       sleep 1
+       ifconfig ${can_device} up
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping slcand"
+       start-stop-daemon --stop --quiet --pidfile /var/run/slcand.pid
+       sleep 1
+       rmmod slcan
+       eend $?
+}

diff --git a/net-misc/can-utils/metadata.xml b/net-misc/can-utils/metadata.xml
new file mode 100644
index 00000000..1c142c04
--- /dev/null
+++ b/net-misc/can-utils/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+    <maintainer type="person">
+        <email>han...@gmail.com</email>
+        <name>Hans Fredrik Nordhaug</name>
+    </maintainer>
+</pkgmetadata>

Reply via email to