summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2024-03-13 21:58:48 -0400
committerbill-auger <mr.j.spam.me@gmail.com>2024-03-13 22:40:21 -0400
commit48a32def15495c53dca1108f78b092961e82418a (patch)
tree44222a1c0343306066d2fac176bb07d1e32e1e07
parentcb51f3013ba3b6a05ffc7ade53b1e2635646b89c (diff)
kopete: remove packages
deprecated upstream - removed by arch
-rw-r--r--libre/kopete/PKGBUILD64
-rw-r--r--libre/kopete/kopete-mediastreamer-4.3.patch84
-rw-r--r--libre/kopete/kopete-mediastreamer2.14.patch281
-rw-r--r--libre/kopete/kopete-openssl-1.1.patch307
-rw-r--r--libre/kopete/kopete-srtp2.patch154
-rw-r--r--nonprism/kopete/PKGBUILD91
-rw-r--r--nonprism/kopete/kopete-glibc-2.28.patch12
-rw-r--r--nonprism/kopete/kopete-mediastreamer2.14.patch281
-rw-r--r--nonprism/kopete/kopete-openssl-1.1.patch307
-rw-r--r--nonprism/kopete/kopete-srtp2.patch154
-rw-r--r--nonprism/kopete/libre-nonprism.patch98
11 files changed, 0 insertions, 1833 deletions
diff --git a/libre/kopete/PKGBUILD b/libre/kopete/PKGBUILD
deleted file mode 100644
index 294cc41e7..000000000
--- a/libre/kopete/PKGBUILD
+++ /dev/null
@@ -1,64 +0,0 @@
-# Maintainer (arch): Felix Yan <felixonmars@archlinux.org>
-# Maintainer (arch): Antonio Rojas <arojas@archlinux.org>
-# Contributor: Andrea Scarpino <andrea@archlinux.org>
-# Maintainer: Andreas Grapentin <andreas@grapentin.org>
-# Contributor: André Silva <emulatorman@hyperbola.info>
-# Contributor: jc_gargma <jc_gargma@iserlohn-fortress.net>
-
-pkgname=kopete
-pkgver=19.12.3
-pkgrel=1
-pkgrel+=.parabola1
-pkgdesc='Instant Messenger'
-pkgdesc+=', without nonfree Skype support'
-url='https://kde.org/applications/internet/kopete/'
-arch=(x86_64)
-arch+=(i686 armv7h)
-license=(GPL LGPL FDL)
-groups=(kde-applications kdenetwork)
-depends=(knotifyconfig kcmutils ktexteditor kcontacts kidentitymanagement libkleo qca kdelibs4support khtml
- libidn libotr)
-makedepends=(extra-cmake-modules mediastreamer libgadu jsoncpp kdoctools kdesignerplugin kdnssd libkleo ktexteditor kinit)
-optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol' 'kdnssd: bonjour protocol')
-source=("https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz"{,.sig}
- kopete-mediastreamer2.14.patch kopete-srtp2.patch kopete-openssl-1.1.patch kopete-mediastreamer-4.3.patch)
-sha256sums=('8d58fb0c9dd8b651bfc996e6928f7ccdad8e21cba39ffd0e54d46f7145fa7b27'
- 'SKIP'
- '8b8e7a5d9f17fafdddb402fab22b0b8d9963039ea8ea9fa749cad67aeeb879ac'
- 'ceed663f7007654d186d918cf7a0742972ed5bd319879021e9ba80e395177700'
- 'a12ea422e5162ef11274a98fd53658d6e780cafbe2e0fac70c8bc7d3291fef8b'
- '7ff38588f25bc05eae8ba20d9624536b33addf26b74e8c64ac036291f98f2bc2')
-validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aacid@kde.org>
- F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87) # Christoph Feck <cfeck@kde.org>
-
-prepare() {
- mkdir -p build
-
- cd $pkgname-$pkgver
- # based on https://devel.trisquel.info/trisquel/package-helpers/blob/belenos/helpers/make-kopete
- sed -i 's/Skype protocol" ON/Skype protocol" OFF/g' protocols/CMakeLists.txt
- rm -rf protocols/skype
- sed 's/, Skype//' -i ./doc/index.docbook
-
-# fix build with mediastreamer 2.14 https://phabricator.kde.org/D15956
- patch -p1 -i ../kopete-mediastreamer2.14.patch
-# Detect mediastreamer 4.3
- patch -p1 -i ../kopete-mediastreamer-4.3.patch
-# fix build with OpenSSL 1.1 (Fedora patch)
- patch -p1 -i ../kopete-openssl-1.1.patch
-# support SRTP2
- patch -p1 -i ../kopete-srtp2.patch
-}
-
-build() {
- cd build
- cmake ../$pkgname-$pkgver \
- -DBUILD_TESTING=OFF \
- -DWITH_skype=OFF
- make
-}
-
-package() {
- cd build
- make DESTDIR="$pkgdir" install
-}
diff --git a/libre/kopete/kopete-mediastreamer-4.3.patch b/libre/kopete/kopete-mediastreamer-4.3.patch
deleted file mode 100644
index 0b6bac556..000000000
--- a/libre/kopete/kopete-mediastreamer-4.3.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 55556be4a..8e63c2cee 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -92,8 +92,8 @@ set_package_properties(Libgadu PROPERTIES DESCRIPTION "A library providing suppo
- find_package(LibMeanwhile QUIET)
- set_package_properties(LibMeanwhile PROPERTIES DESCRIPTION "A library for protocol support for connection to sametime servers" URL "http://meanwhile.sourceforge.net/" TYPE OPTIONAL PURPOSE "Required for the meanwhile protocol")
-
--find_package(LiboRTP QUIET)
--set_package_properties(LiboRTP PROPERTIES DESCRIPTION "oRTP provides an API to send rtp packets" URL "http://www.linphone.org/index.php/eng/code_review/ortp/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support")
-+find_package(ortp QUIET)
-+set_package_properties(ortp PROPERTIES DESCRIPTION "oRTP provides an API to send rtp packets" URL "http://www.linphone.org/index.php/eng/code_review/ortp/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support")
-
- find_package(LibOTR QUIET)
- set_package_properties(LibOTR PROPERTIES DESCRIPTION "Library to encrypt messages with off-the-record encryption" URL "http://www.cypherpunks.ca/otr/" TYPE OPTIONAL PURPOSE "Required for the OTR plugin")
-@@ -107,8 +107,8 @@ set_package_properties(LibXml2 PROPERTIES DESCRIPTION "Libraries used to develop
- find_package(LibXslt QUIET)
- set_package_properties(LibXslt PROPERTIES DESCRIPTION "A library to transform XML files into other XML files" URL "http://www.xmlsoft.org/XSLT/" TYPE OPTIONAL PURPOSE "Required for the Webpresence plugin")
-
--find_package(Mediastreamer QUIET)
--set_package_properties(Mediastreamer PROPERTIES DESCRIPTION "A streaming enginer specialized for voice/video telephony applications" URL "http://www.linphone.org/index.php/eng/code_review/mediastreamer2/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support")
-+find_package(Mediastreamer2 QUIET)
-+set_package_properties(Mediastreamer2 PROPERTIES DESCRIPTION "A streaming enginer specialized for voice/video telephony applications" URL "http://www.linphone.org/index.php/eng/code_review/mediastreamer2/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support")
-
- find_package(OpenSSL QUIET)
- set_package_properties(OpenSSL PROPERTIES DESCRIPTION "OpenSSL implementation of SSL" URL "https://www.openssl.org/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support")
-diff --git a/protocols/CMakeLists.txt b/protocols/CMakeLists.txt
-index 89d36a4e4..5f13ff9d9 100644
---- a/protocols/CMakeLists.txt
-+++ b/protocols/CMakeLists.txt
-@@ -22,7 +22,7 @@ option(WITH_skype "Enable Kopete Skype protocol" ON)
- set(BUILD_JINGLE FALSE)
-
- if(OPENSSL_FOUND OR WIN32)
-- if(EXPAT_FOUND AND LIBORTP_FOUND AND SRTP_FOUND AND JSONCPP_FOUND AND MEDIASTREAMER_FOUND AND WITH_libjingle)
-+ if(EXPAT_FOUND AND ORTP_FOUND AND SRTP_FOUND AND JSONCPP_FOUND AND MEDIASTREAMER2_FOUND AND WITH_libjingle)
- message(STATUS "Building jabber libjingle support")
- set(BUILD_LIBJINGLE TRUE)
- else()
-diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt
-index af7c1c3af..de7596615 100644
---- a/protocols/jabber/libjingle/CMakeLists.txt
-+++ b/protocols/jabber/libjingle/CMakeLists.txt
-@@ -286,8 +286,8 @@ set ( call_LIBS
- ${SRTP_LIBRARY}
- ${JSONCPP_LIBRARY}
- ${EXPAT_LIBRARY}
-- ${MEDIASTREAMER_LIBRARIES}
-- ${LIBORTP_LIBRARY}
-+ ${MEDIASTREAMER2_LIBRARIES}
-+ ${ORTP_LIBRARIES}
- ${CMAKE_THREAD_LIBS_INIT}
- ${CMAKE_DL_LIBS}
- )
-diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-index bd11027e0..6f9e05a0a 100644
---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-@@ -34,11 +34,9 @@
- #ifdef HAVE_LINPHONE
-
- // LinphoneMediaEngine is a Linphone implementation of MediaEngine
--extern "C" {
- #include <mediastreamer2/mediastream.h>
- #include <mediastreamer2/mssndcard.h>
- #include <mediastreamer2/msfilter.h>
--}
-
- #include "talk/session/phone/linphonemediaengine.h"
-
-diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-index 6105ab8cb..f5b5c3b14 100644
---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-@@ -35,9 +35,7 @@
- #include <string>
- #include <vector>
-
--extern "C" {
- #include <mediastreamer2/mediastream.h>
--}
-
- #include "talk/base/scoped_ptr.h"
- #include "talk/session/phone/codec.h"
diff --git a/libre/kopete/kopete-mediastreamer2.14.patch b/libre/kopete/kopete-mediastreamer2.14.patch
deleted file mode 100644
index 5d106400b..000000000
--- a/libre/kopete/kopete-mediastreamer2.14.patch
+++ /dev/null
@@ -1,281 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -34,6 +34,7 @@
-
- find_package(KF5Contacts ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED)
- find_package(KF5IdentityManagement ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED)
-+find_package(Threads)
-
- include(KDEInstallDirs)
- include(KDECompilerSettings NO_POLICY_SCOPE)
-diff --git a/cmake/modules/FindLiboRTP.cmake b/cmake/modules/FindLiboRTP.cmake
---- a/cmake/modules/FindLiboRTP.cmake
-+++ b/cmake/modules/FindLiboRTP.cmake
-@@ -11,7 +11,7 @@
-
- SET( LIBORTP_FOUND FALSE )
-
--pkg_check_modules(ortp ortp)
-+pkg_check_modules(ORTP ortp)
-
- FIND_PATH( LIBORTP_INCLUDE_DIR
- ortp/ortp.h
-@@ -40,7 +40,13 @@
- if ( run_result EQUAL 0 )
- # Version OK
- SET( LIBORTP_FOUND TRUE )
-- MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY}" )
-+ MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY} ${ORTP_VERSION}" )
-+ IF (ORTP_VERSION VERSION_LESS 1.0.1)
-+ SET(ORTP_LESS_1_0_1 TRUE)
-+ ELSE (ORTP_VERSION VERSION_LESS 1.0.1)
-+ SET(ORTP_LESS_1_0_1 FALSE)
-+ ENDIF (ORTP_VERSION VERSION_LESS 1.0.1)
-+
- endif ( run_result EQUAL 0 )
- endif( compile_result )
- ENDIF( LIBORTP_INCLUDE_DIR AND LIBORTP_LIBRARY )
-diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake
---- a/cmake/modules/FindMediastreamer.cmake
-+++ b/cmake/modules/FindMediastreamer.cmake
-@@ -20,17 +20,25 @@
-
- IF (MEDIASTREAMER_FOUND)
- IF (NOT MEDIASTREAMER_FIND_QUIETLY)
-+
- MESSAGE(STATUS "Found Mediastreamer: ${MEDIASTREAMER_LIBRARIES} (version: ${MEDIASTREAMER_VERSION})")
-+
-+ SET(MEDIASTREAMER_LESS_2_9 FALSE)
-+ SET(MEDIASTREAMER_LESS_2_11 FALSE)
-+ SET(MEDIASTREAMER_LESS_2_14 FALSE)
-+
- IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9)
- SET(MEDIASTREAMER_LESS_2_9 TRUE)
-- SET(MEDIASTREAMER_LESS_2_11 TRUE)
-- ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11)
-- SET(MEDIASTREAMER_LESS_2_9 FALSE)
-- SET(MEDIASTREAMER_LESS_2_11 TRUE)
-- ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9)
-- SET(MEDIASTREAMER_LESS_2_9 FALSE)
-- SET(MEDIASTREAMER_LESS_2_11 FALSE)
- ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9)
-+
-+ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.11)
-+ SET(MEDIASTREAMER_LESS_2_11 TRUE)
-+ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11)
-+
-+ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.14)
-+ SET(MEDIASTREAMER_LESS_2_14 TRUE)
-+ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14)
-+
- ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY)
- ELSE (MEDIASTREAMER_FOUND)
- IF (MEDIASTREAMER_FIND_REQUIRED)
-diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt
---- a/protocols/jabber/libjingle/CMakeLists.txt
-+++ b/protocols/jabber/libjingle/CMakeLists.txt
-@@ -51,6 +51,10 @@
- add_definitions ( -DMEDIASTREAMER_LESS_2_11 )
- endif ( MEDIASTREAMER_LESS_2_11 )
-
-+if ( MEDIASTREAMER_LESS_2_14 )
-+ add_definitions ( -DMEDIASTREAMER_LESS_2_14 )
-+endif ( MEDIASTREAMER_LESS_2_14 )
-+
- if ( CMAKE_BUILD_TYPE STREQUAL "Debug" )
- add_definitions ( -D_DEBUG )
- endif ( CMAKE_BUILD_TYPE STREQUAL "Debug" )
-@@ -284,6 +288,7 @@
- ${EXPAT_LIBRARY}
- ${MEDIASTREAMER_LIBRARIES}
- ${LIBORTP_LIBRARY}
-+ ${CMAKE_THREAD_LIBS_INIT}
- ${CMAKE_DL_LIBS}
- )
-
-diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-@@ -53,7 +53,11 @@
- class LinphoneMediaEngine : public MediaEngineInterface {
- public:
- LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav);
-+#ifdef MEDIASTREAMER_LESS_2_14
- virtual ~LinphoneMediaEngine() {}
-+#else
-+ ~LinphoneMediaEngine();
-+#endif
-
- // Implement pure virtual methods of MediaEngine.
- virtual bool Init() { return true; }
-@@ -97,6 +101,10 @@
- bool have_speex;
- bool have_gsm;
-
-+#ifndef MEDIASTREAMER_LESS_2_14
-+ MSFactory *factory;
-+#endif
-+
- private:
- std::vector<AudioCodec> voice_codecs_;
- std::vector<VideoCodec> video_codecs_;
-@@ -110,7 +118,11 @@
- class LinphoneVoiceChannel : public VoiceMediaChannel {
- public:
- LinphoneVoiceChannel(LinphoneMediaEngine *eng);
-+#ifdef MEDIASTREAMER_LESS_2_14
- virtual ~LinphoneVoiceChannel();
-+#else
-+ ~LinphoneVoiceChannel();
-+#endif
-
- // Implement pure virtual methods of VoiceMediaChannel.
- virtual bool SetRecvCodecs(const std::vector<AudioCodec>& codecs);
-diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-@@ -60,18 +60,34 @@
- ///////////////////////////////////////////////////////////////////////////
- LinphoneMediaEngine::LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav) : ring_wav_(ringWav), call_wav_(callWav) {
- ortp_init();
-+#ifdef MEDIASTREAMER_LESS_2_14
- ms_init();
-+#else
-+ factory = ms_factory_new();
-+ ms_factory_init_voip(factory);
-+ ms_factory_init_plugins(factory);
-+#endif
-
- #ifndef WIN32
- char * path = strdup(MSILBC_LIBRARY);
- char * dirc = dirname(path);
-+#ifdef MEDIASTREAMER_LESS_2_14
- ms_load_plugins(dirc);
-+#else
-+ ms_factory_load_plugins(factory, dirc);
-+#endif
- free(path);
- #endif
-
-+#ifdef MEDIASTREAMER_LESS_2_14
- have_ilbc = ms_filter_codec_supported("iLBC");
- have_speex = ms_filter_codec_supported("speex");
- have_gsm = ms_filter_codec_supported("gsm");
-+#else
-+ have_ilbc = ms_factory_codec_supported(factory, "iLBC");
-+ have_speex = ms_factory_codec_supported(factory, "speex");
-+ have_gsm = ms_factory_codec_supported(factory, "gsm");
-+#endif
-
- if (have_speex) {
- voice_codecs_.push_back(AudioCodec(110, payload_type_speex_wb.mime_type, payload_type_speex_wb.clock_rate, 0, 1, 8));
-@@ -88,6 +104,14 @@
- voice_codecs_.push_back(AudioCodec(101, payload_type_telephone_event.mime_type, payload_type_telephone_event.clock_rate, 0, 1, 1));
- }
-
-+#ifndef MEDIASTREAMER_LESS_2_14
-+LinphoneMediaEngine::~LinphoneMediaEngine() {
-+ ms_factory_uninit_plugins(factory);
-+ ms_factory_uninit_voip(factory);
-+ ms_factory_destroy(factory);
-+}
-+#endif
-+
- void LinphoneMediaEngine::Terminate() {
- fflush(stdout);
- }
-@@ -149,15 +173,25 @@
- playport2 = PORT_UNUSED;
-
- #ifdef _DEBUG
-+#ifdef MEDIASTREAMER_LESS_2_14
- ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL);
- #else
-+ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL);
-+#endif
-+#else
-+#ifdef MEDIASTREAMER_LESS_2_14
- ortp_set_log_level_mask(ORTP_FATAL);
-+#else
-+ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_FATAL);
-+#endif
- #endif
-
- #ifdef MEDIASTREAMER_LESS_2_9
- audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */
--#else
-+#elif MEDIASTREAMER_LESS_2_14
- audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */
-+#else
-+ audio_stream_ = audio_stream_new(engine_->factory, -1, -1, 0); /* -1 means that function will choose some free port */
- #endif
-
- }
-@@ -272,11 +306,22 @@
- {
- StopRing();
-
-+#ifdef MEDIASTREAMER_LESS_2_14
-+ MSSndCardManager *snd_manager = ms_snd_card_manager_get();
- MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(ms_snd_card_manager_get());
-+#else
-+ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory);
-+ MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(snd_manager);
-+#endif
-+
- if (!playcard)
- return false;
-
-+#ifdef MEDIASTREAMER_LESS_2_14
- MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(ms_snd_card_manager_get());
-+#else
-+ MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(snd_manager);
-+#endif
- if (!captcard)
- return false;
-
-@@ -333,8 +378,18 @@
-
- void LinphoneVoiceChannel::StartRing(bool bIncomingCall)
- {
-+#ifdef MEDIASTREAMER_LESS_2_14
-+ MSSndCardManager *snd_manager = ms_snd_card_manager_get();
-+#else
-+ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory);
-+#endif
-+
- MSSndCard *sndcard = NULL;
-+#ifdef MEDIASTREAMER_LESS_2_14
- sndcard=ms_snd_card_manager_get_default_card(ms_snd_card_manager_get());
-+#else
-+ sndcard=ms_snd_card_manager_get_default_card(snd_manager);
-+#endif
- if (sndcard)
- {
- if (bIncomingCall)
-@@ -342,7 +397,11 @@
- if (engine_->GetRingWav().size() > 0)
- {
- LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n";
-+#ifdef MEDIASTREAMER_LESS_2_14
- ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard);
-+#else
-+ ring_stream_ = ring_start (engine_->factory, engine_->GetRingWav().c_str(), 1, sndcard);
-+#endif
- }
- }
- else
-@@ -350,7 +409,11 @@
- if (engine_->GetCallWav().size() > 0)
- {
- LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n";
-+#ifdef MEDIASTREAMER_LESS_2_14
- ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard);
-+#else
-+ ring_stream_ = ring_start (engine_->factory, engine_->GetCallWav().c_str(), 1, sndcard);
-+#endif
- }
- }
- }
-
diff --git a/libre/kopete/kopete-openssl-1.1.patch b/libre/kopete/kopete-openssl-1.1.patch
deleted file mode 100644
index 1d34e0e5c..000000000
--- a/libre/kopete/kopete-openssl-1.1.patch
+++ /dev/null
@@ -1,307 +0,0 @@
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc 2018-01-05 22:49:27.805070408 +0100
-@@ -84,6 +84,7 @@
- static int socket_new(BIO* h);
- static int socket_free(BIO* data);
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static BIO_METHOD methods_socket = {
- BIO_TYPE_BIO,
- "socket",
-@@ -98,16 +99,40 @@
- };
-
- BIO_METHOD* BIO_s_socket2() { return(&methods_socket); }
-+#else
-+static BIO_METHOD *methods_socket = NULL;
-+
-+static const BIO_METHOD * BIO_s_socket2(void) {
-+ if (methods_socket == NULL) {
-+ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket");
-+ if (methods_socket == NULL ||
-+ BIO_meth_set_write (methods_socket, socket_write) ||
-+ BIO_meth_set_read (methods_socket, socket_read) ||
-+ BIO_meth_set_puts (methods_socket, socket_puts) ||
-+ BIO_meth_set_gets (methods_socket, 0) ||
-+ BIO_meth_set_ctrl (methods_socket, socket_ctrl) ||
-+ BIO_meth_set_create (methods_socket, socket_new) ||
-+ BIO_meth_set_destroy (methods_socket, socket_free))
-+ return NULL;
-+ }
-+ return methods_socket;
-+}
-+#endif
-
- BIO* BIO_new_socket(talk_base::AsyncSocket* socket) {
-+ const BIO_METHOD *socket2 = BIO_s_socket2();
-+ if (socket2 == NULL) {
-+ return NULL;
-+ }
-- BIO* ret = BIO_new(BIO_s_socket2());
-+ BIO* ret = BIO_new(socket2);
- if (ret == NULL) {
- return NULL;
- }
-- ret->ptr = socket;
-+ BIO_set_data(ret, socket);
- return ret;
- }
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static int socket_new(BIO* b) {
- b->shutdown = 0;
- b->init = 1;
-@@ -115,6 +136,14 @@
- b->ptr = 0;
- return 1;
- }
-+#else
-+static int socket_new(BIO* b) {
-+ BIO_set_shutdown(b, 0);
-+ BIO_set_init(b, 1);
-+ BIO_set_data(b, 0);
-+ return 1;
-+}
-+#endif
-
- static int socket_free(BIO* b) {
- if (b == NULL)
-@@ -125,13 +154,11 @@
- static int socket_read(BIO* b, char* out, int outl) {
- if (!out)
- return -1;
-- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr);
-+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- int result = socket->Recv(out, outl);
- if (result > 0) {
- return result;
-- } else if (result == 0) {
-- b->num = 1;
- } else if (socket->IsBlocking()) {
- BIO_set_retry_read(b);
- }
-@@ -141,7 +168,7 @@
- static int socket_write(BIO* b, const char* in, int inl) {
- if (!in)
- return -1;
-- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr);
-+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- int result = socket->Send(in, inl);
- if (result > 0) {
-@@ -164,7 +191,6 @@
- case BIO_CTRL_RESET:
- return 0;
- case BIO_CTRL_EOF:
-- return b->num;
- case BIO_CTRL_WPENDING:
- case BIO_CTRL_PENDING:
- return 0;
-@@ -696,7 +722,9 @@
- // We assign this to a local variable, instead of passing the address
- // directly to ASN1_item_d2i.
- // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html.
-- unsigned char* ext_value_data = extension->value->data;
-+ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension);
-+ unsigned char* ext_value_data = extension_data->data;
-+ long length = extension_data->length;
-
- #if OPENSSL_VERSION_NUMBER >= 0x0090800fL
- const unsigned char **ext_value_data_ptr =
-@@ -707,10 +735,10 @@
-
- if (meth->it) {
- ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr,
-- extension->value->length,
-+ length,
- ASN1_ITEM_ptr(meth->it));
- } else {
-- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length);
-+ ext_str = meth->d2i(NULL, ext_value_data_ptr, length);
- }
-
- STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL);
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc 2018-01-05 22:49:27.869069361 +0100
-@@ -32,16 +32,16 @@
- namespace talk_base {
-
- OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) {
-- EVP_MD_CTX_init(&ctx_);
-+ EVP_MD_CTX_init(ctx_);
- if (GetDigestEVP(algorithm, &md_)) {
-- EVP_DigestInit_ex(&ctx_, md_, NULL);
-+ EVP_DigestInit_ex(ctx_, md_, NULL);
- } else {
- md_ = NULL;
- }
- }
-
- OpenSSLDigest::~OpenSSLDigest() {
-- EVP_MD_CTX_cleanup(&ctx_);
-+ EVP_MD_CTX_destroy(ctx_);
- }
-
- size_t OpenSSLDigest::Size() const {
-@@ -55,7 +55,7 @@
- if (!md_) {
- return;
- }
-- EVP_DigestUpdate(&ctx_, buf, len);
-+ EVP_DigestUpdate(ctx_, buf, len);
- }
-
- size_t OpenSSLDigest::Finish(void* buf, size_t len) {
-@@ -63,8 +63,8 @@
- return 0;
- }
- unsigned int md_len;
-- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len);
-- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s
-+ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len);
-+ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s
- ASSERT(md_len == Size());
- return md_len;
- }
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h 2018-01-05 22:49:27.869069361 +0100
-@@ -55,7 +55,7 @@
- size_t* len);
-
- private:
-- EVP_MD_CTX ctx_;
-+ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create();
- const EVP_MD* md_;
- };
-
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2018-01-05 22:49:27.867069394 +0100
-@@ -169,7 +169,12 @@
- }
-
- void OpenSSLKeyPair::AddReference() {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY);
-+#else
-+ EVP_PKEY_up_ref(pkey_);
-+#endif
-+
- }
-
- #ifdef _DEBUG
-@@ -275,7 +280,11 @@
- }
-
- void OpenSSLCertificate::AddReference() {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509);
-+#else
-+ X509_up_ref(x509_);
-+#endif
- }
-
- OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) {
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2018-01-05 22:49:27.868069378 +0100
-@@ -87,6 +87,7 @@
- static int stream_new(BIO* h);
- static int stream_free(BIO* data);
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static BIO_METHOD methods_stream = {
- BIO_TYPE_BIO,
- "stream",
-@@ -101,17 +102,37 @@
- };
-
- static BIO_METHOD* BIO_s_stream() { return(&methods_stream); }
-+#else
-+static BIO_METHOD *methods_stream = NULL;
-+
-+static const BIO_METHOD * BIO_s_stream(void) {
-+ if (methods_stream == NULL) {
-+ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream");
-+ if (methods_stream == NULL ||
-+ BIO_meth_set_write (methods_stream, stream_write) ||
-+ BIO_meth_set_read (methods_stream, stream_read) ||
-+ BIO_meth_set_puts (methods_stream, stream_puts) ||
-+ BIO_meth_set_gets (methods_stream, 0) ||
-+ BIO_meth_set_ctrl (methods_stream, stream_ctrl) ||
-+ BIO_meth_set_create (methods_stream, stream_new) ||
-+ BIO_meth_set_destroy (methods_stream, stream_free))
-+ return NULL;
-+ }
-+ return methods_stream;
-+}
-+#endif
-
- static BIO* BIO_new_stream(StreamInterface* stream) {
- BIO* ret = BIO_new(BIO_s_stream());
- if (ret == NULL)
- return NULL;
-- ret->ptr = stream;
-+ BIO_set_data(ret, stream);
- return ret;
- }
-
- // bio methods return 1 (or at least non-zero) on success and 0 on failure.
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static int stream_new(BIO* b) {
- b->shutdown = 0;
- b->init = 1;
-@@ -119,6 +140,14 @@
- b->ptr = 0;
- return 1;
- }
-+#else
-+static int stream_new(BIO* b) {
-+ BIO_set_shutdown(b, 0);
-+ BIO_set_init(b, 1);
-+ BIO_set_data(b, 0);
-+ return 1;
-+}
-+#endif
-
- static int stream_free(BIO* b) {
- if (b == NULL)
-@@ -129,15 +158,13 @@
- static int stream_read(BIO* b, char* out, int outl) {
- if (!out)
- return -1;
-- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr);
-+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- size_t read;
- int error;
- StreamResult result = stream->Read(out, outl, &read, &error);
- if (result == SR_SUCCESS) {
- return read;
-- } else if (result == SR_EOS) {
-- b->num = 1;
- } else if (result == SR_BLOCK) {
- BIO_set_retry_read(b);
- }
-@@ -147,7 +174,7 @@
- static int stream_write(BIO* b, const char* in, int inl) {
- if (!in)
- return -1;
-- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr);
-+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- size_t written;
- int error;
-@@ -172,7 +199,6 @@
- case BIO_CTRL_RESET:
- return 0;
- case BIO_CTRL_EOF:
-- return b->num;
- case BIO_CTRL_WPENDING:
- case BIO_CTRL_PENDING:
- return 0;
diff --git a/libre/kopete/kopete-srtp2.patch b/libre/kopete/kopete-srtp2.patch
deleted file mode 100644
index 710bb7306..000000000
--- a/libre/kopete/kopete-srtp2.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-diff --git a/cmake/modules/FindSRTP.cmake b/cmake/modules/FindSRTP.cmake
-index 4e8baa827..ce9033497 100644
---- a/cmake/modules/FindSRTP.cmake
-+++ b/cmake/modules/FindSRTP.cmake
-@@ -11,8 +11,8 @@ include ( FindPackageHandleStandardArgs )
- if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY )
- set ( SRTP_FOUND true )
- else ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY )
-- find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp )
-- find_library ( SRTP_LIBRARY NAMES srtp )
-+ find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp srtp2 )
-+ find_library ( SRTP_LIBRARY NAMES srtp srtp2 )
-
- if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY )
- set ( SRTP_FOUND true )
-diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc
-index 7a1cb7866..f5363a36a 100644
---- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc
-+++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc
-@@ -416,7 +416,7 @@ bool SrtpSession::ProtectRtp(void* p, int in_len, int max_len, int* out_len) {
- }
- int seq_num;
- GetRtpSeqNum(p, in_len, &seq_num);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to protect SRTP packet, seqnum="
- << seq_num << ", err=" << err << ", last seqnum="
- << last_send_seq_num_;
-@@ -442,7 +442,7 @@ bool SrtpSession::ProtectRtcp(void* p, int in_len, int max_len, int* out_len) {
- *out_len = in_len;
- int err = srtp_protect_rtcp(session_, p, out_len);
- srtp_stat_->AddProtectRtcpResult(err);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to protect SRTCP packet, err=" << err;
- return false;
- }
-@@ -461,7 +461,7 @@ bool SrtpSession::UnprotectRtp(void* p, int in_len, int* out_len) {
- if (GetRtpSsrc(p, in_len, &ssrc)) {
- srtp_stat_->AddUnprotectRtpResult(ssrc, err);
- }
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to unprotect SRTP packet, err=" << err;
- return false;
- }
-@@ -477,7 +477,7 @@ bool SrtpSession::UnprotectRtcp(void* p, int in_len, int* out_len) {
- *out_len = in_len;
- int err = srtp_unprotect_rtcp(session_, p, out_len);
- srtp_stat_->AddUnprotectRtcpResult(err);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to unprotect SRTCP packet, err=" << err;
- return false;
- }
-@@ -504,11 +504,11 @@ bool SrtpSession::SetKey(int type, const std::string& cs,
- memset(&policy, 0, sizeof(policy));
-
- if (cs == CS_AES_CM_128_HMAC_SHA1_80) {
-- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp);
-- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp);
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp);
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp);
- } else if (cs == CS_AES_CM_128_HMAC_SHA1_32) {
-- crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32,
-- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32,
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80
- } else {
- LOG(LS_WARNING) << "Failed to create SRTP session: unsupported"
- << " cipher_suite " << cs.c_str();
-@@ -520,7 +520,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs,
- return false;
- }
-
-- policy.ssrc.type = static_cast<ssrc_type_t>(type);
-+ policy.ssrc.type = static_cast<srtp_ssrc_type_t>(type);
- policy.ssrc.value = 0;
- policy.key = const_cast<uint8*>(key);
- // TODO parse window size from WSH session-param
-@@ -529,7 +529,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs,
- policy.next = NULL;
-
- int err = srtp_create(&session_, &policy);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_ERROR) << "Failed to create SRTP session, err=" << err;
- return false;
- }
-@@ -543,13 +543,13 @@ bool SrtpSession::Init() {
- if (!inited_) {
- int err;
- err = srtp_init();
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_ERROR) << "Failed to init SRTP, err=" << err;
- return false;
- }
-
- err = srtp_install_event_handler(&SrtpSession::HandleEventThunk);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_ERROR) << "Failed to install SRTP event handler, err=" << err;
- return false;
- }
-@@ -652,10 +652,10 @@ void SrtpStat::AddProtectRtpResult(uint32 ssrc, int result) {
- key.ssrc = ssrc;
- key.mode = SrtpFilter::PROTECT;
- switch (result) {
-- case err_status_ok:
-+ case srtp_err_status_ok:
- key.error = SrtpFilter::ERROR_NONE;
- break;
-- case err_status_auth_fail:
-+ case srtp_err_status_auth_fail:
- key.error = SrtpFilter::ERROR_AUTH;
- break;
- default:
-@@ -669,14 +669,14 @@ void SrtpStat::AddUnprotectRtpResult(uint32 ssrc, int result) {
- key.ssrc = ssrc;
- key.mode = SrtpFilter::UNPROTECT;
- switch (result) {
-- case err_status_ok:
-+ case srtp_err_status_ok:
- key.error = SrtpFilter::ERROR_NONE;
- break;
-- case err_status_auth_fail:
-+ case srtp_err_status_auth_fail:
- key.error = SrtpFilter::ERROR_AUTH;
- break;
-- case err_status_replay_fail:
-- case err_status_replay_old:
-+ case srtp_err_status_replay_fail:
-+ case srtp_err_status_replay_old:
- key.error = SrtpFilter::ERROR_REPLAY;
- break;
- default:
-diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h
-index 991d4bf42..ff4e5070f 100644
---- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h
-+++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h
-@@ -39,11 +39,7 @@
- #include "talk/session/phone/cryptoparams.h"
- #include "talk/p2p/base/sessiondescription.h"
-
--// Forward declaration to avoid pulling in libsrtp headers here
--struct srtp_event_data_t;
--struct srtp_ctx_t;
--typedef srtp_ctx_t* srtp_t;
--struct srtp_policy_t;
-+#include "srtp2/srtp.h"
-
- namespace cricket {
-
diff --git a/nonprism/kopete/PKGBUILD b/nonprism/kopete/PKGBUILD
deleted file mode 100644
index 1ddc86391..000000000
--- a/nonprism/kopete/PKGBUILD
+++ /dev/null
@@ -1,91 +0,0 @@
-# Maintainer (arch): Felix Yan <felixonmars@archlinux.org>
-# Maintainer (arch): Antonio Rojas <arojas@archlinux.org>
-# Contributor: Andrea Scarpino <andrea@archlinux.org>
-# Contributor: André Silva <emulatorman@hyperbola.info>
-
-# rationale for inclusion in nonprism:
-# removed support for possible privacy critical protocals
-
-pkgname=kopete
-pkgver=18.12.2
-pkgrel=1
-pkgrel+=.parabola1.nonprism1
-url='https://kde.org/applications/internet/kopete/'
-arch=(x86_64)
-arch+=(i686 armv7h)
-license=(GPL LGPL FDL)
-groups=(kde-applications kdenetwork)
-depends=(knotifyconfig kcmutils ktexteditor kcontacts kidentitymanagement libkleo qca kdelibs4support khtml
- libidn libotr)
-depends+=(kio)
-makedepends=(extra-cmake-modules mediastreamer libgadu jsoncpp kdoctools kdesignerplugin kdnssd libkleo ktexteditor)
-optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol' 'kdnssd: bonjour protocol')
-conflicts=(kdenetwork-kopete)
-replaces=(kdenetwork-kopete)
-source=("https://download.kde.org/stable/applications/$pkgver/src/$pkgname-$pkgver.tar.xz"{,.sig}
- kopete-mediastreamer2.14.patch kopete-srtp2.patch kopete-openssl-1.1.patch kopete-glibc-2.28.patch)
-source+=(libre-nonprism.patch)
-sha256sums=('48dad416ead50ac69afe822932abccca82cabc2d512c93ca3b7d5d653e38f363'
- 'SKIP'
- '8b8e7a5d9f17fafdddb402fab22b0b8d9963039ea8ea9fa749cad67aeeb879ac'
- 'ceed663f7007654d186d918cf7a0742972ed5bd319879021e9ba80e395177700'
- 'a12ea422e5162ef11274a98fd53658d6e780cafbe2e0fac70c8bc7d3291fef8b'
- 'ba1b830bbd74c3dde8de99d887bd20205b4bbb1e466a41aa2b230404f1959c83'
- '32553b785ef603c3e8160f0f1ef423095a0c9b8bbdc6c01e4d2c81740adb9db3')
-validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aacid@kde.org>
- F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87) # Christoph Feck <cfeck@kde.org>
-
-prepare() {
- mkdir -p build
-
- cd $pkgname-$pkgver
-# fix build with mediastreamer 2.14 https://phabricator.kde.org/D15956
- patch -p1 -i ../kopete-mediastreamer2.14.patch
-# fix build with OpenSSL 1.1 (Fedora patch)
- patch -p1 -i ../kopete-openssl-1.1.patch
-# support SRTP2
- patch -p1 -i ../kopete-srtp2.patch
-# fix build with glibc 2.28
- patch -p1 -i ../kopete-glibc-2.28.patch
-
- # based on https://devel.trisquel.info/trisquel/package-helpers/blob/belenos/helpers/make-kopete
- sed -i 's/Skype protocol" ON/Skype protocol" OFF/g' protocols/CMakeLists.txt
- rm -rf protocols/skype
- sed 's/, Skype//' -i ./doc/index.docbook
-
- # Remove unsafe/dangerous services
- rm -rfv protocols/oscar
- rm -rfv protocols/yahoo
- rm -rfv protocols/qq
- rm -rfv protocols/groupwise
- rm -rfv protocols/gadu
- rm -rfv protocols/wlm
- rm -rfv protocols/meanwhile
- patch -p1 -i "${srcdir}"/libre-nonprism.patch
-}
-
-build() {
- cd build
- cmake ../$pkgname-$pkgver \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_TESTING=OFF \
- -DWITH_Libmsn=OFF \
- -DWITH_Libgadu=OFF \
- -DWITH_skype=OFF \
- -DWITH_oscar=OFF \
- -DWITH_yahoo=OFF \
- -DWITH_qq=OFF \
- -DWITH_groupwise=OFF \
- -DWITH_gadu=OFF \
- -DWITH_GOOGLETALK=OFF \
- -DWITH_wlm=OFF \
- -DWITH_WLM_MEDIASTREAMER=OFF \
- -DWITH_meanwhile=OFF
- make
-}
-
-package() {
- cd build
- make DESTDIR="$pkgdir" install
-}
diff --git a/nonprism/kopete/kopete-glibc-2.28.patch b/nonprism/kopete/kopete-glibc-2.28.patch
deleted file mode 100644
index f676533e7..000000000
--- a/nonprism/kopete/kopete-glibc-2.28.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/protocols/jabber/libjingle/talk/session/phone/v4llookup.cc b/protocols/jabber/libjingle/talk/session/phone/v4llookup.cc
-index 0057946cc..d5559fa63 100644
---- a/protocols/jabber/libjingle/talk/session/phone/v4llookup.cc
-+++ b/protocols/jabber/libjingle/talk/session/phone/v4llookup.cc
-@@ -15,6 +15,7 @@
- #include <sys/ioctl.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <unistd.h>
-
- #include <cstring>
diff --git a/nonprism/kopete/kopete-mediastreamer2.14.patch b/nonprism/kopete/kopete-mediastreamer2.14.patch
deleted file mode 100644
index 5d106400b..000000000
--- a/nonprism/kopete/kopete-mediastreamer2.14.patch
+++ /dev/null
@@ -1,281 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -34,6 +34,7 @@
-
- find_package(KF5Contacts ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED)
- find_package(KF5IdentityManagement ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED)
-+find_package(Threads)
-
- include(KDEInstallDirs)
- include(KDECompilerSettings NO_POLICY_SCOPE)
-diff --git a/cmake/modules/FindLiboRTP.cmake b/cmake/modules/FindLiboRTP.cmake
---- a/cmake/modules/FindLiboRTP.cmake
-+++ b/cmake/modules/FindLiboRTP.cmake
-@@ -11,7 +11,7 @@
-
- SET( LIBORTP_FOUND FALSE )
-
--pkg_check_modules(ortp ortp)
-+pkg_check_modules(ORTP ortp)
-
- FIND_PATH( LIBORTP_INCLUDE_DIR
- ortp/ortp.h
-@@ -40,7 +40,13 @@
- if ( run_result EQUAL 0 )
- # Version OK
- SET( LIBORTP_FOUND TRUE )
-- MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY}" )
-+ MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY} ${ORTP_VERSION}" )
-+ IF (ORTP_VERSION VERSION_LESS 1.0.1)
-+ SET(ORTP_LESS_1_0_1 TRUE)
-+ ELSE (ORTP_VERSION VERSION_LESS 1.0.1)
-+ SET(ORTP_LESS_1_0_1 FALSE)
-+ ENDIF (ORTP_VERSION VERSION_LESS 1.0.1)
-+
- endif ( run_result EQUAL 0 )
- endif( compile_result )
- ENDIF( LIBORTP_INCLUDE_DIR AND LIBORTP_LIBRARY )
-diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake
---- a/cmake/modules/FindMediastreamer.cmake
-+++ b/cmake/modules/FindMediastreamer.cmake
-@@ -20,17 +20,25 @@
-
- IF (MEDIASTREAMER_FOUND)
- IF (NOT MEDIASTREAMER_FIND_QUIETLY)
-+
- MESSAGE(STATUS "Found Mediastreamer: ${MEDIASTREAMER_LIBRARIES} (version: ${MEDIASTREAMER_VERSION})")
-+
-+ SET(MEDIASTREAMER_LESS_2_9 FALSE)
-+ SET(MEDIASTREAMER_LESS_2_11 FALSE)
-+ SET(MEDIASTREAMER_LESS_2_14 FALSE)
-+
- IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9)
- SET(MEDIASTREAMER_LESS_2_9 TRUE)
-- SET(MEDIASTREAMER_LESS_2_11 TRUE)
-- ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11)
-- SET(MEDIASTREAMER_LESS_2_9 FALSE)
-- SET(MEDIASTREAMER_LESS_2_11 TRUE)
-- ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9)
-- SET(MEDIASTREAMER_LESS_2_9 FALSE)
-- SET(MEDIASTREAMER_LESS_2_11 FALSE)
- ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9)
-+
-+ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.11)
-+ SET(MEDIASTREAMER_LESS_2_11 TRUE)
-+ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11)
-+
-+ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.14)
-+ SET(MEDIASTREAMER_LESS_2_14 TRUE)
-+ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14)
-+
- ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY)
- ELSE (MEDIASTREAMER_FOUND)
- IF (MEDIASTREAMER_FIND_REQUIRED)
-diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt
---- a/protocols/jabber/libjingle/CMakeLists.txt
-+++ b/protocols/jabber/libjingle/CMakeLists.txt
-@@ -51,6 +51,10 @@
- add_definitions ( -DMEDIASTREAMER_LESS_2_11 )
- endif ( MEDIASTREAMER_LESS_2_11 )
-
-+if ( MEDIASTREAMER_LESS_2_14 )
-+ add_definitions ( -DMEDIASTREAMER_LESS_2_14 )
-+endif ( MEDIASTREAMER_LESS_2_14 )
-+
- if ( CMAKE_BUILD_TYPE STREQUAL "Debug" )
- add_definitions ( -D_DEBUG )
- endif ( CMAKE_BUILD_TYPE STREQUAL "Debug" )
-@@ -284,6 +288,7 @@
- ${EXPAT_LIBRARY}
- ${MEDIASTREAMER_LIBRARIES}
- ${LIBORTP_LIBRARY}
-+ ${CMAKE_THREAD_LIBS_INIT}
- ${CMAKE_DL_LIBS}
- )
-
-diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h
-@@ -53,7 +53,11 @@
- class LinphoneMediaEngine : public MediaEngineInterface {
- public:
- LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav);
-+#ifdef MEDIASTREAMER_LESS_2_14
- virtual ~LinphoneMediaEngine() {}
-+#else
-+ ~LinphoneMediaEngine();
-+#endif
-
- // Implement pure virtual methods of MediaEngine.
- virtual bool Init() { return true; }
-@@ -97,6 +101,10 @@
- bool have_speex;
- bool have_gsm;
-
-+#ifndef MEDIASTREAMER_LESS_2_14
-+ MSFactory *factory;
-+#endif
-+
- private:
- std::vector<AudioCodec> voice_codecs_;
- std::vector<VideoCodec> video_codecs_;
-@@ -110,7 +118,11 @@
- class LinphoneVoiceChannel : public VoiceMediaChannel {
- public:
- LinphoneVoiceChannel(LinphoneMediaEngine *eng);
-+#ifdef MEDIASTREAMER_LESS_2_14
- virtual ~LinphoneVoiceChannel();
-+#else
-+ ~LinphoneVoiceChannel();
-+#endif
-
- // Implement pure virtual methods of VoiceMediaChannel.
- virtual bool SetRecvCodecs(const std::vector<AudioCodec>& codecs);
-diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc
-@@ -60,18 +60,34 @@
- ///////////////////////////////////////////////////////////////////////////
- LinphoneMediaEngine::LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav) : ring_wav_(ringWav), call_wav_(callWav) {
- ortp_init();
-+#ifdef MEDIASTREAMER_LESS_2_14
- ms_init();
-+#else
-+ factory = ms_factory_new();
-+ ms_factory_init_voip(factory);
-+ ms_factory_init_plugins(factory);
-+#endif
-
- #ifndef WIN32
- char * path = strdup(MSILBC_LIBRARY);
- char * dirc = dirname(path);
-+#ifdef MEDIASTREAMER_LESS_2_14
- ms_load_plugins(dirc);
-+#else
-+ ms_factory_load_plugins(factory, dirc);
-+#endif
- free(path);
- #endif
-
-+#ifdef MEDIASTREAMER_LESS_2_14
- have_ilbc = ms_filter_codec_supported("iLBC");
- have_speex = ms_filter_codec_supported("speex");
- have_gsm = ms_filter_codec_supported("gsm");
-+#else
-+ have_ilbc = ms_factory_codec_supported(factory, "iLBC");
-+ have_speex = ms_factory_codec_supported(factory, "speex");
-+ have_gsm = ms_factory_codec_supported(factory, "gsm");
-+#endif
-
- if (have_speex) {
- voice_codecs_.push_back(AudioCodec(110, payload_type_speex_wb.mime_type, payload_type_speex_wb.clock_rate, 0, 1, 8));
-@@ -88,6 +104,14 @@
- voice_codecs_.push_back(AudioCodec(101, payload_type_telephone_event.mime_type, payload_type_telephone_event.clock_rate, 0, 1, 1));
- }
-
-+#ifndef MEDIASTREAMER_LESS_2_14
-+LinphoneMediaEngine::~LinphoneMediaEngine() {
-+ ms_factory_uninit_plugins(factory);
-+ ms_factory_uninit_voip(factory);
-+ ms_factory_destroy(factory);
-+}
-+#endif
-+
- void LinphoneMediaEngine::Terminate() {
- fflush(stdout);
- }
-@@ -149,15 +173,25 @@
- playport2 = PORT_UNUSED;
-
- #ifdef _DEBUG
-+#ifdef MEDIASTREAMER_LESS_2_14
- ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL);
- #else
-+ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL);
-+#endif
-+#else
-+#ifdef MEDIASTREAMER_LESS_2_14
- ortp_set_log_level_mask(ORTP_FATAL);
-+#else
-+ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_FATAL);
-+#endif
- #endif
-
- #ifdef MEDIASTREAMER_LESS_2_9
- audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */
--#else
-+#elif MEDIASTREAMER_LESS_2_14
- audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */
-+#else
-+ audio_stream_ = audio_stream_new(engine_->factory, -1, -1, 0); /* -1 means that function will choose some free port */
- #endif
-
- }
-@@ -272,11 +306,22 @@
- {
- StopRing();
-
-+#ifdef MEDIASTREAMER_LESS_2_14
-+ MSSndCardManager *snd_manager = ms_snd_card_manager_get();
- MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(ms_snd_card_manager_get());
-+#else
-+ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory);
-+ MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(snd_manager);
-+#endif
-+
- if (!playcard)
- return false;
-
-+#ifdef MEDIASTREAMER_LESS_2_14
- MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(ms_snd_card_manager_get());
-+#else
-+ MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(snd_manager);
-+#endif
- if (!captcard)
- return false;
-
-@@ -333,8 +378,18 @@
-
- void LinphoneVoiceChannel::StartRing(bool bIncomingCall)
- {
-+#ifdef MEDIASTREAMER_LESS_2_14
-+ MSSndCardManager *snd_manager = ms_snd_card_manager_get();
-+#else
-+ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory);
-+#endif
-+
- MSSndCard *sndcard = NULL;
-+#ifdef MEDIASTREAMER_LESS_2_14
- sndcard=ms_snd_card_manager_get_default_card(ms_snd_card_manager_get());
-+#else
-+ sndcard=ms_snd_card_manager_get_default_card(snd_manager);
-+#endif
- if (sndcard)
- {
- if (bIncomingCall)
-@@ -342,7 +397,11 @@
- if (engine_->GetRingWav().size() > 0)
- {
- LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n";
-+#ifdef MEDIASTREAMER_LESS_2_14
- ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard);
-+#else
-+ ring_stream_ = ring_start (engine_->factory, engine_->GetRingWav().c_str(), 1, sndcard);
-+#endif
- }
- }
- else
-@@ -350,7 +409,11 @@
- if (engine_->GetCallWav().size() > 0)
- {
- LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n";
-+#ifdef MEDIASTREAMER_LESS_2_14
- ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard);
-+#else
-+ ring_stream_ = ring_start (engine_->factory, engine_->GetCallWav().c_str(), 1, sndcard);
-+#endif
- }
- }
- }
-
diff --git a/nonprism/kopete/kopete-openssl-1.1.patch b/nonprism/kopete/kopete-openssl-1.1.patch
deleted file mode 100644
index 1d34e0e5c..000000000
--- a/nonprism/kopete/kopete-openssl-1.1.patch
+++ /dev/null
@@ -1,307 +0,0 @@
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc 2018-01-05 22:49:27.805070408 +0100
-@@ -84,6 +84,7 @@
- static int socket_new(BIO* h);
- static int socket_free(BIO* data);
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static BIO_METHOD methods_socket = {
- BIO_TYPE_BIO,
- "socket",
-@@ -98,16 +99,40 @@
- };
-
- BIO_METHOD* BIO_s_socket2() { return(&methods_socket); }
-+#else
-+static BIO_METHOD *methods_socket = NULL;
-+
-+static const BIO_METHOD * BIO_s_socket2(void) {
-+ if (methods_socket == NULL) {
-+ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket");
-+ if (methods_socket == NULL ||
-+ BIO_meth_set_write (methods_socket, socket_write) ||
-+ BIO_meth_set_read (methods_socket, socket_read) ||
-+ BIO_meth_set_puts (methods_socket, socket_puts) ||
-+ BIO_meth_set_gets (methods_socket, 0) ||
-+ BIO_meth_set_ctrl (methods_socket, socket_ctrl) ||
-+ BIO_meth_set_create (methods_socket, socket_new) ||
-+ BIO_meth_set_destroy (methods_socket, socket_free))
-+ return NULL;
-+ }
-+ return methods_socket;
-+}
-+#endif
-
- BIO* BIO_new_socket(talk_base::AsyncSocket* socket) {
-+ const BIO_METHOD *socket2 = BIO_s_socket2();
-+ if (socket2 == NULL) {
-+ return NULL;
-+ }
-- BIO* ret = BIO_new(BIO_s_socket2());
-+ BIO* ret = BIO_new(socket2);
- if (ret == NULL) {
- return NULL;
- }
-- ret->ptr = socket;
-+ BIO_set_data(ret, socket);
- return ret;
- }
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static int socket_new(BIO* b) {
- b->shutdown = 0;
- b->init = 1;
-@@ -115,6 +136,14 @@
- b->ptr = 0;
- return 1;
- }
-+#else
-+static int socket_new(BIO* b) {
-+ BIO_set_shutdown(b, 0);
-+ BIO_set_init(b, 1);
-+ BIO_set_data(b, 0);
-+ return 1;
-+}
-+#endif
-
- static int socket_free(BIO* b) {
- if (b == NULL)
-@@ -125,13 +154,11 @@
- static int socket_read(BIO* b, char* out, int outl) {
- if (!out)
- return -1;
-- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr);
-+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- int result = socket->Recv(out, outl);
- if (result > 0) {
- return result;
-- } else if (result == 0) {
-- b->num = 1;
- } else if (socket->IsBlocking()) {
- BIO_set_retry_read(b);
- }
-@@ -141,7 +168,7 @@
- static int socket_write(BIO* b, const char* in, int inl) {
- if (!in)
- return -1;
-- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr);
-+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- int result = socket->Send(in, inl);
- if (result > 0) {
-@@ -164,7 +191,6 @@
- case BIO_CTRL_RESET:
- return 0;
- case BIO_CTRL_EOF:
-- return b->num;
- case BIO_CTRL_WPENDING:
- case BIO_CTRL_PENDING:
- return 0;
-@@ -696,7 +722,9 @@
- // We assign this to a local variable, instead of passing the address
- // directly to ASN1_item_d2i.
- // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html.
-- unsigned char* ext_value_data = extension->value->data;
-+ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension);
-+ unsigned char* ext_value_data = extension_data->data;
-+ long length = extension_data->length;
-
- #if OPENSSL_VERSION_NUMBER >= 0x0090800fL
- const unsigned char **ext_value_data_ptr =
-@@ -707,10 +735,10 @@
-
- if (meth->it) {
- ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr,
-- extension->value->length,
-+ length,
- ASN1_ITEM_ptr(meth->it));
- } else {
-- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length);
-+ ext_str = meth->d2i(NULL, ext_value_data_ptr, length);
- }
-
- STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL);
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc 2018-01-05 22:49:27.869069361 +0100
-@@ -32,16 +32,16 @@
- namespace talk_base {
-
- OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) {
-- EVP_MD_CTX_init(&ctx_);
-+ EVP_MD_CTX_init(ctx_);
- if (GetDigestEVP(algorithm, &md_)) {
-- EVP_DigestInit_ex(&ctx_, md_, NULL);
-+ EVP_DigestInit_ex(ctx_, md_, NULL);
- } else {
- md_ = NULL;
- }
- }
-
- OpenSSLDigest::~OpenSSLDigest() {
-- EVP_MD_CTX_cleanup(&ctx_);
-+ EVP_MD_CTX_destroy(ctx_);
- }
-
- size_t OpenSSLDigest::Size() const {
-@@ -55,7 +55,7 @@
- if (!md_) {
- return;
- }
-- EVP_DigestUpdate(&ctx_, buf, len);
-+ EVP_DigestUpdate(ctx_, buf, len);
- }
-
- size_t OpenSSLDigest::Finish(void* buf, size_t len) {
-@@ -63,8 +63,8 @@
- return 0;
- }
- unsigned int md_len;
-- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len);
-- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s
-+ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len);
-+ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s
- ASSERT(md_len == Size());
- return md_len;
- }
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h 2018-01-05 22:49:27.869069361 +0100
-@@ -55,7 +55,7 @@
- size_t* len);
-
- private:
-- EVP_MD_CTX ctx_;
-+ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create();
- const EVP_MD* md_;
- };
-
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2018-01-05 22:49:27.867069394 +0100
-@@ -169,7 +169,12 @@
- }
-
- void OpenSSLKeyPair::AddReference() {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY);
-+#else
-+ EVP_PKEY_up_ref(pkey_);
-+#endif
-+
- }
-
- #ifdef _DEBUG
-@@ -275,7 +280,11 @@
- }
-
- void OpenSSLCertificate::AddReference() {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509);
-+#else
-+ X509_up_ref(x509_);
-+#endif
- }
-
- OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) {
-diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc
---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2017-09-30 12:08:16.000000000 +0200
-+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2018-01-05 22:49:27.868069378 +0100
-@@ -87,6 +87,7 @@
- static int stream_new(BIO* h);
- static int stream_free(BIO* data);
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static BIO_METHOD methods_stream = {
- BIO_TYPE_BIO,
- "stream",
-@@ -101,17 +102,37 @@
- };
-
- static BIO_METHOD* BIO_s_stream() { return(&methods_stream); }
-+#else
-+static BIO_METHOD *methods_stream = NULL;
-+
-+static const BIO_METHOD * BIO_s_stream(void) {
-+ if (methods_stream == NULL) {
-+ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream");
-+ if (methods_stream == NULL ||
-+ BIO_meth_set_write (methods_stream, stream_write) ||
-+ BIO_meth_set_read (methods_stream, stream_read) ||
-+ BIO_meth_set_puts (methods_stream, stream_puts) ||
-+ BIO_meth_set_gets (methods_stream, 0) ||
-+ BIO_meth_set_ctrl (methods_stream, stream_ctrl) ||
-+ BIO_meth_set_create (methods_stream, stream_new) ||
-+ BIO_meth_set_destroy (methods_stream, stream_free))
-+ return NULL;
-+ }
-+ return methods_stream;
-+}
-+#endif
-
- static BIO* BIO_new_stream(StreamInterface* stream) {
- BIO* ret = BIO_new(BIO_s_stream());
- if (ret == NULL)
- return NULL;
-- ret->ptr = stream;
-+ BIO_set_data(ret, stream);
- return ret;
- }
-
- // bio methods return 1 (or at least non-zero) on success and 0 on failure.
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static int stream_new(BIO* b) {
- b->shutdown = 0;
- b->init = 1;
-@@ -119,6 +140,14 @@
- b->ptr = 0;
- return 1;
- }
-+#else
-+static int stream_new(BIO* b) {
-+ BIO_set_shutdown(b, 0);
-+ BIO_set_init(b, 1);
-+ BIO_set_data(b, 0);
-+ return 1;
-+}
-+#endif
-
- static int stream_free(BIO* b) {
- if (b == NULL)
-@@ -129,15 +158,13 @@
- static int stream_read(BIO* b, char* out, int outl) {
- if (!out)
- return -1;
-- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr);
-+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- size_t read;
- int error;
- StreamResult result = stream->Read(out, outl, &read, &error);
- if (result == SR_SUCCESS) {
- return read;
-- } else if (result == SR_EOS) {
-- b->num = 1;
- } else if (result == SR_BLOCK) {
- BIO_set_retry_read(b);
- }
-@@ -147,7 +174,7 @@
- static int stream_write(BIO* b, const char* in, int inl) {
- if (!in)
- return -1;
-- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr);
-+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b));
- BIO_clear_retry_flags(b);
- size_t written;
- int error;
-@@ -172,7 +199,6 @@
- case BIO_CTRL_RESET:
- return 0;
- case BIO_CTRL_EOF:
-- return b->num;
- case BIO_CTRL_WPENDING:
- case BIO_CTRL_PENDING:
- return 0;
diff --git a/nonprism/kopete/kopete-srtp2.patch b/nonprism/kopete/kopete-srtp2.patch
deleted file mode 100644
index 710bb7306..000000000
--- a/nonprism/kopete/kopete-srtp2.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-diff --git a/cmake/modules/FindSRTP.cmake b/cmake/modules/FindSRTP.cmake
-index 4e8baa827..ce9033497 100644
---- a/cmake/modules/FindSRTP.cmake
-+++ b/cmake/modules/FindSRTP.cmake
-@@ -11,8 +11,8 @@ include ( FindPackageHandleStandardArgs )
- if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY )
- set ( SRTP_FOUND true )
- else ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY )
-- find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp )
-- find_library ( SRTP_LIBRARY NAMES srtp )
-+ find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp srtp2 )
-+ find_library ( SRTP_LIBRARY NAMES srtp srtp2 )
-
- if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY )
- set ( SRTP_FOUND true )
-diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc
-index 7a1cb7866..f5363a36a 100644
---- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc
-+++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc
-@@ -416,7 +416,7 @@ bool SrtpSession::ProtectRtp(void* p, int in_len, int max_len, int* out_len) {
- }
- int seq_num;
- GetRtpSeqNum(p, in_len, &seq_num);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to protect SRTP packet, seqnum="
- << seq_num << ", err=" << err << ", last seqnum="
- << last_send_seq_num_;
-@@ -442,7 +442,7 @@ bool SrtpSession::ProtectRtcp(void* p, int in_len, int max_len, int* out_len) {
- *out_len = in_len;
- int err = srtp_protect_rtcp(session_, p, out_len);
- srtp_stat_->AddProtectRtcpResult(err);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to protect SRTCP packet, err=" << err;
- return false;
- }
-@@ -461,7 +461,7 @@ bool SrtpSession::UnprotectRtp(void* p, int in_len, int* out_len) {
- if (GetRtpSsrc(p, in_len, &ssrc)) {
- srtp_stat_->AddUnprotectRtpResult(ssrc, err);
- }
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to unprotect SRTP packet, err=" << err;
- return false;
- }
-@@ -477,7 +477,7 @@ bool SrtpSession::UnprotectRtcp(void* p, int in_len, int* out_len) {
- *out_len = in_len;
- int err = srtp_unprotect_rtcp(session_, p, out_len);
- srtp_stat_->AddUnprotectRtcpResult(err);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_WARNING) << "Failed to unprotect SRTCP packet, err=" << err;
- return false;
- }
-@@ -504,11 +504,11 @@ bool SrtpSession::SetKey(int type, const std::string& cs,
- memset(&policy, 0, sizeof(policy));
-
- if (cs == CS_AES_CM_128_HMAC_SHA1_80) {
-- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp);
-- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp);
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp);
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp);
- } else if (cs == CS_AES_CM_128_HMAC_SHA1_32) {
-- crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32,
-- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32,
-+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80
- } else {
- LOG(LS_WARNING) << "Failed to create SRTP session: unsupported"
- << " cipher_suite " << cs.c_str();
-@@ -520,7 +520,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs,
- return false;
- }
-
-- policy.ssrc.type = static_cast<ssrc_type_t>(type);
-+ policy.ssrc.type = static_cast<srtp_ssrc_type_t>(type);
- policy.ssrc.value = 0;
- policy.key = const_cast<uint8*>(key);
- // TODO parse window size from WSH session-param
-@@ -529,7 +529,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs,
- policy.next = NULL;
-
- int err = srtp_create(&session_, &policy);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_ERROR) << "Failed to create SRTP session, err=" << err;
- return false;
- }
-@@ -543,13 +543,13 @@ bool SrtpSession::Init() {
- if (!inited_) {
- int err;
- err = srtp_init();
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_ERROR) << "Failed to init SRTP, err=" << err;
- return false;
- }
-
- err = srtp_install_event_handler(&SrtpSession::HandleEventThunk);
-- if (err != err_status_ok) {
-+ if (err != srtp_err_status_ok) {
- LOG(LS_ERROR) << "Failed to install SRTP event handler, err=" << err;
- return false;
- }
-@@ -652,10 +652,10 @@ void SrtpStat::AddProtectRtpResult(uint32 ssrc, int result) {
- key.ssrc = ssrc;
- key.mode = SrtpFilter::PROTECT;
- switch (result) {
-- case err_status_ok:
-+ case srtp_err_status_ok:
- key.error = SrtpFilter::ERROR_NONE;
- break;
-- case err_status_auth_fail:
-+ case srtp_err_status_auth_fail:
- key.error = SrtpFilter::ERROR_AUTH;
- break;
- default:
-@@ -669,14 +669,14 @@ void SrtpStat::AddUnprotectRtpResult(uint32 ssrc, int result) {
- key.ssrc = ssrc;
- key.mode = SrtpFilter::UNPROTECT;
- switch (result) {
-- case err_status_ok:
-+ case srtp_err_status_ok:
- key.error = SrtpFilter::ERROR_NONE;
- break;
-- case err_status_auth_fail:
-+ case srtp_err_status_auth_fail:
- key.error = SrtpFilter::ERROR_AUTH;
- break;
-- case err_status_replay_fail:
-- case err_status_replay_old:
-+ case srtp_err_status_replay_fail:
-+ case srtp_err_status_replay_old:
- key.error = SrtpFilter::ERROR_REPLAY;
- break;
- default:
-diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h
-index 991d4bf42..ff4e5070f 100644
---- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h
-+++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h
-@@ -39,11 +39,7 @@
- #include "talk/session/phone/cryptoparams.h"
- #include "talk/p2p/base/sessiondescription.h"
-
--// Forward declaration to avoid pulling in libsrtp headers here
--struct srtp_event_data_t;
--struct srtp_ctx_t;
--typedef srtp_ctx_t* srtp_t;
--struct srtp_policy_t;
-+#include "srtp2/srtp.h"
-
- namespace cricket {
-
diff --git a/nonprism/kopete/libre-nonprism.patch b/nonprism/kopete/libre-nonprism.patch
deleted file mode 100644
index 1655ac573..000000000
--- a/nonprism/kopete/libre-nonprism.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-diff -Nur kopete-14.12.1.orig/doc/index.docbook kopete-14.12.1/doc/index.docbook
---- kopete-14.12.1.orig/doc/index.docbook 2014-11-19 21:39:14.000000000 -0200
-+++ kopete-14.12.1/doc/index.docbook 2015-01-25 16:44:09.213439141 -0200
-@@ -18,7 +18,6 @@
- <!ENTITY kopete-chatstyle SYSTEM "chatstyle.docbook">
- <!ENTITY kopete-pipes SYSTEM "pipes.docbook">
- <!ENTITY kopete-jabber SYSTEM "jabber.docbook">
-- <!ENTITY kopete-icq SYSTEM "icq.docbook">
- <!ENTITY kopete-emoticonspec SYSTEM "emoticonspec.docbook">
- ]>
- <!--
-@@ -111,13 +110,7 @@ Appendix: Chat Window Style Guide (1st d
- <keyword>Messaging</keyword>
- <keyword>Jabber</keyword>
- <keyword>IRC</keyword>
--<keyword>ICQ</keyword>
--<keyword>AIM</keyword>
--<keyword>Gadu-Gadu</keyword>
--<keyword>GroupWise</keyword>
--<keyword>Novell</keyword>
- <keyword>WinPopup</keyword>
--<keyword>SMS</keyword>
- </keywordset>
-
- </bookinfo>
-@@ -156,13 +149,13 @@ Appendix: Chat Window Style Guide (1st d
- <para>To use &kopete; you need to set up one or more accounts for the instant messaging services you wish to use.</para>
- <para>You've probably already chosen a messaging service, either because you already use &im;, or you need to use the same service as your friends. If you don't fit into either of these categories, please consider using a messaging service based on open standards, because these are designed for use by Free Software. Other messaging services are prone to changing the underlying technology without making the details freely available, making them harder for Free Software developers to support.</para>
- <para>The messaging services that &kopete; supports that are based on open standards are Jabber and IRC.</para>
--<para>The following section assumes you are registered with an &im; service already. If not, you can register with Gadu-Gadu, and Jabber from inside &kopete;; for other services, you'll have to register using their respective web site before creating an account in &kopete;.</para>
-+<para>The following section assumes you are registered with an &im; service already. If not, you can register with Jabber from inside &kopete;; for other services, you'll have to register using their respective web site before creating an account in &kopete;.</para>
- <sect1 id="creating-accounts">
- <title>Creating Accounts</title>
- <para>To create an account, use <menuchoice><guimenu>Settings</guimenu> <guimenuitem>Configure...</guimenuitem> </menuchoice> to display the Configure window.</para>
- <para>The Configure window is the main way to set up and customize &kopete;. On the left a column of icons control which aspect of &kopete; is being configured. Click the <guiicon>Accounts</guiicon> icon. The main pane will change to display the account management pane. This is currently empty, but will soon list your &im; accounts. Click <guibutton>Add Account</guibutton> to display the <interface>Account Wizard</interface>.</para>
- <para>The <interface>Account Wizard</interface> helps you create an &im; account. On the first page, you are asked to select the messaging service that you'd like to use. Click one of the services shown and then click <guibutton>Next</guibutton>. On the following page, you should enter your registration details for that instant messaging service.</para>
--<para>Most services just require you to enter a username or unique identifying number (<acronym>UIN</acronym>) and password. The special purpose services Winpopup and <acronym>SMS</acronym> work slightly differently, so please see their specific sections. There are a couple of other options that apply to most services that you should look at:</para>
-+<para>Most services just require you to enter a username or unique identifying number (<acronym>UIN</acronym>) and password. The special purpose services Winpopup work slightly differently, so please see their specific sections. There are a couple of other options that apply to most services that you should look at:</para>
- <variablelist>
- <varlistentry><term>Remember password</term><listitem><para>When this is checked, &kopete; will store the password for you, so you don't have to enter it every time you connect to the &im; service. If you are security-conscious or want to limit access to the &im; account you can leave this unchecked.</para></listitem></varlistentry>
- <varlistentry><term>Connect at startup</term><listitem><para>When this is checked, &kopete; will try to connect to the &im; service as when it starts. If you use a <acronym>LAN</acronym>, <acronym>DSL</acronym> or other <quote>always-on</quote> connection, this is appropriate; dial-up modem users should turn this off and connect manually when you have dialed up.</para></listitem></varlistentry>
-@@ -238,7 +231,7 @@ Shortcuts...</guimenuitem></menuchoice>.
- <listitem><para>Select Display Name and Group. Here you can enter a Display Name (the name used for this person inside &kopete;), and choose the <link linkend="organise-contacts-grouping">groups</link> they are a member of.</para></listitem>
- <listitem><para>Select &im; Accounts. Here you can choose which accounts you want to use to chat to the new contact. If you only have one &im; account, you won't see this screen.</para></listitem>
- <listitem><para>Account-specific Add Contact Pages. For each account, you'll get one page where you can enter the <acronym>UIN</acronym>, buddy name or Email address, depending on the &im; system in use.</para></listitem>
--<listitem><para>Finish Screen. All done. Except if the &im; system requires authorization (such as <trademark>ICQ</trademark>) to add a contact to your list - in which case, you'll be prompted after the wizard exits.</para></listitem>
-+<listitem><para>Finish Screen. All done. Except if the &im; system requires authorization to add a contact to your list - in which case, you'll be prompted after the wizard exits.</para></listitem>
- </orderedlist>
-
- <para>You can add contacts to an existing Metacontact using its context menu.</para>
-@@ -683,38 +676,17 @@ Shortcuts...</guimenuitem></menuchoice>.
- <para>&kopete; calls different &im; systems 'Protocols'. When you add an account, it is specific to a single protocol. Although &kopete; tries to make instant messaging appear the same, no matter what protocol you use, there are some differences in the level of support for advanced features such as file transfer and multimedia.</para>
- <sect1 id="protocols-list">
- <title>Protocols</title>
-- <sect2 id="protocols-aim">
-- <title>AIM</title>
-- <para>AIM supports chatrooms. Use the <guilabel>Join Chat...</guilabel> command on the AIM account menu to join a chatroom. Contact pictures and custom emoticons are also supported.</para>
-- </sect2>
-- <sect2 id="protocols-icq">
-- <title>ICQ</title>
-- <para>ICQ has an Invisibility feature which allows you to hide from selected contacts. You may also search the ICQ user folder when adding a contact. A wide range of contact details can be set using the <guilabel>Properties</guilabel> option.</para>
-- </sect2>
- <sect2 id="protocols-jabber">
- <title>Jabber</title>
- <para>Jabber, also known as XMPP, supports file transfer, conferencing and any other services supplied by the Jabber server. For example, many Jabber servers have a user directory, and some provide transports to other messaging systems. To access services, use <menuchoice><guimenu>Services...</guimenu></menuchoice> on the account menu. Jabber file transfer can work without port forwarding, but enjoys better performance where a direct connection is possible. By default, port 8010 is used for port forwarding, but this is configurable in each account's settings.</para>
- </sect2>
-- <sect2 id="protocols-gtalk">
-- <title>Google Talk</title>
-- <para>Since Google Talk is based upon Jabber, it is well supported in &kopete; with the exception of voice chat, which is worked upon.</para>
-- <para>To configure &kopete; for Google Talk: Use your complete Google Mail address as the user name. Check <guilabel>Use protocol encryption (SSL)</guilabel>, <guilabel>Allow plain-text password authentication</guilabel> and <guilabel>Override default server information</guilabel>. The server is <quote>talk.google.com</quote> or <quote>gmail.com</quote> and ports 443 or 5223 should be used.</para>
-- </sect2>
-- <sect2 id="protocols-groupwise">
-- <title>Novell GroupWise</title>
-- <para>GroupWise Messenger is an enterprise messenging system from Novell Inc. The full range of features are supported, including privacy, group chat, rich text and user search.</para>
-- </sect2>
-- <sect2 id="protocols-gadu-gadu">
-- <title>Gadu-Gadu</title>
-- <para>Gadu-Gadu is a chat system originating from Poland. At present, &kopete; supports basic chat functions.</para>
-- </sect2>
- <sect2 id="protocols-winpopup">
- <title>WinPopup</title>
- <para>WinPopup is a way to use &kopete; to send and receive messages with &Windows; computers on the local network. The WinPopup protocol only supports single, plain-text messages.</para>
- </sect2>
- <sect2 id="protocols-others">
- <title>Other protocols</title>
-- <para>As well as the protocols named above, &kopete; has support for several other protocols. In most cases, this is not enabled by default or an additional plugin must be installed. Meanwhile, SMS and SILC are provided in this way. However, the &kopete; team are not responsible for these protocols.</para>
-+ <para>As well as the protocols named above, &kopete; has support for several other protocols. In most cases, this is not enabled by default or an additional plugin must be installed. However, the &kopete; team are not responsible for these protocols.</para>
- </sect2>
- </sect1>
- </chapter>
-@@ -1188,7 +1160,6 @@ Documentation copyright 2003,2004,2005 &
- &kopete-chatstyle;
- &kopete-pipes;
- &kopete-jabber;
--&kopete-icq;
- &kopete-emoticonspec;
-
- &documentation.index;