Jim Klimov
2023-11-09 d102d57f3de9998bf8dc7d524fdb6652dd070e40
Update sysutils/nut to v2.8.1

* rename nut-common pkg to nut/common for consistency
* move SMF services to directory name matching the service name pattern
* move SMF service manifests to /lib/svc/... from /var/svc/...
* deliver PyNUT module as a single-version $(COMPONENT_FMRI)/libs/pynut
* package "driver" actions for USB/ugen

Signed-off-by: Jim Klimov <jim@jimklimov.com>
11 files deleted
17 files added
11 files modified
7339 ■■■■■ changed files
components/sysutils/nut/Makefile 136 ●●●● patch | view | raw | blame | history
components/sysutils/nut/files/nut-client.xml 131 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/files/nut.xml 126 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/files/svc-nut 45 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/files/svc-nut-client 49 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/manifests/sample-manifest.p5m 243 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-augeas.p5m 19 ●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-bins.p5m 99 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-cgi.p5m 10 ●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-clients.p5m 75 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-common.p5m 27 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-devtools.p5m 6 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-ipmi.p5m 46 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-modbus.p5m 56 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-neon.p5m 46 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-powerman.p5m 46 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-serial.p5m 118 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-snmp.p5m 46 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-software.p5m 56 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers-usb.p5m 62 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-drivers.p5m 125 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-libs-pynut.p5m 34 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-libs.p5m 34 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-monitor-gui-common.p5m 78 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-monitor-gui-py3qt5.p5m 41 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-monitor-gui.p5m 30 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut-server.p5m 118 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/nut.p5m 12 ●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/01-nut-configure-withDocsAuto.patch 71 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/02-nut-configure-netsnmp-arch.patch 53 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/03-nut-configure-gdlib-arch.patch 52 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/04-nut-WITH_MANS.patch 526 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/05-nut-quiesce-systemd.patch 23 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/06-nut-augeas-inst-dir.patch 97 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/07-man.patch 4528 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/08-upsmon-txt.patch 13 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/09-libusb-no-sfw.patch 14 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/patches/10-nut-2155.patch 15 ●●●●● patch | view | raw | blame | history
components/sysutils/nut/pkg5 33 ●●●● patch | view | raw | blame | history
components/sysutils/nut/Makefile
@@ -10,23 +10,24 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
BUILD_BITS= 64
# NUT 2.8.0+ is diligently tested to benefit from parallel builds and succeed
USE_PARALLEL_BUILD=    yes
include ../../../make-rules/shared-macros.mk
COMPONENT_NAME=    nut
COMPONENT_VERSION=    2.7.4
COMPONENT_REVISION=    5
COMPONENT_VERSION=    2.8.1
COMPONENT_SUMMARY=    Network UPS Tools (NUT)
COMPONENT_DESCRIPTION=    Network UPS Tools (NUT) is a versatile power-device monitoring toolkit to facilitate safe shutdowns
COMPONENT_SRC=    $(COMPONENT_NAME)-$(COMPONENT_VERSION)
COMPONENT_ARCHIVE=    $(COMPONENT_SRC).tar.gz
COMPONENT_ARCHIVE_HASH=    \
  sha256:d580915fdf7090655c1c7c98eb116b61952553f06f0039b1f93c9f5a13e2d36b
  sha256:7da48ee23b1f0d8d72560bb0af84f5c5ae4dbe35452b84cb49840132e47f099c
COMPONENT_ARCHIVE_URL=    \
  https://github.com/networkupstools/$(COMPONENT_NAME)/archive/v$(COMPONENT_VERSION).tar.gz
  https://github.com/networkupstools/$(COMPONENT_NAME)/releases/download/v$(COMPONENT_VERSION)/$(COMPONENT_SRC).tar.gz
COMPONENT_PROJECT_URL=    https://networkupstools.org
COMPONENT_FMRI=    system/management/$(COMPONENT_NAME)
COMPONENT_CLASSIFICATION=    System/Administration and Configuration
@@ -38,16 +39,15 @@
CXXFLAGS += $(CXXFLAGS.$(BITS))
CFLAGS   += $(CFLAGS.$(BITS))
# Document generation can fail with -jN
COMPONENT_BUILD_ARGS=
COMPONENT_PREP_ACTION =    ( cd $(SOURCE_DIR) && ./autogen.sh )
# Drop *.8 man pages (we patch to regenerate them into *.1m - see patches/07-man.patch)
# Fix up upsmon.txt encoding that might have gone wrong into the 2.8.1 release tarball
COMPONENT_PREP_ACTION =    ( cd $(SOURCE_DIR) && ./autogen.sh && cd docs/man && rm -f *.8 && { dos2unix upsmon.txt > upsmon.txt.tmp && mv -f upsmon.txt.tmp upsmon.txt; }  )
COMPONENT_PRE_CONFIGURE_ACTION =    ( $(CLONEY) $(SOURCE_DIR) $(@D) )
# We deliver only 64-bit binaries
CONFIGURE_BINDIR.64 = $(USRBINDIR)
CONFIGURE_SBINDIR.64 = $(USRSBINDIR)
CONFIGURE_BINDIR.64 =    $(USRBINDIR)
CONFIGURE_SBINDIR.64 =    $(USRSBINDIR)
CONFIGURE_ENV     +=    LDFLAGS="$(LDFLAGS.64)"
@@ -56,6 +56,15 @@
CONFIGURE_OPTIONS +=    --disable-static
CONFIGURE_OPTIONS +=    --enable-shared
CONFIGURE_OPTIONS +=    --with-solaris-smf=yes
CONFIGURE_OPTIONS +=    --with-solaris-init=no
CONFIGURE_OPTIONS +=    --with-solaris-pkg-svr4=no
CONFIGURE_OPTIONS +=    --with-solaris-pkg-ips=no
CONFIGURE_OPTIONS +=    --with-systemdsystemunitdir=no
CONFIGURE_OPTIONS +=    --with-systemdshutdowndir=no
CONFIGURE_OPTIONS +=    --with-systemdtmpfilesdir=no
CONFIGURE_OPTIONS +=    --with-user=nut
CONFIGURE_OPTIONS +=    --with-group=nut
CONFIGURE_OPTIONS +=    --sysconfdir=/etc/nut
@@ -63,26 +72,40 @@
CONFIGURE_OPTIONS +=    --datarootdir=/usr/share/nut
CONFIGURE_OPTIONS +=    --with-hotplug-dir=no
CONFIGURE_OPTIONS +=    --with-udev-dir=no
#  --with-statepath=PATH   path for ups state files (${STATEPATH}, typically
#                          /var/state/ups)
#  --with-altpidpath=PATH  path for NUT driver/upsd .pid files not running as
#                          root (<statepath>)
#  --with-pidpath=PATH     Path for root-owned .pid files (${PIDPATH},
#                          typically /var/run)
#  --with-powerdownflag=PATH
#                          default path for upsmon POWERDOWNFLAG file
#                          (${POWERDOWNFLAG}, typically /etc/killpower)
CONFIGURE_OPTIONS +=    --with-pidpath=/var/run/nut
CONFIGURE_OPTIONS +=    --with-altpidpath=/var/run/nut
CONFIGURE_OPTIONS +=    --with-powerdownflag=/var/run/nut/killpower
CONFIGURE_OPTIONS +=    --with-statepath=/var/db/nut
CONFIGURE_OPTIONS +=    --with-systemdsystemunitdir=no
CONFIGURE_OPTIONS +=    --with-dev
CONFIGURE_OPTIONS +=    --with-libltdl
CONFIGURE_OPTIONS +=    --with-ssl
CONFIGURE_OPTIONS +=    --with-openssl
CONFIGURE_OPTIONS +=    --with-gd-includes=-I/usr/include/gd2
CONFIGURE_OPTIONS +=    --libexecdir=/usr/lib/nut/bin
CONFIGURE_OPTIONS +=    --with-drvpath=/usr/lib/nut/bin
CONFIGURE_OPTIONS +=    --with-cgipath=/usr/lib/nut/cgi-bin
CONFIGURE_OPTIONS +=    --with-gd-libs=-L/usr/lib/$(MACH64)
# No separate toggle for this yet
#CONFIGURE_OPTIONS +=    --with-nut-scanner=yes
CONFIGURE_OPTIONS +=    --with-nut-scanner=yes
# Minimize guesswork: these are features we can and do build and deliver in
# package manifest, so the build host must have relevant packages installed
CONFIGURE_OPTIONS +=    --with-serial=yes
CONFIGURE_OPTIONS +=    --with-usb=yes
#CONFIGURE_OPTIONS +=    --with-usb=yes
CONFIGURE_OPTIONS +=    --with-usb=libusb-1.0
CONFIGURE_OPTIONS +=    --with-modbus=yes
CONFIGURE_OPTIONS +=    --with-neon=yes
CONFIGURE_OPTIONS +=    --with-avahi=yes
CONFIGURE_OPTIONS +=    --with-powerman=yes
@@ -101,27 +124,98 @@
# Note: building the numerous documents of this projects is time-consuming
# and we only need one copy. Also, we don't ship "dblatex" (needed here for
# compiling PDFs) and probably don't require "html-chunked" chapters.
CONFIGURE_OPTIONS +=        --with-doc="man=yes"
CONFIGURE_OPTIONS +=    --with-doc="man=yes"
# NUT-Monitor GUI client
CONFIGURE_OPTIONS +=    --with-nut-monitor=yes
CONFIGURE_OPTIONS +=    --with-pynut=yes
CONFIGURE_OPTIONS +=    --with-python2=no
CONFIGURE_OPTIONS +=    --with-python=python$(PYTHON_VERSION)
# Be sure package is squeaky clean
CONFIGURE_OPTIONS +=    --enable-Werror --enable-warnings --enable-Wcolor
CONFIGURE_OPTIONS +=    --enable-keep_nut_report_feature
CONFIGURE_OPTIONS +=    --enable-silent-rules
# What do we run in case of `make check`?
CONFIGURE_OPTIONS +=    --enable-spellcheck
# NUT Integration Test suite, can take time and might fail due
# to environment (busy ports, congested hsots and timeouts):
#CONFIGURE_OPTIONS +=    --enable-check-NIT
# No CPPCHECK here yet:
CONFIGURE_OPTIONS +=    --disable-cppcheck
CONFIGURE_OPTIONS +=    $(CONFIGURE_OPTIONS.$(BITS))
# TOTHINK? variant.opensolaris.zone=global
$(BUILD_DIR)/nut-usb-driver.p5m.include: $(BUILD_DIR)/$(MACH64)/scripts/udev/nut-usbups.rules
    (echo "# NUT USB VID:PID pairs supported by some USB-capable driver"; \
     echo "# Parsed from $< during package build"; \
     echo "driver name=ugen \\" ; \
     grep -E 'ATTR.*idVendor.*idProduct' < "$<" | \
     $(GSED) 's/^.*ATTR{idVendor}=="0*\([a-fA-F0-9][a-fA-F0-9]*\)".*ATTR{idProduct}=="0*\([a-fA-F0-9][a-fA-F0-9]*\)".*$$/    alias="usb\1,\2.*" \\/' ; \
     echo '    perms="* 0664 root nut"' ; \
    ) > "$@"
