diff --git a/.gitignore b/.gitignore index 8a6507e..0fec55c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/subscription-manager-1.28.13.tar.gz -SOURCES/subscription-manager-cockpit-1.28.13.tar.gz +SOURCES/subscription-manager-1.28.21.tar.gz +SOURCES/subscription-manager-cockpit-1.28.21.tar.gz diff --git a/.subscription-manager.metadata b/.subscription-manager.metadata index 90bd12d..1bbab02 100644 --- a/.subscription-manager.metadata +++ b/.subscription-manager.metadata @@ -1,2 +1,2 @@ -d5be25d7f99405477c22abaa2d46435645b29967 SOURCES/subscription-manager-1.28.13.tar.gz -f1b50c388910858a54c19ac4087c6f19894c4af6 SOURCES/subscription-manager-cockpit-1.28.13.tar.gz +1dd5a94907fc9fe18a41c36e4db5da07f7abc8b1 SOURCES/subscription-manager-1.28.21.tar.gz +d3fd24967e348b97cc8480bc7e4f0295097f56b0 SOURCES/subscription-manager-cockpit-1.28.21.tar.gz diff --git a/SOURCES/CENTOS-use-centos-syspurposes.patch b/SOURCES/CENTOS-use-centos-syspurposes.patch deleted file mode 100644 index 52d2e66..0000000 --- a/SOURCES/CENTOS-use-centos-syspurposes.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/etc-conf/syspurpose/valid_fields.json b/etc-conf/syspurpose/valid_fields.json -index 1ac7ea0e..305ec4b9 100644 ---- a/etc-conf/syspurpose/valid_fields.json -+++ b/etc-conf/syspurpose/valid_fields.json -@@ -1,12 +1,10 @@ - { - "role": [ -- "Red Hat Enterprise Linux Server", -- "Red Hat Enterprise Linux Workstation", -- "Red Hat Enterprise Linux Compute Node" -+ "CentOS Linux Server", -+ "CentOS Linux Workstation", -+ "CentOS Linux Compute Node" - ], - "service_level_agreement": [ -- "Premium", -- "Standard", - "Self-Support" - ], - "usage": [ diff --git a/SOURCES/subscription-manager-centos-remove-redhat.repo.patch b/SOURCES/subscription-manager-centos-remove-redhat.repo.patch deleted file mode 100644 index 0001d86..0000000 --- a/SOURCES/subscription-manager-centos-remove-redhat.repo.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -Nurp subscription-manager-1.27.11.orig/src/subscription_manager/repofile.py subscription-manager-1.27.11/src/subscription_manager/repofile.py ---- subscription-manager-1.27.11.orig/src/subscription_manager/repofile.py 2020-07-28 11:06:10.000000000 -0500 -+++ subscription-manager-1.27.11/src/subscription_manager/repofile.py 2020-08-05 16:48:00.911709258 -0500 -@@ -368,11 +368,7 @@ class RepoFileBase(object): - Try to create new repo file. - :return: None - """ -- self.create_dir_path() -- if self.path_exists(self.path) or not self.manage_repos: -- return -- with open(self.path, 'w') as f: -- f.write(self.REPOFILE_HEADER) -+ pass - - def fix_content(self, content): - return content diff --git a/SPECS/subscription-manager.spec b/SPECS/subscription-manager.spec index 61c3ee4..fe6af11 100644 --- a/SPECS/subscription-manager.spec +++ b/SPECS/subscription-manager.spec @@ -93,6 +93,11 @@ %global use_inotify 0 %endif +# Do not ship initial-setup in CentOS +%if %{defined centos} +%global use_initial_setup 0 +%endif + %if (%{use_subman_gui} || %{use_initial_setup} || %{use_firstboot}) %global use_rhsm_gtk 1 %else @@ -243,8 +248,8 @@ %global use_rhsm_icons 0%{use_cockpit} || 0%{use_rhsm_gtk} Name: subscription-manager -Version: 1.28.13 -Release: 4%{?dist} +Version: 1.28.21 +Release: 3%{?dist} Summary: Tools and libraries for subscription and repository management %if 0%{?suse_version} Group: Productivity/Networking/System @@ -274,9 +279,6 @@ Source2: subscription-manager-rpmlintrc BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif -Patch100: CENTOS-use-centos-syspurposes.patch -Patch101: subscription-manager-centos-remove-redhat.repo.patch - # The following macro examples are preceeded by '%' to stop macro expansion # in the comments. (See https://bugzilla.redhat.com/show_bug.cgi?id=1224660 for # why this is necessary) @@ -321,8 +323,6 @@ Requires: python3-dbus Requires: %{?suse_version:dbus-1-python} %{!?suse_version:dbus-python} %endif -Requires: python3-requests - %if %{use_yum} Requires: %{?suse_version:yum} %{!?suse_version:yum >= 3.2.29-73} %endif @@ -362,6 +362,8 @@ Requires(post): %{?suse_version:aaa_base} %{!?suse_version:chkconfig} Requires(preun): %{?suse_version:aaa_base} %{!?suse_version:chkconfig, initscripts} %endif +Requires: python3-cloud-what = %{version}-%{release} + BuildRequires: %{?suse_version:python-devel >= 2.6} %{!?suse_version:%{py_package_prefix}-devel} BuildRequires: openssl-devel BuildRequires: gcc @@ -588,11 +590,9 @@ Group: System Environment/Base Requires: rhsm-gtk = %{version}-%{release} Requires: initial-setup-gui >= 0.3.9.24-1 Obsoletes: subscription-manager-firstboot < 1.15.3-1 -%if %{undefined centos} %if (0%{?rhel} >= 8) Supplements: initial-setup-gui %endif -%endif %description -n subscription-manager-initial-setup-addon This package contains the initial-setup screens for subscription-manager. @@ -643,6 +643,7 @@ Requires: subscription-manager-rhsm-certificates = %{version}-%{release} # Required by Fedora packaging guidelines %{?python_provide:%python_provide %{py_package_prefix}-rhsm} %if %{with python3} +Requires: python3-cloud-what = %{version}-%{release} Requires: python3-rpm Provides: python3-rhsm = %{version}-%{release} Obsoletes: python3-rhsm <= 1.20.3-1 @@ -743,10 +744,22 @@ of Red Hat subscriptions. There are many such interfaces, subscription-manager-g subscription-manager-initial-setup-addon, and subscription-manager-cockpit-plugin primarily. %endif + +%package -n python3-cloud-what +Summary: Python package for detection of public cloud provider +License: GPLv2 +Requires: python3-requests +%ifnarch aarch64 ppc ppc64 ppc64le s390 s390x +Requires: %{py_package_prefix}-dmidecode %{?dmidecode_version} +%endif + +%description -n python3-cloud-what +This package contains a Python module for detection and collection of public +cloud metadata and signatures. + + %prep %setup -q -%patch100 -p1 -%patch101 -p1 %build make -f Makefile VERSION=%{version}-%{release} CFLAGS="%{optflags}" \ @@ -831,9 +844,7 @@ desktop-file-validate %{buildroot}/usr/share/applications/subscription-manager-c # fake out the redhat.repo file %if %{use_yum} || %{use_dnf} mkdir %{buildroot}%{_sysconfdir}/yum.repos.d - %if %{undefined centos} touch %{buildroot}%{_sysconfdir}/yum.repos.d/redhat.repo - %endif %endif # fake out the certificate directories @@ -843,19 +854,13 @@ mkdir -p %{buildroot}%{_sysconfdir}/pki/entitlement %if %{use_container_plugin} # Setup cert directories for the container plugin: mkdir -p %{buildroot}%{_sysconfdir}/docker/certs.d/ -%if %{undefined centos} mkdir %{buildroot}%{_sysconfdir}/docker/certs.d/cdn.redhat.com install -m 644 %{_builddir}/%{buildsubdir}/etc-conf/redhat-entitlement-authority.pem %{buildroot}%{_sysconfdir}/docker/certs.d/cdn.redhat.com/redhat-entitlement-authority.crt %endif -%endif -%if %{undefined centos} mkdir -p %{buildroot}%{_sysconfdir}/etc/rhsm/ca install -m 644 %{_builddir}/%{buildsubdir}/etc-conf/redhat-entitlement-authority.pem %{buildroot}/%{_sysconfdir}/rhsm/ca/redhat-entitlement-authority.pem install -m 644 %{_builddir}/%{buildsubdir}/etc-conf/redhat-uep.pem %{buildroot}/%{_sysconfdir}/rhsm/ca/redhat-uep.pem -%else -rm %{buildroot}/%{_sysconfdir}/rhsm/ca/redhat-entitlement-authority.pem -%endif %if %use_cockpit # install cockpit dist targz @@ -881,36 +886,39 @@ find %{buildroot} -name \*.py* -exec touch -r %{SOURCE0} '{}' \; %endif %endif -%if %{defined centos} -sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscription-manager.conf -%endif - # base/cli tools use the gettext domain 'rhsm', while the # gnome-help tools use domain 'subscription-manager' %files -f rhsm.lang %defattr(-,root,root,-) + +# Make some unusual directories for suse part of subscription-manager %if 0%{?suse_version} %dir %{_sysconfdir}/pki +%dir %{_prefix}/share/polkit-1 +%dir %{_prefix}/share/polkit-1/actions +# Suse specific %if %{use_yum} %dir %{_sysconfdir}/yum %dir %{_sysconfdir}/yum/pluginconf.d %dir %{_prefix}/lib/yum-plugins/ %endif +# Suse specific %if %{use_dnf} %dir %{_sysconfdir}/dnf %dir %{_sysconfdir}/dnf/plugins %dir %{_prefix}/lib/dnf-plugins/ %endif +# Suse specific %if %{use_yum} || %{use_dnf} %dir %{_sysconfdir}/yum.repos.d %endif +%endif + %dir %{python_sitearch}/rhsmlib/candlepin -%dir %{python_sitearch}/rhsmlib/cloud -%dir %{python_sitearch}/rhsmlib/cloud/providers %dir %{python_sitearch}/rhsmlib/compat %dir %{python_sitearch}/rhsmlib/dbus %dir %{python_sitearch}/rhsmlib/dbus/facts @@ -924,9 +932,7 @@ sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscripti %dir %{python_sitearch}/subscription_manager/plugin %dir %{python_sitearch}/subscription_manager/scripts %dir %{_var}/spool/rhsm -%dir %{_prefix}/share/polkit-1 -%dir %{_prefix}/share/polkit-1/actions -%endif + %if 0%{?suse_version} && 0%{?suse_version} < 1315 %dir %{_prefix}/share/locale/ta_IN %dir %{_prefix}/share/locale/ta_IN/LC_MESSAGES @@ -1063,8 +1069,6 @@ sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscripti %dir %{python_sitearch}/rhsmlib %{python_sitearch}/rhsmlib/*.py* %{python_sitearch}/rhsmlib/candlepin/*.py* -%{python_sitearch}/rhsmlib/cloud/*.py* -%{python_sitearch}/rhsmlib/cloud/providers/*.py* %{python_sitearch}/rhsmlib/compat/*.py* %{python_sitearch}/rhsmlib/facts/*.py* %{python_sitearch}/rhsmlib/services/*.py* @@ -1074,8 +1078,6 @@ sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscripti %if %{with python3} %{python_sitearch}/rhsmlib/__pycache__ %{python_sitearch}/rhsmlib/candlepin/__pycache__ -%{python_sitearch}/rhsmlib/cloud/__pycache__ -%{python_sitearch}/rhsmlib/cloud/providers/__pycache__ %{python_sitearch}/rhsmlib/compat/__pycache__ %{python_sitearch}/rhsmlib/dbus/__pycache__ %{python_sitearch}/rhsmlib/dbus/facts/__pycache__ @@ -1264,12 +1266,10 @@ sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscripti %endif %{python_sitearch}/subscription_manager/plugin/container/*.py* -%if %{undefined centos} # Copying Red Hat CA cert into each directory: %attr(755,root,root) %dir %{_sysconfdir}/docker/certs.d/cdn.redhat.com %attr(644,root,root) %{_sysconfdir}/docker/certs.d/cdn.redhat.com/redhat-entitlement-authority.crt %endif -%endif %if %has_ostree %files -n subscription-manager-plugin-ostree @@ -1320,14 +1320,23 @@ sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscripti %{python2_sitearch}/rhsm/* %endif +%files -n python3-cloud-what +%defattr(-,root,root,-) +%attr(750,root,root) %dir %{_var}/cache/cloud-what +%dir %{python_sitearch}/cloud_what +%dir %{python_sitearch}/cloud_what/providers +%{python_sitearch}/cloud_what/* +%if %{with python3} +%{python_sitearch}/cloud_what/__pycache__ +%{python_sitearch}/cloud_what/providers/__pycache__ +%endif + %files -n subscription-manager-rhsm-certificates %attr(755,root,root) %dir %{_sysconfdir}/rhsm %attr(755,root,root) %dir %{_sysconfdir}/rhsm/ca -%if %{undefined centos} %attr(644,root,root) %{_sysconfdir}/rhsm/ca/redhat-entitlement-authority.pem %attr(644,root,root) %{_sysconfdir}/rhsm/ca/redhat-uep.pem -%endif %if %use_cockpit %files -n subscription-manager-cockpit @@ -1352,9 +1361,14 @@ sed -e '/^enabled=/ s/1/0/' -i %{buildroot}%{_sysconfdir}/dnf/plugins/subscripti %{_datadir}/icons/hicolor/symbolic/apps/*.svg %endif +%pre + +# Remove old *.egg-info empty directories not removed be previous versions of RPMs +# due to this BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1927245 +rmdir %{python_sitearch}/subscription_manager-*-*.egg-info 2> /dev/null || true + %if %use_systemd %if 0%{?suse_version} -%pre %service_add_pre rhsm.service %service_add_pre rhsm-facts.service %service_add_pre rhsmcertd.service @@ -1476,15 +1490,161 @@ gtk-update-icon-cache -f %{_datadir}/icons/hicolor &>/dev/null || : %endif %changelog -* Wed Aug 18 2021 Christopher Snyder 1.28.13-4 -- 1993897 - [RFE] subscription-manager should return a module stream's - "activity" in the modular profile (wpoteat@redhat.com) - -* Tue Jun 08 2021 Christopher Snyder 1.28.13-3 -- 1951053: Fix issue with dnf/yum variables (jhnidek@redhat.com) - -* Mon Mar 15 2021 Christopher Snyder 1.28.13-2 +* Thu Sep 02 2021 Christopher Snyder 1.28.21-3 +- 1944093: Updated translations +* Thu Aug 19 2021 Christopher Snyder 1.28.21-2 +- 1922151: Revert "hwprobe.py: Fix counting cores per cpu for Fujitsu A64FX CPU" + (ptoscano@redhat.com) + +* Wed Aug 18 2021 Christopher Snyder 1.28.21-1 +- Updated translations from weblate +- 1922151: Add /var/cache/cloud-what to python3-cloud-what RPM. + (jhnidek@redhat.com) +- 1922151: Use in-memory cache on AWS too (jhnidek@redhat.com) +- hwprobe.py: Fix counting cores per cpu for Fujitsu A64FX CPU + (m.mizuma@jp.fujitsu.com) +- 1980418: Add 'active' field to module stream profile (ianballou67@gmail.com) + +* Fri Jul 23 2021 Christopher Snyder 1.28.20-1 +- 1876828: Try to suppress errors in stderr when not run as root + (mhorky@redhat.com) +- 1924126: Fix profile upload on AWS systems (jhnidek@redhat.com) + +* Wed Jul 14 2021 Christopher Snyder 1.28.19-1 +- Translated using Weblate (German) (ljanda@redhat.com) +- Translated using Weblate (German) (patrick.vollandt@mein-gym.de) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Remove no arch from python3-cloud-what package (csnyder@redhat.com) +- 1976324: Added cloud_what to log root namespaces (#2704) (jhnidek@redhat.com) + +* Mon Jul 12 2021 Christopher Snyder 1.28.18-1 +- Removed .orig files, which leaked into main branch (jhnidek@redhat.com) +- Move cloud detector/collector to cloud-what package (jhnidek@redhat.com) +- Make Azure cloud collector more reliable (jhnidek@redhat.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Update translation files (noreply@weblate.org) +- Fixed reporting of AWS cloud facts (null value) (#2693) (jhnidek@redhat.com) +- New extraction for translatable strings (#2688) (ptoscano@redhat.com) +- Refactoring of cloud collector/detector and facts (#2657) + (jhnidek@redhat.com) +- 1973731: fix wording on error when listing syspurpose values + (ptoscano@redhat.com) +- 1971693: syspurpose: remove deprecation notices (#2683) (ptoscano@redhat.com) +- 1968420: improve description of rhsm.conf format (ptoscano@redhat.com) +- 1967210: Do not print warning, when valid value is provided + (jhnidek@redhat.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- 1971693: syspurpose: adjust deprecation messages (ptoscano@redhat.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Korean) (ljanda@redhat.com) +- Update translation files (noreply@weblate.org) +- Fixed white space before '(' (jhnidek@redhat.com) +- flake8: add more locally found issues (ptoscano@redhat.com) +- Remove extra whitespace before '(' (ptoscano@redhat.com) +- 1967780: improve placeholders in help text (ptoscano@redhat.com) +- Add missing second empty line after class/function (ptoscano@redhat.com) +- New extraction for translatable strings (ptoscano@redhat.com) +- Add flake8 configuration (ptoscano@redhat.com) +- build: drop version requirements for pep8 and flake8 (ptoscano@redhat.com) +- build: remove pyqver test requirement (ptoscano@redhat.com) +- jenkins: disambiguate virtualenv names (ptoscano@redhat.com) +- jenkins: switch stylish job to Python 3 (ptoscano@redhat.com) +- cockpit: Invoke setup.py with python3 (martin@piware.de) +- 1897767: improve wording for invalid syspurpose values (ptoscano@redhat.com) +- Translated using Weblate (Chinese (Simplified) (zh_CN)) (suanand@redhat.com) +- Translated using Weblate (Korean) (ljanda@redhat.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Italian) (toscano.pino@tiscali.it) + +* Mon Jun 07 2021 Christopher Snyder 1.28.17-1 +- 1920020: show error message when setting invalid default_log_level as well as + on every run until changed to a valid value (#2641) + (tmerry@redhat.com) +- 1897767: improve wording for missing or empty syspurpose values + (ptoscano@redhat.com) +- 1951057: Cherry Pick to Add in memory read of cache, delete SCA cert with not + needed. (#2618) (tmerry@redhat.com) +- 1896715: Set proper read permissions on certs (wpoteat@redhat.com) +- Update translation files (noreply@weblate.org) +- 1956764: New extraction for translatable strings (ptoscano@redhat.com) +- 1672805: 'Addons' is failing spell check and should be changed to 'Add-ons' + to match documentation (tmerry@redhat.com) +- 1638080: surround the syspurpose feedback in quotes (tmerry@redhat.com) +- 1949492: remove bogus %%changelog entries (ptoscano@redhat.com) +- 1637083: remove the unset PROPERTY VALUE from the Generic Commands + (tmerry@redhat.com) +- 1897767: what does 'No valid values provided for usage' mean to the user for + subscription-manager-1.28 branch (tmerry@redhat.com) +- 1879856: suppress the warning message when setting syspurpose values (tmerry@redhat.com) + +* Mon Apr 26 2021 Christopher Snyder 1.28.16-1 +- 1950015: fix typos in syspurpose(8) (#2604) (ptoscano@redhat.com) +- Updated translations for Korean and Italian from weblate (simmon@nplob.com) +- 1916540: Negative proxy tests occasionally encounter the wrong exception + handling (tmerry@redhat.com) +- 1880920: check for invalid addons (ptoscano@redhat.com) +- 1637083: Removed the parameters to the unset-addons subcommand + (tmerry@redhat.com) +- 1898552: refactor/fix collection of IP v4/v6 address info + (ptoscano@redhat.com) +- 1636950: modify description in the man page for syspurpose for the generic + commands (tmerry@redhat.com) +- cockpit: Enable TLS for mock insights server (martin@piware.de) +- cockpit: Update test API to 236 (martin@piware.de) +- cockpit: Replace obsolete wait_present() with wait_visible() + (martin@piware.de) +- cockpit: Adjust for changed services image (martin@piware.de) +- 1928072: Print warning message and don't do auto-attach (jhnidek@redhat.com) +- 1878133: Deprecation message for syspurpose (#2421) (wpoteat@redhat.com) +- 1819555: cockpit: translate untranslatable messages (ptoscano@redhat.com) +- cockpit: fix extraction of plural messages (ptoscano@redhat.com) +- 1863039: Fix issue with dnf/yum variables (jhnidek@redhat.com) +- 1878736: use our i18n functions instead of dnf ones (ptoscano@redhat.com) +- Switch dates returned by D-Bus ListInstalledProducts to ISO 8601 + (ptoscano@redhat.com) +- 1793501: switch dates returned by D-Bus GetPool to ISO 8601 + (ptoscano@redhat.com) +- ENT-2779: call format() on translated string (ptoscano@redhat.com) +- 1930037: cockpit: ensure /etc/pki/product exist (ptoscano@redhat.com) +- 1749395: Proper handling when a user does not have an org + (wpoteat@redhat.com) +- Add RHEL 8.5 releaser (csnyder@redhat.com) + +* Tue Mar 30 2021 Christopher Snyder 1.28.15-1 +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- make value possibly plural for addons in syspurpose man page + (tmerry@localhost.localdomain) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Italian) (toscano.pino@tiscali.it) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Italian) (toscano.pino@tiscali.it) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- update language of REPOS OPTIONS in subscription-manager man page + (tmerry@localhost.localdomain) +- Translated using Weblate (Korean) (simmon@nplob.com) +- change add-ons to addons (tmerry@localhost.localdomain) +- 1634780: typo in syspurpose man page (tmerry@localhost.localdomain) +- 1856832: add --org=ORG to the ROLE OPTIONS, USAGE OPTIONS and ADDONS OPTIONS + of the subscription-manager man pages (tmerry@localhost.localdomain) +- 1637083: add unset sections (tmerry@localhost.localdomain) +- 1920017: Remove a sentence from the subscription-manager man page. + (tmerry@localhost.localdomain) +- 1646718: Debrand message to not include Red Hat Subscription Manager but + instead with an entitlement server (tmerry@localhost.localdomain) +- 1682943: put a blank space back into a comment to separate two sentences + (tmerry@localhost.localdomain) +- 1857491: Add newline character to split a message into 2 lines + (tmerry@localhost.localdomain) +- 1920020: Set default_log_level to INFO when an invalid value is passed on the + command line (#2481) (31166354+tlhmerry9@users.noreply.github.com) - 1924921: Fix getting releases, when SCA is used (jhnidek@redhat.com) +- Translated using Weblate (Korean) (simmon@nplob.com) +- Added translation using Weblate (Sinhala) (r45xveza@pm.me) +- Added translation using Weblate (Sinhala) (r45xveza@pm.me) +- 1927245: Mark several dir as part of RPM (jhnidek@redhat.com) * Thu Feb 18 2021 Christopher Snyder 1.28.13-1 - Translated using Weblate (Chinese (Simplified) (zh_CN)) (suanand@redhat.com)