git: 9c24afe97b74 - main - sysutils/sispmctl: New port to manage EnerGenie and Gembird USB controlled power strips

From: Rodrigo Osorio <rodrigo_at_FreeBSD.org>
Date: Sat, 29 Jul 2023 19:47:33 UTC
The branch main has been updated by rodrigo:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9c24afe97b74ec69d38e29e6c3685bbfaa85faf7

commit 9c24afe97b74ec69d38e29e6c3685bbfaa85faf7
Author:     Rodrigo Osorio <rodrigo@FreeBSD.org>
AuthorDate: 2023-07-29 19:12:31 +0000
Commit:     Rodrigo Osorio <rodrigo@FreeBSD.org>
CommitDate: 2023-07-29 19:34:28 +0000

    sysutils/sispmctl: New port to manage EnerGenie and Gembird USB controlled power strips
    
    SIS-PM Control is an application for managing USB controlled powerstrips produced by
    GEMBIRD LTD. Newer devices are sold under the Energenie brand.
    The following devices are supported:
     * Gembird MSIS-PM
     * Gembird Silver Shield SIS-PM (aka Revolt Intelliplug)
     * Gembird Silver Shield SIS-PMS
     * Energenie EG-PM
     * Energenie EG-PMS
     * Energenie EG-PM2
     * Energenie EG-PMS2
---
 sysutils/Makefile                                 |  1 +
 sysutils/sispmctl/Makefile                        | 24 +++++++++++
 sysutils/sispmctl/distinfo                        |  3 ++
 sysutils/sispmctl/files/patch-man_sispmctl.1      | 11 +++++
 sysutils/sispmctl/files/patch-src_main.c          | 10 +++++
 sysutils/sispmctl/files/patch-src_web1_index.html | 11 +++++
 sysutils/sispmctl/files/patch-src_web2_index.html | 11 +++++
 sysutils/sispmctl/files/patch-src_web3_index.html | 11 +++++
 sysutils/sispmctl/pkg-descr                       | 12 ++++++
 sysutils/sispmctl/pkg-plist                       | 49 +++++++++++++++++++++++
 10 files changed, 143 insertions(+)

diff --git a/sysutils/Makefile b/sysutils/Makefile
index bf089415afaf..69ae6de4b425 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -1349,6 +1349,7 @@
     SUBDIR += signon-plugin-oauth2
     SUBDIR += signon-qt5
     SUBDIR += signon-ui
+    SUBDIR += sispmctl
     SUBDIR += skopeo
     SUBDIR += slack
     SUBDIR += sleuthkit
