Commit Graph

29 Commits

Author SHA1 Message Date
Adolf Belka
98278fef4c nut: Update to version 2.8.2
- Update from version 2.8.1 to 2.8.2
- Update of rootfile
- Changelog
    2.8.2
	 - Fix fallout of development in NUT v2.8.0 and/or v2.8.1:
	   * dstate machinery: a segmentation fault (null pointer dereference) was
	     possible with `INSTCMD` processing of commands without parameters nor
	     `TRACKING` identifier. [#2155]
	   * USB bus number detection for libusb-1.0 builds was overly zealous and
	     wrongly considered zero values as an error. [#2198]
	   * `upsmon` recognition of `CAL` state could linger after the calibration
	     activity was completed by the hardware, which led to mis-processing of
	     shutdown triggers. Also, notification was added to report "finished
	     calibration". [issue #2168, PR #2169]
	   * `upsmon` recognition of `OFF` state as a trigger for FSD (forced shut
	     down) criticality considered also the input line state, which may be
	     an independently evolving circumstance. [issue #2278, PR #2279]
	   * `upsmon` support for `POLLFAIL_LOG_THROTTLE_MAX` did not neuter the
	     applied setting when live-reloading configuration, so commenting it
	     away in `upsmon.conf` did not have the effect of resetting the logging
	     frequency to default. It also did not reset the counters to certainly
	     follow the new configuration for existing faults. [issue #2207, PR #2209]
	   * `upsmon` support for `POLLFAIL_LOG_THROTTLE_MAX` had an off-by-one error
	     (e.g. reporting "Data stale" or "Driver not connected" every 30 sec with
	     `POLLFAIL_LOG_THROTTLE_MAX 5` and `POLLFREQ 5` settings). [#2207]
	   * Drivers running with non-default user account (e.g. with `user=root`
	     in their configuration) failed to apply group ownership and permissions
	     to their Unix socket file for interaction with the local data server.
	     [#2185, #2096]
	   * Dispatcher script `scripts/python/app/NUT-Monitor` referenced `py3qt3`
	     instead of the correct `py3qt5`. It also tries to check both `py2gtk2`
	     and `py3qt5` implementations verbosely, even if one is not installed.
	     [#2199, #2201]
	   * Set the `DesktopFileName` in `scripts/python/app/NUT-Monitor-py3qt5`,
	     this binds the application with the desktop file and allow the Open
	     Desktop compatible implementation to display the proper icon and
	     application name. [#2205]
	   * Original recipe for `apc_modbus` strictly required USB support even if
	     building NUT without it. [#2262]
	   * Builds requested with a specific C/C++ language standard revision via
	     `CFLAGS` and `CXXFLAGS` should again be honoured. [PR #2306]
	   * Allow requesting detailed debug builds (with disabled optimizations for
	     binaries to best match the source code) for supported compilers using
	     `configure` script option `--with-debuginfo`. Note that default autoconf
	     behavior usually embeds moderate optimizations and debug information on
	     its own. [PR #2310]
	   * A fix applied among clean-ups between NUT v2.7.4 and v2.8.0 releases
	     backfired for `usbhid-ups` subdriver `belkin-hid` which in practice
	     relied on the broken older behavior; more details in its entry below.
	     [PR #2371]
	 - nut-usbinfo.pl, nut-scanner and libnutscan:
	   * Library API version for `libnutscan` was bumped from 2.2.0 to 2.5.0
	     during evolution of this NUT release.
	   * USB VendorID:ProductID support list files generated by the script for
	     different OS frameworks now include a comment with other possibly
	     compatible driver names, where the respective file format allows for
	     comments.
	   * Added the concept of `alt_driver_names` in `nutscan_device_t` structure
	     for ability to suggest a comment with other possibly compatible driver
	     names in configuration snippets generated by `nut-scanner`; practical
	     support implemented for USB connected drivers.
	   * Added the concept of commented-away suggested option values `comment_tag`
	     and a method to `nutscan_add_commented_option_to_device()`, instead of
	     hacks in prepared config data which broke some use-cases. [#2221]
	   * Command-line option `-U` for USB scan can now be specified several times
	     to increase the detail level about hardware link to the device (this was
	     previously always suggested, but may be not reliable if USB enumeration
	     gets changed over time). [#2221]
	   * Added generation of FreeBSD/pfSense quirks for USB devices supported
	     by NUT (may get installed to `$datadir` e.g. `/usr/local/share/nut`
	     and need to be pasted into your `/boot/loader.conf.local`). [#2159]
	   * nut-scanner now avoids creating ambiguous `nutdevN` device section names
	     when called separately to scan different media buses (one at a time).
	     Now the "bus" name would be embedded (e.g. non-colliding `nutdev-usb1`
	     and `nutdev-snmp1`). [#2247]
	   * nut-scanner can now discover NUT simulated devices (`.dev` and `.seq`
	     files) located in your sysconfig directory, and prepare configuration
	     sections with the simulation driver (currently `dummy-ups`). [#2246]
	   * nut-scanner now reports `dummy-ups` as driver when scanning NUT "bus"
	     with Old or Avahi method. [#2236, #2245]
	 - upsd: Fixed conditions for "no listening interface available" diagnosis
	   to check how many listeners we succeeded with, not whether the first one
	   succeeded or not. If not all requested (non-localhost) listeners were
	   available, default to fail the daemon start-up attempt; support for an
	   `ALLOW_NOT_ALL_LISTENERS` setting was added to control this behavior. [#723]
	 - NUT CI improvements:
	   * Added publishing recipes for PyNUT client bindings for NUT, so it ends
	     up in the link:https://pypi.org/project/PyNUTClient[PyPI repository].
	     [#2158]
	   * Added support for new `ccache` namespace concept, where possible. [#2256]
	   * Fixed an issue for builds configured `--without-usb`. [#2263]
	   * Added a fallback for `libgd` discovery (for CGI etc. builds). [#2287]
	   * Made `aspell` TeX module detection more reliable. [#2206]
	   * Fixed recipes for completely out-of-tree builds to pass with documentation
	     generation and checking on all tested "make" implementations. [#2318]
	   * Various other recipe and documentation clean-up efforts. [#2284, #2269,
	     #2261]
	 - main driver core codebase:
	   * Help users of drivers that can be built to support optionally USB and
	     other media (like `nutdrv_qx` built for serial-only support), and built
	     in fact without USB support but used for USB devices, with some more
	     information to make troubleshooting easier. [issue #2259, PR #2260]
	   * Driver programs with debug tracing support via `-D` CLI option and/or
	     the `NUT_DEBUG_LEVEL` environment variable now check those earlier in
	     their life-time, so that initialization routine can be debugged. [#2259]
	   * Multiple USB-capable drivers got options to customize `usb_config_index`
	     `usb_hid_rep_index`, `usb_hid_desc_index`, `usb_hid_ep_in` and
	     `usb_hid_ep_out` hardware connection settings via `ups.conf` options.
	     This is treated as experimental, not all code paths may be actually
	     using such values from `struct usb_communication_subdriver_t` rather
	     than hard-coded defaults. Discovery of correct values is up to the
	     user at the moment (using `lsusb`, internet search, luck...) [#2149]
	 - nut-driver-enumerator (NDE) service/script:
	   * The optional daemon mode (primarily useful for systems which monitor
	     a large and dynamic population of power devices) was enhanced with a
	     `--daemon-after` variant which parses the configuration once before
	     daemonization and this has a chance to fail while not forked off, as
	     well as to allow only completing the service unit initialization when
	     everything is actually ready to work (so further dependencies can start
	     at the proper time). [#682]
	   * Also applied other optimizations to the script implementation. [#682]
	 - powerpanel text driver now handles status responses in any format and should
	   support most devices. [#2156]
	 - tripplite_usb driver now allows any device to match if a particular Unit ID
	   was not specified in `ups.conf`. [PR #2297, issues #2282 and #2258]
	 - snmp-ups driver:
	   * added support for Eaton EMP002 sensor for ATS16 NM2 sub-driver. [#2286]
	   * mapping table updates for apc-mib sub-driver. [#2264]
	 - usbhid-ups driver:
	   * `arduino-hid` subdriver was enhanced from "initial bare bones" experimental
	     set of mapped data points to support some 20 more mappings to make it more
	     useful as an UPS driver, not just a controller developer sandbox. [#2188]
	   * `cps-hid` subdriver now supports devices branded as Cyber Energy and built
	     by cooperation with Cyber Power Systems. [#2312]
	   * `belkin-hid` subdriver now supports Liebert PSI5 devices which have a
	     different numeric reading scale than earlier handled models. [issue #2271,
	     PR #2272, PR #2369] Generally the wrong-scale processing was addressed,
	     including a regression in NUT v2.8.0 which led to zero values
	     in voltage data points which NUT v2.7.4 reported well [#2371]
	   * The `onlinedischarge` configuration flag name was too ambiguous and got
	     deprecated (will be supported but no longer promoted by documentation),
	     introducing `onlinedischarge_onbattery` as the meaningful alias. [#2213]
	   * Logged notifications about `OL+DISCHRG` state should now be throttled
	     (see the driver manual page for more details) [#2214, #2215]:
	     - If `battery.charge` is available, make the message when entering the
	       state and then only if the charge differs from that when we posted
	       the earlier message (e.g. really discharging) and is under
	       `onlinedischarge_log_throttle_hovercharge` value (defaults to 100%);
	     - Also can throttle to a time frequency configurable by a new option
	       `onlinedischarge_log_throttle_sec`, by default 30 sec if `battery.charge`
	       is not reported by the device (should be frequent by default, in case
	       the UPS-reported state combination does reflect a bad power condition).
	 - nutdrv_qx driver:
	   * Fixed handling of `battery_voltage_reports_one_pack` configuration flag
	     introduced in NUT v2.8.1. [originally by PR #1279; fixed by PR #2324,
	     issue #2325]
	 - Various code and documentation fixes for NSS crypto support. [#2274, #2268]
	 - Laid foundations for the SmartNUT effort (aiming to integrate drivers with
	   some other backends than the networked NUT data server process).
	 - Eaton contributed recipes and scripts used to create the IPP for Unix
	   bundle (aka Eaton IPSS Unix or UPP), a freely available value-added
	   packaging of NUT distributed as the UPS software companion for OSes
	   where their more complex UPS monitoring/management tools had not been
	   ported. This allows for delivery of NUT packages with an interactive
	   installer and some system integration scripts (events, notifications,
	   status, shutdown daemon...), and was contributed to the NUT upstream
	   project by Eaton -- provided "as is" at the moment, and may later serve
	   as foundation or inspiration for new NUT features. [#2288]
	 - nutconf (C++ library and tool to read and manage NUT configuration files)
	   was started in the open by Eaton employees and used in the IPP installer,
	   but the code lingered in a side branch. It was now brushed up to our common
	   best practices and added to the main codebase. As of this import, there are
	   known deficiencies in Windows platform support, as well as some un-awareness
	   about configuration key words which appeared in NUT since 2013. [#2290]
	 - The `tools/gitlog2changelog.py.in` script was revised, in particular to
	   convert section titles (with contributor names coming from Git metadata)
	   into plain ASCII character set, for `dblatex` versions which do not allow
	   diacritics and other kinds of non-trivial characters in sections. This can
	   cause successful builds of `ChangeLog.pdf` file on more platforms, but at
	   expense of a semi-cosmetic difference in those names. [PR #2360, PR #2366]

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2024-06-04 15:07:20 +02:00
Adolf Belka
314baa5831 nut: Update to version 2.8.1
- Update from 2.8.0 to 2.8.1
- Update of rootfile
- Disable creating docs i9n configure statement
- Changelog is too large to include here (~500 lines). For more details read the NEWS.adoc
   file in thye source tarball.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
2023-11-21 19:20:19 +00:00
Michael Tremer
87d0d07bbc core176: Re-ship lots of stuff that is still linked against OpenSSL 1.1.1
There are no functional changes in these files, but they are however
linked against OpenSSL 1.1.1 and need to be re-shipped before we remove
the legacy library.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-06-27 10:06:45 +00:00
Michael Tremer
c183124f58 Bump PAK_VER for all packages that use SERVICES
Since we have extended services.cgi that it reads the Services field
from the Pakfire metadata, we will need to make sure that that metadata
is going to be on those systems.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2022-09-15 10:43:54 +00:00
Adolf Belka
b2f707cb02 nut: Update to version 2.8.0
- Update from version 2.7.4 to 2.8.0
- 2.7.4 was released in 2016 and since then not a lot of progress was made with it but
   since the start of 2022 new work on nut has ocurred culminating in this release
- Update of rootfile
- Ran find-dependencies on the old libraries due to the sobump to confirm that nothing
   else than nut used them, which was the case.
- Changelog
	After a long and windy trip since the last official release v2.7.4 half a dozen
         years ago, we the community, contributors and maintainers are proud to announce
         at last the general availability of NUT v2.8.0!
	As always, the new release includes numerous new drivers, sub-drivers, protocols
         and bug-fixes, with many companies and individuals chipping in with contributions
         of code.Thanks to everyone involved in making this happen, inspiring the changes,
         and providing the open-source friendly infrastructure.
	This release also culminates a significant effort in improvements of NUT QA and
         CI, and as a result -- in codebase quality and portability across a decade or
         two of recent platforms, third-party tools and other dependencies. As a side
         effect, public API (in headers and libraries) has changed a bit, hence a new
         semantic "minor" number is claimed for this major body of work.
	During this time, the https://networkupstools.org/ web site has changed to a
         rolling-release model to serve current information to match the evolving
         codebase. There are now special Sub-sites for historic releases to keep
         documentation snapshots relevant for users of packages which are typically based
         on official NUT releases.
	We recognize that NUT is an important piece of infrastructure which gets built
         into all sorts of devices, projects and operating systems -- some of which the
         team never heard of until they pop up in a question, and others we haven't heard
         of for years -- so we take a seriously omnivorous stance towards covering many
         versions and implementations of compiler suites, C/C++ revisions, make programs,
         shell and other scripted language interpreters, OSes and CPUs, and other similar
         variables tamed with our new NUT CI farm test matrix dynamically driven by
         currently registered build agents and their declared capabilities.
	Sections in the NEWS and UPGRADING files about changes since last release are
         several pages long, so would not all be repeated here. A few important
         highlights for distribution packagers and custom builders follow, however:
	    NUT now supports more i2c and modbus devices, as well as libusb-1.0 support
             as an alternative to earlier libusb-0.1 (so new dependency-based categories
             of packages for drivers may be due);
	    NUT Python modules and scripts (e.g. NUT-Monitor variants) should work with
             python-2.7 and with python-3.x, so covering historic distro releases as
             well as new ones (and so your distro can deliver one or both, probably in
             several packages with different dependencies in the latter case);
	    NUT provides revised reference systemd and SMF service unit definitions,
             including support of drivers wrapped into individual service instances with
             varying dependencies based on different media required (networked stack, USB
             stack, etc.), and many daemons include -F option for running "in foreground"
             to avoid extra forking after one already done by a service framework - you
             may want to use those in your packaged deliverables;
	    NUT newly provides the "nut-driver-enumerator" script and service, which
             allows it to follow edition of ups.conf and dynamically define+(re)start and
             stop+undefine service instances for drivers - there are several ways it can
             be integrated for different use-cases;
	    There are several new configuration keywords and CLI options - so while new
             NUT builds should work with old configs and scripts, the opposite is not
             necessarily true (old binaries may reject configurations taking advantage
             of new features);
	    There are several new protocol keywords - but old and new NUT daemons (data
             server and clients) should be able to communicate both ways;
	    It is assumed that API/ABI changes may require third-party NUT clients
             (library consumers of libnutclient, libupsclient, libnutscan... -- their
             version info was bumped accordingly) to get rebuilt, in order to work with
             the new NUT release in a stable fashion;
	    The dummy-ups driver used in automated testing now processes *.dev filename
             patterns once and does not loop, like it still does for *.seq and other
             files (by default);
	    USB code is now more strict about logical minimum/maximum ranges for data
             reported from devices, and some devices were already found to make mistakes
             - so there is also a mechanism for turning a blind eye to known issues and
             fix-up such report descriptors to produce intended sane values;
	    New documentation page docs/config-prereqs.txt highlights packaged
             dependencies installable on a large range of platforms to build as much of
             NUT as possible (incidentally, ones NUT CI farm uses to test every iteration);
	    Finally, we hope that NUT codebase might be able to cater for everyone "out
             of the box" (it also simplifies local builds from GitHub sources on any
             systems, for troubleshooting and checking pre-release enhancements): if you
             as a packager have to apply patches for your distribution, give it a thought
             -- whether they address a common issue best solved upstream once and behave
             similarly for everyone (and conversely, if your platform can do with
             existing solutions already tracked in the NUT version du-jour). PRs welcome!
             Or at least Wiki entries to list all the distro efforts for cross-pollination

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Reviewed-by: Peter Müller <peter.mueller@ipfire.org>
2022-05-05 16:44:38 +00:00
Peter Müller
9a7e4d8506 Switch checksums from MD5 to BLAKE2
Historically, the MD5 checksums in our LFS files serve as a protection
against broken downloads, or accidentally corrupted source files.

While the sources are nowadays downloaded via HTTPS, it make sense to
beef up integrity protection for them, since transparently intercepting
TLS is believed to be feasible for more powerful actors, and the state
of the public PKI ecosystem is clearly not helping.

Therefore, this patch switches from MD5 to BLAKE2, updating all LFS
files as well as make.sh to deal with this checksum algorithm. BLAKE2 is
notably faster (and more secure) than SHA2, so the performance penalty
introduced by this patch is negligible, if noticeable at all.

In preparation of this patch, the toolchain files currently used have
been supplied with BLAKE2 checksums as well on
https://source.ipfire.org/.

Cc: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Acked-by: Michael Tremer <michael.tremeripfire.org>
2022-04-02 14:19:25 +00:00
Peter Müller
66c3619872 Early spring clean: Remove trailing whitespaces, and correct licence headers
Bumping across one of our scripts with very long trailing whitespaces, I
thought it might be a good idea to clean these up. Doing so, some
missing or inconsistent licence headers were fixed.

There is no need in shipping all these files en bloc, as their
functionality won't change.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-02-18 23:54:57 +00:00
Robin Roevens
f15707c78c buildprocess: Add extra metadata to pak lfs files
* Add a Summary and Services field to all pak lfs files
* Replace occurances of INSTALL_INITSCRIPT with new INSTALL_INITSCRIPTS
  macro in all pak lfs files.

Signed-off-by: Robin Roevens <robin.roevens@disroot.org>
Reviewed-by: Peter Müller <peter.mueller@ipfire.org>
2022-02-11 15:13:15 +00:00
Michael Tremer
c01acbfea6 nut: Fix build with GCC 11
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-07-05 07:42:39 +02:00
Michael Tremer
c3550b57a2 nut: Update automake
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-03-06 11:14:51 +00:00
Michael Tremer
2dc2a27803 lfs: Drop quotes in DEPS variable
Not sure why this has ever been there. This simply makes it
nicer to read and edit because we can have line-breaks now.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-03-24 08:57:27 +00:00
Michael Tremer
acb718b0bb nut: Disable parallel build
nut just fails to build when running in parallel

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-03-14 14:01:45 +00:00
Wolfgang Apolinarski
23164efba5 Parallelized build for several packages
Added $(MAKETUNING) to several packages.
Marked packages that do not support parallel build.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-03-04 11:02:03 +00:00
Peter Müller
eee037b890 update disclaimer in LFS files
Most of these files still used old dates and/or domain names for contact
mail addresses. This is now replaced by an up-to-date copyright line.

Just some housekeeping... :-)

Signed-off-by: Peter Müller <peter.mueller@link38.eu>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-09-10 19:20:36 +01:00
Michael Tremer
ca4c354e08 Bump release of all packages linked against OpenSSL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-02-26 16:28:16 +00:00
Paul T. Simmons
239e6d78ac Update: nut to 2.7.4
Signed-off-by: Paul T. Simmons <mbatranch@gmail.com>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-02-06 00:34:58 +00:00
Jonatan Schlag
610b34069c nut: move initscript to src/initscripts/packages and use new macro
Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
2017-02-24 15:55:05 +01:00
Dirk Wagner
9eb6ff30db nut addon: increased package version. 2014-05-08 21:22:22 +02:00
Dirk Wagner
3fe41c0159 nut addon: Update to 2.7.2 2014-05-07 21:37:51 +02:00
Arne Fitzenreiter
dd179479b8 nut: disable parallel build. 2012-12-02 00:22:19 +01:00
Dirk Wagner
bc48f66315 nut: update to latest version 2.6.3 2012-02-10 20:45:52 +01:00
Dirk Wagner
1ba2685964 Update to 2.6.2 2011-11-17 15:43:56 +01:00
Arne Fitzenreiter
ee8a12b699 nut: remove patch that convert udev rules to old format. 2010-08-01 18:59:38 +02:00
Arne Fitzenreiter
12eba2296f Fix nut udev rules. 2010-05-01 17:07:05 +02:00
Dirk Wagner
52c2987084 Update to latest stable 2.4.3 2010-04-16 21:23:51 +02:00
Dirk Wagner
df2aa8e12a nut: Added status option, some installation fixed 2009-11-09 21:22:19 +01:00
Arne Fitzenreiter
a82e1b0eca Add backup include for nut.
initskripts rootfile update.
2009-10-25 12:16:37 +01:00
Arne Fitzenreiter
4ad79fe6b5 Imported nut changes from glotzi. 2009-10-25 12:07:21 +01:00
Arne Fitzenreiter
ffc22d7264 Added nut (Network Ups Tools). 2009-09-15 23:55:23 +02:00