diff --git a/quassel.conf b/quassel.conf index 3472bec..116979e 100644 --- a/quassel.conf +++ b/quassel.conf @@ -1,2 +1,8 @@ -LISTEN=127.0.0.1 -PORT=4242 \ No newline at end of file +# Configuration file for quasselcore service. + +# (List of) IP address(es) that quasselcore should listen on. +# Defaults to ::,127.0.0.1 +LISTEN=::,127.0.0.1 + +# Port that quasselcore runs on, defaults to 4242. +PORT=4242 diff --git a/quassel.spec b/quassel.spec index b84d293..fcea09b 100755 --- a/quassel.spec +++ b/quassel.spec @@ -4,7 +4,7 @@ Name: quassel Summary: A modern distributed IRC system Version: 0.12.3 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2 or GPLv3 Group: Applications/Internet @@ -24,8 +24,6 @@ BuildRequires: systemd Requires: oxygen-icon-theme -Requires(pre): shadow-utils - Provides: %{name}-gui = %{version}-%{release} Requires: %{name}-common = %{version}-%{release} @@ -34,6 +32,9 @@ Requires: %{name}-common = %{version}-%{release} Source1: quasselcore.service Source2: quassel.conf +# Firewalld service definition. +Source3: quassel.xml + %description Quassel IRC is a modern, distributed IRC client, meaning that one (or multiple) client(s) can attach @@ -58,6 +59,13 @@ BuildArch: noarch %package core Summary: Quassel core component Group: Applications/Internet + +# Required for the quassel user. +Requires(pre): shadow-utils +# Required for firewalld service. +Requires: firewalld-filesystem +Requires(post): firewalld-filesystem + %description core The Quassel IRC Core maintains a connection with the server, and allows for multiple clients to connect @@ -98,6 +106,10 @@ install -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/ install -d -m 0755 $RPM_BUILD_ROOT%{_unitdir} install -p -m 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_unitdir}/ +# Install firewalld service definition +install -d -m 0755 $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/services/ +install -p -m 0644 %{SOURCE3} $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/services/ + # Home directory for quassel user install -d -m 0750 $RPM_BUILD_ROOT%{quassel_data_dir} @@ -129,6 +141,8 @@ exit 0 # Install quassel service; also give quassel user ACLs on /var/lib/quassel. chown %{quassel_user}:%{quassel_user} %{quassel_data_dir} %systemd_post quasselcore.service +# Reload firewalld configuration. +%firewalld_reload %preun core %systemd_preun quasselcore.service @@ -156,6 +170,7 @@ chown %{quassel_user}:%{quassel_user} %{quassel_data_dir} %{quassel_data_dir} %{_unitdir}/quasselcore.service %config(noreplace) %{_sysconfdir}/quassel.conf +%{_prefix}/lib/firewalld/services/quassel.xml %files client %defattr(-,root,root,-) @@ -164,7 +179,11 @@ chown %{quassel_user}:%{quassel_user} %{quassel_data_dir} %changelog -* Wed Feb 24 2016 Ben Rosser 0.12.3-1 +* Wed Mar 16 2016 Ben Rosser 0.12.3-3 +- Modify quassel configuration to listen on all IPv4 and IPv6 interfaces +- Added firewalld service for tcp/4242 to core + +* Wed Feb 24 2016 Ben Rosser 0.12.3-2 - Merged patch from John Villalovos to add a service file - Added quassel user/group to -core subpackage - Added configuration file and startup script to -core subpackage diff --git a/quassel.xml b/quassel.xml new file mode 100644 index 0000000..a788b39 --- /dev/null +++ b/quassel.xml @@ -0,0 +1,6 @@ + + + quassel + Quassel is a distributed IRC client. The core keeps your IRC connections open, and then users can connect their graphical clients to the core over the quassel protocol. + +