diff --git a/sysutils/sispmctl/Makefile b/sysutils/sispmctl/Makefile
new file mode 100644
index 000000000000..1106b548fbc5
--- /dev/null
+++ b/sysutils/sispmctl/Makefile
@@ -0,0 +1,24 @@
+PORTNAME=	sispmctl
+PORTVERSION=	4.11
+CATEGORIES=	sysutils
+MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION}
+
+MAINTAINER=	rodrigo@FreeBSD.org
+COMMENT=	SIS-PM Control for Linux
+WWW=		https://sispmctl.sourceforge.net/
+
+LICENSE=	GPLv2
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+USES=		autoreconf dos2unix libtool pkgconfig
+DOS2UNIX_FILES=	src/web2/index.html src/web3/index.html
+USE_LDCONFIG=	yes
+
+GNU_CONFIGURE=	yes
+CONFIGURE_ENV=	LIBUSB_CFLAGS="-I/usr/include" \
+		LIBUSB_LIBS="-L/usr/lib -lusb"
+
+post-install:
+	${LN} -s httpd/skin2 ${STAGEDIR}${PREFIX}/share/doc/sispmctl/skin
+
+.include <bsd.port.mk>
diff --git a/sysutils/sispmctl/distinfo b/sysutils/sispmctl/distinfo
new file mode 100644
index 000000000000..13fd8476cce2
--- /dev/null
+++ b/sysutils/sispmctl/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1690650388
+SHA256 (sispmctl-4.11.tar.gz) = 74b94a3710046b15070c7311f0cacb81554c86b4227719cc2733cb96c7052578
+SIZE (sispmctl-4.11.tar.gz) = 461804
diff --git a/sysutils/sispmctl/files/patch-man_sispmctl.1 b/sysutils/sispmctl/files/patch-man_sispmctl.1
new file mode 100644
index 000000000000..79fba28d9099
--- /dev/null
+++ b/sysutils/sispmctl/files/patch-man_sispmctl.1
@@ -0,0 +1,11 @@
+--- man/sispmctl.1.orig	2023-07-06 20:13:43 UTC
++++ man/sispmctl.1
+@@ -1,7 +1,7 @@
+ .\" Process this file with
+ .\" groff -man -Tascii foo.1
+ .\"
+-.TH sispmctl 1 "Jul 2023" Linux "User Manuals"
++.TH sispmctl 1 "Jul 2023" FreeBSD "User Manuals"
+ 
+ .SH NAME
+ sispmctl \- manage EnerGenie and Gembird USB controlled power strips
diff --git a/sysutils/sispmctl/files/patch-src_main.c b/sysutils/sispmctl/files/patch-src_main.c
new file mode 100644
index 000000000000..60163cf86293
--- /dev/null
+++ b/sysutils/sispmctl/files/patch-src_main.c
@@ -0,0 +1,10 @@
+--- src/main.c.orig	2023-07-29 17:18:10 UTC
++++ src/main.c
+@@ -36,6 +36,7 @@
+ #include <syslog.h>
+ #include <time.h>
+ #include <usb.h>
++#include <unistd.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ 
diff --git a/sysutils/sispmctl/files/patch-src_web1_index.html b/sysutils/sispmctl/files/patch-src_web1_index.html
new file mode 100644
index 000000000000..5384d39495eb
--- /dev/null
+++ b/sysutils/sispmctl/files/patch-src_web1_index.html
@@ -0,0 +1,11 @@
+--- src/web1/index.html.orig	2022-04-02 11:21:46 UTC
++++ src/web1/index.html
+@@ -17,7 +17,7 @@
+                 <DIV STYLE="height: 70px;">&nbsp;</DIV>
+                 <DIV ALIGN="center">
+                 <TABLE WIDTH="60%" CELLSPACING=0>
+-                  <TR><TH COLSPAN=3><H1>SiS PM Control for Linux $$version()$$</H1></TH><TH WIDTH="100">
++                  <TR><TH COLSPAN=3><H1>SiS PM Control for FreeBSD $$version()$$</H1></TH><TH WIDTH="100">
+                     <IMG SRC="logo.png" ALT="sispm_http logo"></TH></TR>
+                   <TR><TD COLSPAN=4>&nbsp;</TD></TR>
+                   <TR><TD>&nbsp;</TD>
diff --git a/sysutils/sispmctl/files/patch-src_web2_index.html b/sysutils/sispmctl/files/patch-src_web2_index.html
new file mode 100644
index 000000000000..d7a13f7e048a
--- /dev/null
+++ b/sysutils/sispmctl/files/patch-src_web2_index.html
@@ -0,0 +1,11 @@
+--- src/web2/index.html.orig	2022-04-02 11:21:46 UTC
++++ src/web2/index.html
+@@ -8,7 +8,7 @@
+ <!DOCTYPE html>
+ <html lang="en">
+ <head>
+-<title>SiS PM Control for Linux $$version()$$</title>
++<title>SiS PM Control for FreeBSD $$version()$$</title>
+ <link rel="stylesheet" type="text/css" href="style.css">
+ <meta charset="UTF-8">
+ </head>
diff --git a/sysutils/sispmctl/files/patch-src_web3_index.html b/sysutils/sispmctl/files/patch-src_web3_index.html
new file mode 100644
index 000000000000..bed574347a5e
--- /dev/null
+++ b/sysutils/sispmctl/files/patch-src_web3_index.html
@@ -0,0 +1,11 @@
+--- src/web3/index.html.orig	2022-04-02 11:21:46 UTC
++++ src/web3/index.html
+@@ -8,7 +8,7 @@
+ <!DOCTYPE html>
+ <html lang="en">
+ <head>
+-<title>SiS PM Control for Linux $$version()$$</title>
++<title>SiS PM Control for FreeBSD $$version()$$</title>
+ <link rel="stylesheet" type="text/css" href="style.css">
+ <meta charset="UTF-8">
+ </head>
diff --git a/sysutils/sispmctl/pkg-descr b/sysutils/sispmctl/pkg-descr
new file mode 100644
index 000000000000..ec53e45e84a0
--- /dev/null
+++ b/sysutils/sispmctl/pkg-descr
@@ -0,0 +1,12 @@
+sispmctl is an application for managing USB controlled
+powerstrips produced by GEMBIRD LTD.
+Newer devices are sold under the Energenie brand.
+
+The following devices are supported:
+    * Gembird MSIS-PM
+    * Gembird Silver Shield SIS-PM (aka Revolt Intelliplug)
+    * Gembird Silver Shield SIS-PMS
+    * Energenie EG-PM
+    * Energenie EG-PMS
+    * Energenie EG-PM2
+    * Energenie EG-PMS2
diff --git a/sysutils/sispmctl/pkg-plist b/sysutils/sispmctl/pkg-plist
new file mode 100644
index 000000000000..a6cd0bf49b68
--- /dev/null
+++ b/sysutils/sispmctl/pkg-plist
@@ -0,0 +1,49 @@
+bin/sispmctl
+lib/libsispmctl.a
+lib/libsispmctl.so
+lib/libsispmctl.so.0
+lib/libsispmctl.so.0.2.2
+man/man1/sispmctl.1.gz
+share/doc/sispmctl/COPYING
+share/doc/sispmctl/README.md
+share/doc/sispmctl/artwork/sispmctl.png
+share/doc/sispmctl/artwork/sispmctl.svg
+share/doc/sispmctl/examples/60-sispmctl.rules
+share/doc/sispmctl/examples/passwordsetup.sh
+share/doc/sispmctl/examples/sispmctl.service
+share/doc/sispmctl/httpd/skin1/index.html
+share/doc/sispmctl/httpd/skin1/logo.png
+share/doc/sispmctl/httpd/skin1/off1.html
+share/doc/sispmctl/httpd/skin1/off2.html
+share/doc/sispmctl/httpd/skin1/off3.html
+share/doc/sispmctl/httpd/skin1/off4.html
+share/doc/sispmctl/httpd/skin1/on1.html
+share/doc/sispmctl/httpd/skin1/on2.html
+share/doc/sispmctl/httpd/skin1/on3.html
+share/doc/sispmctl/httpd/skin1/on4.html
+share/doc/sispmctl/httpd/skin1/status0.png
+share/doc/sispmctl/httpd/skin1/status1.png
+share/doc/sispmctl/httpd/skin1/style.css
+share/doc/sispmctl/httpd/skin2/index.html
+share/doc/sispmctl/httpd/skin2/logo.svg
+share/doc/sispmctl/httpd/skin2/off1.html
+share/doc/sispmctl/httpd/skin2/off2.html
+share/doc/sispmctl/httpd/skin2/off3.html
+share/doc/sispmctl/httpd/skin2/off4.html
+share/doc/sispmctl/httpd/skin2/on1.html
+share/doc/sispmctl/httpd/skin2/on2.html
+share/doc/sispmctl/httpd/skin2/on3.html
+share/doc/sispmctl/httpd/skin2/on4.html
+share/doc/sispmctl/httpd/skin2/style.css
+share/doc/sispmctl/httpd/skin3/index.html
+share/doc/sispmctl/httpd/skin3/logo.svg
+share/doc/sispmctl/httpd/skin3/off1.html
+share/doc/sispmctl/httpd/skin3/off2.html
+share/doc/sispmctl/httpd/skin3/off3.html
+share/doc/sispmctl/httpd/skin3/off4.html
+share/doc/sispmctl/httpd/skin3/on1.html
+share/doc/sispmctl/httpd/skin3/on2.html
+share/doc/sispmctl/httpd/skin3/on3.html
+share/doc/sispmctl/httpd/skin3/on4.html
+share/doc/sispmctl/httpd/skin3/style.css
+share/doc/sispmctl/skin