SHA256
1
0
forked from cockpit/cockpit
Ludwig Nussel 2021-02-03 17:06:18 +00:00 committed by Git OBS Bridge
parent 72b504ad93
commit 3cbae481da

View File

@ -1,21 +1,33 @@
# #
# spec file for package cockpit
#
# Copyright (c) 2021 SUSE LLC
# Copyright (C) 2014-2020 Red Hat, Inc. # Copyright (C) 2014-2020 Red Hat, Inc.
# #
# All modifications and additions to the file contributed by third parties # Cockpit is free software; you can redistribute it and/or modify it
# remain the property of their copyright owners, unless otherwise agreed # under the terms of the GNU Lesser General Public License as published by
# upon. The license for this file, and modifications and additions to the # the Free Software Foundation; either version 2.1 of the License, or
# file, is the same license as for the pristine package itself (unless the # (at your option) any later version.
# 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 # Cockpit is distributed in the hope that it will be useful, but
# license that conforms to the Open Source Definition (Version 1.9) # WITHOUT ANY WARRANTY; without even the implied warranty of
# published by the Open Source Initiative. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# Please submit bugfixes or comments via https://bugs.opensuse.org/ #
# You should have received a copy of the GNU Lesser General Public License
# along with Cockpit; If not, see <http://www.gnu.org/licenses/>.
# #
#
# This file is maintained at the following location:
# https://github.com/cockpit-project/cockpit/blob/master/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
#
# Globals that may be defined elsewhere
# * Version 122
# * wip 1
#
# earliest base that the subpackages work on; the instances of this get computed/updated # 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 # by tools/gen-spec-dependencies during "make dist", but keep a hardcoded fallback
@ -42,20 +54,21 @@
Name: cockpit Name: cockpit
Summary: Web Console for Linux servers Summary: Web Console for Linux servers
License: LGPL-2.1-or-later
License: LGPL-2.1-or-later
URL: https://cockpit-project.org/ URL: https://cockpit-project.org/
Version: 235 Version: 235
Release: 0
%if %{defined wip} %if %{defined wip}
Release: 1.%{wip}%{?dist}
Source0: cockpit-%{version}.tar.xz Source0: cockpit-%{version}.tar.xz
%else %else
Release: 0
Source0: https://github.com/cockpit-project/cockpit/releases/download/%{version}/cockpit-%{version}.tar.xz Source0: https://github.com/cockpit-project/cockpit/releases/download/%{version}/cockpit-%{version}.tar.xz
%endif %endif
Source1: cockpit.pam Source1: cockpit.pam
Source2: cockpit-rpmlintrc Source2: cockpit-rpmlintrc
Source99: README.packaging Source99: README.packaging
# in RHEL the source package is duplicated: cockpit (building basic packages like cockpit-{bridge,system}) # in RHEL the source package is duplicated: cockpit (building basic packages like cockpit-{bridge,system})
# and cockpit-appstream (building optional packages like cockpit-{machines,pcp}) # and cockpit-appstream (building optional packages like cockpit-{machines,pcp})
@ -75,69 +88,68 @@ Source99: README.packaging
%define build_optional 1 %define build_optional 1
%endif %endif
BuildRequires: gcc BuildRequires: gcc
BuildRequires: pam-devel BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(polkit-agent-1) >= 0.105
BuildRequires: pkgconfig(polkit-agent-1) >= 0.105 BuildRequires: pam-devel
BuildRequires: /usr/bin/python3 BuildRequires: autoconf automake
BuildRequires: autoconf BuildRequires: make
BuildRequires: automake BuildRequires: /usr/bin/python3
BuildRequires: gettext >= 0.19.7 BuildRequires: gettext >= 0.19.7
BuildRequires: make
%if 0%{?build_basic} %if 0%{?build_basic}
BuildRequires: libssh-devel >= 0.8.5 BuildRequires: libssh-devel >= 0.8.5
%endif %endif
BuildRequires: glib-networking BuildRequires: openssl-devel
BuildRequires: gnutls-devel >= 3.4.3 BuildRequires: gnutls-devel >= 3.4.3
BuildRequires: libxslt-devel BuildRequires: zlib-devel
BuildRequires: openssl-devel BuildRequires: pkgconfig(krb5) >= 1.11
BuildRequires: sed BuildRequires: libxslt-devel
BuildRequires: zlib-devel BuildRequires: glib-networking
BuildRequires: pkgconfig(krb5) >= 1.11 BuildRequires: sed
BuildRequires: glib2-devel >= 2.50.0 BuildRequires: glib2-devel >= 2.50.0
# this is for runtimedir in the tls proxy ace21c8879 # this is for runtimedir in the tls proxy ace21c8879
BuildRequires: pkgconfig(libsystemd) >= 235 BuildRequires: pkgconfig(libsystemd) >= 235
%if 0%{?suse_version} %if 0%{?suse_version}
BuildRequires: distribution-logos BuildRequires: distribution-release
BuildRequires: distribution-release BuildRequires: libpcp-devel
BuildRequires: libpcp-devel BuildRequires: pcp-devel
BuildRequires: libpcp3 BuildRequires: libpcp3
BuildRequires: libpcp_import1 BuildRequires: libpcp_import1
BuildRequires: openssh BuildRequires: openssh
BuildRequires: pcp-devel BuildRequires: distribution-logos
BuildRequires: wallpaper-branding BuildRequires: wallpaper-branding
%else %else
BuildRequires: docbook-style-xsl BuildRequires: pcp-libs-devel
BuildRequires: openssh-clients BuildRequires: openssh-clients
BuildRequires: pcp-libs-devel BuildRequires: docbook-style-xsl
%endif %endif
BuildRequires: gdb BuildRequires: krb5-server
BuildRequires: krb5-server BuildRequires: gdb
# For documentation # For documentation
BuildRequires: xmlto BuildRequires: xmlto
# This is the "cockpit" metapackage. It should only # This is the "cockpit" metapackage. It should only
# Require, Suggest or Recommend other cockpit-xxx subpackages # Require, Suggest or Recommend other cockpit-xxx subpackages
Requires: cockpit-bridge Requires: cockpit-bridge
Requires: cockpit-system Requires: cockpit-ws
Requires: cockpit-ws Requires: cockpit-system
# Optional components # Optional components
Recommends: (cockpit-storaged if udisks2) Recommends: (cockpit-storaged if udisks2)
Recommends: cockpit-packagekit Recommends: cockpit-packagekit
Suggests: cockpit-pcp Suggests: cockpit-pcp
%if 0%{?rhel} == 0 %if 0%{?rhel} == 0
Recommends: (cockpit-networkmanager if NetworkManager) Recommends: (cockpit-networkmanager if NetworkManager)
Suggests: cockpit-selinux Suggests: cockpit-selinux
%endif %endif
%if 0%{?rhel} && 0%{?centos} == 0 %if 0%{?rhel} && 0%{?centos} == 0
Recommends: subscription-manager-cockpit Recommends: subscription-manager-cockpit
%endif %endif
%prep %prep
@ -358,19 +370,20 @@ troubleshooting, interactive command-line sessions, and more.
%{_datadir}/pixmaps/cockpit.png %{_datadir}/pixmaps/cockpit.png
%doc %{_mandir}/man1/cockpit.1.gz %doc %{_mandir}/man1/cockpit.1.gz
%package bridge %package bridge
Summary: Cockpit bridge server-side component Summary: Cockpit bridge server-side component
Requires: glib-networking Requires: glib-networking
Provides: cockpit-ssh = %{version}-%{release} Provides: cockpit-ssh = %{version}-%{release}
# PR #10430 dropped workaround for ws' inability to understand x-host-key challenge # 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) # 233 dropped jquery.js, pages started to bundle it (commit 049e8b8dce)
Conflicts: cockpit-dashboard < 233 Conflicts: cockpit-dashboard < 233
Conflicts: cockpit-networkmanager < 233 Conflicts: cockpit-networkmanager < 233
Conflicts: cockpit-storaged < 233 Conflicts: cockpit-storaged < 233
Conflicts: cockpit-system < 233 Conflicts: cockpit-system < 233
Conflicts: cockpit-tests < 233 Conflicts: cockpit-tests < 233
Conflicts: cockpit-docker < 233 Conflicts: cockpit-docker < 233
%description bridge %description bridge
The Cockpit bridge component installed server side and runs commands on the The Cockpit bridge component installed server side and runs commands on the
@ -382,8 +395,8 @@ system on behalf of the web based user interface.
%{_libexecdir}/cockpit-askpass %{_libexecdir}/cockpit-askpass
%package doc %package doc
Summary: Cockpit deployment and developer guide Summary: Cockpit deployment and developer guide
BuildArch: noarch BuildArch: noarch
%description doc %description doc
The Cockpit Deployment and Developer Guide shows sysadmins how to The Cockpit Deployment and Developer Guide shows sysadmins how to
@ -397,45 +410,45 @@ embed or extend Cockpit.
%{_docdir}/cockpit %{_docdir}/cockpit
%package system %package system
Summary: Cockpit admin interface package for configuring and troubleshooting a system Summary: Cockpit admin interface package for configuring and troubleshooting a system
BuildArch: noarch BuildArch: noarch
Requires: cockpit-bridge >= %{version}-%{release} Requires: cockpit-bridge >= %{version}-%{release}
%if !0%{?suse_version} %if !0%{?suse_version}
Requires: shadow-utils Requires: shadow-utils
%endif %endif
Requires: /usr/bin/date Requires: grep
Requires: /usr/bin/pwscore Requires: /usr/bin/pwscore
Requires: grep Requires: /usr/bin/date
Provides: cockpit-shell = %{version}-%{release} Provides: cockpit-shell = %{version}-%{release}
Provides: cockpit-systemd = %{version}-%{release} Provides: cockpit-systemd = %{version}-%{release}
Provides: cockpit-tuned = %{version}-%{release} Provides: cockpit-tuned = %{version}-%{release}
Provides: cockpit-users = %{version}-%{release} Provides: cockpit-users = %{version}-%{release}
%if 0%{?rhel} %if 0%{?rhel}
Provides: cockpit-networkmanager = %{version}-%{release} Provides: cockpit-networkmanager = %{version}-%{release}
Obsoletes: cockpit-networkmanager Obsoletes: cockpit-networkmanager
Requires: NetworkManager >= 1.6 Requires: NetworkManager >= 1.6
Provides: cockpit-kdump = %{version}-%{release} Provides: cockpit-kdump = %{version}-%{release}
Requires: kexec-tools Requires: kexec-tools
Recommends: (sudo or polkit) Recommends: (sudo or polkit)
Recommends: PackageKit Recommends: PackageKit
Recommends: NetworkManager-team Recommends: NetworkManager-team
Recommends: setroubleshoot-server >= 3.3.3 Recommends: setroubleshoot-server >= 3.3.3
Provides: cockpit-selinux = %{version}-%{release} Provides: cockpit-selinux = %{version}-%{release}
Provides: cockpit-sosreport = %{version}-%{release} Provides: cockpit-sosreport = %{version}-%{release}
Requires: sos Requires: sos
Obsoletes: cockpit-dashboard Obsoletes: cockpit-dashboard
%endif %endif
%if 0%{?fedora} >= 29 %if 0%{?fedora} >= 29
# 0.7.0 (actually) supports task cancellation. # 0.7.0 (actually) supports task cancellation.
# 0.7.1 fixes tasks never announcing completion. # 0.7.1 fixes tasks never announcing completion.
Recommends: (reportd >= 0.7.1 if abrt) Recommends: (reportd >= 0.7.1 if abrt)
%endif %endif
# NPM modules which are also available as packages # NPM modules which are also available as packages
Provides: bundled(js-jquery) = 3.5.1 Provides: bundled(js-jquery) = 3.5.1
Provides: bundled(js-moment) = 2.29.1 Provides: bundled(js-moment) = 2.29.1
Provides: bundled(nodejs-flot) = 0.8.3 Provides: bundled(nodejs-flot) = 0.8.3
Provides: bundled(xstatic-bootstrap-datepicker-common) = 1.9.0 Provides: bundled(xstatic-bootstrap-datepicker-common) = 1.9.0
Provides: bundled(xstatic-patternfly-common) = 3.59.5 Provides: bundled(xstatic-patternfly-common) = 3.59.5
%description system %description system
This package contains the Cockpit shell and system configuration interfaces. This package contains the Cockpit shell and system configuration interfaces.
@ -444,14 +457,14 @@ This package contains the Cockpit shell and system configuration interfaces.
%dir %{_datadir}/cockpit/shell/images %dir %{_datadir}/cockpit/shell/images
%package ws %package ws
Summary: Cockpit Web Service Summary: Cockpit Web Service
Requires: glib-networking Requires: glib-networking
Requires: glib2 >= 2.50.0 Requires: openssl
Requires: openssl Requires: glib2 >= 2.50.0
Conflicts: firewalld < 0.6.0-1 Conflicts: firewalld < 0.6.0-1
Recommends: sscg >= 2.3 Recommends: sscg >= 2.3
Recommends: system-logos Recommends: system-logos
Suggests: sssd-dbus Suggests: sssd-dbus
%if 0%{?suse_version} %if 0%{?suse_version}
Requires(pre): permissions Requires(pre): permissions
%endif %endif
@ -539,11 +552,11 @@ test -f %{_bindir}/firewall-cmd && firewall-cmd --reload --quiet || true
%if 0%{?rhel} == 0 %if 0%{?rhel} == 0
%package kdump %package kdump
Summary: Cockpit user interface for kernel crash dumping Summary: Cockpit user interface for kernel crash dumping
Requires: cockpit-bridge >= 122 Requires: cockpit-bridge >= 122
Requires: cockpit-shell >= 122 Requires: cockpit-shell >= 122
Requires: kexec-tools Requires: kexec-tools
BuildArch: noarch BuildArch: noarch
%description kdump %description kdump
The Cockpit component for configuring kernel crash dumping. The Cockpit component for configuring kernel crash dumping.
@ -553,11 +566,11 @@ The Cockpit component for configuring kernel crash dumping.
%if !0%{?suse_version} %if !0%{?suse_version}
%package sosreport %package sosreport
Summary: Cockpit user interface for diagnostic reports Summary: Cockpit user interface for diagnostic reports
Requires: cockpit-bridge >= 122 Requires: cockpit-bridge >= 122
Requires: cockpit-shell >= 122 Requires: cockpit-shell >= 122
Requires: sos Requires: sos
BuildArch: noarch BuildArch: noarch
%description sosreport %description sosreport
The Cockpit component for creating diagnostic reports with the The Cockpit component for creating diagnostic reports with the
@ -569,13 +582,13 @@ sosreport tool.
%endif %endif
%package networkmanager %package networkmanager
Summary: Cockpit user interface for networking, using NetworkManager Summary: Cockpit user interface for networking, using NetworkManager
Requires: NetworkManager >= 1.6 Requires: cockpit-bridge >= 186
Requires: cockpit-bridge >= 186 Requires: cockpit-shell >= 186
Requires: cockpit-shell >= 186 Requires: NetworkManager >= 1.6
# Optional components # Optional components
Recommends: NetworkManager-team Recommends: NetworkManager-team
BuildArch: noarch BuildArch: noarch
%description networkmanager %description networkmanager
The Cockpit component for managing networking. This package uses NetworkManager. The Cockpit component for managing networking. This package uses NetworkManager.
@ -587,11 +600,11 @@ The Cockpit component for managing networking. This package uses NetworkManager
%if 0%{?rhel} == 0 && !0%{?suse_version} %if 0%{?rhel} == 0 && !0%{?suse_version}
%package selinux %package selinux
Summary: Cockpit SELinux package Summary: Cockpit SELinux package
Requires: cockpit-bridge >= 122 Requires: cockpit-bridge >= 122
Requires: cockpit-shell >= 122 Requires: cockpit-shell >= 122
Requires: setroubleshoot-server >= 3.3.3 Requires: setroubleshoot-server >= 3.3.3
BuildArch: noarch BuildArch: noarch
%description selinux %description selinux
This package contains the Cockpit user interface integration with the This package contains the Cockpit user interface integration with the
@ -618,20 +631,20 @@ Dummy package from building optional packages only; never install or publish me.
%if 0%{?build_optional} %if 0%{?build_optional}
%package -n cockpit-storaged %package -n cockpit-storaged
Summary: Cockpit user interface for storage, using udisks Summary: Cockpit user interface for storage, using udisks
Requires: cockpit-shell >= 186 Requires: cockpit-shell >= 186
Requires: udisks2 >= 2.6 Requires: udisks2 >= 2.6
Recommends: udisks2-lvm2 >= 2.6 Recommends: udisks2-lvm2 >= 2.6
Recommends: udisks2-iscsi >= 2.6 Recommends: udisks2-iscsi >= 2.6
Recommends: device-mapper-multipath Recommends: device-mapper-multipath
Recommends: clevis-luks Recommends: clevis-luks
Requires: %{__python3} Requires: %{__python3}
%if 0%{?suse_version} %if 0%{?suse_version}
Requires: python3-dbus-python Requires: python3-dbus-python
%else %else
Requires: python3-dbus Requires: python3-dbus
%endif %endif
BuildArch: noarch BuildArch: noarch
%description -n cockpit-storaged %description -n cockpit-storaged
The Cockpit component for managing storage. This package uses udisks. The Cockpit component for managing storage. This package uses udisks.
@ -641,12 +654,11 @@ The Cockpit component for managing storage. This package uses udisks.
%{_datadir}/metainfo/org.cockpit-project.cockpit-storaged.metainfo.xml %{_datadir}/metainfo/org.cockpit-project.cockpit-storaged.metainfo.xml
%package -n cockpit-tests %package -n cockpit-tests
Summary: Tests for Cockpit Summary: Tests for Cockpit
Requires: /usr/bin/ssh-add Requires: cockpit-bridge >= 138
Requires: /usr/bin/ssh-agent Requires: cockpit-system >= 138
Requires: cockpit-bridge >= 138 Requires: /usr/bin/ssh-agent /usr/bin/ssh-add
Requires: cockpit-system >= 138 Provides: cockpit-test-assets = %{version}-%{release}
Provides: cockpit-test-assets = %{version}-%{release}
%description -n cockpit-tests %description -n cockpit-tests
This package contains tests and files used while testing Cockpit. This package contains tests and files used while testing Cockpit.
@ -656,21 +668,21 @@ These files are not required for running Cockpit.
%{_prefix}/%{__lib}/cockpit-test-assets %{_prefix}/%{__lib}/cockpit-test-assets
%package -n cockpit-machines %package -n cockpit-machines
BuildArch: noarch BuildArch: noarch
Summary: Cockpit user interface for virtual machines Summary: Cockpit user interface for virtual machines
Requires: cockpit-bridge >= 186 Requires: cockpit-bridge >= 186
Requires: cockpit-system >= 186 Requires: cockpit-system >= 186
%if 0%{?suse_version} %if 0%{?suse_version}
Requires: libvirt-daemon-qemu Requires: libvirt-daemon-qemu
%else %else
Requires: libvirt-daemon-kvm Requires: libvirt-daemon-kvm
%endif %endif
Requires: libvirt-client Requires: libvirt-client
Requires: libvirt-dbus >= 1.2.0 Requires: libvirt-dbus >= 1.2.0
# Optional components # Optional components
Recommends: virt-install Recommends: virt-install
Recommends: libosinfo Recommends: libosinfo
Recommends: python3-gobject-base Recommends: python3-gobject-base
%description -n cockpit-machines %description -n cockpit-machines
The Cockpit components for managing virtual machines. The Cockpit components for managing virtual machines.
@ -681,8 +693,8 @@ If "virt-install" is installed, you can also create new virtual machines.
%{_datadir}/metainfo/org.cockpit-project.cockpit-machines.metainfo.xml %{_datadir}/metainfo/org.cockpit-project.cockpit-machines.metainfo.xml
%package -n cockpit-pcp %package -n cockpit-pcp
Summary: Cockpit PCP integration Summary: Cockpit PCP integration
Requires: cockpit-bridge >= 134.x Requires: cockpit-bridge >= 134.x
Requires(post): pcp Requires(post): pcp
%description -n cockpit-pcp %description -n cockpit-pcp
@ -696,10 +708,10 @@ Cockpit support for reading PCP metrics and loading PCP archives.
systemctl reload-or-try-restart pmlogger systemctl reload-or-try-restart pmlogger
%package -n cockpit-packagekit %package -n cockpit-packagekit
Summary: Cockpit user interface for packages Summary: Cockpit user interface for packages
BuildArch: noarch BuildArch: noarch
Requires: PackageKit Requires: cockpit-bridge >= 186
Requires: cockpit-bridge >= 186 Requires: PackageKit
%description -n cockpit-packagekit %description -n cockpit-packagekit
The Cockpit components for installing OS updates and Cockpit add-ons, The Cockpit components for installing OS updates and Cockpit add-ons,
@ -711,5 +723,4 @@ via PackageKit.
%endif %endif
# The changelog is automatically generated and merged # The changelog is automatically generated and merged
%changelog %changelog