Eric Schirra
bf603aea71
- Update to 0.2.15 * Bug Fixes - Reduce logging verbosity even more. @iphydf (#1984) - Reduce logging verbosity in TCP server. @iphydf (#1980) - Update to 0.2.14 * Features - Add WASM build for toxcore and websocket bootstrap node. @iphydf (#1950) - Add programs for creating savedata & bootstrap keys @nurupo (#1818) - Add automatic fuzz testing for c-toxcore @sudden6 (#1720) * Performance improvements - Make the key cracker a bit faster @sudden6 (#1622) * Bug Fixes - potential freeing of an immutable static buffer @nurupo (#1948) - Fix bootstrap on emscripten/wasm. @iphydf (#1945) - unintentional integer down-casts @JFreegman (#1928) - corruption in key files, making it unable to load when node starts. @Tha14 (#1923) - group av memory leak @JFreegman (#1926) - vbuffer overwrite in bootstrap config @JFreegman (#1917) - Fix toxav_basic_test buffer overflow. @iphydf (#1879) - don't count filetransfer as sending until accepted @sudden6 (#1878) - Fix some uninitialised memory errors found by valgrind. @iphydf (#1877) - a double-unlocking mutex in toxav @nurupo (#1832) - use correct sample size in toxav_basic_test @sudden6 (#1845) - possible unintended negative loop bound @JFreegman (#1836) - Fix file permission issue with toxchat/bootstrap-node Docker container @nurupo (#1765) - off-by-one error caused by integer division without proper cast @JFreegman (#1754) - Fixed uninitialised value copy. @iphydf (#1751) * Documentation - Add doxygen configuration and netlify publishing. @iphydf (#1974) * Maintenance (Grunt tasks) - Make the last few remaining top level comments doxygen style. @iphydf (#1972) - Sync all comments between header and source files. @iphydf (#1971) - Make run-infer script use docker. @iphydf (#1958) - Properly copy Node_format using serialized format @JFreegman (#1955) - Disable some cimple warnings for now. @iphydf (#1956) - use latest toktok-stack msan version @JFreegman (#1943) - Use latest instead of versioned toktok-stack image. @iphydf (#1940) - Rename bazel-release to -opt and -debug to -dbg. @iphydf (#1939) - Don't run sonar scan on pull requests. @iphydf (#1922) - Add a Bazel Buildifier CI job @robinlinden (#1933) - Add cpplint to the CI. @iphydf (#1914) - Run sonar scan on pull requests. @iphydf (#1918) - Add a make_single_file script, used for CI. @iphydf (#1916) - Expose public API headers as files in bazel. @iphydf (#1909) - Mark unsafe code as testonly. @iphydf (#1905) - Add mypy Python type check. @iphydf (#1884) - Add sonar-scan analysis on pushes. @iphydf (#1883) - Run static analysers in multiple variants. @iphydf (#1880) - Ignore some failures in bazel-tsan. @iphydf (#1876) - Add asan/tsan bazel builds. @iphydf (#1875) - Run tokstyle with 3 cores. @iphydf (#1866) - Enable layering check in all c-toxcore build files. @iphydf (#1873) - Enable compiler layering check. @iphydf (#1871) - Disable the OpenMP cracker in bazel for now. @iphydf (#1870) - Retry asan/tsan tests a few more times. @iphydf (#1867) - Get all* autotests working with MSVC @robinlinden (#1857) - Remove all references to Travis CI. @iphydf (#1862) - Add a GH Actions code coverage job @robinlinden (#1850) - Remove old travis docker scripts. @iphydf (#1840) - Add bazel-debug build. @iphydf (#1837) - Add "tcc" and "compcert" compiler targets. @iphydf (#1830) - Add macOS build. @iphydf (#1820) - Login to dockerhub before trying to push to dockerhub. @iphydf (#1813) - Only push versioned docker image on tag builds. @iphydf (#1812) - Add bootstrap daemon docker image build. @iphydf (#1811) - Remove apidsl comment from tox.h. @iphydf (#1810) - Don't run CI on master branch pushes. @iphydf (#1807) - merge friend_connections from NGC fork @JFreegman (#1798) - Fix up a few source code comment and style issues. @iphydf (#1801) - Move cmake-freebsd-stage2 back into the toxcore repo. @iphydf (#1794) - Add FreeBSD build to CI. @iphydf (#1793) - Add cross compilation CI targets. @iphydf (#1792) - Update toktok-stack version. @iphydf (#1779) - Tie down the use of doxygen comments. @iphydf (#1778) - Remove config.h. @iphydf (#1774) - merge tcp_connection changes from new groupchats fork @JFreegman (#1769) - Fix gen-file.sh: it wasn't globbing properly. @iphydf (#1773) - Add .cc files to the static analysis. @iphydf (#1772) - merge DHT changes from new groupchats fork @JFreegman (#1768) - Use docker for the autotools ci build. @iphydf (#1766) - Add autotools build; exempt crypto_pwhash from tokstyle. @iphydf (#1762) - Use an incrementing version number for coverity scans. @iphydf (#1752) - Add missing sudo to coverity apt-get calls. @iphydf (#1738) - Add clang-tidy review github workflow. @iphydf (#1746) - Minor cleanups of warnings given by cppcheck. @iphydf (#1743) - Add workflow for running coverity scan. @iphydf (#1736) - Add logger to onion and onion announce objects @JFreegman (#1734) * Maintenance (Code cleanup) - Ensure we limit the system headers included in .h files. @iphydf (#1968) - Don't pass the whole DHT object to lan discovery. @iphydf (#1964) - make functions take const pointer to IP_Port wherever possible @JFreegman (#1954) - Properly copy Node_format using serialized format @JFreegman (#1955) - Add some toxav bounds/sanity checks @JFreegman (#1942) - small refactor of DHT getnodes function @JFreegman (#1938) - remove brackets from ip_ntoa ipv6 formatting @JFreegman (#1937) - make some non-const pointers const @JFreegman (#1929) - unintentional integer down-casts @JFreegman (#1928) - refactor group audio packet data handling @JFreegman (#1920) - replace magic numbers with appropriately named constants @JFreegman (#1915) - Remove our only use of flexible array members in toxcore. @iphydf (#1910) - Remove uses of strcpy and sprintf. @iphydf (#1912) - Split large switch statement into functions. @iphydf (#1906) - Even more pointer-to-const parameters. @iphydf (#1903) - Remove old check Suite compat layer. @iphydf (#1900) - Make parameters pointers-to-const where possible. @iphydf (#1901) - Make Networking_Core pointer-to-const where possible. @iphydf (#1899) - Use pointer cast instead of memcpy in qsort callback. @iphydf (#1898) - Deduplicate a somewhat complex loop in DHT.c. @iphydf (#1894) - Merge crypto_core and crypto_core_mem. @iphydf (#1881) - Stop using strerror directly. @iphydf (#1889) - Remove our only use of sprintf. @iphydf (#1891) - refactor toxav_call_control @JFreegman (#1841) - replace all instances of atoi with strtol @JFreegman (#1874) - Remove extra parens around function arguments. @iphydf (#1865) - Don't use memcpy where assignment can be used. @iphydf (#1864) - Use calloc instead of malloc for struct allocations. @iphydf (#1861) - Fix calloc argument order. @iphydf (#1860) - Remove useless parentheses. @iphydf (#1853) - make struct typedefs have the same name as their struct @JFreegman (#1844) - remove dead code @JFreegman (#1835) - Reduce the scope of for-loop iterator variables. @iphydf (#1834) - Remove hardening code from DHT @zugz (#1673) - put breaks inside case braces @JFreegman (#1816) - Sync doc comments in a few more .c/.h files. @iphydf (#1802) - Move sodium.h include to front of network.c. @iphydf (#1797) - remove redundant (and incorrect) comments @JFreegman (#1790) - Remove apidsl; remove crypto_memcmp. @iphydf (#1786) - fix format-source @JFreegman (#1783) - Remove apidsl for everything except the public API. @iphydf (#1775) - remove unused function argument from set_tcp_connection_status() @JFreegman (#1776) - Remove crypto_pwhash import. @iphydf (#1777) - merge onion.c changes from new groupchats fork @JFreegman (#1770) - Don't include "config.h" unless needed. @iphydf (#1761) - address some unused return values @JFreegman (#1759) - use crypto_memzero to wipe secret keys when no longer in use @JFreegman (#1753) - Fix some clang-tidy warnings and make them errors. @iphydf (#1747) - Put fatal errors where API return values should be impossible @JFreegman (#1740) - Enforce for loop consistency. @iphydf (#1744) - Use static_assert instead of preprocessor #error. @iphydf (#1735) - Avoid endian-specific code in crypto_core. @iphydf (#1727) - Minor fixes in test code. @iphydf (#1733) - Refactor kill_nonused_tcp() @JFreegman (#1732) - Ensure that error codes are always initialised. @iphydf (#1729) - Fix last instance of -Wcast-align and enable the warning. @iphydf (#1730) * Maintenance (Refactoring) - use proper method for generating random numbers in a range @JFreegman (#1975) - Deduplicate a bunch of code in TCP client/server. @iphydf (#1897) - Extract some functions from the big run_auto_test function. @iphydf (#1819) - rename variable to clarify purpose @sudden6 (#1789) - Split toxav_iterate into audio and video part @sudden6 (#1307) - Clean up friend loading. @sudden6 (#1333) - Fix previous refactor @nurupo (#1737) * Maintenance (Tests) - separate run_auto_tests into a library (revival of #1505) @JFreegman (#1932) - refactor autotest live network bootstrapping @JFreegman (#1924) - Add two more bootstrap/TCP nodes to autotests @JFreegman (#1887) - add ability for autotests to use TCP connections @JFreegman (#1815) - Make ERROR logging fatal in tests. @iphydf (#1758) - Add a simple test for ip_ntoa. @iphydf (#1742) OBS-URL: https://build.opensuse.org/request/show/954317 OBS-URL: https://build.opensuse.org/package/show/server:messaging/c-toxcore?expand=0&rev=36
172 lines
5.6 KiB
RPMSpec
172 lines
5.6 KiB
RPMSpec
#
|
|
# spec file for package c-toxcore
|
|
#
|
|
# Copyright (c) 2022 SUSE LLC
|
|
#
|
|
# 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.15
|
|
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
|