File lxqt-panel.spec of Package lxqt-panel

#
# spec file for package lxqt-panel
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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/
#


Name:           lxqt-panel
Version:        0.14.1
Release:        0
Summary:        Desktop Panel for LXQt
License:        GPL-2.0-or-later
Group:          System/GUI/LXQt
URL:            https://lxqt.org
Source:         https://downloads.lxqt.org/downloads/%{name}/%{version}/%{name}-%{version}.tar.xz
Source1:        https://downloads.lxqt.org/downloads/%{name}/%{version}/%{name}-%{version}.tar.xz.asc
Source2:        %{name}.keyring
BuildRequires:  cmake >= 3.1.0
BuildRequires:  extra-cmake-modules
BuildRequires:  fdupes
BuildRequires:  gcc-c++
BuildRequires:  libsensors4-devel
BuildRequires:  lxqt-build-tools
BuildRequires:  pkgconfig
BuildRequires:  cmake(KF5Solid)
BuildRequires:  cmake(KF5WindowSystem) >= 5.36.0
BuildRequires:  cmake(Qt5LinguistTools)
BuildRequires:  pkgconfig(Qt5Concurrent) >= 5.7.1
BuildRequires:  pkgconfig(Qt5DBus)
BuildRequires:  pkgconfig(Qt5Widgets)
BuildRequires:  pkgconfig(Qt5X11Extras)
BuildRequires:  pkgconfig(Qt5Xml)
BuildRequires:  pkgconfig(alsa)
BuildRequires:  pkgconfig(dbusmenu-qt5)
#uildRequires:  pkgconfig(libmenu-cache) >= 1.1.0
BuildRequires:  pkgconfig(libpulse)
BuildRequires:  pkgconfig(libstatgrab)
BuildRequires:  pkgconfig(lxqt) >= 0.14.1
BuildRequires:  pkgconfig(lxqt-globalkeys)
BuildRequires:  pkgconfig(lxqt-globalkeys-ui)
BuildRequires:  pkgconfig(sysstat-qt5)
BuildRequires:  pkgconfig(x11)
BuildRequires:  pkgconfig(xcb)
BuildRequires:  pkgconfig(xcb-damage)
BuildRequires:  pkgconfig(xcb-util)
BuildRequires:  pkgconfig(xcb-xkb)
BuildRequires:  pkgconfig(xcomposite)
BuildRequires:  pkgconfig(xdamage)
BuildRequires:  pkgconfig(xkbcommon)
BuildRequires:  pkgconfig(xkbcommon-x11)
BuildRequires:  pkgconfig(xrender)
Requires:       %{name}-branding = %{version}
Requires:       lxmenu-data
Requires:       menu-cache
Recommends:     %{name}-lang = %{version}-%{release}

%description
Brand new desktop Panel for LXQt

%lang_package

%package devel
Summary:        Devel files for lxqt-panel
Group:          Development/Libraries/C and C++
Requires:       %{name} = %{version}

%description devel
LXQt panel development files and headers

%package branding-upstream
Summary:        Upstream branding of %{name}
Group:          System/GUI/LXQt
Requires:       %{name} = %{version}
Supplements:    (%{name} and branding-upstream)
Conflicts:      %{name}-branding
Provides:       %{name}-branding = %{version}
BuildArch:      noarch

%description branding-upstream
This package provides the upstream look and feel for %{name}.

%prep
%setup -q
sed -i 's/,clock/,worldclock/' panel/resources/panel.conf
sed -i '/SETTINGS_DEFAULT_MIXER_COMMAND/s/\"\(pavucontrol\)\"/\"\1-qt\"/' plugin-volume/lxqtvolumeconfiguration.h
sed -i '/End Settings/s|^|\t<Exclude>\n\t\t<Category>X-SuSE-YaST</Category>\n\t</Exclude>\n|' \
    menu/lxqt-applications.menu
sed -i '/End Other/s|^|\t\t<Exclude>\n\t\t\t<Category>X-SuSE-YaST</Category>\n\t\t</Exclude>\n|' \
    menu/lxqt-applications.menu
sed -i '/End System Tools/s|^|\t<Exclude>\n\t\t<Category>X-Leave</Category>\n\t</Exclude>\n|' \
    menu/lxqt-applications.menu

%build
%if 0%{?suse_version}
export CXXFLAGS="%{optflags} -I/usr/include/pkg/libxkbcommon"
%endif
%cmake -DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now"