# Inject into build chain, to patch .mogrified file used to create .mangled and beyond
$(BUILD_DIR)/.injected.nut-usb-driver.p5m.include: $(BUILD_DIR)/manifest-$(MACH)-nut-drivers-usb.mogrified $(BUILD_DIR)/nut-usb-driver.p5m.include
    cat "$(BUILD_DIR)/nut-usb-driver.p5m.include" >> "$(BUILD_DIR)/manifest-$(MACH)-nut-drivers-usb.mogrified"
    touch "$@"
$(BUILD_DIR)/manifest-$(MACH)-nut-drivers-usb.mangled: $(BUILD_DIR)/nut-usb-driver.p5m.include $(BUILD_DIR)/.injected.nut-usb-driver.p5m.include
# NUT-Monitor UI has two similar implementations, for py2gtk and py3qt5.
# The PyNUT.py (general binding) module is written to work with both 2.x
# and 3.x interpreters as the same source file (patched for shebang and
# installed to different vendor/site locations several times in practice).
# Fiddle with packaging:
# * move man1m pages to target directory (see also patches/07-man.patch)
# * move python stuff to vendor-packages
# * make sure full python program name is in the shebang
#   (and note we can not use ...\1${PYVER} because it is
#    also numbers and SED gets confused about group \12 or so)
# * pre-compile PYC files
# * apply a little hack to comment away the import which
#   confuses pkgdepend (it looks for "import" lines and
#   disregards "try/except" around it)
COMPONENT_POST_INSTALL_ACTION += \
    $(MKDIR) $(PROTOUSRSHAREMANDIR)/man1m \
        && $(MV) $(PROTOUSRSHAREMANDIR)/man1/*.1m $(PROTOUSRSHAREMANDIR)/man1m/ \
        || { echo "FAILED to fix up man1m" >&2 ; exit 1; } ; \
    for PYVER in $(PYTHON_VERSIONS) ; do \
        $(MKDIR) "$(PROTOUSRLIBDIR)/python$${PYVER}/vendor-packages" \
            && $(MV) "$(PROTOUSRLIBDIR)/python$${PYVER}/site-packages/"* "$(PROTOUSRLIBDIR)/python$${PYVER}/vendor-packages/" \
            && find "$(PROTOUSRLIBDIR)/python$${PYVER}/vendor-packages/" -name '*.py' | while read F ; do \
                $(GSED) '/^\(\#\!.*\/python\)$$/ s/$$/'"$${PYVER}"'/' -i "$$F" || exit ; \
            done \
        && python$${PYVER} -m compileall "$(PROTOUSRLIBDIR)/python$${PYVER}/vendor-packages" || exit ; \
        case "$${PYVER}" in \
        2.*) python$${PYVER} -c "import pygtk;pygtk.require('2.0');import pynotify" >/dev/null || { \
                echo "Neutering import of pynotify in NUT-Monitor-py2gtk2 for this build with python$${PYVER}" >&2 ; \
                $(GSED) -i "$(PROTOUSRSHAREDIR)/nut/nut-monitor/app/NUT-Monitor-py2gtk2" \
                    -e 's,\(\s\)\(import pynotify\),\1return; \#\#\#NOT_HERE_\2,' || exit ; \
            } ; \
        esac ; \
    done;
# Manually added dependencies:
REQUIRED_PACKAGES += text/asciidoc
REQUIRED_PACKAGES += library/augeas-tools
# Auto-generated dependencies
PYTHON_REQUIRED_PACKAGES += runtime/python
REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG)
REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG)
REQUIRED_PACKAGES += library/gd
REQUIRED_PACKAGES += library/libmodbus
REQUIRED_PACKAGES += library/libtool/libltdl
REQUIRED_PACKAGES += library/libusb-1
REQUIRED_PACKAGES += library/neon
REQUIRED_PACKAGES += library/security/openssl
REQUIRED_PACKAGES += library/python/pyqt5
REQUIRED_PACKAGES += library/security/openssl-31
REQUIRED_PACKAGES += shell/ksh93
REQUIRED_PACKAGES += SUNWcs
REQUIRED_PACKAGES += system/library
REQUIRED_PACKAGES += system/library/math
REQUIRED_PACKAGES += system/library/usb/libusb
REQUIRED_PACKAGES += system/management/freeipmi
#REQUIRED_PACKAGES += system/management/nut/libs
REQUIRED_PACKAGES += system/management/powerman
REQUIRED_PACKAGES += system/management/snmp/net-snmp
components/sysutils/nut/files/nut-client.xml
File was deleted
components/sysutils/nut/files/nut.xml
File was deleted
components/sysutils/nut/files/svc-nut
File was deleted
components/sysutils/nut/files/svc-nut-client
File was deleted
components/sysutils/nut/manifests/sample-manifest.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2022 <contributor>
# Copyright 2023 <contributor>
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -32,6 +33,7 @@
file path=etc/nut/upsset.conf.sample
file path=etc/nut/upsstats-single.html.sample
file path=etc/nut/upsstats.html.sample
file path=usr/bin/NUT-Monitor
file path=usr/bin/nut-scanner
file path=usr/bin/upsc
file path=usr/bin/upscmd
@@ -44,24 +46,33 @@
file path=usr/html/nut-banner.png
file path=usr/include/nut-scan.h
file path=usr/include/nutclient.h
file path=usr/include/nutclientmem.h
file path=usr/include/nutscan-device.h
file path=usr/include/nutscan-init.h
file path=usr/include/nutscan-ip.h
file path=usr/include/nutscan-serial.h
file path=usr/include/parseconf.h
file path=usr/include/upsclient.h
link path=usr/lib/$(MACH64)/libnutclient.so target=libnutclient.so.0.0.0
link path=usr/lib/$(MACH64)/libnutclient.so.0 target=libnutclient.so.0.0.0
file path=usr/lib/$(MACH64)/libnutclient.so.0.0.0
link path=usr/lib/$(MACH64)/libnutscan.so target=libnutscan.so.1.0.0
link path=usr/lib/$(MACH64)/libnutscan.so.1 target=libnutscan.so.1.0.0
file path=usr/lib/$(MACH64)/libnutscan.so.1.0.0
link path=usr/lib/$(MACH64)/libupsclient.so target=libupsclient.so.4.0.0
link path=usr/lib/$(MACH64)/libupsclient.so.4 target=libupsclient.so.4.0.0
file path=usr/lib/$(MACH64)/libupsclient.so.4.0.0
link path=usr/lib/$(MACH64)/libnutclient.so target=libnutclient.so.2.0.2
link path=usr/lib/$(MACH64)/libnutclient.so.2 target=libnutclient.so.2.0.2
file path=usr/lib/$(MACH64)/libnutclient.so.2.0.2
link path=usr/lib/$(MACH64)/libnutclientstub.so target=libnutclientstub.so.1.0.1
link path=usr/lib/$(MACH64)/libnutclientstub.so.1 \
    target=libnutclientstub.so.1.0.1
file path=usr/lib/$(MACH64)/libnutclientstub.so.1.0.1
link path=usr/lib/$(MACH64)/libnutscan.so target=libnutscan.so.2.0.2
link path=usr/lib/$(MACH64)/libnutscan.so.2 target=libnutscan.so.2.0.2
file path=usr/lib/$(MACH64)/libnutscan.so.2.0.2
link path=usr/lib/$(MACH64)/libupsclient.so target=libupsclient.so.6.0.1
link path=usr/lib/$(MACH64)/libupsclient.so.6 target=libupsclient.so.6.0.1
file path=usr/lib/$(MACH64)/libupsclient.so.6.0.1
file path=usr/lib/$(MACH64)/pkgconfig/libnutclient.pc
file path=usr/lib/$(MACH64)/pkgconfig/libnutclientstub.pc
file path=usr/lib/$(MACH64)/pkgconfig/libnutscan.pc
file path=usr/lib/$(MACH64)/pkgconfig/libupsclient.pc
file path=usr/lib/nut/bin/adelsystem_cbi
file path=usr/lib/nut/bin/al175
file path=usr/lib/nut/bin/apc_modbus
file path=usr/lib/nut/bin/apcsmart
file path=usr/lib/nut/bin/apcsmart-old
file path=usr/lib/nut/bin/apcupsd-ups
@@ -81,7 +92,9 @@
file path=usr/lib/nut/bin/etapro
file path=usr/lib/nut/bin/everups
file path=usr/lib/nut/bin/gamatronic
file path=usr/lib/nut/bin/generic_modbus
file path=usr/lib/nut/bin/genericups
file path=usr/lib/nut/bin/huawei-ups2000
file path=usr/lib/nut/bin/isbmex
file path=usr/lib/nut/bin/ivtscd
file path=usr/lib/nut/bin/liebert
@@ -91,13 +104,16 @@
file path=usr/lib/nut/bin/mge-shut
file path=usr/lib/nut/bin/mge-utalk
file path=usr/lib/nut/bin/microdowell
file path=usr/lib/nut/bin/microsol-apc
file path=usr/lib/nut/bin/netxml-ups
file path=usr/lib/nut/bin/nut-driver-enumerator.sh
file path=usr/lib/nut/bin/nut-ipmipsu
file path=usr/lib/nut/bin/nutdrv_atcl_usb
file path=usr/lib/nut/bin/nutdrv_qx
file path=usr/lib/nut/bin/oldmge-shut
file path=usr/lib/nut/bin/nutdrv_siemens-sitop
file path=usr/lib/nut/bin/oneac
file path=usr/lib/nut/bin/optiups
file path=usr/lib/nut/bin/phoenixcontact_modbus
file path=usr/lib/nut/bin/powercom
file path=usr/lib/nut/bin/powerman-pdu
file path=usr/lib/nut/bin/powerpanel
@@ -107,7 +123,10 @@
file path=usr/lib/nut/bin/riello_usb
file path=usr/lib/nut/bin/safenet
file path=usr/lib/nut/bin/skel
file path=usr/lib/nut/bin/sms_ser
file path=usr/lib/nut/bin/snmp-ups
file path=usr/lib/nut/bin/sockdebug
file path=usr/lib/nut/bin/socomec_jbus
file path=usr/lib/nut/bin/solis
file path=usr/lib/nut/bin/tripplite
file path=usr/lib/nut/bin/tripplite_usb
@@ -118,83 +137,98 @@
file path=usr/lib/nut/cgi-bin/upsimage.cgi
file path=usr/lib/nut/cgi-bin/upsset.cgi
file path=usr/lib/nut/cgi-bin/upsstats.cgi
file path=usr/lib/python$(PYVER)/vendor-packages/PyNUT.py
file path=usr/lib/python$(PYVER)/vendor-packages/test_nutclient.py
file path=usr/sbin/upsd
file path=usr/sbin/upsdrvctl
file path=usr/sbin/upsdrvsvcctl
file path=usr/sbin/upsmon
file path=usr/sbin/upssched
file path=usr/share/augeas/lenses/nuthostsconf.aug
file path=usr/share/augeas/lenses/nutnutconf.aug
file path=usr/share/augeas/lenses/nutupsconf.aug
file path=usr/share/augeas/lenses/nutupsdconf.aug
file path=usr/share/augeas/lenses/nutupsdusers.aug
file path=usr/share/augeas/lenses/nutupsmonconf.aug
file path=usr/share/augeas/lenses/nutupsschedconf.aug
file path=usr/share/augeas/lenses/nutupssetconf.aug
file path=usr/share/man/man1/al175.1m
file path=usr/share/man/man1/apcsmart-old.1m
file path=usr/share/man/man1/apcsmart.1m
file path=usr/share/man/man1/apcupsd-ups.1m
file path=usr/share/man/man1/bcmxcp.1m
file path=usr/share/man/man1/bcmxcp_usb.1m
file path=usr/share/man/man1/belkin.1m
file path=usr/share/man/man1/belkinunv.1m
file path=usr/share/man/man1/bestfcom.1m
file path=usr/share/man/man1/bestfortress.1m
file path=usr/share/man/man1/bestuferrups.1m
file path=usr/share/man/man1/bestups.1m
file path=usr/share/man/man1/blazer_ser.1m
file path=usr/share/man/man1/blazer_usb.1m
file path=usr/share/man/man1/clone.1m
file path=usr/share/man/man1/dummy-ups.1m
file path=usr/share/man/man1/etapro.1m
file path=usr/share/man/man1/everups.1m
file path=usr/share/man/man1/gamatronic.1m
file path=usr/share/man/man1/genericups.1m
file path=usr/share/man/man1/isbmex.1m
file path=usr/share/man/man1/ivtscd.1m
file path=usr/share/man/man1/liebert-esp2.1m
file path=usr/share/man/man1/liebert.1m
file path=usr/share/man/man1/masterguard.1m
file path=usr/share/man/man1/metasys.1m
file path=usr/share/man/man1/mge-shut.1m
file path=usr/share/man/man1/mge-utalk.1m
file path=usr/share/man/man1/microdowell.1m
file path=usr/share/man/man1/netxml-ups.1m
file path=usr/share/man/man1/nut-ipmipsu.1m
file path=usr/share/man/man1/nut-recorder.1m
file path=usr/share/man/man1/nut-scanner.1m
file path=usr/share/man/man1/nutdrv_atcl_usb.1m
file path=usr/share/man/man1/nutdrv_qx.1m
file path=usr/share/man/man1/nutupsdrv.1m
file path=usr/share/man/man1/oneac.1m
file path=usr/share/man/man1/optiups.1m
file path=usr/share/man/man1/powercom.1m
file path=usr/share/man/man1/powerman-pdu.1m
file path=usr/share/man/man1/powerpanel.1m
file path=usr/share/man/man1/rhino.1m
file path=usr/share/man/man1/richcomm_usb.1m
file path=usr/share/man/man1/riello_ser.1m
file path=usr/share/man/man1/riello_usb.1m
file path=usr/share/man/man1/safenet.1m
file path=usr/share/man/man1/snmp-ups.1m
file path=usr/share/man/man1/solis.1m
file path=usr/share/man/man1/tripplite.1m
file path=usr/share/man/man1/tripplite_usb.1m
file path=usr/share/man/man1/tripplitesu.1m
file path=usr/share/man/man1/upsc.1m
file path=usr/share/man/man1/upscmd.1m
file path=usr/share/man/man1/upscode2.1m
file path=usr/share/man/man1/upsd.1m
file path=usr/share/man/man1/upsdrvctl.1m
file path=usr/share/man/man1/upsimage.cgi.1m
file path=usr/share/man/man1/upslog.1m
file path=usr/share/man/man1/upsmon.1m
file path=usr/share/man/man1/upsrw.1m
file path=usr/share/man/man1/upssched.1m
file path=usr/share/man/man1/upsset.cgi.1m
file path=usr/share/man/man1/upsstats.cgi.1m
file path=usr/share/man/man1/usbhid-ups.1m
file path=usr/share/man/man1/victronups.1m
file path=usr/share/augeas/lenses/dist/nuthostsconf.aug
file path=usr/share/augeas/lenses/dist/nutnutconf.aug
file path=usr/share/augeas/lenses/dist/nutupsconf.aug
file path=usr/share/augeas/lenses/dist/nutupsdconf.aug
file path=usr/share/augeas/lenses/dist/nutupsdusers.aug
file path=usr/share/augeas/lenses/dist/nutupsmonconf.aug
file path=usr/share/augeas/lenses/dist/nutupsschedconf.aug
file path=usr/share/augeas/lenses/dist/nutupssetconf.aug
file path=usr/share/man/man1m/adelsystem_cbi.1m
file path=usr/share/man/man1m/al175.1m
file path=usr/share/man/man1m/apc_modbus.1m
file path=usr/share/man/man1m/apcsmart-old.1m
file path=usr/share/man/man1m/apcsmart.1m
file path=usr/share/man/man1m/apcupsd-ups.1m
file path=usr/share/man/man1m/bcmxcp.1m
file path=usr/share/man/man1m/bcmxcp_usb.1m
file path=usr/share/man/man1m/belkin.1m
file path=usr/share/man/man1m/belkinunv.1m
file path=usr/share/man/man1m/bestfcom.1m
file path=usr/share/man/man1m/bestfortress.1m
file path=usr/share/man/man1m/bestuferrups.1m
file path=usr/share/man/man1m/bestups.1m
file path=usr/share/man/man1m/blazer_ser.1m
file path=usr/share/man/man1m/blazer_usb.1m
file path=usr/share/man/man1m/clone.1m
file path=usr/share/man/man1m/dummy-ups.1m
file path=usr/share/man/man1m/etapro.1m
file path=usr/share/man/man1m/everups.1m
file path=usr/share/man/man1m/gamatronic.1m
file path=usr/share/man/man1m/generic_modbus.1m
file path=usr/share/man/man1m/genericups.1m
file path=usr/share/man/man1m/huawei-ups2000.1m
file path=usr/share/man/man1m/isbmex.1m
file path=usr/share/man/man1m/ivtscd.1m
file path=usr/share/man/man1m/liebert-esp2.1m
file path=usr/share/man/man1m/liebert.1m
file path=usr/share/man/man1m/masterguard.1m
file path=usr/share/man/man1m/metasys.1m
file path=usr/share/man/man1m/mge-shut.1m
file path=usr/share/man/man1m/mge-utalk.1m
file path=usr/share/man/man1m/microdowell.1m
file path=usr/share/man/man1m/microsol-apc.1m
file path=usr/share/man/man1m/netxml-ups.1m
file path=usr/share/man/man1m/nut-driver-enumerator.1m
file path=usr/share/man/man1m/nut-ipmipsu.1m
file path=usr/share/man/man1m/nut-recorder.1m
file path=usr/share/man/man1m/nut-scanner.1m
file path=usr/share/man/man1m/nutdrv_atcl_usb.1m
file path=usr/share/man/man1m/nutdrv_qx.1m
file path=usr/share/man/man1m/nutdrv_siemens_sitop.1m
file path=usr/share/man/man1m/nutupsdrv.1m
file path=usr/share/man/man1m/oneac.1m
file path=usr/share/man/man1m/optiups.1m
file path=usr/share/man/man1m/phoenixcontact_modbus.1m
file path=usr/share/man/man1m/powercom.1m
file path=usr/share/man/man1m/powerman-pdu.1m
file path=usr/share/man/man1m/powerpanel.1m
file path=usr/share/man/man1m/rhino.1m
file path=usr/share/man/man1m/richcomm_usb.1m
file path=usr/share/man/man1m/riello_ser.1m
file path=usr/share/man/man1m/riello_usb.1m
file path=usr/share/man/man1m/safenet.1m
file path=usr/share/man/man1m/sms_ser.1m
file path=usr/share/man/man1m/snmp-ups.1m
file path=usr/share/man/man1m/sockdebug.1m
file path=usr/share/man/man1m/socomec_jbus.1m
file path=usr/share/man/man1m/solis.1m
file path=usr/share/man/man1m/tripplite.1m
file path=usr/share/man/man1m/tripplite_usb.1m
file path=usr/share/man/man1m/tripplitesu.1m
file path=usr/share/man/man1m/upsc.1m
file path=usr/share/man/man1m/upscmd.1m
file path=usr/share/man/man1m/upscode2.1m
file path=usr/share/man/man1m/upsd.1m
file path=usr/share/man/man1m/upsdrvctl.1m
file path=usr/share/man/man1m/upsdrvsvcctl.1m
file path=usr/share/man/man1m/upsimage.cgi.1m
file path=usr/share/man/man1m/upslog.1m
file path=usr/share/man/man1m/upsmon.1m
file path=usr/share/man/man1m/upsrw.1m
file path=usr/share/man/man1m/upssched.1m
file path=usr/share/man/man1m/upsset.cgi.1m
file path=usr/share/man/man1m/upsstats.cgi.1m
file path=usr/share/man/man1m/usbhid-ups.1m
file path=usr/share/man/man1m/victronups.1m
file path=usr/share/man/man3/libnutclient.3
file path=usr/share/man/man3/libnutclient_commands.3
file path=usr/share/man/man3/libnutclient_devices.3
@@ -234,7 +268,10 @@
file path=usr/share/man/man3/nutscan_add_option_to_device.3
file path=usr/share/man/man3/nutscan_cidr_to_ip.3
file path=usr/share/man/man3/nutscan_display_parsable.3
file path=usr/share/man/man3/nutscan_display_sanity_check.3
file path=usr/share/man/man3/nutscan_display_sanity_check_serial.3
file path=usr/share/man/man3/nutscan_display_ups_conf.3
file path=usr/share/man/man3/nutscan_display_ups_conf_with_sanity_check.3
file path=usr/share/man/man3/nutscan_free_device.3
file path=usr/share/man/man3/nutscan_get_serial_ports_list.3
file path=usr/share/man/man3/nutscan_init.3
@@ -245,7 +282,7 @@
file path=usr/share/man/man3/nutscan_scan_nut.3
file path=usr/share/man/man3/nutscan_scan_snmp.3
file path=usr/share/man/man3/nutscan_scan_usb.3
file path=usr/share/man/man3/nutscan_scan_xml_http.3
file path=usr/share/man/man3/nutscan_scan_xml_http_range.3
file path=usr/share/man/man3/upscli_add_host_cert.3
file path=usr/share/man/man3/upscli_cleanup.3
file path=usr/share/man/man3/upscli_connect.3
@@ -256,7 +293,9 @@
file path=usr/share/man/man3/upscli_list_next.3
file path=usr/share/man/man3/upscli_list_start.3
file path=usr/share/man/man3/upscli_readline.3
file path=usr/share/man/man3/upscli_readline_timeout.3
file path=usr/share/man/man3/upscli_sendline.3
file path=usr/share/man/man3/upscli_sendline_timeout.3
file path=usr/share/man/man3/upscli_splitaddr.3
file path=usr/share/man/man3/upscli_splitname.3
file path=usr/share/man/man3/upscli_ssl.3
@@ -273,4 +312,38 @@
file path=usr/share/man/man5/upsset.conf.5
file path=usr/share/man/man5/upsstats.html.5
file path=usr/share/nut/cmdvartab
file path=usr/share/nut/config.nut_report_feature.log
file path=usr/share/nut/driver.list
file path=usr/share/nut/nut-monitor/README
file path=usr/share/nut/nut-monitor/app/NUT-Monitor
file path=usr/share/nut/nut-monitor/app/NUT-Monitor-py3qt5
file path=usr/share/nut/nut-monitor/app/README
file path=usr/share/nut/nut-monitor/app/icons/256x256/nut-monitor.png
file path=usr/share/nut/nut-monitor/app/icons/48x48/nut-monitor.png
file path=usr/share/nut/nut-monitor/app/icons/64x64/nut-monitor.png
file path=usr/share/nut/nut-monitor/app/icons/scalable/nut-monitor.svg
file path=usr/share/nut/nut-monitor/app/locale/fr/LC_MESSAGES/NUT-Monitor.mo
file path=usr/share/nut/nut-monitor/app/locale/it/LC_MESSAGES/NUT-Monitor.mo
file path=usr/share/nut/nut-monitor/app/locale/ru/LC_MESSAGES/NUT-Monitor.mo
file path=usr/share/nut/nut-monitor/app/nut-monitor-py3qt5.desktop
file path=usr/share/nut/nut-monitor/app/nut-monitor.appdata.xml
file path=usr/share/nut/nut-monitor/app/nut-monitor.desktop
file path=usr/share/nut/nut-monitor/app/pixmaps/on_battery.png
file path=usr/share/nut/nut-monitor/app/pixmaps/on_line.png
file path=usr/share/nut/nut-monitor/app/pixmaps/var-ro.png
file path=usr/share/nut/nut-monitor/app/pixmaps/var-rw.png
file path=usr/share/nut/nut-monitor/app/pixmaps/warning.png
file path=usr/share/nut/nut-monitor/app/screenshots/nut-monitor-1.png
file path=usr/share/nut/nut-monitor/app/screenshots/nut-monitor-2.png
file path=usr/share/nut/nut-monitor/app/screenshots/nut-monitor-3.png
file path=usr/share/nut/nut-monitor/app/ui/aboutdialog1.ui
file path=usr/share/nut/nut-monitor/app/ui/dialog1.ui
file path=usr/share/nut/nut-monitor/app/ui/dialog2.ui
file path=usr/share/nut/nut-monitor/app/ui/window1.ui
file path=usr/share/nut/solaris-smf/manifest/nut-driver-enumerator.xml
file path=usr/share/nut/solaris-smf/manifest/nut-driver.xml
file path=usr/share/nut/solaris-smf/manifest/nut-monitor.xml
file path=usr/share/nut/solaris-smf/manifest/nut-server.xml
file path=usr/share/nut/solaris-smf/manifest/nut.xml
file path=usr/share/nut/solaris-smf/method/svc-nut-monitor
file path=usr/share/nut/solaris-smf/method/svc-nut-server
components/sysutils/nut/nut-augeas.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/augeas@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT Augeas config-mgmt lenses"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -32,11 +33,11 @@
depend fmri=library/augeas-tools type=require
### Augeas configuration licenses for NUT
file path=usr/share/augeas/lenses/nuthostsconf.aug
file path=usr/share/augeas/lenses/nutnutconf.aug
file path=usr/share/augeas/lenses/nutupsconf.aug
file path=usr/share/augeas/lenses/nutupsdconf.aug
file path=usr/share/augeas/lenses/nutupsdusers.aug
file path=usr/share/augeas/lenses/nutupsmonconf.aug
file path=usr/share/augeas/lenses/nutupsschedconf.aug
file path=usr/share/augeas/lenses/nutupssetconf.aug
file path=usr/share/augeas/lenses/dist/nuthostsconf.aug
file path=usr/share/augeas/lenses/dist/nutnutconf.aug
file path=usr/share/augeas/lenses/dist/nutupsconf.aug
file path=usr/share/augeas/lenses/dist/nutupsdconf.aug
file path=usr/share/augeas/lenses/dist/nutupsdusers.aug
file path=usr/share/augeas/lenses/dist/nutupsmonconf.aug
file path=usr/share/augeas/lenses/dist/nutupsschedconf.aug
file path=usr/share/augeas/lenses/dist/nutupssetconf.aug
components/sysutils/nut/nut-bins.p5m
File was deleted
components/sysutils/nut/nut-cgi.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/cgi@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT CGI clients"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -25,15 +26,18 @@
<transform file path=usr/lib/nut/cgi-bin/.+ -> default mode 0555>
<transform dir path=usr/lib/nut/cgi-bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
depend fmri=$(COMPONENT_FMRI)-common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=library/security/openssl-31 type=require
### NUT CGI clients, require libgd
file path=usr/lib/nut/cgi-bin/upsimage.cgi
file path=usr/lib/nut/cgi-bin/upsset.cgi
file path=usr/lib/nut/cgi-bin/upsstats.cgi
file path=usr/share/man/man5/hosts.conf.5
file path=usr/share/man/man5/upsset.conf.5
file path=usr/share/man/man5/upsstats.html.5
components/sysutils/nut/nut-clients.p5m
New file
@@ -0,0 +1,75 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/clients@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT command-line and daemon clients"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
depend fmri=$(COMPONENT_FMRI)/common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=library/security/openssl-31 type=require
### NUT Command-line binaries and scripts (upsmon daemon, other clients)
file path=usr/bin/upsc
file path=usr/bin/upscmd
file path=usr/bin/upslog
file path=usr/bin/upsrw
file path=usr/sbin/upsmon
file path=usr/sbin/upssched
# Example notification script for UPSMON
file files/notifyme path=usr/lib/nut/bin/notifyme mode=0755 preserve=renamenew
# This is an example script for handling upssched
file path=usr/bin/upssched-cmd preserve=renamenew
# Services for monitoring client (generally does not have to be present
# and running on the same system as a data server and drivers).
file path=usr/share/nut/solaris-smf/method/svc-nut-monitor
file path=usr/share/nut/solaris-smf/manifest/nut-monitor.xml
link path=lib/svc/manifest/system/power/nut-monitor.xml \
    target=../../../../../usr/share/nut/solaris-smf/manifest/nut-monitor.xml \
    restart_fmri=svc:/system/manifest-import:default
file path=usr/share/man/man5/upsmon.conf.5
file path=usr/share/man/man5/upssched.conf.5
file path=usr/share/man/man1m/upsc.1m
file path=usr/share/man/man1m/upscmd.1m
file path=usr/share/man/man1m/upslog.1m
file path=usr/share/man/man1m/upsmon.1m
file path=usr/share/man/man1m/upsrw.1m
file path=usr/share/man/man1m/upssched.1m
# We deliver the sample configs as the ones to use,
# at worst they have no actual information inside and do nothing.
file etc/nut/upsmon.conf.sample path=etc/nut/upsmon.conf \
    group=nut owner=root mode=0640 preserve=true
file etc/nut/upssched.conf.sample path=etc/nut/upssched.conf \
    group=nut owner=root mode=0640 preserve=true
components/sysutils/nut/nut-common.p5m
@@ -18,11 +18,12 @@
#
# CDDL HEADER END
#
# Copyright (c) 2016 Jim Klimov. All rights reserved.
# Copyright (c) 2016-2023 Jim Klimov. All rights reserved.
#
set name=pkg.fmri \
    value=pkg:/$(COMPONENT_FMRI)-common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
    value=pkg:/$(COMPONENT_FMRI)/common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) (Base accounts and dirs)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
@@ -40,9 +41,31 @@
    group=nut group-list=root \
    password=NL username=nut uid=77
# NUT service names are grouped as "system/power/nut*", hence the directory:
dir group=sys owner=root mode=0755 path=lib/svc/manifest/system/power
# These directories can hold some content generated or downloaded at runtime
# and can become lost+found when you un/re-install the core packages (if these
# pkg actions are delivered there instead)
dir group=nut owner=root mode=0775 path=etc/nut
dir group=nut owner=root mode=0770 path=var/db/nut
file files/README-NUT-etc.txt path=etc/nut/README-NUT-etc.txt owner=root group=bin
# Configuration report with details of this build
file path=usr/share/nut/config.nut_report_feature.log
# NUT umbrella service
# Services for monitoring client (upsmon) generally does not have to be
# present and running on the same system as a data server and drivers.
# NUT should start generally after networking (if SNMP or NetXML is used,
# or if this box is a client to remote upsd). Ending is trickier - could
# want it to issue killpower late in shutdown, but have network to be able
# to do so (for remote UPSes). This can be tuned in XML manifest by user.
file path=usr/share/nut/solaris-smf/manifest/nut.xml
link path=lib/svc/manifest/system/power/nut.xml \
    target=../../../../../usr/share/nut/solaris-smf/manifest/nut.xml \
    restart_fmri=svc:/system/manifest-import:default
# Common to clients, server, drivers...
file scripts/misc/nut.bash_completion path=usr/share/bash-completion/completions/nut
file scripts/logrotate/nutlogd path=usr/share/nut/nutlogd.example
components/sysutils/nut/nut-devtools.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/devtools@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT DDL development helper tools"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -23,7 +24,8 @@
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
### NUT Tools for project development and debugging
file tools/nut-recorder.sh path=usr/bin/nut-recorder
components/sysutils/nut/nut-drivers-ipmi.p5m
New file
@@ -0,0 +1,46 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/ipmi@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT IPMI PSU drivers"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. Third-party dependencies
# for the actual drivers are guessed by package build from other
# information in the recipe.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/nut-ipmipsu
# Man pages
file path=usr/share/man/man1m/nut-ipmipsu.1m
components/sysutils/nut/nut-drivers-modbus.p5m
New file
@@ -0,0 +1,56 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/modbus@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT drivers communicating via ModBus (may be Serial/USB/TCP...)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. Third-party dependencies
# for the actual drivers are guessed by package build from other
# information in the recipe.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/adelsystem_cbi
file path=usr/lib/nut/bin/apc_modbus
file path=usr/lib/nut/bin/generic_modbus
file path=usr/lib/nut/bin/huawei-ups2000
file path=usr/lib/nut/bin/phoenixcontact_modbus
file path=usr/lib/nut/bin/socomec_jbus
# Man pages
file path=usr/share/man/man1m/adelsystem_cbi.1m
file path=usr/share/man/man1m/apc_modbus.1m
file path=usr/share/man/man1m/generic_modbus.1m
file path=usr/share/man/man1m/huawei-ups2000.1m
file path=usr/share/man/man1m/phoenixcontact_modbus.1m
file path=usr/share/man/man1m/socomec_jbus.1m
components/sysutils/nut/nut-drivers-neon.p5m
New file
@@ -0,0 +1,46 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/neon@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT drivers communicating via XML/HTTP protocol"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. Third-party dependencies
# for the actual drivers are guessed by package build from other
# information in the recipe.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/netxml-ups
# Man pages
file path=usr/share/man/man1m/netxml-ups.1m
components/sysutils/nut/nut-drivers-powerman.p5m
New file
@@ -0,0 +1,46 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/powerman@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT Powerman PDU drivers"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. Third-party dependencies
# for the actual drivers are guessed by package build from other
# information in the recipe.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/powerman-pdu
# Man pages
file path=usr/share/man/man1m/powerman-pdu.1m
components/sysutils/nut/nut-drivers-serial.p5m
New file
@@ -0,0 +1,118 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/serial@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT drivers communicating via Serial port"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. There are no specific third
# party dependencies for this driver set.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/al175
file path=usr/lib/nut/bin/apcsmart
file path=usr/lib/nut/bin/apcsmart-old
file path=usr/lib/nut/bin/bcmxcp
file path=usr/lib/nut/bin/belkin
file path=usr/lib/nut/bin/belkinunv
file path=usr/lib/nut/bin/bestfcom
file path=usr/lib/nut/bin/bestfortress
file path=usr/lib/nut/bin/bestuferrups
file path=usr/lib/nut/bin/bestups
file path=usr/lib/nut/bin/blazer_ser
file path=usr/lib/nut/bin/etapro
file path=usr/lib/nut/bin/everups
file path=usr/lib/nut/bin/gamatronic
file path=usr/lib/nut/bin/genericups
file path=usr/lib/nut/bin/isbmex
file path=usr/lib/nut/bin/ivtscd
file path=usr/lib/nut/bin/liebert
file path=usr/lib/nut/bin/liebert-esp2
file path=usr/lib/nut/bin/masterguard
file path=usr/lib/nut/bin/metasys
file path=usr/lib/nut/bin/mge-shut
file path=usr/lib/nut/bin/mge-utalk
file path=usr/lib/nut/bin/microdowell
file path=usr/lib/nut/bin/microsol-apc
file path=usr/lib/nut/bin/nutdrv_siemens-sitop
file path=usr/lib/nut/bin/oneac
file path=usr/lib/nut/bin/optiups
file path=usr/lib/nut/bin/powercom
file path=usr/lib/nut/bin/powerpanel
file path=usr/lib/nut/bin/rhino
file path=usr/lib/nut/bin/riello_ser
file path=usr/lib/nut/bin/safenet
file path=usr/lib/nut/bin/sms_ser
file path=usr/lib/nut/bin/solis
file path=usr/lib/nut/bin/tripplite
file path=usr/lib/nut/bin/tripplitesu
file path=usr/lib/nut/bin/upscode2
file path=usr/lib/nut/bin/victronups
# Man pages
file path=usr/share/man/man1m/al175.1m
file path=usr/share/man/man1m/apcsmart-old.1m
file path=usr/share/man/man1m/apcsmart.1m
file path=usr/share/man/man1m/bcmxcp.1m
file path=usr/share/man/man1m/belkin.1m
file path=usr/share/man/man1m/belkinunv.1m
file path=usr/share/man/man1m/bestfcom.1m
file path=usr/share/man/man1m/bestfortress.1m
file path=usr/share/man/man1m/bestuferrups.1m
file path=usr/share/man/man1m/bestups.1m
file path=usr/share/man/man1m/blazer_ser.1m
file path=usr/share/man/man1m/etapro.1m
file path=usr/share/man/man1m/everups.1m
file path=usr/share/man/man1m/gamatronic.1m
file path=usr/share/man/man1m/genericups.1m
file path=usr/share/man/man1m/isbmex.1m
file path=usr/share/man/man1m/ivtscd.1m
file path=usr/share/man/man1m/liebert-esp2.1m
file path=usr/share/man/man1m/liebert.1m
file path=usr/share/man/man1m/masterguard.1m
file path=usr/share/man/man1m/metasys.1m
file path=usr/share/man/man1m/mge-shut.1m
file path=usr/share/man/man1m/mge-utalk.1m
file path=usr/share/man/man1m/microdowell.1m
file path=usr/share/man/man1m/oneac.1m
file path=usr/share/man/man1m/optiups.1m
file path=usr/share/man/man1m/powercom.1m
file path=usr/share/man/man1m/powerpanel.1m
file path=usr/share/man/man1m/rhino.1m
file path=usr/share/man/man1m/riello_ser.1m
file path=usr/share/man/man1m/safenet.1m
file path=usr/share/man/man1m/solis.1m
file path=usr/share/man/man1m/tripplite.1m
file path=usr/share/man/man1m/tripplitesu.1m
file path=usr/share/man/man1m/upscode2.1m
file path=usr/share/man/man1m/victronups.1m
components/sysutils/nut/nut-drivers-snmp.p5m
New file
@@ -0,0 +1,46 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/snmp@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT drivers communicating via SNMP protocol"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. Third-party dependencies
# for the actual drivers are guessed by package build from other
# information in the recipe.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/snmp-ups
# Man pages
file path=usr/share/man/man1m/snmp-ups.1m
components/sysutils/nut/nut-drivers-software.p5m
New file
@@ -0,0 +1,56 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/software@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT software drivers (relays, emulators)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers.
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=library/security/openssl-31 type=require
# Actual drivers
file path=usr/lib/nut/bin/apcupsd-ups
file path=usr/lib/nut/bin/clone
file path=usr/lib/nut/bin/clone-outlet
file path=usr/lib/nut/bin/dummy-ups
# Sample data for dummy-ups
file data/epdu-managed.dev \
    path=usr/share/nut/etc-samples/epdu-managed.dev.dummy-ups.sample
file data/evolution500.seq \
    path=usr/share/nut/etc-samples/evolution500.seq.dummy-ups.sample
# Man pages
file path=usr/share/man/man1m/apcupsd-ups.1m
file path=usr/share/man/man1m/clone.1m
# no clone-outlet.1m (nor source .txt) as of nut-v2.8.1
file path=usr/share/man/man1m/dummy-ups.1m
components/sysutils/nut/nut-drivers-usb.p5m
New file
@@ -0,0 +1,62 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers/usb@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups NUT drivers communicating via USB port"
# Also drivers that talk both serial and usb - so require libusb
# But not modbus ones which (may) require it intermediately
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/sbin/(.+) -> default mode 0555>
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
# The server package also includes some baseline tools, services
# and configuration files for drivers. Third-party dependencies
# for the actual drivers are guessed by package build from other
# information in the recipe.
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# Actual drivers
file path=usr/lib/nut/bin/bcmxcp_usb
file path=usr/lib/nut/bin/blazer_usb
file path=usr/lib/nut/bin/nutdrv_atcl_usb
file path=usr/lib/nut/bin/nutdrv_qx
file path=usr/lib/nut/bin/richcomm_usb
file path=usr/lib/nut/bin/riello_usb
file path=usr/lib/nut/bin/tripplite_usb
file path=usr/lib/nut/bin/usbhid-ups
# Man pages
file path=usr/share/man/man1m/bcmxcp_usb.1m
file path=usr/share/man/man1m/blazer_usb.1m
file path=usr/share/man/man1m/nutdrv_atcl_usb.1m
file path=usr/share/man/man1m/nutdrv_qx.1m
file path=usr/share/man/man1m/richcomm_usb.1m
file path=usr/share/man/man1m/riello_usb.1m
file path=usr/share/man/man1m/tripplite_usb.1m
file path=usr/share/man/man1m/usbhid-ups.1m
components/sysutils/nut/nut-drivers.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/drivers@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups all types of NUT drivers"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -22,117 +23,11 @@
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1/%<1> >
dir path=usr/lib/nut/bin group=bin
file path=usr/lib/nut/bin/al175
file path=usr/lib/nut/bin/apcsmart
file path=usr/lib/nut/bin/apcsmart-old
file path=usr/lib/nut/bin/apcupsd-ups
file path=usr/lib/nut/bin/bcmxcp
file path=usr/lib/nut/bin/bcmxcp_usb
file path=usr/lib/nut/bin/belkin
file path=usr/lib/nut/bin/belkinunv
file path=usr/lib/nut/bin/bestfcom
file path=usr/lib/nut/bin/bestfortress
file path=usr/lib/nut/bin/bestuferrups
file path=usr/lib/nut/bin/bestups
file path=usr/lib/nut/bin/blazer_ser
file path=usr/lib/nut/bin/blazer_usb
file path=usr/lib/nut/bin/clone
file path=usr/lib/nut/bin/clone-outlet
file path=usr/lib/nut/bin/dummy-ups
file path=usr/lib/nut/bin/etapro
file path=usr/lib/nut/bin/everups
file path=usr/lib/nut/bin/gamatronic
file path=usr/lib/nut/bin/genericups
file path=usr/lib/nut/bin/isbmex
file path=usr/lib/nut/bin/ivtscd
file path=usr/lib/nut/bin/liebert
file path=usr/lib/nut/bin/liebert-esp2
file path=usr/lib/nut/bin/masterguard
file path=usr/lib/nut/bin/metasys
file path=usr/lib/nut/bin/mge-shut
file path=usr/lib/nut/bin/mge-utalk
file path=usr/lib/nut/bin/microdowell
file path=usr/lib/nut/bin/netxml-ups
file path=usr/lib/nut/bin/nut-ipmipsu
file path=usr/lib/nut/bin/nutdrv_atcl_usb
file path=usr/lib/nut/bin/nutdrv_qx
file path=usr/lib/nut/bin/oldmge-shut
file path=usr/lib/nut/bin/oneac
file path=usr/lib/nut/bin/optiups
file path=usr/lib/nut/bin/powercom
file path=usr/lib/nut/bin/powerman-pdu
file path=usr/lib/nut/bin/powerpanel
file path=usr/lib/nut/bin/rhino
file path=usr/lib/nut/bin/richcomm_usb
file path=usr/lib/nut/bin/riello_ser
file path=usr/lib/nut/bin/riello_usb
file path=usr/lib/nut/bin/safenet
file path=usr/lib/nut/bin/snmp-ups
file path=usr/lib/nut/bin/solis
file path=usr/lib/nut/bin/tripplite
file path=usr/lib/nut/bin/tripplite_usb
file path=usr/lib/nut/bin/tripplitesu
file path=usr/lib/nut/bin/upscode2
file path=usr/lib/nut/bin/usbhid-ups
file path=usr/lib/nut/bin/victronups
file data/epdu-managed.dev \
    path=usr/share/nut/etc-samples/epdu-managed.dev.dummy-ups.sample
file data/evolution500.seq \
    path=usr/share/nut/etc-samples/evolution500.seq.dummy-ups.sample
file path=usr/share/man/man1m/al175.1m
file path=usr/share/man/man1m/apcsmart-old.1m
file path=usr/share/man/man1m/apcsmart.1m
file path=usr/share/man/man1m/apcupsd-ups.1m
file path=usr/share/man/man1m/bcmxcp.1m
file path=usr/share/man/man1m/bcmxcp_usb.1m
file path=usr/share/man/man1m/belkin.1m
file path=usr/share/man/man1m/belkinunv.1m
file path=usr/share/man/man1m/bestfcom.1m
file path=usr/share/man/man1m/bestfortress.1m
file path=usr/share/man/man1m/bestuferrups.1m
file path=usr/share/man/man1m/bestups.1m
file path=usr/share/man/man1m/blazer_ser.1m
file path=usr/share/man/man1m/blazer_usb.1m
file path=usr/share/man/man1m/clone.1m
file path=usr/share/man/man1m/dummy-ups.1m
file path=usr/share/man/man1m/etapro.1m
file path=usr/share/man/man1m/everups.1m
file path=usr/share/man/man1m/gamatronic.1m
file path=usr/share/man/man1m/genericups.1m
file path=usr/share/man/man1m/isbmex.1m
file path=usr/share/man/man1m/ivtscd.1m
file path=usr/share/man/man1m/liebert-esp2.1m
file path=usr/share/man/man1m/liebert.1m
file path=usr/share/man/man1m/masterguard.1m
file path=usr/share/man/man1m/metasys.1m
file path=usr/share/man/man1m/mge-shut.1m
file path=usr/share/man/man1m/mge-utalk.1m
file path=usr/share/man/man1m/microdowell.1m
file path=usr/share/man/man1m/netxml-ups.1m
file path=usr/share/man/man1m/nut-ipmipsu.1m
file path=usr/share/man/man1m/nutdrv_atcl_usb.1m
file path=usr/share/man/man1m/nutdrv_qx.1m
file path=usr/share/man/man1m/nutupsdrv.1m
file path=usr/share/man/man1m/oneac.1m
file path=usr/share/man/man1m/optiups.1m
file path=usr/share/man/man1m/powercom.1m
file path=usr/share/man/man1m/powerman-pdu.1m
file path=usr/share/man/man1m/powerpanel.1m
file path=usr/share/man/man1m/rhino.1m
file path=usr/share/man/man1m/richcomm_usb.1m
file path=usr/share/man/man1m/riello_ser.1m
file path=usr/share/man/man1m/riello_usb.1m
file path=usr/share/man/man1m/safenet.1m
file path=usr/share/man/man1m/snmp-ups.1m
file path=usr/share/man/man1m/solis.1m
file path=usr/share/man/man1m/tripplite.1m
file path=usr/share/man/man1m/tripplite_usb.1m
file path=usr/share/man/man1m/tripplitesu.1m
file path=usr/share/man/man1m/upscode2.1m
file path=usr/share/man/man1m/usbhid-ups.1m
file path=usr/share/man/man1m/victronups.1m
depend fmri=$(COMPONENT_FMRI)/drivers/software@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/drivers/serial@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/drivers/usb@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=library/libusb-1
depend fmri=$(COMPONENT_FMRI)/drivers/snmp@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=system/management/snmp/net-snmp
depend fmri=$(COMPONENT_FMRI)/drivers/neon@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=library/neon
depend fmri=$(COMPONENT_FMRI)/drivers/ipmi@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=system/management/freeipmi
depend fmri=$(COMPONENT_FMRI)/drivers/powerman@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=system/management/powerman
depend fmri=$(COMPONENT_FMRI)/drivers/modbus@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=library/libmodbus
components/sysutils/nut/nut-libs-pynut.p5m
New file
@@ -0,0 +1,34 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2023 Jim Klimov
#
# This file should cover several versions of python
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/libs/pynut@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT client bindings (Python $(PYVER))"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/lib/python$(PYVER)/vendor-packages/.+ -> default mode 0555>
# Auto-added for *-PYVER.p5m processing:
#depend type=require fmri=runtime/python-$(PYV)
file path=usr/lib/python$(PYVER)/vendor-packages/PyNUT.py
file path=usr/lib/python$(PYVER)/vendor-packages/test_nutclient.py
components/sysutils/nut/nut-libs.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - headers, libraries and their manpages"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -27,22 +28,28 @@
### NUT Development files - headers, libraries and their manpages
file path=usr/include/nut-scan.h
file path=usr/include/nutclient.h
file path=usr/include/nutclientmem.h
file path=usr/include/nutscan-device.h
file path=usr/include/nutscan-init.h
file path=usr/include/nutscan-ip.h
file path=usr/include/nutscan-serial.h
file path=usr/include/parseconf.h
file path=usr/include/upsclient.h
file path=usr/lib/$(MACH64)/libnutclient.so.0.0.0
link path=usr/lib/$(MACH64)/libnutclient.so target=libnutclient.so.0.0.0
link path=usr/lib/$(MACH64)/libnutclient.so.0 target=libnutclient.so.0.0.0
file path=usr/lib/$(MACH64)/libnutscan.so.1.0.0
link path=usr/lib/$(MACH64)/libnutscan.so target=libnutscan.so.1.0.0
link path=usr/lib/$(MACH64)/libnutscan.so.1 target=libnutscan.so.1.0.0
file path=usr/lib/$(MACH64)/libupsclient.so.4.0.0
link path=usr/lib/$(MACH64)/libupsclient.so target=libupsclient.so.4.0.0
link path=usr/lib/$(MACH64)/libupsclient.so.4 target=libupsclient.so.4.0.0
file path=usr/lib/$(MACH64)/libnutclient.so.2.0.2
link path=usr/lib/$(MACH64)/libnutclient.so target=libnutclient.so.2.0.2
link path=usr/lib/$(MACH64)/libnutclient.so.2 target=libnutclient.so.2.0.2
file path=usr/lib/$(MACH64)/libnutclientstub.so.1.0.1
link path=usr/lib/$(MACH64)/libnutclientstub.so target=libnutclientstub.so.1.0.1
link path=usr/lib/$(MACH64)/libnutclientstub.so.0 target=libnutclientstub.so.1.0.1
file path=usr/lib/$(MACH64)/libnutscan.so.2.0.2
link path=usr/lib/$(MACH64)/libnutscan.so target=libnutscan.so.2.0.2
link path=usr/lib/$(MACH64)/libnutscan.so.2 target=libnutscan.so.2.0.2
file path=usr/lib/$(MACH64)/libupsclient.so.6.0.1
link path=usr/lib/$(MACH64)/libupsclient.so target=libupsclient.so.6.0.1
link path=usr/lib/$(MACH64)/libupsclient.so.6 target=libupsclient.so.6.0.1
file path=usr/lib/$(MACH64)/pkgconfig/libnutclient.pc
file path=usr/lib/$(MACH64)/pkgconfig/libnutclientstub.pc
file path=usr/lib/$(MACH64)/pkgconfig/libnutscan.pc
file path=usr/lib/$(MACH64)/pkgconfig/libupsclient.pc
@@ -85,7 +92,10 @@
file path=usr/share/man/man3/nutscan_add_option_to_device.3
file path=usr/share/man/man3/nutscan_cidr_to_ip.3
file path=usr/share/man/man3/nutscan_display_parsable.3
file path=usr/share/man/man3/nutscan_display_sanity_check.3
file path=usr/share/man/man3/nutscan_display_sanity_check_serial.3
file path=usr/share/man/man3/nutscan_display_ups_conf.3
file path=usr/share/man/man3/nutscan_display_ups_conf_with_sanity_check.3
file path=usr/share/man/man3/nutscan_free_device.3
file path=usr/share/man/man3/nutscan_get_serial_ports_list.3
file path=usr/share/man/man3/nutscan_init.3
@@ -96,7 +106,7 @@
file path=usr/share/man/man3/nutscan_scan_nut.3
file path=usr/share/man/man3/nutscan_scan_snmp.3
file path=usr/share/man/man3/nutscan_scan_usb.3
file path=usr/share/man/man3/nutscan_scan_xml_http.3
file path=usr/share/man/man3/nutscan_scan_xml_http_range.3
file path=usr/share/man/man3/upscli_add_host_cert.3
file path=usr/share/man/man3/upscli_cleanup.3
file path=usr/share/man/man3/upscli_connect.3
@@ -107,7 +117,9 @@
file path=usr/share/man/man3/upscli_list_next.3
file path=usr/share/man/man3/upscli_list_start.3
file path=usr/share/man/man3/upscli_readline.3
file path=usr/share/man/man3/upscli_readline_timeout.3
file path=usr/share/man/man3/upscli_sendline.3
file path=usr/share/man/man3/upscli_sendline_timeout.3
file path=usr/share/man/man3/upscli_splitaddr.3
file path=usr/share/man/man3/upscli_splitname.3
file path=usr/share/man/man3/upscli_ssl.3
components/sysutils/nut/nut-monitor-gui-common.p5m
New file
@@ -0,0 +1,78 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/nut-monitor-gui-common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT-Monitor GUI client (common components)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform dir path=usr/share/nut/nut-monitor -> set group bin>
<transform dir path=usr/share/nut/nut-monitor/(.*) -> set group bin>
### NUT GUI clients, require python3+QT5
depend type=require fmri=library/python/pyqt5
depend type=require fmri=runtime/python-$(PYV)
# The exposed binary is a dispatcher script which evaluates the
# run-time enviroment and launches the suitable implementation
# (delivered by another package)
file path=usr/bin/NUT-Monitor mode=0555
dir path=usr/share/nut/nut-monitor
dir path=usr/share/nut/nut-monitor/app
dir path=usr/share/nut/nut-monitor/app/icons
dir path=usr/share/nut/nut-monitor/app/icons/48x48
dir path=usr/share/nut/nut-monitor/app/icons/64x64
dir path=usr/share/nut/nut-monitor/app/icons/256x256
dir path=usr/share/nut/nut-monitor/app/icons/scalable
dir path=usr/share/nut/nut-monitor/app/locale
dir path=usr/share/nut/nut-monitor/app/locale/fr
dir path=usr/share/nut/nut-monitor/app/locale/fr/LC_MESSAGES
dir path=usr/share/nut/nut-monitor/app/locale/it
dir path=usr/share/nut/nut-monitor/app/locale/it/LC_MESSAGES
dir path=usr/share/nut/nut-monitor/app/locale/ru
dir path=usr/share/nut/nut-monitor/app/locale/ru/LC_MESSAGES
dir path=usr/share/nut/nut-monitor/app/pixmaps
dir path=usr/share/nut/nut-monitor/app/screenshots
file path=usr/share/nut/nut-monitor/README
file path=usr/share/nut/nut-monitor/app/NUT-Monitor mode=0555
file path=usr/share/nut/nut-monitor/app/README
file path=usr/share/nut/nut-monitor/app/icons/256x256/nut-monitor.png
file path=usr/share/nut/nut-monitor/app/icons/48x48/nut-monitor.png
file path=usr/share/nut/nut-monitor/app/icons/64x64/nut-monitor.png
file path=usr/share/nut/nut-monitor/app/icons/scalable/nut-monitor.svg
file path=usr/share/nut/nut-monitor/app/locale/fr/LC_MESSAGES/NUT-Monitor.mo
file path=usr/share/nut/nut-monitor/app/locale/it/LC_MESSAGES/NUT-Monitor.mo
file path=usr/share/nut/nut-monitor/app/locale/ru/LC_MESSAGES/NUT-Monitor.mo
file path=usr/share/nut/nut-monitor/app/nut-monitor.appdata.xml
link path=usr/share/metainfo/nut-monitor.appdata.xml \
    target=../nut/nut-monitor/app/nut-monitor.appdata.xml
file path=usr/share/nut/nut-monitor/app/nut-monitor.desktop
link path=usr/share/applications/nut-monitor.desktop \
    target=../nut/nut-monitor/app/nut-monitor.desktop
file path=usr/share/nut/nut-monitor/app/pixmaps/on_battery.png
file path=usr/share/nut/nut-monitor/app/pixmaps/on_line.png
file path=usr/share/nut/nut-monitor/app/pixmaps/var-ro.png
file path=usr/share/nut/nut-monitor/app/pixmaps/var-rw.png
file path=usr/share/nut/nut-monitor/app/pixmaps/warning.png
file path=usr/share/nut/nut-monitor/app/screenshots/nut-monitor-1.png
file path=usr/share/nut/nut-monitor/app/screenshots/nut-monitor-2.png
file path=usr/share/nut/nut-monitor/app/screenshots/nut-monitor-3.png
components/sysutils/nut/nut-monitor-gui-py3qt5.p5m
New file
@@ -0,0 +1,41 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/nut-monitor-gui-py3qt5@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT-Monitor GUI client (Python 3.x with QT5)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform dir path=usr/share/nut/nut-monitor/app -> set group bin>
<transform dir path=usr/share/nut/nut-monitor/app/ui -> set group bin>
depend fmri=$(COMPONENT_FMRI)/nut-monitor-gui-common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
dir path=usr/share/nut/nut-monitor/app group=bin
dir path=usr/share/nut/nut-monitor/app/ui group=bin
file path=usr/share/nut/nut-monitor/app/NUT-Monitor-py3qt5 mode=0555
file path=usr/share/nut/nut-monitor/app/nut-monitor-py3qt5.desktop
link path=usr/share/applications/nut-monitor-py3qt5.desktop \
    target=../nut/nut-monitor/app/nut-monitor-py3qt5.desktop
file path=usr/share/nut/nut-monitor/app/ui/aboutdialog1.ui
file path=usr/share/nut/nut-monitor/app/ui/dialog1.ui
file path=usr/share/nut/nut-monitor/app/ui/dialog2.ui
file path=usr/share/nut/nut-monitor/app/ui/window1.ui
components/sysutils/nut/nut-monitor-gui.p5m
New file
@@ -0,0 +1,30 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/nut-monitor-gui@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT-Monitor GUI client (umbrella)"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
depend type=require \
    fmri=$(COMPONENT_FMRI)/nut-monitor-gui-py3qt5@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
depend type=require \
    fmri=$(COMPONENT_FMRI)/nut-monitor-gui-common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
components/sysutils/nut/nut-server.p5m
New file
@@ -0,0 +1,118 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - NUT data server and shared items for drivers"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
<transform file path=usr/lib/nut/bin/(.+) -> default mode 0555>
<transform dir path=usr/lib/nut/bin -> set group bin>
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
<transform file path=usr/share/man/man1/(.+) -> set action.hash usr/share/man/man1/%<1> >
<transform file path=usr/share/man/man1m/(.+) -> set action.hash usr/share/man/man1m/%<1> >
dir path=usr/lib/nut/bin group=bin
depend fmri=$(COMPONENT_FMRI)/common@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# NUT data server binaries, shared baseline for drivers, and other resources.
# The upsd should be on the same system as drivers (talking over Unix sockets
# to them) but may be a different system from monitoring clients which just
# want to shut down in time.
### Data server and its resources
file path=usr/sbin/upsd
# For troubleshooting or last-resort automation: tap into Unix sockets
# between upsd and drivers. See nut/docs/sock-protocol.txt for details.
file path=usr/lib/nut/bin/sockdebug
file path=usr/share/man/man1m/sockdebug.1m
# Services for data server and drivers.
# NUT should start generally after networking (if SNMP or NetXML is used,
# or if this box is a client to remote upsd). Ending is trickier - could
# want it to issue killpower late in shutdown, but have network to be able
# to do so (for remote UPSes). This can be tuned in XML manifest by user.
file path=usr/share/nut/solaris-smf/method/svc-nut-server
file path=usr/share/nut/solaris-smf/manifest/nut-server.xml
link path=lib/svc/manifest/system/power/nut-server.xml \
    target=../../../../../usr/share/nut/solaris-smf/manifest/nut-server.xml \
    restart_fmri=svc:/system/manifest-import:default
file path=usr/share/man/man1m/upsd.1m
file path=usr/share/man/man5/upsd.conf.5
file path=usr/share/man/man5/upsd.users.5
# We deliver the sample configs as the ones to use,
# at worst they have no actual information inside and do nothing.
file etc/nut/upsd.conf.sample path=etc/nut/upsd.conf \
    group=nut owner=root mode=0640 preserve=true
file etc/nut/upsd.users.sample path=etc/nut/upsd.users \
    group=nut owner=root mode=0640 preserve=true
# Note: this is not a systemd *.service but an avahi one ;)
file build/$(MACH64)/scripts/avahi/nut.service path=usr/share/nut/nut.avahi-service.example
### Items below might be some nut/drivers-common package, but given how
### the NUT data server always resides with the drivers, they are here.
# Tools and services for driver instance (and group) management
file path=usr/sbin/upsdrvctl
file path=usr/sbin/upsdrvsvcctl
file path=usr/share/man/man1m/upsdrvctl.1m
file path=usr/share/man/man1m/upsdrvsvcctl.1m
file path=usr/share/man/man1m/nutupsdrv.1m
# Note: While nut-scanner can use snmp, neon/xml, ipmi and usb libs, it loads
# them truly dynamically (if available) and skips otherwise. Installing the
# NUT driver packages should pull their relevant libs by harder ELF reqs.
# Reasonably, if you don't want those UPSes (got no drivers) why scan them? :)
file path=usr/bin/nut-scanner
file path=usr/share/man/man1m/nut-scanner.1m
# Script and service to define nut-driver service instances
# separately for each ups.conf device section definition -
# so failing independently and allowing for separate service
# dependencies (e.g. some need a network, others do not).
file path=usr/lib/nut/bin/nut-driver-enumerator.sh
file path=usr/share/man/man1m/nut-driver-enumerator.1m
file path=usr/share/nut/solaris-smf/manifest/nut-driver.xml
file path=usr/share/nut/solaris-smf/manifest/nut-driver-enumerator.xml
link path=lib/svc/manifest/system/power/nut-driver.xml \
    target=../../../../../usr/share/nut/solaris-smf/manifest/nut-driver.xml \
    restart_fmri=svc:/system/manifest-import:default
link path=lib/svc/manifest/system/power/nut-driver-enumerator.xml \
    target=../../../../../usr/share/nut/solaris-smf/manifest/nut-driver-enumerator.xml \
    restart_fmri=svc:/system/manifest-import:default
### Shared by data server and drivers
# Technically this is file is relevant to a nut-server (upsd) and to
# drivers, but they should be on same system anyway and NDE above uses
# it directly. Also upsd may be told to start without any driver config
# (to report "I am alive and known nothing") but drivers can not.
# So it is here. We deliver the sample configs as the ones to use,
# at worst they have no actual information inside and do nothing.
file etc/nut/ups.conf.sample path=etc/nut/ups.conf \
    group=nut owner=root mode=0640 preserve=true
file path=usr/share/man/man5/ups.conf.5
components/sysutils/nut/nut.p5m
@@ -10,10 +10,11 @@
#
#
# Copyright 2016 Jim Klimov
# Copyright 2016-2023 Jim Klimov
#
set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
set name=pkg.human-version value=$(HUMAN_VERSION)
set name=pkg.summary value="$(COMPONENT_SUMMARY) - Groups all of NUT sub-packages"
set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -24,7 +25,8 @@
# For the core functionality we need libs, bins and drivers
depend fmri=$(COMPONENT_FMRI)/libs@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/bins@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/clients@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/server@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
depend fmri=$(COMPONENT_FMRI)/drivers@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=require
# The following packages are optional - if installed, bind them to common version numbers
@@ -33,3 +35,9 @@
# If augtools are installed, then NUT packaging also requires its lenses to be installed
depend fmri=$(COMPONENT_FMRI)/augeas@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=library/augeas-tools
# If python3+QT5 are installed, then NUT packaging also requires
# its GUI client to be installed; similar for binding libs (used
# by the GUI app, but standalone generally)
depend fmri=$(COMPONENT_FMRI)/libs/pynut@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=runtime/python-$(PYV)
depend fmri=$(COMPONENT_FMRI)/nut-monitor-gui-py3qt5@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) type=conditional predicate=library/python/pyqt5
components/sysutils/nut/patches/01-nut-configure-withDocsAuto.patch
File was deleted
components/sysutils/nut/patches/02-nut-configure-netsnmp-arch.patch
File was deleted
components/sysutils/nut/patches/03-nut-configure-gdlib-arch.patch
File was deleted
components/sysutils/nut/patches/04-nut-WITH_MANS.patch
File was deleted
components/sysutils/nut/patches/05-nut-quiesce-systemd.patch
File was deleted
components/sysutils/nut/patches/06-nut-augeas-inst-dir.patch
File was deleted
components/sysutils/nut/patches/07-man.patch
Diff too large
components/sysutils/nut/patches/08-upsmon-txt.patch
New file
@@ -0,0 +1,13 @@
Avoid characters that asciidoc barfs on (2.8.1 release issue, fixed later).
--- nut-2.8.1-orig/docs/man/upsmon.txt    2023-10-31 16:29:39.777964994 +0100
+++ nut-2.8.1-fixed/docs/man/upsmon.txt    2023-11-02 16:28:54.173790439 +0100
@@ -414,7 +414,7 @@
 running if the "wall power" returns at the wrong moment as usual, the "FSD"
 flag can not be removed from the data server unless its daemon is restarted.
 If we do take the first step in critical mode, then we normally intend to go
-all the way‚Çë--‚Çëshut down all the servers gracefully, and power down the UPS.
+all the way -- shut down all the servers gracefully, and power down the UPS.
 Keep in mind that some UPS devices and corresponding drivers would also latch
 or otherwise resurface the "FSD" state again even if "wall power" is available,
components/sysutils/nut/patches/09-libusb-no-sfw.patch
New file
@@ -0,0 +1,14 @@
OI does not require sfw (and that is a 32-bit inclined path anyway)
--- nut-2.8.1-orig/m4/nut_check_libusb.m4    2023-09-19 23:43:43.000000000 +0200
+++ nut-2.8.1-fixed/m4/nut_check_libusb.m4    2023-11-04 21:06:37.924268597 +0100
@@ -309,7 +309,8 @@
             [solaris2.1*], [
                 AC_MSG_CHECKING([for Solaris 10 / 11 specific configuration for usb drivers])
                 AC_SEARCH_LIBS(nanosleep, rt)
-                LIBS="-R/usr/sfw/lib ${LIBS}"
+                dnl #illumos is modern# LIBS="-R/usr/sfw/lib ${LIBS}"
+                LIBS="${LIBS}"
                 dnl FIXME: Sun's libusb doesn't support timeout (so blocks notification)
                 dnl and need to call libusb close upon reconnection
                 dnl TODO: Somehow test for susceptible versions?
components/sysutils/nut/patches/10-nut-2155.patch
New file
@@ -0,0 +1,15 @@
Fix SIGSEGV while preforming INSTCMD
https://github.com/networkupstools/nut/pull/2155
--- nut-2.8.1.x/drivers/dstate.c    2023-09-19 10:08:14.000000000 +0200
+++ nut-2.8.1/drivers/dstate.c    2023-11-09 04:46:33.193533124 +0100
@@ -780,7 +780,7 @@
             upsdebugx(3, "%s: TRACKING = %s", __func__, cmdid);
         /* try the handler shared by all drivers first */
