c-toxcore/c-toxcore.spec
Eric Schirra 25e76509ef Accepting request 665267 from home:EGDFree:branches:server:messaging
- update to 0.2.9
  * #1296 Add some const qualifiers
  * #1295 Implement all min/max functions for (un)signed int types.
  * #1293 Fix misaligned 4-byte access in trace logging.
  * #1291 Use correct path to test log to cat on error.
  * #1290 Display build log for autotools build on failure.
  * #1289 Enable auto tests under STRICT_ABI if static libs are available.
  * #1288 Add MIN_LOGGER_LEVEL to the Circle CI builds.
  * #1287 Avoid sending group messages to a peer before we have its group number
  * #1284 Use new WineHQ Debian package repository key
  * #1282 Merge irungentoo/master back into toktok/master.
  * #1281 Allow unauthenticated wine packages in the Windows build.
  * #1278 Add cmake option for building additional tests
  * #1277 Define tox_conference_id_size and tox_conference_uid_size
  * #1273 Avoid format truncation in save compatibility test
  * #1272 Upgrade bazel to 0.19.0 to fix the bazel build.
  * #1271 Return TOX_ERR_CONFERENCE_SEND_MESSAGE_NO_CONNECTION if we are not connected to any peers
  * #1268 Fix indices calculation for congestion control.
  * #1267 Improve handling of peers entering and leaving conferences
  * #1266 Expose offline conference peers in API
  * #1242 Fix critical stack overflow arising from VLA usage
  * #1239 Add some hopefully helpful documentation to the functions in mono_time.h
  * #1235 Change method of PK production for FAKE friend in DHT
  * #1234 Increase NOFILE limit for tox-bootstrapd
  * #1231 Use bool for IPv6 flag in test programs and DHT_bootstrap.
  * #1230 Add LOGGER_ASSERT for checking fatal error conditions.
  * #1229 Include CTest in CMakeLists.txt to get valgrind support.
  * #1228 Consistently use camel case enum names.
  * #1223 Add AUTOTEST option to CMakeLists.txt
  * #1221 Make tox-bootstrapd free memory on SIGINT and SIGTERM
  * #1218 Support DragonFlyBSD and prune unused variables.
  * #1215 Ensure save data unchanged after save and load
  * #1213 Make saving and loading the responsibility of Tox rather than Messenger
  * #1211 Some improvements to tox-bootstrapd's Dockerfile
  * #1210 Remove Alpine Linux bootstrap daemon dockerfile.
  * #1209 Improve Windows compatibility of toxav code.
  * #1206 Add LAN_discovery to the list of apidsl-generated files.
  * #1156 conferences saving
  * #1285 Persistent group titles get mixed up
  * #1276 How to run test case?
  * #1264 tox_conference_id_size() symbol missing
  * #1262 Fails to build with STRICT_ABI option
  * #1169 PK should not be generated with random_bytes
  * #1143 Test #1081
  * #956 friendlist access (add, delete, ...) causes crashes sometimes
  * #777 Proposal: TFCL [Tox Friend Capabilities Level]
  * #762 packet ranges not very clearly explained
  * #743 Proposal: reduce Video corruption even more by negotating the reference frame between sender and receiver
  * #735 Proposal: Tox MessageV2
  * #663 libvpx vulnerability
  * #626 please add documentation to: bwcontroller.c
  * #625 function names misleading in ToxAV
  * #617 WIP: ToxIdenticon - howto
  * #610 PACKET_LOSSY_AV_RESERVED 8 # why?
  * #609 payload_type hardcoded
  * #589 running a normal tox node as tcp relay is not possible
  * #584 [INFO]: network graphs 0.1.9 vs 0.1.10
  * #548 toxcore removes message receipts and filetransfers from memory, when client has short network outage
  * #375 Invalid bit rate prevents call

OBS-URL: https://build.opensuse.org/request/show/665267
OBS-URL: https://build.opensuse.org/package/show/server:messaging/c-toxcore?expand=0&rev=27
2019-01-13 10:44:12 +00:00

174 lines
5.7 KiB
RPMSpec

