diff --git a/.gitignore b/.gitignore index 61da205..a737052 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,6 @@ nut-2.4.3.tar.gz /nut-2.8.0.tar.gz /nut-2.8.1.tar.gz /nut-2.8.2.tar.gz +/nut-2.8.2.1.tar.gz +/nut-2.8.3.tar.gz +/nut-2.8.4.tar.gz diff --git a/nut-2.6.5-rmpidf.patch b/nut-2.6.5-rmpidf.patch index 7755382..40365b8 100644 --- a/nut-2.6.5-rmpidf.patch +++ b/nut-2.6.5-rmpidf.patch @@ -1,18 +1,18 @@ -diff -up nut-2.8.1/clients/upsmon.c.rmpidf nut-2.8.1/clients/upsmon.c ---- nut-2.8.1/clients/upsmon.c.rmpidf 2023-11-01 10:10:03.039782733 +0100 -+++ nut-2.8.1/clients/upsmon.c 2023-11-01 10:14:48.824806113 +0100 -@@ -3059,6 +3059,7 @@ int main(int argc, char *argv[]) +diff -up nut-2.8.2.1/clients/upsmon.c.rmpidf nut-2.8.2.1/clients/upsmon.c +--- nut-2.8.2.1/clients/upsmon.c.rmpidf 2024-07-03 12:18:04.788135176 +0200 ++++ nut-2.8.2.1/clients/upsmon.c 2024-07-03 12:19:33.164964473 +0200 +@@ -3309,6 +3309,7 @@ int main(int argc, char *argv[]) upslogx(LOG_INFO, "Signal %d: exiting", exit_flag); upsnotify(NOTIFY_STATE_STOPPING, "Signal %d: exiting", exit_flag); upsmon_cleanup(); + cleanpid(prog); + upsdebugx(1, "Finally exiting due to signal %d", exit_flag); exit(EXIT_SUCCESS); - } -diff -up nut-2.8.1/common/common.c.rmpidf nut-2.8.1/common/common.c ---- nut-2.8.1/common/common.c.rmpidf 2023-10-30 00:02:33.000000000 +0100 -+++ nut-2.8.1/common/common.c 2023-11-01 10:10:03.040782744 +0100 -@@ -519,6 +519,20 @@ pid_t parsepid(const char *buf) +diff -up nut-2.8.2.1/common/common.c.rmpidf nut-2.8.2.1/common/common.c +--- nut-2.8.2.1/common/common.c.rmpidf 2024-07-03 12:14:56.000000000 +0200 ++++ nut-2.8.2.1/common/common.c 2024-07-03 12:18:04.788135176 +0200 +@@ -1338,6 +1338,20 @@ pid_t parsepid(const char *buf) return pid; } @@ -33,10 +33,10 @@ diff -up nut-2.8.1/common/common.c.rmpidf nut-2.8.1/common/common.c /* open pidfn, get the pid, then send it sig * returns negative codes for errors, or * zero for a successfully sent signal -diff -up nut-2.8.1/include/common.h.rmpidf nut-2.8.1/include/common.h ---- nut-2.8.1/include/common.h.rmpidf 2023-10-24 10:45:21.000000000 +0200 -+++ nut-2.8.1/include/common.h 2023-11-01 10:10:03.040782744 +0100 -@@ -211,6 +211,9 @@ void chroot_start(const char *path); +diff -up nut-2.8.2.1/include/common.h.rmpidf nut-2.8.2.1/include/common.h +--- nut-2.8.2.1/include/common.h.rmpidf 2024-07-03 12:14:56.000000000 +0200 ++++ nut-2.8.2.1/include/common.h 2024-07-03 12:18:04.788135176 +0200 +@@ -262,6 +262,9 @@ int checkprocname(pid_t pid, const char /* write a pid file - is a full pathname *or* just the program name */ void writepid(const char *name); @@ -46,10 +46,10 @@ diff -up nut-2.8.1/include/common.h.rmpidf nut-2.8.1/include/common.h /* parses string buffer into a pid_t if it passes * a few sanity checks; returns -1 on error */ pid_t parsepid(const char *buf); -diff -up nut-2.8.1/server/upsd.c.rmpidf nut-2.8.1/server/upsd.c ---- nut-2.8.1/server/upsd.c.rmpidf 2023-11-01 10:10:03.040782744 +0100 -+++ nut-2.8.1/server/upsd.c 2023-11-01 10:15:57.176529218 +0100 -@@ -2137,5 +2137,6 @@ int main(int argc, char **argv) +diff -up nut-2.8.2.1/server/upsd.c.rmpidf nut-2.8.2.1/server/upsd.c +--- nut-2.8.2.1/server/upsd.c.rmpidf 2024-07-03 12:14:56.000000000 +0200 ++++ nut-2.8.2.1/server/upsd.c 2024-07-03 12:18:04.789135186 +0200 +@@ -2304,5 +2304,6 @@ int main(int argc, char **argv) upsnotify(NOTIFY_STATE_STOPPING, "Signal %d: exiting", exit_flag); ssl_cleanup(); diff --git a/nut-2.8.3-rhinoname.patch b/nut-2.8.3-rhinoname.patch new file mode 100644 index 0000000..71be46d --- /dev/null +++ b/nut-2.8.3-rhinoname.patch @@ -0,0 +1,23 @@ +diff -up nut-2.8.4-build/nut-2.8.4/drivers/Makefile.am.rhinoname nut-2.8.4-build/nut-2.8.4/drivers/Makefile.am +--- nut-2.8.4-build/nut-2.8.4/drivers/Makefile.am.rhinoname 2025-08-14 11:08:48.763700333 +0200 ++++ nut-2.8.4-build/nut-2.8.4/drivers/Makefile.am 2025-08-14 11:29:43.803846801 +0200 +@@ -74,7 +74,7 @@ NUTSW_DRIVERLIST = $(NUTSW_DRIVERLIST_DU + SERIAL_DRIVERLIST = al175 bcmxcp belkin belkinunv bestfcom \ + bestfortress bestuferrups bestups etapro everups \ + gamatronic genericups isbmex liebert liebert-esp2 liebert-gxe masterguard metasys \ +- mge-utalk microdowell microsol-apc mge-shut nutdrv_hashx oneac optiups powercom powervar_cx_ser rhino \ ++ mge-utalk microdowell microsol-apc mge-shut nutdrv_hashx oneac optiups powercom powervar_cx_ser nutdrv_rhino \ + safenet nutdrv_siemens-sitop solis tripplite tripplitesu upscode2 victronups powerpanel \ + blazer_ser ivtscd apcsmart apcsmart-old riello_ser sms_ser bicker_ser ve-direct + if HAVE_LINUX_SERIAL_H +@@ -198,8 +198,8 @@ powerpanel_SOURCES = powerpanel.c powerp + powerpanel_LDADD = $(LDADD) -lm + powervar_cx_ser_SOURCES = powervar_cx_ser.c powervar_cx.c + powervar_cx_ser_CFLAGS = $(AM_CFLAGS) -DPVAR_SERIAL=1 +-rhino_SOURCES = rhino.c +-rhino_LDADD = $(LDADD) -lm ++nutdrv_rhino_SOURCES = rhino.c ++nutdrv_rhino_LDADD = $(LDADD) -lm + safenet_SOURCES = safenet.c + nutdrv_siemens_sitop_SOURCES = nutdrv_siemens_sitop.c + solis_SOURCES = solis.c diff --git a/nut.spec b/nut.spec index 8b68b23..dba51af 100644 --- a/nut.spec +++ b/nut.spec @@ -1,5 +1,4 @@ %global _hardened_build 1 -%bcond_with python2 #TODO: split nut-client so it does not require python %global nut_uid 57 @@ -7,14 +6,14 @@ %global cgidir /var/www/nut-cgi-bin %global piddir /run/nut -%global modeldir /usr/sbin +%global modeldir %{_libexecdir}/%{name} # powerman is retired on Fedora, therefore disable it by default %bcond_with powerman Summary: Network UPS Tools Name: nut -Version: 2.8.2 -Release: 1%{?dist} +Version: 2.8.4 +Release: 5%{?dist} License: GPL-2.0-or-later AND GPL-3.0-or-later Url: https://www.networkupstools.org/ Source: https://www.networkupstools.org/source/2.8/%{name}-%{version}.tar.gz @@ -24,13 +23,16 @@ Patch2: nut-2.8.0-piddir-owner.patch #quick fix. TODO: fix it properly Patch9: nut-2.6.5-rmpidf.patch Patch15: nut-c99-strdup.patch +Patch16: nut-2.8.3-rhinoname.patch -Requires(pre): shadow-utils Requires(post): coreutils systemd Requires(preun): systemd Requires(postun): coreutils systemd Recommends: nut-xml +Requires: group(dialout) +Requires: group(tty) +BuildRequires: asciidoc BuildRequires: make BuildRequires: autoconf BuildRequires: automake @@ -46,6 +48,7 @@ BuildRequires: freetype-devel BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: gd-devel +BuildRequires: jq %if 0%{?fedora} < 39 BuildRequires: libgpiod-devel %endif @@ -68,6 +71,7 @@ BuildRequires: powerman-devel %endif BuildRequires: python3-devel BuildRequires: python3-setuptools +BuildRequires: systemd-devel BuildRequires: systemd-rpm-macros %ifnarch s390 s390x @@ -89,12 +93,8 @@ live status tracking on web pages, and more. Summary: Network UPS Tools client monitoring utilities Requires(post): systemd Requires(preun): systemd -Requires(pre): shadow-utils -%if %{with python2} -Requires: pygtk2, pygtk2-libglade -#only for python and gui part -%endif -#Requires: +Requires: group(dialout) +Requires: group(tty) %description client This package includes the client utilities that are required to monitor a @@ -104,12 +104,19 @@ attached to a different computer on the network. %package cgi Summary: CGI utilities for the Network UPS Tools Requires: %{name}-client = %{version}-%{release} webserver -Requires(pre): shadow-utils %description cgi This package includes CGI programs for accessing UPS status via a web browser. +%package monitor +Summary: Network UPS Tools monitor application +BuildRequires: python3-pyqt6 + +%description monitor +This package contain the Python NUT-Monitor GUI application to +monitor a UPS. + %package xml Summary: XML UPS driver for the Network UPS Tools Requires: %{name}-client = %{version}-%{release} @@ -128,12 +135,11 @@ necessary to develop NUT client applications. %prep %setup -q -%patch -P2 -p1 -b .piddir-owner -%patch -P9 -p1 -b .rmpidf -%patch -P15 -p1 +#patch -P 2 -p1 -b .piddir-owner +%patch -P 9 -p1 -b .rmpidf +#patch -P 15 -p1 +%patch -P 16 -p2 -b .rhinoname -sed -i 's|=NUT-Monitor|=nut-monitor|' scripts/python/app/nut-monitor-py3qt5.desktop -sed -i "s|sys.argv\[0\]|'%{_datadir}/%{name}/nut-monitor/nut-monitor'|" scripts/python/app/NUT-Monitor-py3qt5.in sed -i 's|LIBSSL_LDFLAGS|LIBSSL_LIBS|' lib/libupsclient-config.in sed -i 's|LIBSSL_LDFLAGS|LIBSSL_LIBS|' lib/libupsclient.pc.in @@ -143,8 +149,15 @@ find . -mtime -1 -print0 | xargs -0 touch --reference %{SOURCE0} # fix python site packages check sed -i 's|\(PYTHON3\?_SITE_PACKAGES=\)".*"|\1"%{python3_sitelib}"|' m4/nut_check_python.m4 +# Create a sysusers.d config file +cat >nut.sysusers.conf < 38 +%if 0%{?fedora} #--without-gpio is not enough to stop it complaining about missing library sed -i 's|with_gpio="[^"]*"|with_gpio="no"|g' configure.ac %endif @@ -158,7 +171,7 @@ export LDFLAGS="-Wl,-z,now" --without-powerman \ %endif --with-libltdl \ -%if (0%{?fedora} && 0%{?fedora} < 33) || 0%{?el8} +%if 0%{?el8} --with-nss \ %endif --without-wrap \ @@ -175,7 +188,7 @@ export LDFLAGS="-Wl,-z,now" --sysconfdir=%{_sysconfdir}/ups \ --with-cgipath=%{cgidir} \ --with-drvpath=%{modeldir} \ -%if 0%{?fedora} > 38 +%if 0%{?fedora} --without-gpio \ %endif --with-systemdsystemunitdir=%{_unitdir} \ @@ -183,7 +196,8 @@ export LDFLAGS="-Wl,-z,now" --with-pkgconfig-dir=%{_libdir}/pkgconfig \ --disable-static \ --with-udev-dir=%{_usr}/lib/udev \ - --libdir=%{_libdir} + --libdir=%{_libdir} \ + --enable-docs-changelog=no # --with-doc # does not work in 2.7.1 # for rhbz#838139 check if still needed? @@ -232,34 +246,39 @@ do mv -f $fe.new $fe done +# rename rhino to nutdrv_rhino to prevent file conflict (rhbz#2367057) +mv %{buildroot}%{_mandir}/man8/rhino.8 %{buildroot}%{_mandir}/man8/nutdrv_rhino.8 + # install PyNUT install -p -D -m 644 scripts/python/module/PyNUT.py %{buildroot}%{python3_sitelib}/PyNUT.py -# install nut-monitor -%if %{with python2} -mkdir -p %{buildroot}%{_datadir}/nut/nut-monitor/pixmaps -install -p -m 755 scripts/python/app/NUT-Monitor %{buildroot}%{_datadir}/nut/nut-monitor/nut-monitor -install -p -m 644 scripts/python/app/gui-1.3.glade %{buildroot}%{_datadir}/nut/nut-monitor -install -p -m 644 scripts/python/app/pixmaps/* %{buildroot}%{_datadir}/nut/nut-monitor/pixmaps/ -install -p -D scripts/python/app/nut-monitor.png %{buildroot}%{_datadir}/pixmaps/nut-monitor.png -desktop-file-install --dir=%{buildroot}%{_datadir}/applications scripts/python/app/nut-monitor.desktop -ln -s %{_datadir}/nut/nut-monitor/nut-monitor %{buildroot}%{_bindir}/nut-monitor -%endif +# add lowercase name +ln %{buildroot}%{_bindir}/{NUT-Monitor,nut-monitor} +# install desktop file +mkdir -p %{buildroot}%{_datadir}/applications +desktop-file-install \ + --dir=%{buildroot}%{_datadir}/applications \ + %{buildroot}%{_datadir}/nut-monitor/app/nut-monitor.desktop +# install icons +for res in 256x256 48x48 64x64 scalable +do + mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${res}/apps + ln %{buildroot}%{_datadir}/nut-monitor/app/icons/${res}/nut-monitor.* \ + %{buildroot}%{_datadir}/icons/hicolor/${res}/apps/ +done # Setup permissions for pid file touch %{buildroot}/%{piddir}/upsmon.pid chmod 0644 %{buildroot}/%{piddir}/upsmon.pid -%pre -/usr/sbin/useradd -c "Network UPS Tools" -u %{nut_uid} \ - -s /bin/false -r -d %{_localstatedir}/lib/ups %{name} 2> /dev/null || : -/usr/sbin/usermod -G dialout,tty %{name} +install -m0644 -D nut.sysusers.conf %{buildroot}%{_sysusersdir}/nut.conf +%pre # do not let upsmon run during upgrade rhbz#916472 # phase 1: stop upsmon before upsd changes if [ "$1" = "2" ]; then rm -f %restart_flag - /bin/systemctl is-active nut-monitor.service >/dev/null 2>&1 && touch %restart_flag ||: - /bin/systemctl stop nut-monitor.service >/dev/null 2>&1 + /bin/systemctl is-active nut-monitor.service >/dev/null 2>&1 && touch %restart_flag || : + /bin/systemctl stop nut-monitor.service >/dev/null 2>&1 || : fi @@ -272,15 +291,7 @@ fi %postun %systemd_postun_with_restart nut-driver.target nut-server.service -%pre client -/usr/sbin/useradd -c "Network UPS Tools" -u %{nut_uid} \ - -s /bin/false -r -d %{_localstatedir}/lib/ups %{name} 2> /dev/null || : -/usr/sbin/usermod -G dialout,tty %{name} -%pre cgi -/usr/sbin/useradd -c "Network UPS Tools" -u %{nut_uid} \ - -s /bin/false -r -d %{_localstatedir}/lib/ups %{name} 2> /dev/null || : -/usr/sbin/usermod -G dialout,tty %{name} %post client %systemd_post nut-monitor.service nut.target @@ -309,7 +320,9 @@ fi %config(noreplace) %attr(640,root,nut) %{_sysconfdir}/ups/upsd.users %attr(644,root,root) %{_usr}/lib/udev/rules.d/62-nut-usbups.rules %attr(644,root,root) %{_usr}/lib/udev/rules.d/62-nut-ipmipsu.rules -%{modeldir}/* +%{modeldir}/ +# dummy-ups requires libupsclient +%exclude %{modeldir}/dummy-ups %exclude %{modeldir}/netxml-ups %{_unitdir}/nut-driver-enumerator.path %{_unitdir}/nut-driver-enumerator.service @@ -320,13 +333,22 @@ fi %{_unitdir}/nut-driver.target %{_unitdir}/nut-server.service %{_unitdir}/nut.target +%{_presetdir}/nut-systemd.preset +%{_unitdir}/enphase-monitor@.service +%{_unitdir}/nut-logger.service +%{_unitdir}/nut-udev-settle.service %{_sbindir}/upsd %{_bindir}/nutconf %{_bindir}/nut-scanner +%{_sbindir}/upsdrvctl +%{_sbindir}/upsdrvsvcctl %{_libdir}/libnutscan.so.* +%{_libdir}/libnutconf.so.* %{_libexecdir}/nut-driver-enumerator.sh %{_libexecdir}/sockdebug +%{_libexecdir}/enphase-monitor %{_datadir}/augeas/lenses/dist/nut* +%{_datadir}/augeas/lenses/dist/tests/test_nut.aug %{_datadir}/%{name}/cmdvartab %{_datadir}/%{name}/driver.list %{_mandir}/man5/ups.conf.5.gz @@ -351,31 +373,38 @@ fi %{_mandir}/man8/bestfortress.8.gz %{_mandir}/man8/bestups.8.gz %{_mandir}/man8/bestuferrups.8.gz +%{_mandir}/man8/bicker_ser.8.gz %{_mandir}/man8/blazer_ser.8.gz %{_mandir}/man8/blazer_usb.8.gz %{_mandir}/man8/clone.8.gz +%{_mandir}/man8/clone-outlet.8.gz %{_mandir}/man8/dummy-ups.8.gz %{_mandir}/man8/everups.8.gz %{_mandir}/man8/etapro.8.gz +%{_mandir}/man8/failover.8.gz %{_mandir}/man8/gamatronic.8.gz %{_mandir}/man8/generic_modbus.8.gz %{_mandir}/man8/genericups.8.gz %if 0%{?fedora} < 39 %{_mandir}/man8/generic_gpio.8.gz %endif +%{_mandir}/man8/hwmon_ina219.8.gz %{_mandir}/man8/huawei-ups2000.8.gz %{_mandir}/man8/isbmex.8.gz %{_mandir}/man8/ivtscd.8.gz %{_mandir}/man8/liebert.8.gz %{_mandir}/man8/liebert-esp2.8.gz +%{_mandir}/man8/liebert-gxe.8.gz %{_mandir}/man8/masterguard.8.gz %{_mandir}/man8/metasys.8.gz %{_mandir}/man8/microdowell.8.gz %{_mandir}/man8/microsol-apc.8.gz %{_mandir}/man8/mge-utalk.8.gz %{_mandir}/man8/mge-shut.8.gz +%{_mandir}/man8/nhs_ser.8.gz %{_mandir}/man8/nutupsdrv.8.gz %{_mandir}/man8/nutdrv_atcl_usb.8.gz +%{_mandir}/man8/nutdrv_hashx.8.gz %{_mandir}/man8/nutdrv_siemens_sitop.8.gz %{_mandir}/man8/nut-driver-enumerator.8.gz %{_mandir}/man8/nut-ipmipsu.8.gz @@ -391,7 +420,9 @@ fi %{_mandir}/man8/powerman-pdu.8.gz %endif %{_mandir}/man8/powerpanel.8.gz -%{_mandir}/man8/rhino.8.gz +%{_mandir}/man8/powervar_cx_ser.8.gz +%{_mandir}/man8/powervar_cx_usb.8.gz +%{_mandir}/man8/nutdrv_rhino.8.gz %{_mandir}/man8/richcomm_usb.8.gz %{_mandir}/man8/riello_ser.8.gz %{_mandir}/man8/riello_usb.8.gz @@ -404,12 +435,14 @@ fi %{_mandir}/man8/tripplite.8.gz %{_mandir}/man8/tripplite_usb.8.gz %{_mandir}/man8/tripplitesu.8.gz -%{_mandir}/man8/victronups.8.gz %{_mandir}/man8/upscode2.8* %{_mandir}/man8/upsd.8.gz %{_mandir}/man8/upsdrvctl.8.gz %{_mandir}/man8/upsdrvsvcctl.8.gz %{_mandir}/man8/usbhid-ups.8.gz +%{_mandir}/man8/victronups.8.gz +%{_mandir}/man8/ve-direct.8.gz +%{_sysusersdir}/nut.conf %files client %license COPYING LICENSE-GPL2 LICENSE-GPL3 @@ -429,6 +462,8 @@ fi %{_sbindir}/upsmon %{_sbindir}/upssched %{_bindir}/upssched-cmd +# dummy-ups requires libupsclient +%{modeldir}/dummy-ups %{_unitdir}/nut-monitor.service # nut-monitor.service also needs nut.target %{_unitdir}/nut.target @@ -439,20 +474,26 @@ fi %{_mandir}/man5/nut.conf.5.gz %{_mandir}/man5/upsmon.conf.5.gz %{_mandir}/man5/upssched.conf.5.gz +%{_mandir}/man7/nut.7.gz %{_mandir}/man8/upsc.8.gz %{_mandir}/man8/upscmd.8.gz %{_mandir}/man8/upslog.8.gz %{_mandir}/man8/upsrw.8.gz %{_mandir}/man8/upsmon.8.gz %{_mandir}/man8/upssched.8.gz +%{_datadir}/nut +%{_sysusersdir}/nut.conf + +%files monitor +%{_bindir}/nut-monitor +%{_bindir}/NUT-Monitor +%{_datadir}/applications/nut-monitor.desktop +%{_datadir}/icons/hicolor/*/apps/nut-monitor.png +%{_datadir}/icons/hicolor/scalable/apps/nut-monitor.svg +%{_datadir}/nut-monitor/ +%{_mandir}/man8/NUT-Monitor*.8.gz %pycached %{python3_sitelib}/PyNUT.py %pycached %{python3_sitelib}/test_nutclient.py -%{_datadir}/nut -%if %{with python2} -%{_bindir}/nut-monitor -%{_datadir}/pixmaps/nut-monitor.png -%{_datadir}/applications/nut-monitor.desktop -%endif %files cgi %config(noreplace) %attr(644,root,root) %{_sysconfdir}/ups/hosts.conf @@ -480,13 +521,65 @@ fi %{_libdir}/libupsclient.so %{_libdir}/libnutclient.so %{_libdir}/libnutclientstub.so +%{_libdir}/libnutconf.so %{_libdir}/libnutscan.so %{_libdir}/pkgconfig/libupsclient.pc %{_libdir}/pkgconfig/libnutclient.pc +%{_libdir}/pkgconfig/libnutconf.pc %{_libdir}/pkgconfig/libnutclientstub.pc %{_libdir}/pkgconfig/libnutscan.pc %changelog +* Sat Dec 06 2025 Orion Poplawski - 2.8.4-5 +- Add missing || : to preinstall scriptlet (rhbz#2419644) + +* Tue Sep 30 2025 Michal Hlavinka - 2.8.4-4 +- based on PR#18 by Orion Poplawski +- Build NUT-Monitor and ship in separate nut-monitor package (rhbz#2359149) +- Move UPS drivers into /usr/libexec/nut + +* Fri Sep 19 2025 Python Maint - 2.8.4-3 +- Rebuilt for Python 3.14.0rc3 bytecode + +* Fri Aug 15 2025 Python Maint - 2.8.4-2 +- Rebuilt for Python 3.14.0rc2 bytecode + +* Thu Aug 14 2025 Michal Hlavinka - 2.8.4-1 +- updated to 2.8.4 (#2387244) + +* Thu Jul 24 2025 Fedora Release Engineering - 2.8.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Mon Jun 02 2025 Python Maint - 2.8.3-3 +- Rebuilt for Python 3.14 + +* Wed May 21 2025 Michal Hlavinka - 2.8.3-2 +- rename rhino to nutdrv_rhino to prevent file conflict (rhbz#2367057) + +* Tue Apr 29 2025 Michal Hlavinka - 2.8.3-1 +- updated to 2.8.3 (#2352734) + +* Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 2.8.2.1-5.1.git20240703pr2505 +- Add sysusers.d config file to allow rpm to create users/groups automatically + +* Wed Jan 29 2025 Michal Hlavinka - 2.8.2.1-4.1.git20240703pr2505 +- fix ftbfs, make it build with unified bin/sbin + +* Fri Jan 17 2025 Fedora Release Engineering - 2.8.2.1-3.1.git20240703pr2505 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Fri Nov 15 2024 Orion Poplawski - 2.8.2.1-2.1.git20240703pr2505 +- Add BR systemd-devel to enable systemd notification support + +* Thu Jul 18 2024 Fedora Release Engineering - 2.8.2.1-1.1.git20240703pr2505 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Jul 03 2024 Michal Hlavinka - 2.8.2.1-0.1.git20240703pr2505 +- fix python FTBFS, uses git snapshot as of 20240703 with PR 2505 + +* Fri Jun 07 2024 Python Maint - 2.8.2-2 +- Rebuilt for Python 3.13 + * Wed Apr 03 2024 Michal Hlavinka - 2.8.2-1 - updated to 2.8.2(2272586) diff --git a/sources b/sources index 474d28c..5f00a02 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (nut-2.8.2.tar.gz) = b6f8f22318e4a4fcb8073a63132b1cb083952c665191b82a7d6765a61b859575a4b0c2ba84ed17cfb8c88d34179876d64520dd2f75f02fe8707b406da2c0821c +SHA512 (nut-2.8.4.tar.gz) = 0d87c0006608f92ae54f8a500f93d9a81eac1d9abf57f32e7718dd72f265b8293a0b6cdba04c802b81eaf8907b52669c36b47b6875a4377f9752845ac6c5e8fa