libQuotient/libQuotient.spec
Dead Mozay edfa87baaf Accepting request 1044003 from home:Dead_Mozay:matrix
- Update to version 0.7.0:
  * E2EE is the biggest part of this release, 
    + The following parts of E2EE are known to work:
      - foundations additional contributions and refactoring.
      - Olm/Megolm signalling with our parties/devices.
      - managing device and one-time keys.
      - sending and receiving (monstrous new encrypted messages.
      - encrypting/decrypting attachment.
      - retrieval and decryption of historical messages keys 
        for which are already in the database.
      - device verification.
    + What is not there yet:
      - historical Megolm sessions are not requested from other 
        devices/parties, so you will see quite a few undecryptable
        messages in rooms with past communication - this might be 
        fixed (if possible without breaking the API) in further 
        0.7.x releases.
      - secure server-side storage (SSSS) is not supported at 
        all for now, and will likely require API breakage so 
        will come in 0.8.
      - soft logout is not supported; this is also a subject of 0.8.
    + Because there's no soft logout the database for a given account 
      is completely reset upon a successful login attempt. This may 
      come as a very unpleasant surprise if you don't keep your 
      login session between client restarts; but this is a necessary
      trade-off for the current feature set (see #546 for the 
      discussion). Together with the rest of the above not-there-yet
      list, this means that you MUST NOT use E2EE with 
      libQuotient-backed clients as your only device(s) on 
      the account - there's quite a risk of losing encrypted
      conversations if anything happens to the database libQuotient
      keeps key material in, or if you lose your session and have
      to log in again. Did I mention the whole E2EE functionality
      is still in beta? Client authors are strongly recommended 
      to show big scary warnings against E2EE for now.
  * Read markers -> read receipts + fully read markers.

OBS-URL: https://build.opensuse.org/request/show/1044003
OBS-URL: https://build.opensuse.org/package/show/network:messaging:matrix/libQuotient?expand=0&rev=20
2022-12-21 05:26:59 +00:00

102 lines
2.7 KiB
RPMSpec

#
# spec file for package libQuotient
#
# 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/
#
%define soversion 0_7
%define sonum 0.7
%bcond_with e2ee
Name: libQuotient
Version: 0.7.0
Release: 0
Summary: Library for Qt Matrix Clients
License: LGPL-2.1-only
Group: Development/Libraries/C and C++
URL: https://github.com/quotient-im/libQuotient
Source0: https://github.com/quotient-im/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: pkgconfig
BuildRequires: cmake(Qt5Concurrent)
BuildRequires: cmake(Qt5Core) >= 5.9
BuildRequires: cmake(Qt5DBus)
BuildRequires: cmake(Qt5Gui)
BuildRequires: cmake(Qt5Keychain)
BuildRequires: cmake(Qt5Multimedia)
BuildRequires: cmake(Qt5Network)
%if %{with e2ee}
BuildRequires: cmake(Olm)
%endif
%description
Library for Qt-based Matrix chat clients. It is required by
Quaternion.
%package -n %{name}%{soversion}
Summary: Library for Qt Matrix Clients
Group: System/Libraries
%description -n %{name}%{soversion}
Library for Qt-based Matrix chat clients. It is required by
Quaternion.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: %{name}%{soversion} = %{version}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%autosetup -p1
%build
%cmake \
-DQuotient_INSTALL_TESTS=OFF \
%if %{with e2ee}
-DQuotient_ENABLE_E2EE=ON
%else
-DQuotient_ENABLE_E2EE=OFF
%endif
%cmake_build
%install
%cmake_install
# Not useful
rm -r %{buildroot}%{_datadir}/ndk-modules/
%post -n %{name}%{soversion} -p /sbin/ldconfig
%postun -n %{name}%{soversion} -p /sbin/ldconfig
%files -n %{name}%{soversion}
%doc README.md
%license COPYING
%{_libdir}/libQuotient.so.%{version}
%{_libdir}/libQuotient.so.%{sonum}
%files devel
%doc README.md
%license COPYING
%{_libdir}/pkgconfig/Quotient.pc
%{_libdir}/libQuotient.so
%{_libdir}/cmake/Quotient/
%{_includedir}/Quotient/
%changelog