use linphone's sofia_sip
the DNS is less buggy
This commit is contained in:
49
default.nix
49
default.nix
@@ -4,7 +4,43 @@
|
||||
{ pkgs ? import <nixpkgs> {} }:
|
||||
let
|
||||
inherit (pkgs) stdenv;
|
||||
in stdenv.mkDerivation {
|
||||
buildDebug = p: p.overrideAttrs (base: {
|
||||
dontStrip = true;
|
||||
env = (base.env or {}) // {
|
||||
mesonBuildType = "debugoptimized";
|
||||
NIX_CFLAGS_COMPILE = "-ggdb -Og -fno-omit-frame-pointer";
|
||||
# mesonBuildType = "debug";
|
||||
# NIX_CFLAGS_COMPILE = "-g -O0 -fno-omit-frame-pointer";
|
||||
};
|
||||
});
|
||||
sofia_sip' = pkgs.sofia_sip.overrideAttrs (base: {
|
||||
# sofia_sip linphone fork (2024-08-17)
|
||||
# it seems to have less buggy DNS (sresolv)? the DNS actually reports errors to the consumer, instead of just never returning.
|
||||
# more specifically, `outgoing_answer_a` always calls its continuation: that's actually in libsofia-sip-ua/nta/nta.c
|
||||
src = with pkgs; fetchFromGitLab {
|
||||
domain = "gitlab.linphone.org";
|
||||
owner = "BC/public/external";
|
||||
repo = "sofia-sip";
|
||||
rev = "b924a57e8eeb24e8b9afc5fd0fb9b51d5993fe5d";
|
||||
hash = "sha256-1VbKV+eAJ80IMlubNl7774B7QvLv4hE8SXANDSD9sRU=";
|
||||
};
|
||||
});
|
||||
# sofia_sip' = pkgs.sofia_sip.overrideAttrs (base: {
|
||||
# # sofia_sip tip (2024-08-17)
|
||||
# src = with pkgs; fetchFromGitHub {
|
||||
# owner = "freeswitch";
|
||||
# repo = "sofia-sip";
|
||||
# rev = "0a50b8402fa5b6190a6c91c2e04dfe44a40de02c";
|
||||
# hash = "sha256-cxLk0IEwpoxeuVllnZ4/6JqzCd0GVeLyulFj0EYgnek=";
|
||||
# };
|
||||
# });
|
||||
# sofia_sip' = pkgs.sofia_sip.overrideAttrs (base: {
|
||||
# postPatch = (base.postPatch or "") + ''
|
||||
# substituteInPlace libsofia-sip-ua/sresolv/sofia-resolv/sres.h \
|
||||
# --replace 'SRES_MAX_RETRY_COUNT = 6' 'SRES_MAX_RETRY_COUNT = 0'
|
||||
# '';
|
||||
# });
|
||||
in buildDebug (stdenv.mkDerivation {
|
||||
pname = "calls";
|
||||
version = "unstable";
|
||||
src = ./.;
|
||||
@@ -41,13 +77,6 @@ in stdenv.mkDerivation {
|
||||
libpeas2
|
||||
libsecret
|
||||
modemmanager
|
||||
sofia_sip
|
||||
(buildDebug sofia_sip')
|
||||
];
|
||||
|
||||
# build for debug:
|
||||
dontStrip = true;
|
||||
env.mesonBuildType = "debugoptimized";
|
||||
env.NIX_CFLAGS_COMPILE = "-ggdb -Og -fno-omit-frame-pointer";
|
||||
# env.mesonBuildType = "debug";
|
||||
# env.NIX_CFLAGS_COMPILE = "-g -O0 -fno-omit-frame-pointer";
|
||||
}
|
||||
})
|
||||
|
Reference in New Issue
Block a user