-        ret = main_instcmd(arg[1], arg[2], conn);
+        ret = main_instcmd(cmdname, cmdparam, conn);
         if (ret != STAT_INSTCMD_UNKNOWN) {
             /* The command was acknowledged by shared handler, and
              * either handled successfully, or failed, or was not
components/sysutils/nut/pkg5
@@ -1,31 +1,46 @@
{
    "dependencies": [
        "SUNWcs",
        "library/augeas-tools",
        "library/gd",
        "library/libmodbus",
        "library/libtool/libltdl",
        "library/libusb-1",
        "library/neon",
        "library/security/openssl",
        "library/python/pyqt5",
        "library/security/openssl-31",
        "runtime/python-39",
        "shell/ksh93",
        "system/library",
        "system/library/g++-7-runtime",
        "system/library/gcc-7-runtime",
        "system/library/g++-13-runtime",
        "system/library/gcc-13-runtime",
        "system/library/math",
        "system/library/usb/libusb",
        "system/management/freeipmi",
        "system/management/powerman",
        "system/management/snmp/net-snmp",
        "text/asciidoc"
    ],
    "fmris": [
        "system/management/nut",
        "system/management/nut-common",
        "system/management/nut/augeas",
        "system/management/nut/bins",
        "system/management/nut/cgi",
        "system/management/nut/clients",
        "system/management/nut/common",
        "system/management/nut/devtools",
        "system/management/nut/drivers/ipmi",
        "system/management/nut/drivers/modbus",
        "system/management/nut/drivers/neon",
        "system/management/nut/drivers/powerman",
        "system/management/nut/drivers/serial",
        "system/management/nut/drivers/snmp",
        "system/management/nut/drivers/software",
        "system/management/nut/drivers/usb",
        "system/management/nut/drivers",
        "system/management/nut/libs"
        "system/management/nut/libs/pynut",
        "system/management/nut/libs",
        "system/management/nut/nut-monitor-gui-common",
        "system/management/nut/nut-monitor-gui-py3qt5",
        "system/management/nut/nut-monitor-gui",
        "system/management/nut/server",
        "system/management/nut"
    ],
    "name": "nut"
}