From 135547e9857d1eb8e1b19767cf27ca9ebd904010d61d488dcaf236bfe94bfce0 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Tue, 13 Jun 2023 12:40:57 +0000 Subject: [PATCH] - Add fake openSUSE branding target when building on non-openSUSE builds so branding does not need to be removed OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:cockpit/cockpit?expand=0&rev=125 --- cockpit-293.obscpio | 2 +- cockpit.changes | 6 + cockpit.spec | 330 +++++++++++++++++++++----------------------- 3 files changed, 167 insertions(+), 171 deletions(-) diff --git a/cockpit-293.obscpio b/cockpit-293.obscpio index a1c173a..f232368 100644 --- a/cockpit-293.obscpio +++ b/cockpit-293.obscpio @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e7a845046cb9bff93904e71e687e688992de60223956d0dc84664bfb3293b09e +oid sha256:e0849a898a618e62efa8384f0712d14fc6a98f7b3d9a88ed1ea0f9193252c5b5 size 20389901 diff --git a/cockpit.changes b/cockpit.changes index b69ad22..c0f4495 100644 --- a/cockpit.changes +++ b/cockpit.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Jun 13 12:39:20 UTC 2023 - Adam Majer + +- Add fake openSUSE branding target when building on non-openSUSE + builds so branding does not need to be removed + ------------------------------------------------------------------- Fri Jun 2 13:26:45 UTC 2023 - Adam Majer diff --git a/cockpit.spec b/cockpit.spec index 31d5155..972bb98 100644 --- a/cockpit.spec +++ b/cockpit.spec @@ -1,32 +1,22 @@ # +# spec file for package cockpit +# +# Copyright (c) 2023 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; this is still required as long as -# we maintain the basic/optional split, then it can be replaced with just %{version}. %define required_base 266 # we generally want CentOS packages to be like RHEL; special cases need to check %{centos} explicitly @@ -110,87 +100,88 @@ Patch102: 0002-selinux-temporary-remove-setroubleshoot-section.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) +Recommends: (cockpit-networkmanager if NetworkManager) # c-ostree is not in RHEL 8/9 -Recommends: (cockpit-ostree if rpm-ostree) -Suggests: cockpit-selinux +Recommends: (cockpit-ostree if rpm-ostree) +Suggests: cockpit-selinux %endif %if 0%{?rhel} && 0%{?centos} == 0 -Requires: subscription-manager-cockpit +Requires: subscription-manager-cockpit %endif %if %{cockpit_enable_python} @@ -397,6 +388,7 @@ ls --hide={default,kubernetes,opensuse,registry,sle-micro,suse} | xargs rm -rv popd # need this in SUSE as post build checks dislike stale symlinks install -m 644 -D /dev/null %{buildroot}/run/cockpit/motd +install -m 644 -D /dev/null %{buildroot}/usr/share/cockpit/branding/opensuse/default-1920x1200.jpg ||: # remove files of not installable packages rm -r %{buildroot}%{_datadir}/cockpit/sosreport rm -f %{buildroot}/%{_prefix}/share/metainfo/org.cockpit-project.cockpit-sosreport.metainfo.xml @@ -444,18 +436,17 @@ 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} # 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 @@ -471,8 +462,8 @@ system on behalf of the web based user interface. %endif %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 @@ -486,37 +477,37 @@ 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_PROVIDES @@ -528,23 +519,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$ @@ -692,11 +683,11 @@ done %if 0%{?rhel} == 0 %package kdump -Summary: Cockpit user interface for kernel crash dumping -Requires: cockpit-bridge >= %{required_base} -Requires: cockpit-shell >= %{required_base} -Requires: kexec-tools -BuildArch: noarch +Summary: Cockpit user interface for kernel crash dumping +Requires: cockpit-bridge >= %{required_base} +Requires: cockpit-shell >= %{required_base} +Requires: kexec-tools +BuildArch: noarch %description kdump The Cockpit component for configuring kernel crash dumping. @@ -706,11 +697,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 >= %{required_base} -Requires: cockpit-shell >= %{required_base} -Requires: sos -BuildArch: noarch +Summary: Cockpit user interface for diagnostic reports +Requires: cockpit-bridge >= %{required_base} +Requires: cockpit-shell >= %{required_base} +Requires: sos +BuildArch: noarch %description sosreport The Cockpit component for creating diagnostic reports with the @@ -722,14 +713,14 @@ sosreport tool. %endif %package networkmanager -Summary: Cockpit user interface for networking, using NetworkManager -Requires: cockpit-bridge >= %{required_base} -Requires: cockpit-shell >= %{required_base} -Requires: NetworkManager >= 1.6 -Conflicts: cockpit-wicked +Summary: Cockpit user interface for networking, using NetworkManager +Requires: NetworkManager >= 1.6 +Requires: cockpit-bridge >= %{required_base} +Requires: cockpit-shell >= %{required_base} +Conflicts: cockpit-wicked # Optional components -Recommends: NetworkManager-team -BuildArch: noarch +Recommends: NetworkManager-team +BuildArch: noarch %description networkmanager The Cockpit component for managing networking. This package uses NetworkManager. @@ -742,9 +733,9 @@ The Cockpit component for managing networking. This package uses NetworkManager %if 0%{?rhel} == 0 && ( 0%{?suse_version} >= 1500 || 0%{?is_smo} ) %package selinux -Summary: Cockpit SELinux package -Requires: cockpit-bridge >= %{required_base} -Requires: cockpit-shell >= %{required_base} +Summary: Cockpit SELinux package +Requires: cockpit-bridge >= %{required_base} +Requires: cockpit-shell >= %{required_base} Requires: policycoreutils-python-utils >= 3.1 # setroubleshoot not yet in SLE Micro %if !0%{?is_smo} @@ -777,22 +768,22 @@ 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 >= %{required_base} -Requires: udisks2 >= 2.9 -Requires: %{__python3} +Summary: Cockpit user interface for storage, using udisks +Requires: %{__python3} +Requires: cockpit-shell >= %{required_base} +Requires: udisks2 >= 2.9 %if 0%{?suse_version} -Requires: libudisks2-0_lvm2 >= 2.9 -Recommends: multipath-tools -Requires: python3-dbus-python +Requires: libudisks2-0_lvm2 >= 2.9 +Recommends: multipath-tools +Requires: python3-dbus-python %else -Recommends: udisks2-lvm2 >= 2.9 -Recommends: udisks2-iscsi >= 2.9 -Recommends: device-mapper-multipath -Recommends: clevis-luks -Requires: python3-dbus +Recommends: clevis-luks +Recommends: device-mapper-multipath +Recommends: udisks2-iscsi >= 2.9 +Recommends: udisks2-lvm2 >= 2.9 +Requires: python3-dbus %endif -BuildArch: noarch +BuildArch: noarch %description -n cockpit-storaged The Cockpit component for managing storage. This package uses udisks. @@ -802,11 +793,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 >= %{required_base} -Requires: cockpit-system >= %{required_base} -Requires: openssh-clients -Provides: cockpit-test-assets = %{version}-%{release} +Summary: Tests for Cockpit +Requires: cockpit-bridge >= %{required_base} +Requires: cockpit-system >= %{required_base} +Requires: openssh-clients +Provides: cockpit-test-assets = %{version}-%{release} %description -n cockpit-tests This package contains tests and files used while testing Cockpit. @@ -818,7 +809,7 @@ These files are not required for running Cockpit. %{_unitdir}/cockpit-session@.service %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 @@ -827,9 +818,9 @@ This package contains files used to develop cockpit modules %{_datadir}/cockpit/devel %package -n cockpit-pcp -Summary: Cockpit PCP integration -Requires: cockpit-bridge >= %{required_base} -Requires: pcp +Summary: Cockpit PCP integration +Requires: cockpit-bridge >= %{required_base} +Requires: pcp %description -n cockpit-pcp Cockpit support for reading PCP metrics and loading PCP archives. @@ -842,13 +833,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 >= %{required_base} -Requires: PackageKit -Recommends: python3-tracer +Summary: Cockpit user interface for packages +BuildArch: noarch +Requires: PackageKit +Requires: cockpit-bridge >= %{required_base} +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, @@ -859,5 +850,4 @@ via PackageKit. #/ build optional extension packages %endif -# The changelog is automatically generated and merged %changelog