#
# spec file for package c-toxcore
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2013 Markus Kolb, Innsbruck, Austria.
#
# 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/
#
# See also http://en.opensuse.org/openSUSE:Specfile_guidelines
%define _soversion 2
Name: c-toxcore
Version: 0.2.9
Release: 0
Summary: Secure decentralized instant messaging application
License: GPL-3.0-only
Group: Productivity/Networking/Instant Messenger
Url: https://tox.chat/
Source0: https://github.com/TokTok/c-toxcore/archive/v%{version}.tar.gz#./%{name}-%{version}.tar.gz
Source1: %{name}.tmpfiles.d
Source2: https://github.com/TokTok/c-toxcore/releases/download/v%{version}/%{name}-%{version}.tar.gz.asc
Source3: %{name}.keyring
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: libconfig-devel
BuildRequires: libopus-devel
BuildRequires: libsodium-devel
BuildRequires: libtool
BuildRequires: libvpx-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(systemd)
Requires(pre): shadow
%{?systemd_requires}
%description
Project Tox, also known as Tox, is a FOSS instant messaging
application aimed to replace Skype.
With the rise of government monitoring programs,
Tox provides an easy to use application that allows you to connect
with friends and family without anyone else listening in.
While other big-name services require you to pay for features,
Tox is totally free and comes without advertising
%package devel
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: libtoxcore%{_soversion} = %{version}
%description devel
Development libraries and headers needed to build software using %{name}.
%package daemon
Summary: Bootstrap-daemon for toxcore
Group: Productivity/Networking/Instant Messenger
%description daemon
Bootstrap-daemon to dispose hashtable for toxcore.
%package -n libtoxcore%{_soversion}
Summary: Core library for toxcore
Group: System/Libraries
%description -n libtoxcore%{_soversion}
This are the Core library for toxcore.
%prep
%setup -q
# change location of bootstrap bin
sed -ri 's:%{_prefix}/local/bin/tox-bootstrapd:%{_bindir}/tox-bootstrapd:g' other/bootstrap_daemon/tox-bootstrapd.service
# change user and of bootstrapd
sed -ri 's:User=tox-bootstrapd:User=tox:g' other/bootstrap_daemon/tox-bootstrapd.service
sed -ri 's:Group=tox-bootstrapd:Group=toxcmd:g' other/bootstrap_daemon/tox-bootstrapd.service
# change location of bootstrap kyes
sed -ri 's:%{_localstatedir}/lib/tox-bootstrapd/keys:%{_sysconfdir}/tox/bootstrapd/keys:g' other/bootstrap_daemon/tox-bootstrapd.conf
%build
pushd build
cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DBUILD_TOXAV=ON \
-DMUST_BUILD_TOXAV=ON \
-DBOOTSTRAP_DAEMON=ON \
-DDHT_BOOTSTRAP=ON \
-DENABLE_STATIC=OFF \
..
make %{?_smp_mflags}
popd
%install
make install -C build PREFIX=%_prefix DESTDIR=%buildroot
# Install dir /var/run/graylog2-server
install -d -m 0755 %{buildroot}%{_prefix}/lib/tmpfiles.d/
install -m 0644 %{SOURCE1} %{buildroot}%{_prefix}/lib/tmpfiles.d/tox-bootstrapd.conf
# Install dir /var/lib/tox-bootstrapd
install -d -m 0755 %{buildroot}%{_localstatedir}/lib/tox-bootstrapd/
# Install dir /etc/tox/bootstrapd/keys
install -d -m 0700 %{buildroot}%{_sysconfdir}/tox/bootstrapd/keys
# Install dir /etc and bootstrap-config
mkdir -p %{buildroot}/%{_sysconfdir}
install -D -m 0640 other/bootstrap_daemon/tox-bootstrapd.conf %{buildroot}%{_sysconfdir}/tox/bootstrapd/tox-bootstrapd.conf
# Install init-scripts
mkdir -p %{buildroot}/%{_sbindir}
install -D -m 0644 other/bootstrap_daemon/tox-bootstrapd.service %{buildroot}%{_unitdir}/tox-bootstrapd.service
ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rctox-bootstrapd
%pre daemon
%service_add_pre tox-bootstrapd.service
# create tox-bootstrapd group
if ! getent group toxcmd >/dev/null; then
groupadd -r toxcmd
fi
# create tox-bootstrapd user
if ! getent passwd tox >/dev/null; then
useradd -r -g toxcmd -d %{_localstatedir}/lib/tox-bootstrapd \
-s /sbin/nologin -c "Tox Bootstrap" tox
fi
%post daemon
%service_add_post tox-bootstrapd.service
systemd-tmpfiles --create %{_prefix}/lib/tmpfiles.d/tox-bootstrapd.conf
%post -n libtoxcore%{_soversion} -p /sbin/ldconfig
%preun daemon
%service_del_preun tox-bootstrapd.service
%postun daemon
%service_del_postun tox-bootstrapd.service
%postun -n libtoxcore%{_soversion} -p /sbin/ldconfig
%files devel
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%dir %{_includedir}/tox
%{_includedir}/tox/*
%files
%license LICENSE
%doc README.md DONATORS CHANGELOG.md
%files daemon
%dir %{_sysconfdir}/tox
%dir %{_sysconfdir}/tox/bootstrapd
%config(noreplace) %{_sysconfdir}/tox/bootstrapd/tox-bootstrapd.conf
%{_bindir}/DHT_bootstrap
%{_bindir}/tox-bootstrapd
%{_unitdir}/tox-bootstrapd.service
%{_tmpfilesdir}/tox-bootstrapd.conf
%{_sbindir}/rctox-bootstrapd
%dir %{_localstatedir}/lib/tox-bootstrapd
%dir %attr(0770,tox,toxcmd) %{_sysconfdir}/tox/bootstrapd/keys
%files -n libtoxcore%{_soversion}
%{_libdir}/libtoxcore.so.%{_soversion}*
%changelog