make %{?_smp_mflags}

%install
%cmake_install
%fdupes -s %{buildroot}/%{_datadir}

install -Dm 0644 %{buildroot}%{_datadir}/lxqt/panel.conf -t %{buildroot}%{_sysconfdir}/xdg/lxqt/
sed -i -e '/\[quicklaunch\]/s|$|\napps\\1\\desktop=/usr/share/applications/pcmanfm-qt.desktop|' \
    -e '/\[quicklaunch\]/s|$|\napps\\2\\desktop=/usr/share/applications/qterminal.desktop|' \
    -e '/\[quicklaunch\]/s|$|\napps\\size=2|' \
    %{buildroot}%{_sysconfdir}/xdg/lxqt/panel.conf
sed -i '/type=mainmenu/s|^|icon=/usr/share/lxqt/graphics/opensuse-light.png\n|' \
    %{buildroot}%{_sysconfdir}/xdg/lxqt/panel.conf
sed -i '/type=mainmenu/s/^/alignment=Left\nownIcon=true\nshowText=true\ntext=openSUSE\n/' \
    %{buildroot}%{_sysconfdir}/xdg/lxqt/panel.conf
sed -i '/plugins=/s/\(volume,\)/kbindicator,\1/' %{buildroot}%{_sysconfdir}/xdg/lxqt/panel.conf
cat >> %{buildroot}%{_sysconfdir}/xdg/lxqt/panel.conf <<-EOF

[kbindicator]
alignment=Right
show_caps_lock=false
show_num_lock=false
show_scroll_lock=false
show_layout=true
keeper_type=global
type=kbindicator
EOF

%find_lang %{name} --with-qt --all-name

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

%files
%license LICENSE
%doc AUTHORS
%dir %{_sysconfdir}/xdg/
%dir %{_sysconfdir}/xdg/autostart/
%dir %{_sysconfdir}/xdg/menus/
%dir %{_datadir}/desktop-directories/
%dir %{_datadir}/lxqt
%config %{_sysconfdir}/xdg/menus/lxqt-applications.menu
%{_bindir}/%{name}
%{_libdir}/%{name}
%{_datadir}/lxqt/%{name}
%{_datadir}/lxqt/panel.conf
%{_mandir}/man1/%{name}.1%{?ext_man}
%{_sysconfdir}/xdg/autostart/%{name}.desktop
%{_datadir}/desktop-directories/lxqt-leave.directory
%{_datadir}/desktop-directories/lxqt-settings.directory

%files devel
%{_includedir}/lxqt

%files branding-upstream
%dir %{_sysconfdir}/xdg/lxqt/
%config %{_sysconfdir}/xdg/lxqt/panel.conf

%files lang -f %{name}.lang
%dir %{_datadir}/lxqt
%dir %{_datadir}/lxqt/translations
%dir %{_datadir}/lxqt/translations/%{name}
%dir %{_datadir}/lxqt/translations/%{name}/colorpicker
%dir %{_datadir}/lxqt/translations/%{name}/cpuload
%dir %{_datadir}/lxqt/translations/%{name}/desktopswitch
%dir %{_datadir}/lxqt/translations/%{name}/directorymenu
#%%dir %%{_datadir}/lxqt/translations/%%{name}/dom
%dir %{_datadir}/lxqt/translations/%{name}/kbindicator
%dir %{_datadir}/lxqt/translations/%{name}/mainmenu
%dir %{_datadir}/lxqt/translations/%{name}/mount
%dir %{_datadir}/lxqt/translations/%{name}/networkmonitor
%dir %{_datadir}/lxqt/translations/%{name}/quicklaunch
%dir %{_datadir}/lxqt/translations/%{name}/sensors
%dir %{_datadir}/lxqt/translations/%{name}/showdesktop
%dir %{_datadir}/lxqt/translations/%{name}/spacer
%dir %{_datadir}/lxqt/translations/%{name}/statusnotifier
%dir %{_datadir}/lxqt/translations/%{name}/sysstat
%dir %{_datadir}/lxqt/translations/%{name}/taskbar
%dir %{_datadir}/lxqt/translations/%{name}/tray
%dir %{_datadir}/lxqt/translations/%{name}/volume
%dir %{_datadir}/lxqt/translations/%{name}/worldclock

%changelog
openSUSE Build Service is sponsored by