Merge pull request #157178 from lorenz/update-linphone-4-3
Update and fix Linphone
This commit is contained in:
commit
5679f2ad8e
|
@ -12504,6 +12504,12 @@
|
||||||
githubId = 844343;
|
githubId = 844343;
|
||||||
name = "Thiago K. Okada";
|
name = "Thiago K. Okada";
|
||||||
};
|
};
|
||||||
|
thibaultlemaire = {
|
||||||
|
email = "thibault.lemaire@protonmail.com";
|
||||||
|
github = "ThibaultLemaire";
|
||||||
|
githubId = 21345269;
|
||||||
|
name = "Thibault Lemaire";
|
||||||
|
};
|
||||||
thibautmarty = {
|
thibautmarty = {
|
||||||
email = "github@thibautmarty.fr";
|
email = "github@thibautmarty.fr";
|
||||||
matrix = "@thibaut:thibautmarty.fr";
|
matrix = "@thibaut:thibautmarty.fr";
|
||||||
|
|
|
@ -49,9 +49,25 @@
|
||||||
, zlib
|
, zlib
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
# How to update Linphone? (The Qt desktop app)
|
||||||
|
#
|
||||||
|
# Belledonne Communications (BC), the company making Linphone, has split the
|
||||||
|
# project into several sub-projects that they maintain, plus some third-party
|
||||||
|
# dependencies that they also extend with commits of their own, specific to
|
||||||
|
# Linphone and not (yet?) upstreamed.
|
||||||
|
#
|
||||||
|
# All of this is organised in a Software Development Kit (SDK) meta-repository
|
||||||
|
# with git submodules to pin all those repositories into a coherent whole.
|
||||||
|
#
|
||||||
|
# The Linphone Qt desktop app uses this SDK as submodule as well.
|
||||||
|
#
|
||||||
|
# So, in order to update the desktop app to a new release, one has to follow
|
||||||
|
# the submodule chain and update the corresponding derivations here, in nixpkgs,
|
||||||
|
# with the corresponding version number (or commit hash)
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "linphone-desktop";
|
pname = "linphone-desktop";
|
||||||
version = "4.2.5";
|
version = "4.4.1";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -59,12 +75,13 @@ mkDerivation rec {
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1gq4l9p21rbrcksa7fbkzn9fzbbynqmn6ni6lhnvzk359sb1xvbz";
|
sha256 = "sha256-BBOTyKMZikkxMJSmzAuChVHpVeCvbAimn1K3REGbqEg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./do-not-build-linphone-sdk.patch
|
./do-not-build-linphone-sdk.patch
|
||||||
./remove-bc_compute_full_version-usage.patch
|
./remove-bc_compute_full_version-usage.patch
|
||||||
|
./no-store-path-in-autostart.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
# See: https://gitlab.linphone.org/BC/public/linphone-desktop/issues/21
|
# See: https://gitlab.linphone.org/BC/public/linphone-desktop/issues/21
|
||||||
|
@ -78,12 +95,21 @@ mkDerivation rec {
|
||||||
# there might be some build inputs here that aren't needed for
|
# there might be some build inputs here that aren't needed for
|
||||||
# linphone-desktop.
|
# linphone-desktop.
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
# Made by BC
|
||||||
bcg729
|
bcg729
|
||||||
bctoolbox
|
bctoolbox
|
||||||
belcard
|
belcard
|
||||||
belle-sip
|
belle-sip
|
||||||
belr
|
belr
|
||||||
bzrtp
|
bzrtp
|
||||||
|
liblinphone
|
||||||
|
mediastreamer
|
||||||
|
mediastreamer-openh264
|
||||||
|
ortp
|
||||||
|
|
||||||
|
# Vendored by BC but we use upstream, might cause problems
|
||||||
|
libmatroska
|
||||||
|
|
||||||
cairo
|
cairo
|
||||||
cyrus_sasl
|
cyrus_sasl
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
@ -92,19 +118,14 @@ mkDerivation rec {
|
||||||
gtk2
|
gtk2
|
||||||
libX11
|
libX11
|
||||||
libexosip
|
libexosip
|
||||||
liblinphone
|
|
||||||
libmatroska
|
|
||||||
libnotify
|
libnotify
|
||||||
libosip
|
libosip
|
||||||
libsoup
|
libsoup
|
||||||
libupnp
|
libupnp
|
||||||
libxml2
|
libxml2
|
||||||
mbedtls
|
mbedtls
|
||||||
mediastreamer
|
|
||||||
mediastreamer-openh264
|
|
||||||
minizip2
|
minizip2
|
||||||
openldap
|
openldap
|
||||||
ortp
|
|
||||||
pango
|
pango
|
||||||
qtbase
|
qtbase
|
||||||
qtgraphicaleffects
|
qtgraphicaleffects
|
||||||
|
@ -118,7 +139,9 @@ mkDerivation rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
# Made by BC
|
||||||
bcunit
|
bcunit
|
||||||
|
|
||||||
cmake
|
cmake
|
||||||
gnused
|
gnused
|
||||||
graphviz
|
graphviz
|
||||||
|
@ -128,7 +151,6 @@ mkDerivation rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
|
|
||||||
"-DMINIZIP_INCLUDE_DIRS=${minizip2}/include"
|
"-DMINIZIP_INCLUDE_DIRS=${minizip2}/include"
|
||||||
"-DMINIZIP_LIBRARIES=minizip"
|
"-DMINIZIP_LIBRARIES=minizip"
|
||||||
];
|
];
|
||||||
|
@ -162,18 +184,25 @@ mkDerivation rec {
|
||||||
# Linphone will randomly crash when it tries to access those files. Then,
|
# Linphone will randomly crash when it tries to access those files. Then,
|
||||||
# those just need to be copied manually below.
|
# those just need to be copied manually below.
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin $out/lib
|
||||||
cp linphone-app/linphone $out/bin/
|
cp linphone-app/linphone $out/bin/
|
||||||
|
cp linphone-app/libapp-plugin.so $out/lib/
|
||||||
|
mkdir -p $out/lib/mediastreamer/plugins
|
||||||
|
ln -s ${mediastreamer-openh264}/lib/mediastreamer/plugins/* $out/lib/mediastreamer/plugins/
|
||||||
|
ln -s ${mediastreamer}/lib/mediastreamer/plugins/* $out/lib/mediastreamer/plugins/
|
||||||
wrapProgram $out/bin/linphone \
|
wrapProgram $out/bin/linphone \
|
||||||
--set MEDIASTREAMER_PLUGINS_DIR \
|
--set MEDIASTREAMER_PLUGINS_DIR \
|
||||||
${mediastreamer-openh264}/lib/mediastreamer/plugins
|
$out/lib/mediastreamer/plugins
|
||||||
mkdir -p $out/share/applications
|
mkdir -p $out/share/applications
|
||||||
cp linphone-app/linphone.desktop $out/share/applications/
|
cp linphone-app/linphone.desktop $out/share/applications/
|
||||||
cp -r ../linphone-app/assets/icons $out/share/
|
mkdir -p $out/share/icons/hicolor/scalable/apps
|
||||||
|
cp ../linphone-app/assets/images/linphone_logo.svg $out/share/icons/hicolor/scalable/apps/linphone.svg
|
||||||
mkdir -p $out/share/belr/grammars
|
mkdir -p $out/share/belr/grammars
|
||||||
ln -s ${liblinphone}/share/belr/grammars/* $out/share/belr/grammars/
|
ln -s ${liblinphone}/share/belr/grammars/* $out/share/belr/grammars/
|
||||||
|
ln -s ${belle-sip}/share/belr/grammars/* $out/share/belr/grammars/
|
||||||
mkdir -p $out/share/linphone
|
mkdir -p $out/share/linphone
|
||||||
ln -s ${liblinphone}/share/linphone/* $out/share/linphone/
|
ln -s ${liblinphone}/share/linphone/* $out/share/linphone/
|
||||||
|
ln -s ${liblinphone}/share/sounds $out/share/sounds
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -1,30 +1,31 @@
|
||||||
From 08b8b1811a1ad079fa713d19a8cc6bf2dc782bb7 Mon Sep 17 00:00:00 2001
|
From e6a9992461f368d08d1ad63ffe454714ec0c59ce Mon Sep 17 00:00:00 2001
|
||||||
From: David P <megver83@parabola.nu>
|
From: Lorenz Brun <lorenz@brun.one>
|
||||||
Date: Thu, 26 Nov 2020 15:56:30 -0300
|
Date: Fri, 28 Jan 2022 02:36:01 +0100
|
||||||
Subject: [PATCH 1/2] do not build linphone-sdk
|
Subject: [PATCH] Remove Linphone SDK build
|
||||||
|
|
||||||
Signed-off-by: David P <megver83@parabola.nu>
|
|
||||||
---
|
---
|
||||||
CMakeLists.txt | 61 +------------------
|
CMakeLists.txt | 86 ++-----------------
|
||||||
.../cmake_builder/additional_steps.cmake | 9 ---
|
.../cmake_builder/additional_steps.cmake | 9 --
|
||||||
2 files changed, 3 insertions(+), 67 deletions(-)
|
2 files changed, 5 insertions(+), 90 deletions(-)
|
||||||
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
index f7eb05f2..5921ee5b 100644
|
index 2002b925..6d92a8e5 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -118,7 +118,6 @@ list(APPEND APP_OPTIONS "-DENABLE_RELATIVE_PREFIX=${ENABLE_RELATIVE_PREFIX}")
|
@@ -152,7 +152,6 @@ list(APPEND APP_OPTIONS "-DENABLE_RELATIVE_PREFIX=${ENABLE_RELATIVE_PREFIX}")
|
||||||
|
|
||||||
list(APPEND APP_OPTIONS "-DLINPHONE_OUTPUT_DIR=${LINPHONE_OUTPUT_DIR}")
|
list(APPEND APP_OPTIONS "-DLINPHONE_OUTPUT_DIR=${LINPHONE_OUTPUT_DIR}")
|
||||||
|
list(APPEND APP_OPTIONS "-DENABLE_QT_GL=${ENABLE_VIDEO}")#Activate on video
|
||||||
|
|
||||||
-include(ExternalProject)
|
-include(ExternalProject)
|
||||||
set(PROJECT_BUILD_COMMAND "")
|
set(PROJECT_BUILD_COMMAND "")
|
||||||
if(CMAKE_BUILD_PARALLEL_LEVEL)
|
if(CMAKE_BUILD_PARALLEL_LEVEL)
|
||||||
list(APPEND APP_OPTIONS "-DCMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL}")
|
list(APPEND APP_OPTIONS "-DCMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL}")
|
||||||
@@ -136,29 +135,8 @@ if(UNIX AND NOT APPLE)
|
@@ -190,30 +189,8 @@ if(ENABLE_BUILD_APP_PLUGINS)
|
||||||
set(CMAKE_INSTALL_RPATH "$ORIGIN:$ORIGIN/lib64:$ORIGIN/../lib64:$ORIGIN/lib:$ORIGIN/../lib:${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}")
|
endif()
|
||||||
list(APPEND APP_OPTIONS "-DCMAKE_INSTALL_RPATH=${CMAKE_INSTALL_RPATH}")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
-
|
||||||
|
-if(NOT LINPHONE_QT_ONLY)
|
||||||
-ExternalProject_Add(sdk PREFIX "${CMAKE_BINARY_DIR}/sdk"
|
-ExternalProject_Add(sdk PREFIX "${CMAKE_BINARY_DIR}/sdk"
|
||||||
- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-sdk"
|
- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-sdk"
|
||||||
- INSTALL_DIR "${LINPHONE_OUTPUT_DIR}"
|
- INSTALL_DIR "${LINPHONE_OUTPUT_DIR}"
|
||||||
|
@ -35,7 +36,7 @@ index f7eb05f2..5921ee5b 100644
|
||||||
- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time."
|
- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time."
|
||||||
- LIST_SEPARATOR | # Use the alternate list separator
|
- LIST_SEPARATOR | # Use the alternate list separator
|
||||||
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
||||||
- #BUILD_ALWAYS NO #${DO_BUILD}
|
- BUILD_ALWAYS NO #${DO_BUILD}
|
||||||
-)
|
-)
|
||||||
-ExternalProject_Add_Step(sdk force_build
|
-ExternalProject_Add_Step(sdk force_build
|
||||||
- COMMENT "Forcing build for 'desktop'"
|
- COMMENT "Forcing build for 'desktop'"
|
||||||
|
@ -43,18 +44,17 @@ index f7eb05f2..5921ee5b 100644
|
||||||
- DEPENDERS build
|
- DEPENDERS build
|
||||||
- ALWAYS 1
|
- ALWAYS 1
|
||||||
-)
|
-)
|
||||||
|
-endif()
|
||||||
include(FindPkgConfig)
|
include(FindPkgConfig)
|
||||||
|
|
||||||
-set(APP_DEPENDS sdk)
|
-set(APP_DEPENDS sdk)
|
||||||
-
|
find_package(Qt5 5.10 COMPONENTS Core REQUIRED)
|
||||||
-
|
|
||||||
find_package(Qt5 5.12 COMPONENTS Core REQUIRED)
|
|
||||||
|
|
||||||
if ( NOT Qt5_FOUND )
|
if ( NOT Qt5_FOUND )
|
||||||
@@ -173,39 +151,6 @@ find_package(Mediastreamer2 CONFIG QUIET)
|
@@ -227,62 +204,9 @@ find_package(belcard CONFIG QUIET)
|
||||||
|
find_package(Mediastreamer2 CONFIG QUIET)
|
||||||
find_package(ortp CONFIG QUIET)
|
find_package(ortp CONFIG QUIET)
|
||||||
|
|
||||||
|
|
||||||
-if(NOT (LinphoneCxx_FOUND) OR NOT (Linphone_FOUND) OR NOT (bctoolbox_FOUND) OR NOT (belcard_FOUND) OR NOT (Mediastreamer2_FOUND) OR NOT (ortp_FOUND) OR FORCE_APP_EXTERNAL_PROJECTS)
|
-if(NOT (LinphoneCxx_FOUND) OR NOT (Linphone_FOUND) OR NOT (bctoolbox_FOUND) OR NOT (belcard_FOUND) OR NOT (Mediastreamer2_FOUND) OR NOT (ortp_FOUND) OR FORCE_APP_EXTERNAL_PROJECTS)
|
||||||
- message("Projects are set as External projects. You can start building them by using for example : cmake --build . --target install")
|
- message("Projects are set as External projects. You can start building them by using for example : cmake --build . --target install")
|
||||||
- ExternalProject_Add(linphone-qt PREFIX "${CMAKE_BINARY_DIR}/linphone-app"
|
- ExternalProject_Add(linphone-qt PREFIX "${CMAKE_BINARY_DIR}/linphone-app"
|
||||||
|
@ -63,23 +63,51 @@ index f7eb05f2..5921ee5b 100644
|
||||||
- BINARY_DIR "${CMAKE_BINARY_DIR}/linphone-app"
|
- BINARY_DIR "${CMAKE_BINARY_DIR}/linphone-app"
|
||||||
- DEPENDS ${APP_DEPENDS}
|
- DEPENDS ${APP_DEPENDS}
|
||||||
- BUILD_COMMAND ${CMAKE_COMMAND} --build <BINARY_DIR> --config $<CONFIG> ${PROJECT_BUILD_COMMAND}
|
- BUILD_COMMAND ${CMAKE_COMMAND} --build <BINARY_DIR> --config $<CONFIG> ${PROJECT_BUILD_COMMAND}
|
||||||
- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step will not be done by external project"
|
- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time."
|
||||||
- LIST_SEPARATOR | # Use the alternate list separator
|
- LIST_SEPARATOR | # Use the alternate list separator
|
||||||
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
||||||
- # ${APP_OPTIONS}
|
- # ${APP_OPTIONS}
|
||||||
- BUILD_ALWAYS ON
|
- BUILD_ALWAYS ON
|
||||||
- )
|
- )
|
||||||
|
- if( ENABLE_BUILD_APP_PLUGINS)
|
||||||
|
- ExternalProject_Add(app-plugins PREFIX "${CMAKE_BINARY_DIR}/plugins-app"
|
||||||
|
- SOURCE_DIR "${CMAKE_SOURCE_DIR}/plugins"
|
||||||
|
- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}"
|
||||||
|
- BINARY_DIR "${CMAKE_BINARY_DIR}/plugins-app"
|
||||||
|
- DEPENDS linphone-qt
|
||||||
|
- BUILD_COMMAND ${CMAKE_COMMAND} --build <BINARY_DIR> --config $<CONFIG> ${PROJECT_BUILD_COMMAND}
|
||||||
|
- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time."
|
||||||
|
- LIST_SEPARATOR | # Use the alternate list separator
|
||||||
|
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
||||||
|
- )
|
||||||
|
- endif()
|
||||||
- install(CODE "message(STATUS Running install)")
|
- install(CODE "message(STATUS Running install)")
|
||||||
- set(AUTO_REGENERATION auto_regeneration)
|
- set(AUTO_REGENERATION auto_regeneration)
|
||||||
- add_custom_target(${AUTO_REGENERATION} ALL
|
- if( ENABLE_BUILD_APP_PLUGINS)
|
||||||
- COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR}
|
- add_custom_target(${AUTO_REGENERATION} ALL
|
||||||
- DEPENDS linphone-qt)
|
- COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
- DEPENDS app-plugins)
|
||||||
|
- else()
|
||||||
|
- add_custom_target(${AUTO_REGENERATION} ALL
|
||||||
|
- COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
- DEPENDS linphone-qt)
|
||||||
|
- endif()
|
||||||
-else()
|
-else()
|
||||||
- message("Adding Linphone Desktop in an IDE-friendly state")
|
- message("Adding Linphone Desktop in an IDE-friendly state")
|
||||||
- set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}")
|
- set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}")
|
||||||
- add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app)
|
- add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app)
|
||||||
- add_dependencies(app-library ${APP_DEPENDS})
|
- if(NOT LINPHONE_QT_ONLY)
|
||||||
-endif()
|
- add_dependencies(app-library ${APP_DEPENDS})
|
||||||
|
- endif()
|
||||||
|
- if( ENABLE_BUILD_APP_PLUGINS)
|
||||||
|
- add_subdirectory(${CMAKE_SOURCE_DIR}/plugins "plugins-app")
|
||||||
|
- endif()
|
||||||
|
+message("Adding Linphone Desktop in an IDE-friendly state")
|
||||||
|
+set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}")
|
||||||
|
+add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app)
|
||||||
|
+if( ENABLE_BUILD_APP_PLUGINS)
|
||||||
|
+ add_subdirectory(${CMAKE_SOURCE_DIR}/plugins "plugins-app")
|
||||||
|
endif()
|
||||||
-ExternalProject_Add(linphone-qt-only PREFIX "${CMAKE_BINARY_DIR}/linphone-app"
|
-ExternalProject_Add(linphone-qt-only PREFIX "${CMAKE_BINARY_DIR}/linphone-app"
|
||||||
- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-app"
|
- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-app"
|
||||||
- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}"
|
- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}"
|
||||||
|
@ -89,11 +117,8 @@ index f7eb05f2..5921ee5b 100644
|
||||||
- LIST_SEPARATOR | # Use the alternate list separator
|
- LIST_SEPARATOR | # Use the alternate list separator
|
||||||
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${PREFIX_PATH}
|
||||||
- EXCLUDE_FROM_ALL ON
|
- EXCLUDE_FROM_ALL ON
|
||||||
- BUILD_ALWAYS ON
|
- #BUILD_ALWAYS ON
|
||||||
-)
|
-)
|
||||||
+message("Adding Linphone Desktop in an IDE-friendly state")
|
|
||||||
+set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}")
|
|
||||||
+add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app)
|
|
||||||
diff --git a/linphone-app/cmake_builder/additional_steps.cmake b/linphone-app/cmake_builder/additional_steps.cmake
|
diff --git a/linphone-app/cmake_builder/additional_steps.cmake b/linphone-app/cmake_builder/additional_steps.cmake
|
||||||
index 7f7fd573..a69a04e8 100644
|
index 7f7fd573..a69a04e8 100644
|
||||||
--- a/linphone-app/cmake_builder/additional_steps.cmake
|
--- a/linphone-app/cmake_builder/additional_steps.cmake
|
||||||
|
@ -114,5 +139,5 @@ index 7f7fd573..a69a04e8 100644
|
||||||
endif ()
|
endif ()
|
||||||
endif ()
|
endif ()
|
||||||
--
|
--
|
||||||
2.29.2
|
2.25.1
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
From 6a26922e5e4363de36057d635a1bf889160b2533 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lorenz Brun <lorenz@brun.one>
|
||||||
|
Date: Fri, 28 Jan 2022 18:44:43 +0100
|
||||||
|
Subject: [PATCH] Do not use store path for autostart on Nix
|
||||||
|
|
||||||
|
---
|
||||||
|
linphone-app/src/app/App.cpp | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/linphone-app/src/app/App.cpp b/linphone-app/src/app/App.cpp
|
||||||
|
index 868f8f44..2c61c648 100644
|
||||||
|
--- a/linphone-app/src/app/App.cpp
|
||||||
|
+++ b/linphone-app/src/app/App.cpp
|
||||||
|
@@ -858,6 +858,10 @@ void App::setAutoStart (bool enabled) {
|
||||||
|
exec = QProcessEnvironment::systemEnvironment().value(QStringLiteral("APPIMAGE"));
|
||||||
|
qDebug() << "exec path autostart set appimage=" << exec;
|
||||||
|
}
|
||||||
|
+ else if (binPath.startsWith("/nix/store")) { // Nix/NixOS
|
||||||
|
+ exec = QStringLiteral("linphone");
|
||||||
|
+ qDebug() << "exec path autostart set nix=" << exec;
|
||||||
|
+ }
|
||||||
|
else { //classic package
|
||||||
|
exec = binPath;
|
||||||
|
qDebug() << "exec path autostart set classic package=" << exec;
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
From 6fc23da651d54979e73776fcda38614e290d65dc Mon Sep 17 00:00:00 2001
|
From 4849d5633b98e6d3514355436eab5ba537cbfd99 Mon Sep 17 00:00:00 2001
|
||||||
From: David P <megver83@parabola.nu>
|
From: David P <megver83@parabola.nu>
|
||||||
Date: Fri, 23 Oct 2020 16:44:17 -0300
|
Date: Fri, 23 Oct 2020 16:44:17 -0300
|
||||||
Subject: [PATCH 2/2] remove bc_compute_full_version usage
|
Subject: [PATCH] remove bc_compute_full_version usage
|
||||||
|
|
||||||
---
|
---
|
||||||
linphone-app/CMakeLists.txt | 11 +----------
|
linphone-app/CMakeLists.txt | 11 +----------
|
||||||
|
@ -10,7 +10,7 @@ Subject: [PATCH 2/2] remove bc_compute_full_version usage
|
||||||
3 files changed, 2 insertions(+), 24 deletions(-)
|
3 files changed, 2 insertions(+), 24 deletions(-)
|
||||||
|
|
||||||
diff --git a/linphone-app/CMakeLists.txt b/linphone-app/CMakeLists.txt
|
diff --git a/linphone-app/CMakeLists.txt b/linphone-app/CMakeLists.txt
|
||||||
index 3bc9420a..27b418ee 100644
|
index de7f917f..ee14ff78 100644
|
||||||
--- a/linphone-app/CMakeLists.txt
|
--- a/linphone-app/CMakeLists.txt
|
||||||
+++ b/linphone-app/CMakeLists.txt
|
+++ b/linphone-app/CMakeLists.txt
|
||||||
@@ -21,17 +21,8 @@
|
@@ -21,17 +21,8 @@
|
||||||
|
@ -30,8 +30,8 @@ index 3bc9420a..27b418ee 100644
|
||||||
-
|
-
|
||||||
-project(linphoneqt VERSION "${version_major}.${version_minor}.${version_patch}")
|
-project(linphoneqt VERSION "${version_major}.${version_minor}.${version_patch}")
|
||||||
|
|
||||||
|
|
||||||
if(ENABLE_BUILD_VERBOSE)
|
if(ENABLE_BUILD_VERBOSE)
|
||||||
#message("CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH}")
|
|
||||||
diff --git a/linphone-app/build/CMakeLists.txt b/linphone-app/build/CMakeLists.txt
|
diff --git a/linphone-app/build/CMakeLists.txt b/linphone-app/build/CMakeLists.txt
|
||||||
index 8ef03faa..97d94bd6 100644
|
index 8ef03faa..97d94bd6 100644
|
||||||
--- a/linphone-app/build/CMakeLists.txt
|
--- a/linphone-app/build/CMakeLists.txt
|
||||||
|
@ -49,7 +49,7 @@ index 8ef03faa..97d94bd6 100644
|
||||||
|
|
||||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME})
|
set(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME})
|
||||||
diff --git a/linphone-app/cmake_builder/linphone_package/CMakeLists.txt b/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
|
diff --git a/linphone-app/cmake_builder/linphone_package/CMakeLists.txt b/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
|
||||||
index baea03cf..08ffc1b5 100644
|
index ac85c68a..e6af5a66 100644
|
||||||
--- a/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
|
--- a/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
|
||||||
+++ b/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
|
+++ b/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
|
||||||
@@ -38,15 +38,7 @@ set(LINPHONE_QML_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../ui")
|
@@ -38,15 +38,7 @@ set(LINPHONE_QML_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../ui")
|
||||||
|
@ -70,5 +70,5 @@ index baea03cf..08ffc1b5 100644
|
||||||
endif ()
|
endif ()
|
||||||
string(REGEX REPLACE "([0-9.]+)-?.*" "\\1" LINPHONE_VERSION "${APP_PROJECT_VERSION}")
|
string(REGEX REPLACE "([0-9.]+)-?.*" "\\1" LINPHONE_VERSION "${APP_PROJECT_VERSION}")
|
||||||
--
|
--
|
||||||
2.29.2
|
2.25.1
|
||||||
|
|
||||||
|
|
36
pkgs/development/libraries/bc-decaf/default.nix
Normal file
36
pkgs/development/libraries/bc-decaf/default.nix
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
{ cmake
|
||||||
|
, fetchFromGitLab
|
||||||
|
, lib
|
||||||
|
, python3
|
||||||
|
, stdenv
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "bc-decaf";
|
||||||
|
version = "linphone-4.4.1";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
buildInputs = [
|
||||||
|
python3
|
||||||
|
];
|
||||||
|
|
||||||
|
src = fetchFromGitLab {
|
||||||
|
domain = "gitlab.linphone.org";
|
||||||
|
group = "BC";
|
||||||
|
owner = "public/external";
|
||||||
|
repo = "decaf";
|
||||||
|
rev = "6e78a9beb24d1e3d7050dd52a65e4f88b101a1fc";
|
||||||
|
sha256 = "sha256-D2SzkinloL0Ya9p25YUsc+7lKvoTMUsdkKrkv/5AEeY=";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Do not build static libraries and do not enable -Werror
|
||||||
|
cmakeFlags = [ "-DENABLE_STATIC=NO" "-DENABLE_STRICT=NO" ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Elliptic curve library supporting Ed448-Goldilocks and Curve25519. Belledonne Communications' fork for Linphone.";
|
||||||
|
homepage = "https://gitlab.linphone.org/BC/public/bctoolbox";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ thibaultlemaire ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,16 +1,28 @@
|
||||||
{ bcunit
|
{ bcunit
|
||||||
, cmake
|
, cmake
|
||||||
|
, bc-decaf
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, mbedtls
|
, mbedtls
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "bctoolbox";
|
pname = "bctoolbox";
|
||||||
version = "5.1.17";
|
version = "5.1.17";
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [
|
||||||
buildInputs = [ mbedtls bcunit ];
|
cmake
|
||||||
|
];
|
||||||
|
buildInputs = [
|
||||||
|
# Made by BC
|
||||||
|
bcunit
|
||||||
|
|
||||||
|
# Vendored by BC
|
||||||
|
bc-decaf
|
||||||
|
|
||||||
|
mbedtls
|
||||||
|
];
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -22,9 +34,7 @@ stdenv.mkDerivation rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
# Do not build static libraries
|
# Do not build static libraries
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
cmakeFlags = [ "-DENABLE_STATIC=NO" "-DENABLE_STRICT=NO" ];
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = [ "-Wno-error=stringop-truncation" ];
|
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
|
||||||
|
|
|
@ -2,12 +2,13 @@
|
||||||
, belr
|
, belr
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "belcard";
|
pname = "belcard";
|
||||||
version = "5.1.10";
|
version = "5.1.12";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -25,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "C++ library to manipulate VCard standard format";
|
description = "C++ library to manipulate VCard standard format. Part of the Linphone project.";
|
||||||
homepage = "https://gitlab.linphone.org/BC/public/belcard";
|
homepage = "https://gitlab.linphone.org/BC/public/belcard";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ antlr3_4
|
{ bctoolbox
|
||||||
, bctoolbox
|
, belr
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, lib
|
, lib
|
||||||
|
@ -11,18 +11,18 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "belle-sip";
|
pname = "belle-sip";
|
||||||
version = "4.5.14";
|
version = "linphone-4.4.1";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
owner = "public";
|
owner = "public";
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = "44d5977570280763ee1fecdb920736715bad58a3";
|
||||||
sha256 = "sha256-L6dhgBJrzYgBuMNd2eMZJCqB/GIZjKipfn1SffxBFWw=";
|
sha256 = "sha256-w++v3YlDZfpCHAbUQA/RftjRNGkz9J/zYoxZqRgtvnA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ antlr3_4 cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
buildInputs = [ zlib ];
|
buildInputs = [ zlib ];
|
||||||
|
|
||||||
|
@ -36,11 +36,11 @@ stdenv.mkDerivation rec {
|
||||||
"-Wno-error=stringop-overflow"
|
"-Wno-error=stringop-overflow"
|
||||||
];
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [ libantlr3c mbedtls bctoolbox ];
|
propagatedBuildInputs = [ libantlr3c mbedtls bctoolbox belr ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://linphone.org/technical-corner/belle-sip";
|
homepage = "https://linphone.org/technical-corner/belle-sip";
|
||||||
description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers";
|
description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers. Part of the Linphone project.";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ jluttine ];
|
maintainers = with maintainers; [ jluttine ];
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
{ bctoolbox
|
{ bctoolbox
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "belr";
|
pname = "belr";
|
||||||
version = "5.1.3";
|
version = "5.1.12";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Belledonne Communications' language recognition library";
|
description = "Belledonne Communications' language recognition library. Part of the Linphone project.";
|
||||||
homepage = "https://gitlab.linphone.org/BC/public/belr";
|
homepage = "https://gitlab.linphone.org/BC/public/belr";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
|
|
@ -2,12 +2,13 @@
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, sqlite
|
, sqlite
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "bzrtp";
|
pname = "bzrtp";
|
||||||
version = "5.1.0";
|
version = "5.1.12";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -22,12 +23,10 @@ stdenv.mkDerivation rec {
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
# Do not build static libraries
|
# Do not build static libraries
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
cmakeFlags = [ "-DENABLE_STATIC=NO" "-DCMAKE_C_FLAGS=-Wno-error=cast-function-type" ];
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-Wno-error=cast-function-type";
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "An opensource implementation of ZRTP keys exchange protocol";
|
description = "An opensource implementation of ZRTP keys exchange protocol. Part of the Linphone project.";
|
||||||
homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
|
homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
, graphviz
|
, graphviz
|
||||||
, gtk2
|
, gtk2
|
||||||
, intltool
|
, intltool
|
||||||
|
, jsoncpp
|
||||||
, libexosip
|
, libexosip
|
||||||
, libmatroska
|
, libmatroska
|
||||||
, libnotify
|
, libnotify
|
||||||
|
@ -34,11 +35,12 @@
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, python3
|
, python3
|
||||||
, readline
|
, readline
|
||||||
, soci
|
, bc-soci
|
||||||
, boost
|
, boost
|
||||||
, speex
|
, speex
|
||||||
, sqlite
|
, sqlite
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
, udev
|
, udev
|
||||||
, xercesc
|
, xercesc
|
||||||
, xsd
|
, xsd
|
||||||
|
@ -47,7 +49,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "liblinphone";
|
pname = "liblinphone";
|
||||||
version = "4.5.17";
|
version = "5.1.22";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -55,9 +57,11 @@ stdenv.mkDerivation rec {
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-ryyT4bG3lnE72ydvCAoiT3IeHY4mZwX9nCqaTRC1wyc=";
|
sha256 = "sha256-hTyp/fUA1+7J1MtqX33kH8Vn1XNjx51Wy5REvrpdJTY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [ ./use-normal-jsoncpp.patch ];
|
||||||
|
|
||||||
# Do not build static libraries
|
# Do not build static libraries
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
||||||
|
|
||||||
|
@ -66,12 +70,24 @@ stdenv.mkDerivation rec {
|
||||||
# of them might not be needed for liblinphone alone.
|
# of them might not be needed for liblinphone alone.
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
(python3.withPackages (ps: [ ps.pystache ps.six ]))
|
(python3.withPackages (ps: [ ps.pystache ps.six ]))
|
||||||
|
|
||||||
|
# Made by BC
|
||||||
bcg729
|
bcg729
|
||||||
bctoolbox
|
bctoolbox
|
||||||
belcard
|
belcard
|
||||||
belle-sip
|
belle-sip
|
||||||
belr
|
belr
|
||||||
bzrtp
|
bzrtp
|
||||||
|
lime
|
||||||
|
mediastreamer
|
||||||
|
ortp
|
||||||
|
|
||||||
|
# Vendored by BC
|
||||||
|
bc-soci
|
||||||
|
|
||||||
|
# Vendored by BC but we use upstream, might cause problems
|
||||||
|
libmatroska
|
||||||
|
|
||||||
cairo
|
cairo
|
||||||
cyrus_sasl
|
cyrus_sasl
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
@ -80,20 +96,15 @@ stdenv.mkDerivation rec {
|
||||||
gtk2
|
gtk2
|
||||||
libX11
|
libX11
|
||||||
libexosip
|
libexosip
|
||||||
libmatroska
|
|
||||||
libnotify
|
libnotify
|
||||||
libosip
|
libosip
|
||||||
libsoup
|
libsoup
|
||||||
libupnp
|
libupnp
|
||||||
libxml2
|
libxml2
|
||||||
lime
|
|
||||||
mbedtls
|
mbedtls
|
||||||
mediastreamer
|
|
||||||
openldap
|
openldap
|
||||||
ortp
|
|
||||||
pango
|
pango
|
||||||
readline
|
readline
|
||||||
soci
|
|
||||||
boost
|
boost
|
||||||
speex
|
speex
|
||||||
sqlite
|
sqlite
|
||||||
|
@ -101,10 +112,13 @@ stdenv.mkDerivation rec {
|
||||||
xercesc
|
xercesc
|
||||||
xsd
|
xsd
|
||||||
zlib
|
zlib
|
||||||
|
jsoncpp
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
# Made by BC
|
||||||
bcunit
|
bcunit
|
||||||
|
|
||||||
cmake
|
cmake
|
||||||
doxygen
|
doxygen
|
||||||
graphviz
|
graphviz
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
From ea6901c9ed0f804bd2d6d09e514610518c2f4f09 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lorenz Brun <lorenz@brun.one>
|
||||||
|
Date: Fri, 18 Mar 2022 17:36:22 +0100
|
||||||
|
Subject: [PATCH] Use normal jsoncpp
|
||||||
|
|
||||||
|
---
|
||||||
|
src/CMakeLists.txt | 6 +++---
|
||||||
|
tester/CMakeLists.txt | 2 +-
|
||||||
|
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
index 5cd87fe9a..822b2151e 100644
|
||||||
|
--- a/src/CMakeLists.txt
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -34,7 +34,7 @@ if (ENABLE_FLEXIAPI)
|
||||||
|
if (XCODE)
|
||||||
|
list(APPEND LINK_LIBS jsoncpp_static)
|
||||||
|
else()
|
||||||
|
- list(APPEND LINK_LIBS jsoncpp_object)
|
||||||
|
+ list(APPEND LINK_LIBS jsoncpp)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
@@ -592,7 +592,7 @@ if(ENABLE_STATIC)
|
||||||
|
if (XCODE)
|
||||||
|
target_link_libraries(linphone PRIVATE jsoncpp_static)
|
||||||
|
else()
|
||||||
|
- target_link_libraries(linphone PRIVATE jsoncpp_object)
|
||||||
|
+ target_link_libraries(linphone PRIVATE jsoncpp)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
@@ -646,7 +646,7 @@ if(ENABLE_SHARED)
|
||||||
|
if (XCODE)
|
||||||
|
target_link_libraries(linphone PRIVATE jsoncpp_static)
|
||||||
|
else()
|
||||||
|
- target_link_libraries(linphone PRIVATE jsoncpp_object)
|
||||||
|
+ target_link_libraries(linphone PRIVATE jsoncpp)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
diff --git a/tester/CMakeLists.txt b/tester/CMakeLists.txt
|
||||||
|
index b97042678..b4c5a5794 100644
|
||||||
|
--- a/tester/CMakeLists.txt
|
||||||
|
+++ b/tester/CMakeLists.txt
|
||||||
|
@@ -34,7 +34,7 @@ if (ENABLE_FLEXIAPI)
|
||||||
|
if (XCODE)
|
||||||
|
list(APPEND OTHER_LIBS_FOR_TESTER jsoncpp_static)
|
||||||
|
else()
|
||||||
|
- list(APPEND OTHER_LIBS_FOR_TESTER jsoncpp_object)
|
||||||
|
+ list(APPEND OTHER_LIBS_FOR_TESTER jsoncpp)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, lib
|
, lib
|
||||||
, soci
|
, bc-soci
|
||||||
, sqlite
|
, sqlite
|
||||||
, boost
|
, boost
|
||||||
, stdenv
|
, stdenv
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "lime";
|
pname = "lime";
|
||||||
version = "5.0.53";
|
version = "5.1.12";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -19,17 +19,27 @@ stdenv.mkDerivation rec {
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-M+KdauIVsN3c+cEPw4CaMzXnQZwAPNXeJCriuk9NCWM=";
|
sha256 = "sha256-vgaxb8sfgtAhqG8kg3C4+UrTOHyTVR9QVO9iuKFgSBk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ bctoolbox soci belle-sip sqlite boost ];
|
buildInputs = [
|
||||||
|
# Made by BC
|
||||||
|
bctoolbox
|
||||||
|
belle-sip
|
||||||
|
|
||||||
|
# Vendored by BC
|
||||||
|
bc-soci
|
||||||
|
|
||||||
|
sqlite
|
||||||
|
boost
|
||||||
|
];
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
# Do not build static libraries
|
# Do not build static libraries
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "End-to-end encryption library for instant messaging";
|
description = "End-to-end encryption library for instant messaging. Part of the Linphone project.";
|
||||||
homepage = "http://www.linphone.org/technical-corner/lime";
|
homepage = "http://www.linphone.org/technical-corner/lime";
|
||||||
license = licenses.gpl3Only;
|
license = licenses.gpl3Only;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
|
|
@ -25,6 +25,8 @@
|
||||||
, ortp
|
, ortp
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, python3
|
, python3
|
||||||
|
, qtbase
|
||||||
|
, qtdeclarative
|
||||||
, SDL
|
, SDL
|
||||||
, speex
|
, speex
|
||||||
, srtp
|
, srtp
|
||||||
|
@ -33,7 +35,9 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mediastreamer2";
|
pname = "mediastreamer2";
|
||||||
version = "4.5.15";
|
version = "5.1.20";
|
||||||
|
|
||||||
|
dontWrapQtApps = true;
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -41,7 +45,7 @@ stdenv.mkDerivation rec {
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-n/EuXEQ9nJKC32PMvWkfP1G+E6uQQuu1/A168n8/cIY=";
|
sha256 = "sha256-u8YqF5BzyYIF9+XB90Eu6DlwXuu1FDOJUzxebj0errU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -59,12 +63,20 @@ stdenv.mkDerivation rec {
|
||||||
intltool
|
intltool
|
||||||
pkg-config
|
pkg-config
|
||||||
python3
|
python3
|
||||||
|
qtbase
|
||||||
|
qtdeclarative
|
||||||
];
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
alsa-lib
|
# Made by BC
|
||||||
bctoolbox
|
bctoolbox
|
||||||
bzrtp
|
bzrtp
|
||||||
|
ortp
|
||||||
|
|
||||||
|
# Vendored by BC but we use upstream, might cause problems
|
||||||
|
libmatroska
|
||||||
|
|
||||||
|
alsa-lib
|
||||||
ffmpeg
|
ffmpeg
|
||||||
glew
|
glew
|
||||||
gsm
|
gsm
|
||||||
|
@ -73,7 +85,6 @@ stdenv.mkDerivation rec {
|
||||||
libX11
|
libX11
|
||||||
libXext
|
libXext
|
||||||
libXv
|
libXv
|
||||||
libmatroska
|
|
||||||
libopus
|
libopus
|
||||||
libpcap
|
libpcap
|
||||||
libpulseaudio
|
libpulseaudio
|
||||||
|
@ -81,7 +92,6 @@ stdenv.mkDerivation rec {
|
||||||
libupnp
|
libupnp
|
||||||
libv4l
|
libv4l
|
||||||
libvpx
|
libvpx
|
||||||
ortp
|
|
||||||
SDL
|
SDL
|
||||||
speex
|
speex
|
||||||
srtp
|
srtp
|
||||||
|
@ -89,22 +99,17 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
|
||||||
# Do not build static libraries
|
cmakeFlags = [
|
||||||
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
|
"-DENABLE_STATIC=NO" # Do not build static libraries
|
||||||
|
"-DENABLE_QT_GL=ON" # Build necessary MSQOGL plugin for Linphone desktop
|
||||||
NIX_CFLAGS_COMPILE = [
|
"-DCMAKE_C_FLAGS=-DGIT_VERSION=\"v${version}\""
|
||||||
"-DGIT_VERSION=\"v${version}\""
|
"-DENABLE_STRICT=NO" # Disable -Werror
|
||||||
"-Wno-error=deprecated-declarations"
|
|
||||||
"-Wno-error=cast-function-type"
|
|
||||||
"-Wno-error=stringop-truncation"
|
|
||||||
"-Wno-error=stringop-overflow"
|
|
||||||
] ++ lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "11") [
|
|
||||||
"-Wno-error=stringop-overread"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
NIX_LDFLAGS = "-lXext";
|
NIX_LDFLAGS = "-lXext";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A powerful and lightweight streaming engine specialized for voice/video telephony applications";
|
description = "A powerful and lightweight streaming engine specialized for voice/video telephony applications. Part of the Linphone project";
|
||||||
homepage = "http://www.linphone.org/technical-corner/mediastreamer2";
|
homepage = "http://www.linphone.org/technical-corner/mediastreamer2";
|
||||||
license = licenses.gpl3Only;
|
license = licenses.gpl3Only;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
|
|
|
@ -5,22 +5,21 @@
|
||||||
, mediastreamer
|
, mediastreamer
|
||||||
, openh264
|
, openh264
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "msopenh264";
|
pname = "msopenh264";
|
||||||
# Using master branch for linphone-desktop caused a chain reaction that many
|
version = "linphone-4.4.1";
|
||||||
# of its dependencies needed to use master branch too.
|
|
||||||
version = "unstable-2020-03-03";
|
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
owner = "public";
|
owner = "public";
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "2c3abf52824ad23a4caae7565ef158ef91767704";
|
rev = "5603a432be2ed10f5d5a5ce068ef83ab2a996d6b";
|
||||||
sha256 = "140hs5lzpshzswvl39klcypankq3v2qck41696j22my7s4wsa0hr";
|
sha256 = "sha256-AqZ7tsNZw2Djgyo1JBJbT/c3eQVyEn6r3CT6DQLD/B8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook cmake pkg-config ];
|
nativeBuildInputs = [ autoreconfHook cmake pkg-config ];
|
||||||
|
@ -40,7 +39,7 @@ stdenv.mkDerivation rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "H.264 encoder/decoder plugin for mediastreamer2";
|
description = "H.264 encoder/decoder plugin for mediastreamer2. Part of the Linphone project.";
|
||||||
homepage = "https://www.linphone.org/technical-corner/mediastreamer2";
|
homepage = "https://www.linphone.org/technical-corner/mediastreamer2";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
{ bctoolbox
|
{ bctoolbox
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, lib, stdenv
|
, lib
|
||||||
|
, stdenv
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ortp";
|
pname = "ortp";
|
||||||
version = "4.5.1";
|
version = "5.1.12";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.linphone.org";
|
domain = "gitlab.linphone.org";
|
||||||
|
@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1lc1j7wvkyp5lhcflq3h5y7n8aiwgwj84ffm81ggbsmavamgwkk7";
|
sha256 = "sha256-CD9xn1m6zpUEC+shmNeWfGAJxNto87UbznD+TLdeuEg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Do not build static libraries
|
# Do not build static libraries
|
||||||
|
@ -26,7 +27,7 @@ stdenv.mkDerivation rec {
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A Real-Time Transport Protocol (RFC3550) stack";
|
description = "A Real-Time Transport Protocol (RFC3550) stack. Part of the Linphone project.";
|
||||||
homepage = "https://linphone.org/technical-corner/ortp";
|
homepage = "https://linphone.org/technical-corner/ortp";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
|
53
pkgs/development/libraries/soci/bc-soci.nix
Normal file
53
pkgs/development/libraries/soci/bc-soci.nix
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
{ cmake
|
||||||
|
, fetchFromGitLab
|
||||||
|
, fetchpatch
|
||||||
|
, sqlite
|
||||||
|
, boost
|
||||||
|
, lib
|
||||||
|
, stdenv
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "bc-soci";
|
||||||
|
version = "linphone-4.4.1";
|
||||||
|
|
||||||
|
src = fetchFromGitLab {
|
||||||
|
domain = "gitlab.linphone.org";
|
||||||
|
group = "BC";
|
||||||
|
owner = "public/external";
|
||||||
|
repo = "soci";
|
||||||
|
rev = "bc8ce0c5628dd48eca6ef5ce0a0a2f52547d88b6";
|
||||||
|
sha256 = "sha256-qo26aYp/G2C6UkGA1qkHQwTKD5go7TQ9JWxb9xtbe6M=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
name = "fix-backend-search-path.patch";
|
||||||
|
url = "https://github.com/SOCI/soci/commit/56c93afc467bdba8ffbe68739eea76059ea62f7a.patch";
|
||||||
|
sha256 = "sha256-nC/39pn3Cv5e65GgIfF3l64/AbCsfZHPUPIWETZFZAY=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
# Do not build static libraries
|
||||||
|
"-DSOCI_SHARED=YES"
|
||||||
|
"-DSOCI_STATIC=OFF"
|
||||||
|
|
||||||
|
"-DSOCI_TESTS=NO"
|
||||||
|
"-DWITH_SQLITE3=YES"
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
buildInputs = [
|
||||||
|
sqlite
|
||||||
|
boost
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Database access library for C++. Belledonne Communications' fork for Linphone.";
|
||||||
|
homepage = "https://gitlab.linphone.org/BC/public/external/soci";
|
||||||
|
license = licenses.boost;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = with maintainers; [ thibaultlemaire ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,9 +5,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "bcunit";
|
pname = "bcunit";
|
||||||
# Latest release 3.0.2 is missing some functions needed by bctoolbox. See:
|
version = "linphone-4.4.1";
|
||||||
# https://gitlab.linphone.org/BC/public/bcunit/issues/1
|
|
||||||
version = "unstable-2019-11-19";
|
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
|
@ -15,12 +13,12 @@ stdenv.mkDerivation rec {
|
||||||
owner = "public";
|
owner = "public";
|
||||||
group = "BC";
|
group = "BC";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "3c720fbf67dd3c02b0c7011ed4036982b2c93532";
|
rev = "c5eebcc7f794e9567d3c72d15d3f28bffe6bfd0f";
|
||||||
sha256 = "1237hpmkls2igp60gdfkbknxpgwvxn1vmv2m41vyl25xw1d3g35w";
|
sha256 = "sha256-8DSfqHerx/V00SJjTSQaG9Rjqx330iG6sGivBDUvQfA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A fork of CUnit test framework";
|
description = "Belledonne Communications' fork of CUnit test framework. Part of the Linphone project.";
|
||||||
homepage = "https://gitlab.linphone.org/BC/public/bcunit";
|
homepage = "https://gitlab.linphone.org/BC/public/bcunit";
|
||||||
license = licenses.lgpl2Plus;
|
license = licenses.lgpl2Plus;
|
||||||
maintainers = with maintainers; [ raskin jluttine ];
|
maintainers = with maintainers; [ raskin jluttine ];
|
||||||
|
|
|
@ -6970,6 +6970,8 @@ with pkgs;
|
||||||
|
|
||||||
darkice = callPackage ../tools/audio/darkice { };
|
darkice = callPackage ../tools/audio/darkice { };
|
||||||
|
|
||||||
|
bc-decaf = callPackage ../development/libraries/bc-decaf { };
|
||||||
|
|
||||||
deco = callPackage ../applications/misc/deco { };
|
deco = callPackage ../applications/misc/deco { };
|
||||||
|
|
||||||
icoutils = callPackage ../tools/graphics/icoutils { };
|
icoutils = callPackage ../tools/graphics/icoutils { };
|
||||||
|
@ -16550,6 +16552,8 @@ with pkgs;
|
||||||
|
|
||||||
bctoolbox = callPackage ../development/libraries/bctoolbox { };
|
bctoolbox = callPackage ../development/libraries/bctoolbox { };
|
||||||
|
|
||||||
|
bc-soci = callPackage ../development/libraries/soci/bc-soci.nix { };
|
||||||
|
|
||||||
bearssl = callPackage ../development/libraries/bearssl { };
|
bearssl = callPackage ../development/libraries/bearssl { };
|
||||||
|
|
||||||
beecrypt = callPackage ../development/libraries/beecrypt { };
|
beecrypt = callPackage ../development/libraries/beecrypt { };
|
||||||
|
@ -19469,7 +19473,7 @@ with pkgs;
|
||||||
|
|
||||||
mdds = callPackage ../development/libraries/mdds { };
|
mdds = callPackage ../development/libraries/mdds { };
|
||||||
|
|
||||||
mediastreamer = callPackage ../development/libraries/mediastreamer { };
|
mediastreamer = libsForQt5.callPackage ../development/libraries/mediastreamer { };
|
||||||
|
|
||||||
mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { };
|
mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { };
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue