%global quassel_user quassel %global quassel_group quassel %global quassel_data_dir %{_var}/lib/quassel #%%global prever rc2 Name: quassel Epoch: 1 Version: 0.13.1 Release: 2%{?prever:.%{prever}}%{?dist} Summary: A modern distributed IRC system License: GPLv2 or GPLv3 URL: http://quassel-irc.org Source0: http://quassel-irc.org/pub/quassel-%{version}%{?prever:-%{prever}}.tar.bz2 Source1: quassel.conf Source2: quassel.service Source100: quassel-README.fedora Source101: quassel-oidentd.conf.sample BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: openssl-devel BuildRequires: openldap-devel BuildRequires: qt5-qtbase-devel BuildRequires: qt5-qtscript-devel BuildRequires: qt5-qttools-devel BuildRequires: qt5-qtwebkit-devel BuildRequires: systemd # Fedora-only deps %if 0%{?fedora} BuildRequires: dbusmenu-qt5-devel BuildRequires: phonon-qt5-devel BuildRequires: qca-qt5-devel %endif Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Provides: %{name}-gui = %{epoch}:%{version}-%{release} Requires: %{name}-common = %{epoch}:%{version}-%{release} %description Quassel IRC is a modern, cross-platform, distributed IRC client, meaning that one (or multiple) client(s) can attach to and detach from a central core -- much like the popular combination of screen and a text-based IRC client such as WeeChat, but graphical. In addition to this unique feature, we aim to bring a pleasurable, comfortable chatting experience to all major platforms, making communication with your peers not only convenient, but also ubiquitous available. %package client Summary: GUI Client for Quassel IRC Provides: %{name}-gui = %{epoch}:%{version}-%{release} Requires: %{name}-common = %{epoch}:%{version}-%{release} %description client The Quassel IRC client can be used to connect to a Quassel core which maintains a connection to one or more IRC Networks. %package common Summary: Common Files for Quassel IRC GUI Provides: %{name}-common = %{epoch}:%{version}-%{release} BuildArch: noarch %description common This package contains files that are shared between the different available GUI options. %package core Summary: Quassel core component %description core The Quassel IRC Core maintains a connection with the server, and allows for multiple clients to connect. %prep %autosetup -n %{name}-%{version}%{?prever:-%{prever}} cp -p %{SOURCE100} README.fedora %build mkdir build pushd build %{cmake} .. -DUSE_QT5=1 -DHAVE_SSL=1 -DWITH_LDAP=1 popd make %{?_smp_mflags} -C build %install rm -rf $RPM_BUILD_ROOT make install/fast DESTDIR=${RPM_BUILD_ROOT} -C build install -Dpm 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name} install -Dpm 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_unitdir}/%{name}.service install -dm 700 $RPM_BUILD_ROOT%{quassel_data_dir} rm -f $RPM_BUILD_ROOT%{_datadir}/pixmaps/%{name}.png %post client /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : %postun client if [ $1 -eq 0 ] ; then /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : fi %posttrans client /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %pre core getent group %{quassel_group} >/dev/null || groupadd -r %{quassel_group} getent passwd %{quassel_user} >/dev/null || \ useradd -r -g %{quassel_group} -d %{quassel_data_dir} -s /sbin/nologin \ -c "Quassel IRC" %{quassel_user} exit 0 %post core %systemd_post %{name}.service %preun core %systemd_preun %{name}.service %postun core %systemd_postun %{name}.service %files %doc AUTHORS ChangeLog COPYING README.md %doc gpl-2.0.txt gpl-3.0.txt %{_bindir}/%{name} %{_datadir}/applications/%{name}.desktop %files client %doc AUTHORS ChangeLog COPYING README.md %doc gpl-2.0.txt gpl-3.0.txt %{_bindir}/quasselclient %{_datadir}/applications/quasselclient.desktop %files common %doc AUTHORS ChangeLog COPYING README.md %doc gpl-2.0.txt gpl-3.0.txt %{_datadir}/%{name} %{_datadir}/icons/hicolor/*/*/* %files core %doc AUTHORS ChangeLog COPYING README.md README.fedora %doc gpl-2.0.txt gpl-3.0.txt %attr(711,%{quassel_user},%{quassel_group}) %dir %{quassel_data_dir} %{_bindir}/quasselcore %{_unitdir}/%{name}.service %config(noreplace) %{_sysconfdir}/sysconfig/%{name} %changelog * Sun Mar 29 2020 Felix Kaechele - 1:0.13.1-2 - rebuild * Tue Feb 26 2019 Felix Kaechele - 1:0.13.1-1 - update to 0.13.1 * Tue Dec 04 2018 Felix Kaechele - 1:0.13.0-1 - update to 0.13.0 * Wed Oct 31 2018 Felix Kaechele - 1:0.13-0.2.rc2 - update to 0.13-rc2 * Thu Sep 27 2018 Felix Kaechele - 1:0.13-0.1.rc1 - update to 0.13-rc1 - enable LDAP * Wed May 02 2018 Felix Kaechele - 1:0.12.5-1 - update to 0.12.5 * Mon May 23 2016 Felix Kaechele - 1:0.12.4-1 - update to 0.12.4 * Fri Mar 11 2016 Felix Kaechele - 1:0.12.3-1 - update to 0.12.3 - drop QT 5.5 patch * Wed Oct 28 2015 Felix Kaechele - 1:0.12.2-2 - Fix build with QT > 5.5 - Force SSL to be enabled - Add BR on qca-qt5-devel * Thu May 14 2015 Felix Kaechele - 1:0.12.2-1 - update to 0.12.2 * Sat Sep 27 2014 Felix Kaechele - 1:0.11.0-1 - update to 0.11.0 * Mon May 19 2014 Felix Kaechele - 1:0.10.0-2 - Complete rewrite of spec file