diff --git a/.gitignore b/.gitignore index 7f32732..3831ee0 100644 --- a/.gitignore +++ b/.gitignore @@ -39,27 +39,3 @@ /initscripts-10.00.tar.gz /initscripts-10.01.tar.gz /initscripts-10.02.tar.gz -/initscripts-10.03.tar.gz -/initscripts-10.04.tar.gz -/initscripts-10.05.tar.gz -/initscripts-10.06.tar.gz -/initscripts-10.07.tar.gz -/initscripts-10.08.tar.gz -/initscripts-10.09.tar.gz -/initscripts-10.10.tar.gz -/initscripts-10.11.tar.gz -/initscripts-10.12.tar.gz -/initscripts-10.13.tar.gz -/initscripts-10.14.tar.gz -/initscripts-10.15.tar.gz -/initscripts-10.16.tar.gz -/initscripts-10.17.tar.gz -/initscripts-10.18.tar.gz -/initscripts-10.19.tar.gz -/initscripts-10.20.tar.gz -/initscripts-10.21.tar.gz -/initscripts-10.23.tar.gz -/initscripts-10.24.tar.gz -/initscripts-10.25.tar.gz -/initscripts-10.26.tar.gz -/initscripts-10.27.tar.gz diff --git a/initscripts.spec b/initscripts.spec index 6dcbe5c..a09cafc 100644 --- a/initscripts.spec +++ b/initscripts.spec @@ -18,10 +18,10 @@ Requires: gawk \ Name: initscripts Summary: Basic support for legacy System V init scripts -Version: 10.27 +Version: 10.02 Release: 1%{?dist} -License: GPL-2.0-only +License: GPLv2 URL: https://github.com/fedora-sysv/initscripts Source: https://github.com/fedora-sysv/initscripts/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz @@ -34,9 +34,6 @@ Requires: procps-ng Requires: setup Requires: systemd Requires: util-linux -Requires: chkconfig -Requires: initscripts-service -Requires: initscripts-rename-device Requires(pre): shadow-utils Requires(post): coreutils @@ -49,13 +46,13 @@ BuildRequires: glib2-devel BuildRequires: pkgconfig BuildRequires: popt-devel BuildRequires: setup -BuildRequires: make %{?systemd_requires} BuildRequires: systemd -Obsoletes: %{name} < 10.16-1 -Obsoletes: network-scripts < 10.25-1 +Provides: /sbin/service + +Obsoletes: %{name} < 9.82-2 # === PATCHES ================================================================= @@ -91,28 +88,47 @@ other legacy tools & utilities. # === SUBPACKAGES ============================================================= -%package -n initscripts-rename-device -Summary: Udev helper utility that provides network interface naming - -%shared_requirements - -%description -n initscripts-rename-device -Udev helper utility that provides network interface naming - -# --------------- - -%package -n initscripts-service -Summary: Support for service command -BuildArch: noarch +%package -n network-scripts +Summary: Legacy scripts for manipulating of network devices +Requires: %{name}%{?_isa} = %{version}-%{release} %shared_requirements +Requires: bc +Requires: dbus +Requires: gawk +Requires: grep +Requires: hostname +Requires: iproute +Requires: ipcalc +Requires: kmod +Requires: procps-ng +Requires: sed Requires: systemd -Provides: /sbin/service +Requires(post): chkconfig +Requires(preun): chkconfig -%description -n initscripts-service -This package provides service command. +Requires(post): %{_sbindir}/update-alternatives +Requires(postun): %{_sbindir}/update-alternatives + +Obsoletes: %{name} < 9.82-2 + +%description -n network-scripts +This package contains the legacy scripts for activating & deactivating of most +network interfaces. It also provides a legacy version of 'network' service. + +The 'network' service is enabled by default after installation of this package, +and if the network-scripts are installed alongside NetworkManager, then the +ifup/ifdown commands from network-scripts take precedence over the ones provided +by NetworkManager. + +If user has both network-scripts & NetworkManager installed, and wishes to +use ifup/ifdown from NetworkManager primarily, then they has to run command: + $ update-alternatives --config ifup + +Please note that running the command above will also disable the 'network' +service. # --------------- @@ -159,9 +175,6 @@ Obsoletes: %{name} < 9.82-2 This package provides script & configuration file for setting up read-only root support. Additional configuration is required after installation. -Please note that readonly-root package is considered deprecated with limited support. -Please use systemd-volatile-root functionality instead, if possible. - # === BUILD INSTRUCTIONS ====================================================== %prep @@ -170,21 +183,30 @@ Please use systemd-volatile-root functionality instead, if possible. # --------------- %build -%make_build PYTHON=%{__python3} +%make_build # --------------- %install -%make_install NO_NETWORK_SCRIPTS=true +%make_install # This installs the NLS language files: %find_lang %{name} -%if "%{_sbindir}" == "%{_bindir}" -# Some files get installed wrong, but if $(sbindir) is overriden, the build fails :( -mv -v %{buildroot}/usr/sbin/* %{buildroot}%{_bindir}/ +%ifnarch s390 s390x + rm -f %{buildroot}%{_sysconfdir}/sysconfig/network-scripts/ifup-ctc %endif +# Additional ways to access documentation: +install -m 0755 -d %{buildroot}%{_docdir}/network-scripts + +ln -s %{_docdir}/%{name}/sysconfig.txt %{buildroot}%{_docdir}/network-scripts/ +ln -sr %{_mandir}/man8/ifup.8 %{buildroot}%{_mandir}/man8/ifdown.8 + +# We are now using alternatives approach to better co-exist with NetworkManager: +touch %{buildroot}%{_sbindir}/ifup +touch %{buildroot}%{_sbindir}/ifdown + # ============================================================================= %post @@ -198,6 +220,24 @@ mv -v %{buildroot}/usr/sbin/* %{buildroot}%{_bindir}/ # --------------- +%post -n network-scripts +chkconfig --add network > /dev/null 2>&1 || : + +[ -L %{_sbindir}/ifup ] || rm -f %{_sbindir}/ifup +[ -L %{_sbindir}/ifdown ] || rm -f %{_sbindir}/ifdown + +%{_sbindir}/update-alternatives --install %{_sbindir}/ifup ifup %{_sysconfdir}/sysconfig/network-scripts/ifup 90 \ + --slave %{_sbindir}/ifdown ifdown %{_sysconfdir}/sysconfig/network-scripts/ifdown \ + --initscript network + +%preun -n network-scripts +if [ $1 -eq 0 ]; then + chkconfig --del network > /dev/null 2>&1 || : + %{_sbindir}/update-alternatives --remove ifup %{_sysconfdir}/sysconfig/network-scripts/ifup +fi + +# --------------- + %post -n netconsole-service %systemd_post netconsole.service @@ -236,6 +276,8 @@ mv -v %{buildroot}/usr/sbin/* %{buildroot}%{_bindir}/ # --------------- +%ghost %config(noreplace, missingok) %verify(not md5 size mtime) %{_sysconfdir}/rc.d/rc.local + %{_sysconfdir}/rc.d/init.d/functions # RC symlinks: @@ -245,43 +287,46 @@ mv -v %{buildroot}/usr/sbin/* %{buildroot}%{_bindir}/ # --------------- -%{_bindir}/usleep +%{_bindir}/* %{_sbindir}/consoletype %{_sbindir}/genhostid +%{_sbindir}/service %{_libexecdir}/import-state %{_libexecdir}/loadmodules %{_prefix}/lib/systemd/system/import-state.service %{_prefix}/lib/systemd/system/loadmodules.service - -%{_mandir}/man1/* - -# ============================================================================= - -%files -n initscripts-rename-device -%license COPYING - %{_prefix}/lib/udev/rename_device %{_udevrulesdir}/* -# --------------- - -%files -n initscripts-service -%license COPYING - -%dir %{_libexecdir}/%{name} -%dir %{_libexecdir}/%{name}/legacy-actions - -%{_sbindir}/service - +%{_mandir}/man1/* %{_mandir}/man8/service.* +# ============================================================================= + +%files -n network-scripts +%doc doc/examples/ +%dir %{_sysconfdir}/sysconfig/network-scripts + +%{_sysconfdir}/rc.d/init.d/network +%{_sysconfdir}/sysconfig/network-scripts/* + +%config(noreplace) %{_sysconfdir}/sysconfig/network-scripts/ifcfg-lo + +%ghost %{_sbindir}/ifup +%ghost %{_sbindir}/ifdown +%attr(4755,root,root) %{_sbindir}/usernetctl + +%{_mandir}/man8/ifup.* +%{_mandir}/man8/ifdown.* +%{_mandir}/man8/usernetctl.* +%{_docdir}/network-scripts/* + # --------------- %files -n netconsole-service -%license COPYING %config(noreplace) %{_sysconfdir}/sysconfig/netconsole %{_libexecdir}/netconsole @@ -290,8 +335,6 @@ mv -v %{buildroot}/usr/sbin/* %{buildroot}%{_bindir}/ # --------------- %files -n readonly-root -%license COPYING - %dir %{_sharedstatedir}/stateless %dir %{_sharedstatedir}/stateless/state %dir %{_sharedstatedir}/stateless/writable @@ -306,254 +349,6 @@ mv -v %{buildroot}/usr/sbin/* %{buildroot}%{_bindir}/ # ============================================================================= %changelog -* Thu Dec 11 2025 Jan Macku - 10.27-1 -- spec: add missing license files -- build(deps): bump actions/checkout from 5 to 6 -- build(deps): bump actions/upload-artifact from 4 to 5 -- build(deps): bump github/codeql-action from 3 to 4 -- ci: fix issues with missing base commit -- Translated using Weblate (Georgian) -- Translated using Weblate (Indonesian) -- Translated using Weblate (English (United Kingdom)) -- Translated using Weblate (Korean) -- Translated using Weblate (Turkish) -- man: add ifdown.8 -- build(deps): bump actions/checkout from 4 to 5 -- Translated using Weblate (Spanish) -- Translated using Weblate (Georgian) -- Translated using Weblate (Korean) -- Translated using Weblate (Portuguese (Brazil)) -- Translated using Weblate (Polish) -- Translated using Weblate (Greek) -- Translated using Weblate (Greek) -- Translated using Weblate (Spanish) -- Translated using Weblate (Georgian) -- Translated using Weblate (Greek) -- Translated using Weblate (Italian) -- Translated using Weblate (Chinese (Traditional) (zh_TW)) -- Translated using Weblate (Spanish) -- Translated using Weblate (Finnish) -- retry arping one more time in ifup-eth when sendto failed -- Translated using Weblate (French) -- ci: add dependency glib-2.0 -- network-functions: Fix a bug in is_nm_handling() - -* Tue Aug 27 2024 Jan Macku - 10.26-1 -- Translated using Weblate (Turkish) -- netconsole: var/lock -> run/lock -- netconsole: source sysconfig/network only if it exists -- netconsole: remove unused variables -- netconsole: remove trailing whitespaces -- Translated using Weblate (Turkish) - -* Tue Jun 25 2024 Jan Macku - 10.25-1 -- Revert "fix: return support for network-scripts for Fedora 40" - -* Wed May 29 2024 Jan Macku - 10.24-1 -- Fix build when %_bindir==%_sbindir - -* Tue Apr 16 2024 Jan Macku - 10.23-1 -- fix: return support for network-scripts for Fedora 40 - -* Wed Mar 06 2024 Jan Macku - 10.22-1 -- Translated using Weblate (Georgian) -- rename_device: free path after it is used -- rename_device: remove trailing whitespaces - -* Wed Feb 07 2024 Jan Macku - 10.21-1 -- fedora: don't build network-scripts rpm in f40+ (2/2) -- ci: trigger copr build on every push to main branch -- ifup-routes: print warning when ADDRESS0 entry is missing -- fedora: don't build network-scripts rpm in f40+ - -* Tue Jan 30 2024 Jan Macku - 10.20-1 -- Translated using Weblate (Georgian) -- Add -r to while read as per shellcheck -- Fix splitting spaces in paths from statetab files -- build(deps): bump actions/upload-artifact from 3 to 4 -- build(deps): bump github/codeql-action from 2 to 3 -- Translated using Weblate (Georgian) -- Translated using Weblate (Czech) -- Translated using Weblate (Punjabi) -- Translated using Weblate (Portuguese (Brazil)) -- build(deps): bump redhat-plumbers-in-action/differential-shellcheck -- build(deps): bump actions/checkout from 3 to 4 -- Translated using Weblate (Hungarian) -- Translated using Weblate (Finnish) -- Translated using Weblate (Georgian) -- Translated using Weblate (Chinese (Simplified) (zh_CN)) -- Translated using Weblate (English (United Kingdom)) -- Translated using Weblate (Korean) -- Translated using Weblate (Ukrainian) -- Translated using Weblate (Swedish) -- Translated using Weblate (Polish) -- Update translation files -- Translated using Weblate (Korean) - -* Fri May 05 2023 Jan Macku - 10.19-1 -- ci: update Packit configuration -- spec: add missing changelog entry -- Revert "releng: Enable Packit to handle Fedora updates" -- Revert "releng: Convert to rpmautospec" -- doc: update translations -- spec: remove changelog - -* Thu Mar 23 2023 Jan Macku - 10.18-1 -- Translated using Weblate (English (United Kingdom)) -- migrate to SPDX license -- ci(Mergify): configuration update -- Translated using Weblate (German) -- Translated using Weblate (English (United Kingdom)) -- doc: update badges -- ci(lint): Add Differential PyLint GitHub Action -- ci(lint): Add permission `security-events: write` -- ci: Update Differential ShellCheck to `@v4` -- doc: fix markdown warnings and update badge -- ci: Setup CodeQL to replace deprecated LGTM -- releng: Enable Packit to handle Fedora updates -- releng: Convert to rpmautospec -- build(deps): bump redhat-plumbers-in-action/differential-shellcheck - -* Wed Aug 24 2022 Jan Macku - 10.17-1 -- service: Exit when `/etc/init.d` is missing -- ci: Update workflows to run on main branch -- ci: remove differential-shellcheck configs -- doc: Use main branch in links -- dependabot: Monthly updates -- ci(Mergify): configuration update -- Translated using Weblate (Georgian) -- Translated using Weblate (Georgian) -- ci: Update `packit.yml` -- ci: Update Github workflows & add Dependabot -- Translated using Weblate (Estonian) -- Translated using Weblate (Georgian) -- Translated using Weblate (Georgian) -- Translated using Weblate (Czech) -- Drop unnecessary obsoletes - -* Wed Feb 23 2022 Adam Williamson - 10.16-2 -- Drop unnecessary obsoletes - -* Wed Feb 23 2022 Jan Macku - 10.16-1 -- spec: Move rename_device to subpackage `initscripts-rename-device` - -* Tue Feb 15 2022 Jan Macku - 10.15-1 -- spec: network-scripts needs to depend on dbus-tools for NetworkManager detection -- packit: Run copr builds on release as well -- ci: Update `.packit.yml` to run on `c8s` `c9s` and `rawhide` -- Translated using Weblate (Finnish) -- ci: Use Differential ShellCheck action -- ci(Mergify): configuration update - -* Mon Jan 24 2022 Jan Macku - 10.14-1 -- ifup-routes: Revert quotes -- ifup-routes: Use `ip replace` only on type `route` -- ci(Mergify): configuration update -- ci: remove testing branch from `shellcheck_test.yml` - -* Thu Jan 13 2022 Jan Macku - 10.13-1 -- ifup-routes: Log when using `ip $type replace` -- ifup-routes: Use `ip route repace` to avoid race -- Translated using Weblate (German) -- Add LGTM badges to README -- ci: set default merge method to rebase -- ci: disable comments under opened PR in order to fix CI -- network scripts: do not use c-style for-loop -- network scripts: replace "<<<" with pipe -- rc.d/functions: do not use "+=" to concatenate string -- ci: Use default github-token (#395) -- ci(Mergify): configuration update (#394) -- ci: Output shellcheck results using PR comments (#393) -- ci: Update path to csdiff repository (#391) -- spec: Fix issue with $NEXT_VERSION (#390) -- Translated using Weblate (Indonesian) -- Translated using Weblate (Spanish) -- Translated using Weblate (Czech) - -* Fri Sep 03 2021 Jan Macku - 10.12-1 -- spec: Update relation between initscripts and initscripts-service (#386) - -* Fri Aug 27 2021 Jan Macku - 10.11-1 -- specfile: Update obsoletes to allow upgrades (#385) - -* Thu Aug 26 2021 Jan Macku - 10.10-1 -- Translated using Weblate (Friulian) (#381) -- Translations update from Weblate (#378) -- added veth support -- ifup-eth: add a new PERSISTENT_DHCLIENT_IPV6 option for IPv6 dhclient daemon -- ifdown removes veth pair if both peers are down -- rename_device: also support dracut-style kernel cmdline configuration -- spec: Mark network-scripts as deprecated -- spec: Initscripts now requires chkconfig (#374) -- Translations update from Weblate (#371) -- spec: Move service script into subpackage -- ci: Onboard initscripts to Packit -- ci: Migrate from Travis to GH Actions - -* Mon Feb 15 2021 Jan Macku - 10.09-1 -- doc: Document ARPING_WAIT and ARPING_UPDATE_WAIT -- network scripts: Avoid infinite loop of arping - -* Thu Feb 4 2021 Jan Macku - 10.08-1 -- network: fix condition in set_link_up() -- spec: sync with Fedora - -* Fri Jan 22 2021 Jan Macku - 10.07-1 -- doc: Fix "Duplicated string found in the file." -- doc: Documents RES_OPTIONS option -- doc: Documents ifcfg option LINKSTATUS -- ci: use up to date keywords and fix some warnings -- network: fix set_link_up() -- network: add option to keep the link down -- Rework of shell ci -- Translations update from Weblate - -* Fri Nov 13 2020 Jan Macku - 10.06-1 -- service: catch unsupported action keywords -- makefile: Use rpmdev-bumpspec's legacy date option - -* Fri Nov 06 2020 Jan Macku - 10.05-1 -- service: Prevent variables from globbing -- init.d/functions: Make usage msgs more clear -- network-scripts: Use net_log() instead of logger -- Allow updating rfkill switch status while in readonly root mode -- Add info into specfile about readonly-root deprecation -- Allow updating mlocate.db while in readonly root mode -- rc.d/functions: replace grep's --quiet with -q -- Add warning to warn user when ETHTOOL_OPTS is set and ethtool binary is missing - Olav Vitters -- Fix spacing in Makefile -- Add optional 'dev' keyword - -* Tue Jul 14 2020 Jan Macku - 10.04-1 -- Maintain permisision to set umask -- rwtab: Add support for chrony -- Correct spelling, IP, … -- Fix spelling, for more info -- Fix spelling of SELinux -- Translations update from Weblate - -* Tue Mar 24 2020 Jan Macku - 10.03-1 -- Replace grep -EL with subshell since -L changed behaviour -- Wait for scope link addresses as well as for scope global addresses -- Remove deprecated option -m of pidof -- Use function is_true for testing true conditions -- Adding new travis job for testing shell-scripts -- Remove zanata conf -- pull latest translations -- Update of translations and remove files with no translations -- Fix service network stop cmd -- Change spacing of service file to folow spacing of project -- network-function: bridges are created by ifup-eth -- Initscripts no longer care about rc.local -- Repalace hardcoded tests for yes and no with testing functions -- ifup-eth: Fix bridge setting stp option -- Fix bug in service(8) -- ifup-eth: Check that device name is set -- Fix missing python3 during build phase -- rc.d/functions: fix escape sequence being output under systemd service units -- Add ip6gre tunnel option -- ifup/ifdown: print DEPRECATION_WARNING_ISSUED waring info after source_config - * Fri Jun 28 2019 Jan Macku - 10.02-1 - network: don't fail with IFDOWN_ON_SHUTDOWN - rc.d/functions: remove support cgroups @@ -876,7 +671,7 @@ ng * Tue Jan 14 2014 Lukáš Nykrýn 9.51-1 - readonly-root: bind-mount only necessary subset of entries in rwtab - readonly-root: Add /var/log/audit/audit.log to rwtab -- readonly-root: restore SELinux context after bind mount +- readonly-root: restore selinux context after bind mount - rename_device: remove comments and trailing whitespaces - service: suggest using systemctl if unknown action is used - ifup-eth: fix typo in error message diff --git a/rebase.sh b/rebase.sh index 0015558..a7c52bf 100755 --- a/rebase.sh +++ b/rebase.sh @@ -16,10 +16,10 @@ curl https://raw.githubusercontent.com/fedora-sysv/initscripts/master/initscript spectool -g initscripts.spec # Make a local scratch build in mock first. If it fails, do not upload new tarball! -# srpm_file="$(basename $(fedpkg srpm | grep -i "wrote" | cut -d ':' -f 2))" -# arch="$(uname -p)" +srpm_file="$(basename $(fedpkg srpm | grep -i "wrote" | cut -d ':' -f 2))" +arch="$(uname -p)" -# mock -r "fedora-rawhide-${arch}" "${srpm_file}" || exit 2 +mock -r "fedora-rawhide-${arch}" "${srpm_file}" || exit 2 # Scratch build passed, the build should pass in Koji as well. Let's proceed: fedpkg new-sources "$(basename $(spectool -S -l initscripts.spec | gawk '{print $2;}'))" || exit 3 diff --git a/sources b/sources index e24e8e9..8c041d3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (initscripts-10.27.tar.gz) = 951f88158eaf7409f7d65c9875c9ba2611e6a805c17112ddbb34167a1638d87d2433c3962d20e66564669f3424dd7be1265cbe03a1a7d6b1c5413ed43d80148d +SHA512 (initscripts-10.02.tar.gz) = d233033c454040e3b07bb4ac80cc00fb3a68affca1297ab2c90fb82d917fa119c8c84b63532b8cd598afba2fa15fda05ec59c35fa064ab85005d7832253f0915