diff --git a/cockpit.spec b/cockpit.spec index 7bb82ea..718cda3 100644 --- a/cockpit.spec +++ b/cockpit.spec @@ -1,32 +1,22 @@ # +# spec file for package cockpit +# +# Copyright (c) 2022 SUSE LLC # Copyright (C) 2014-2020 Red Hat, Inc. # -# Cockpit is free software; you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published by -# the Free Software Foundation; either version 2.1 of the License, or -# (at your option) any later version. -# -# Cockpit is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with Cockpit; If not, see . +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # -# -# This file is maintained at the following location: -# https://github.com/cockpit-project/cockpit/blob/main/tools/cockpit.spec -# -# If you are editing this file in another location, changes will likely -# be clobbered the next time an automated release is done. -# -# Check first cockpit-devel@lists.fedorahosted.org -# -# earliest base that the subpackages work on; the instances of this get computed/updated -# by tools/gen-spec-dependencies during "make dist", but keep a hardcoded fallback %define required_base 122 # we generally want CentOS packages to be like RHEL; special cases need to check %{centos} explicitly @@ -95,85 +85,86 @@ Patch101: hide-pcp.patch %endif %endif -BuildRequires: gcc -BuildRequires: pkgconfig(gio-unix-2.0) -BuildRequires: pkgconfig(json-glib-1.0) -BuildRequires: pkgconfig(polkit-agent-1) >= 0.105 -BuildRequires: pam-devel +BuildRequires: gcc +BuildRequires: pam-devel +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: pkgconfig(polkit-agent-1) >= 0.105 -BuildRequires: autoconf automake -BuildRequires: make -BuildRequires: /usr/bin/python3 +BuildRequires: /usr/bin/python3 +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: make %if 0%{?rhel} && 0%{?rhel} <= 8 # RHEL 8's gettext does not yet have metainfo.its -BuildRequires: gettext >= 0.19.7 -BuildRequires: libappstream-glib-devel +BuildRequires: gettext >= 0.19.7 +BuildRequires: libappstream-glib-devel %else -BuildRequires: gettext >= 0.21 +BuildRequires: gettext >= 0.21 %endif %if 0%{?build_basic} -BuildRequires: libssh-devel >= 0.8.5 +BuildRequires: libssh-devel >= 0.8.5 %endif -BuildRequires: openssl-devel -BuildRequires: gnutls-devel >= 3.4.3 -BuildRequires: zlib-devel -BuildRequires: pkgconfig(krb5) >= 1.11 -BuildRequires: libxslt-devel -BuildRequires: glib-networking -BuildRequires: sed +BuildRequires: glib-networking +BuildRequires: gnutls-devel >= 3.4.3 +BuildRequires: libxslt-devel +BuildRequires: openssl-devel +BuildRequires: sed +BuildRequires: zlib-devel +BuildRequires: pkgconfig(krb5) >= 1.11 -BuildRequires: glib2-devel >= 2.50.0 +BuildRequires: glib2-devel >= 2.50.0 # this is for runtimedir in the tls proxy ace21c8879 -BuildRequires: pkgconfig(libsystemd) >= 235 +BuildRequires: pkgconfig(libsystemd) >= 235 %if 0%{?suse_version} -BuildRequires: distribution-release -BuildRequires: libpcp-devel -BuildRequires: pcp-devel -BuildRequires: libpcp3 -BuildRequires: libpcp_import1 -BuildRequires: openssh -BuildRequires: distribution-logos -BuildRequires: wallpaper-branding +BuildRequires: distribution-logos +BuildRequires: distribution-release +BuildRequires: libpcp-devel +BuildRequires: libpcp3 +BuildRequires: libpcp_import1 +BuildRequires: openssh +BuildRequires: pcp-devel +BuildRequires: wallpaper-branding # needed for /var/lib/pcp directory ownership -BuildRequires: pcp +BuildRequires: pcp %else -BuildRequires: pcp-libs-devel -BuildRequires: openssh-clients -BuildRequires: docbook-style-xsl +BuildRequires: docbook-style-xsl +BuildRequires: openssh-clients +BuildRequires: pcp-libs-devel %endif -BuildRequires: krb5-server -BuildRequires: gdb +BuildRequires: gdb +BuildRequires: krb5-server # For documentation -BuildRequires: xmlto +BuildRequires: xmlto BuildRequires: selinux-policy BuildRequires: selinux-policy-%{selinuxtype} BuildRequires: selinux-policy-devel # for rebuilding nodejs bits -BuildRequires: npm -BuildRequires: sassc -BuildRequires: local-npm-registry +BuildRequires: npm +BuildRequires: local-npm-registry +BuildRequires: sassc # This is the "cockpit" metapackage. It should only # Require, Suggest or Recommend other cockpit-xxx subpackages -Requires: cockpit-bridge -Requires: cockpit-ws -Requires: cockpit-system +Requires: cockpit-bridge +Requires: cockpit-system +Requires: cockpit-ws # Optional components -Recommends: (cockpit-storaged if udisks2) -Recommends: (cockpit-packagekit if dnf) -Suggests: cockpit-pcp +Recommends: (cockpit-storaged if udisks2) +Recommends: (cockpit-packagekit if dnf) +Suggests: cockpit-pcp %if 0%{?rhel} == 0 -Recommends: (cockpit-networkmanager if NetworkManager) -Suggests: cockpit-selinux +Recommends: (cockpit-networkmanager if NetworkManager) +Suggests: cockpit-selinux %endif %if 0%{?rhel} && 0%{?centos} == 0 -Requires: subscription-manager-cockpit +Requires: subscription-manager-cockpit %endif %prep @@ -381,20 +372,19 @@ troubleshooting, interactive command-line sessions, and more. %{_datadir}/pixmaps/cockpit.png %doc %{_mandir}/man1/cockpit.1.gz - %package bridge -Summary: Cockpit bridge server-side component -Requires: glib-networking -Provides: cockpit-ssh = %{version}-%{release} +Summary: Cockpit bridge server-side component +Requires: glib-networking +Provides: cockpit-ssh = %{version}-%{release} # PR #10430 dropped workaround for ws' inability to understand x-host-key challenge -Conflicts: cockpit-ws < 181.x +Conflicts: cockpit-ws < 181.x # 233 dropped jquery.js, pages started to bundle it (commit 049e8b8dce) -Conflicts: cockpit-dashboard < 233 -Conflicts: cockpit-networkmanager < 233 -Conflicts: cockpit-storaged < 233 -Conflicts: cockpit-system < 233 -Conflicts: cockpit-tests < 233 -Conflicts: cockpit-docker < 233 +Conflicts: cockpit-dashboard < 233 +Conflicts: cockpit-docker < 233 +Conflicts: cockpit-networkmanager < 233 +Conflicts: cockpit-storaged < 233 +Conflicts: cockpit-system < 233 +Conflicts: cockpit-tests < 233 %description bridge The Cockpit bridge component installed server side and runs commands on the @@ -406,8 +396,8 @@ system on behalf of the web based user interface. %{_libexecdir}/cockpit-askpass %package doc -Summary: Cockpit deployment and developer guide -BuildArch: noarch +Summary: Cockpit deployment and developer guide +BuildArch: noarch %description doc The Cockpit Deployment and Developer Guide shows sysadmins how to @@ -421,40 +411,40 @@ embed or extend Cockpit. %{_docdir}/cockpit %package system -Summary: Cockpit admin interface package for configuring and troubleshooting a system -BuildArch: noarch -Requires: cockpit-bridge >= %{version}-%{release} +Summary: Cockpit admin interface package for configuring and troubleshooting a system +BuildArch: noarch +Requires: cockpit-bridge >= %{version}-%{release} %if !0%{?suse_version} -Requires: shadow-utils +Requires: shadow-utils %endif -Requires: grep +Requires: grep %if !0%{?sle_version} -Requires: /usr/bin/pwscore +Requires: /usr/bin/pwscore %endif -Requires: /usr/bin/date -Provides: cockpit-shell = %{version}-%{release} -Provides: cockpit-systemd = %{version}-%{release} -Provides: cockpit-tuned = %{version}-%{release} -Provides: cockpit-users = %{version}-%{release} -Obsoletes: cockpit-dashboard < %{version}-%{release} +Requires: /usr/bin/date +Provides: cockpit-shell = %{version}-%{release} +Provides: cockpit-systemd = %{version}-%{release} +Provides: cockpit-tuned = %{version}-%{release} +Provides: cockpit-users = %{version}-%{release} +Obsoletes: cockpit-dashboard < %{version}-%{release} %if 0%{?rhel} -Requires: NetworkManager >= 1.6 -Requires: kexec-tools -Requires: sos -Requires: sudo -Recommends: PackageKit -Recommends: setroubleshoot-server >= 3.3.3 -Suggests: NetworkManager-team -Provides: cockpit-kdump = %{version}-%{release} -Provides: cockpit-networkmanager = %{version}-%{release} -Provides: cockpit-selinux = %{version}-%{release} -Provides: cockpit-sosreport = %{version}-%{release} +Requires: NetworkManager >= 1.6 +Requires: kexec-tools +Requires: sos +Requires: sudo +Recommends: PackageKit +Recommends: setroubleshoot-server >= 3.3.3 +Suggests: NetworkManager-team +Provides: cockpit-kdump = %{version}-%{release} +Provides: cockpit-networkmanager = %{version}-%{release} +Provides: cockpit-selinux = %{version}-%{release} +Provides: cockpit-sosreport = %{version}-%{release} %endif %if 0%{?fedora} -Recommends: (reportd if abrt) +Recommends: (reportd if abrt) %endif # NPM modules which are also available as packages -Provides: bundled(xstatic-patternfly-common) = 3.59.5 +Provides: bundled(xstatic-patternfly-common) = 3.59.5 %description system This package contains the Cockpit shell and system configuration interfaces. @@ -463,23 +453,23 @@ This package contains the Cockpit shell and system configuration interfaces. %dir %{_datadir}/cockpit/shell/images %package ws -Summary: Cockpit Web Service -Requires: glib-networking -Requires: openssl -Requires: glib2 >= 2.50.0 -Requires: (selinux-policy >= %{_selinux_policy_version} if selinux-policy-%{selinuxtype}) +Summary: Cockpit Web Service +Requires: glib-networking +Requires: glib2 >= 2.50.0 +Requires: openssl +Requires: (selinux-policy >= %{_selinux_policy_version} if selinux-policy-%{selinuxtype}) Requires(post): (policycoreutils if selinux-policy-%{selinuxtype}) -Conflicts: firewalld < 0.6.0-1 -Recommends: sscg >= 2.3 -Recommends: system-logos -Suggests: sssd-dbus +Conflicts: firewalld < 0.6.0-1 +Recommends: sscg >= 2.3 +Recommends: system-logos +Suggests: sssd-dbus %if 0%{?suse_version} -Requires(pre): permissions -Requires: distribution-logos -Requires: wallpaper-branding +Requires(pre): permissions +Requires: distribution-logos +Requires: wallpaper-branding %endif # for cockpit-desktop -Suggests: python3 +Suggests: python3 # prevent hard python3 dependency for cockpit-desktop, it falls back to other browsers %global __requires_exclude_from ^%{_libexecdir}/cockpit-client$ @@ -602,11 +592,11 @@ fi %if 0%{?rhel} == 0 %package kdump -Summary: Cockpit user interface for kernel crash dumping -Requires: cockpit-bridge >= 130 -Requires: cockpit-shell >= 130 -Requires: kexec-tools -BuildArch: noarch +Summary: Cockpit user interface for kernel crash dumping +Requires: cockpit-bridge >= 130 +Requires: cockpit-shell >= 130 +Requires: kexec-tools +BuildArch: noarch %description kdump The Cockpit component for configuring kernel crash dumping. @@ -616,11 +606,11 @@ The Cockpit component for configuring kernel crash dumping. %if !0%{?suse_version} %package sosreport -Summary: Cockpit user interface for diagnostic reports -Requires: cockpit-bridge >= 122 -Requires: cockpit-shell >= 122 -Requires: sos -BuildArch: noarch +Summary: Cockpit user interface for diagnostic reports +Requires: cockpit-bridge >= 122 +Requires: cockpit-shell >= 122 +Requires: sos +BuildArch: noarch %description sosreport The Cockpit component for creating diagnostic reports with the @@ -632,13 +622,13 @@ sosreport tool. %endif %package networkmanager -Summary: Cockpit user interface for networking, using NetworkManager -Requires: cockpit-bridge >= 186 -Requires: cockpit-shell >= 186 -Requires: NetworkManager >= 1.6 +Summary: Cockpit user interface for networking, using NetworkManager +Requires: NetworkManager >= 1.6 +Requires: cockpit-bridge >= 186 +Requires: cockpit-shell >= 186 # Optional components -Recommends: NetworkManager-team -BuildArch: noarch +Recommends: NetworkManager-team +BuildArch: noarch %description networkmanager The Cockpit component for managing networking. This package uses NetworkManager. @@ -650,11 +640,11 @@ The Cockpit component for managing networking. This package uses NetworkManager %if 0%{?rhel} == 0 && !0%{?suse_version} %package selinux -Summary: Cockpit SELinux package -Requires: cockpit-bridge >= 122 -Requires: cockpit-shell >= 122 -Requires: setroubleshoot-server >= 3.3.3 -BuildArch: noarch +Summary: Cockpit SELinux package +Requires: cockpit-bridge >= 122 +Requires: cockpit-shell >= 122 +Requires: setroubleshoot-server >= 3.3.3 +BuildArch: noarch %description selinux This package contains the Cockpit user interface integration with the @@ -681,20 +671,20 @@ Dummy package from building optional packages only; never install or publish me. %if 0%{?build_optional} %package -n cockpit-storaged -Summary: Cockpit user interface for storage, using udisks -Requires: cockpit-shell >= 266 -Requires: udisks2 >= 2.9 -Recommends: udisks2-lvm2 >= 2.9 -Recommends: udisks2-iscsi >= 2.9 -Recommends: device-mapper-multipath -Recommends: clevis-luks -Requires: %{__python3} +Summary: Cockpit user interface for storage, using udisks +Requires: cockpit-shell >= 266 +Requires: udisks2 >= 2.9 +Recommends: clevis-luks +Recommends: device-mapper-multipath +Recommends: udisks2-iscsi >= 2.9 +Recommends: udisks2-lvm2 >= 2.9 +Requires: %{__python3} %if 0%{?suse_version} -Requires: python3-dbus-python +Requires: python3-dbus-python %else -Requires: python3-dbus +Requires: python3-dbus %endif -BuildArch: noarch +BuildArch: noarch %description -n cockpit-storaged The Cockpit component for managing storage. This package uses udisks. @@ -704,11 +694,11 @@ The Cockpit component for managing storage. This package uses udisks. %{_datadir}/metainfo/org.cockpit-project.cockpit-storaged.metainfo.xml %package -n cockpit-tests -Summary: Tests for Cockpit -Requires: cockpit-bridge >= 138 -Requires: cockpit-system >= 138 -Requires: openssh-clients -Provides: cockpit-test-assets = %{version}-%{release} +Summary: Tests for Cockpit +Requires: cockpit-bridge >= 138 +Requires: cockpit-system >= 138 +Requires: openssh-clients +Provides: cockpit-test-assets = %{version}-%{release} %description -n cockpit-tests This package contains tests and files used while testing Cockpit. @@ -718,7 +708,7 @@ These files are not required for running Cockpit. %{_prefix}/%{__lib}/cockpit-test-assets %package devel -Summary: Development files for for Cockpit +Summary: Development files for for Cockpit %description devel This package contains files used to develop cockpit modules @@ -727,9 +717,9 @@ This package contains files used to develop cockpit modules %{_datadir}/cockpit/devel %package -n cockpit-pcp -Summary: Cockpit PCP integration -Requires: cockpit-bridge >= 238.1.1 -Requires: pcp +Summary: Cockpit PCP integration +Requires: cockpit-bridge >= 238.1.1 +Requires: pcp %description -n cockpit-pcp Cockpit support for reading PCP metrics and loading PCP archives. @@ -742,13 +732,13 @@ Cockpit support for reading PCP metrics and loading PCP archives. systemctl reload-or-try-restart pmlogger %package -n cockpit-packagekit -Summary: Cockpit user interface for packages -BuildArch: noarch -Requires: cockpit-bridge >= 186 -Requires: PackageKit -Recommends: python3-tracer +Summary: Cockpit user interface for packages +BuildArch: noarch +Requires: PackageKit +Requires: cockpit-bridge >= 186 +Recommends: python3-tracer # HACK: https://bugzilla.redhat.com/show_bug.cgi?id=1800468 -Requires: polkit +Requires: polkit %description -n cockpit-packagekit The Cockpit components for installing OS updates and Cockpit add-ons, @@ -759,5 +749,4 @@ via PackageKit. #/ build optional extension packages %endif -# The changelog is automatically generated and merged %changelog diff --git a/remove-pwscore.patch b/remove-pwscore.patch index 9ad1cd8..3fee3b5 100644 --- a/remove-pwscore.patch +++ b/remove-pwscore.patch @@ -30,14 +30,14 @@ Index: cockpit/pkg/lib/cockpit-components-password.jsx }); } -@@ -51,6 +54,7 @@ export const PasswordFormFields = ({ - error_password, error_password_confirm, - idPrefix, change - }) => { +@@ -60,6 +63,7 @@ export const PasswordFormFields = ({ + setPassword(value); + change("password", value); + +/* - const [password, setPassword] = useState(undefined); - const [passwordConfirm, setConfirmPassword] = useState(undefined); - const [passwordStrength, setPasswordStrength] = useState(""); + if (value) { + password_quality(value) + .catch(ex => { @@ -84,6 +88,7 @@ export const PasswordFormFields = ({ variant = "warning"; else