From eec7cab81d787dd5d0c3b476f6b5afd25abec706 Mon Sep 17 00:00:00 2001 From: Greizgh Date: Sat, 14 Sep 2019 10:49:38 +0200 Subject: [PATCH] mumble,murmur: 1.2.19 -> 1.3.0 --- .../networking/mumble/default.nix | 68 +++++-------------- pkgs/top-level/aliases.nix | 4 +- pkgs/top-level/all-packages.nix | 11 ++- 3 files changed, 27 insertions(+), 56 deletions(-) diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix index 6439991920d9..44a83a028f54 100644 --- a/pkgs/applications/networking/mumble/default.nix +++ b/pkgs/applications/networking/mumble/default.nix @@ -1,32 +1,28 @@ -{ stdenv, fetchurl, fetchFromGitHub, fetchpatch, pkgconfig -, qt4, qmake4Hook, qt5, avahi, boost, libopus, libsndfile, protobuf3_6, speex, libcap +{ stdenv, fetchurl, fetchFromGitHub, fetchpatch, pkgconfig, mkDerivation +, qtbase, qttools, qtsvg, qmake, avahi, boost, libopus, libsndfile, protobuf, speex, libcap , alsaLib, python , jackSupport ? false, libjack2 ? null , speechdSupport ? false, speechd ? null , pulseSupport ? false, libpulseaudio ? null -, iceSupport ? false, zeroc-ice ? null, zeroc-ice-36 ? null +, iceSupport ? false, zeroc-ice ? null }: assert jackSupport -> libjack2 != null; assert speechdSupport -> speechd != null; assert pulseSupport -> libpulseaudio != null; -assert iceSupport -> zeroc-ice != null && zeroc-ice-36 != null; +assert iceSupport -> zeroc-ice != null; with stdenv.lib; let - generic = overrides: source: (if source.qtVersion == 5 then qt5.mkDerivation else stdenv.mkDerivation) (source // overrides // { + generic = overrides: source: mkDerivation (source // overrides // { name = "${overrides.type}-${source.version}"; patches = (source.patches or []) ++ optional jackSupport ./mumble-jack-support.patch; - nativeBuildInputs = [ pkgconfig python ] - ++ { qt4 = [ qmake4Hook ]; qt5 = [ qt5.qmake ]; }."qt${toString source.qtVersion}" + nativeBuildInputs = [ pkgconfig python qmake ] ++ (overrides.nativeBuildInputs or [ ]); - # protobuf is freezed to 3.6 because of this bug: https://github.com/mumble-voip/mumble/issues/3617 - # this could be reverted to the latest version in a future release of mumble as it is already fixed in master - buildInputs = [ boost protobuf3_6 avahi ] - ++ optional (source.qtVersion == 4) qt4 + buildInputs = [ boost protobuf avahi ] ++ (overrides.buildInputs or [ ]); qmakeFlags = [ @@ -76,9 +72,8 @@ let client = source: generic { type = "mumble"; - nativeBuildInputs = optional (source.qtVersion == 5) qt5.qttools; - buildInputs = [ libopus libsndfile speex ] - ++ optional (source.qtVersion == 5) qt5.qtsvg + nativeBuildInputs = [ qttools ]; + buildInputs = [ libopus libsndfile speex qtsvg ] ++ optional stdenv.isLinux alsaLib ++ optional jackSupport libjack2 ++ optional speechdSupport speechd @@ -107,18 +102,18 @@ let ''; } source; - server = source: let ice = if source.qtVersion == 4 then zeroc-ice-36 else zeroc-ice; in generic { + server = source: generic { type = "murmur"; postPatch = optional iceSupport '' - grep -Rl '/usr/share/Ice' . | xargs sed -i 's,/usr/share/Ice/,${ice.dev}/share/ice/,g' + grep -Rl '/usr/share/Ice' . | xargs sed -i 's,/usr/share/Ice/,${zeroc-ice.dev}/share/ice/,g' ''; configureFlags = [ "CONFIG+=no-client" ] ++ optional (!iceSupport) "CONFIG+=no-ice"; - buildInputs = [ libcap ] ++ optional iceSupport ice; + buildInputs = [ libcap ] ++ optional iceSupport zeroc-ice; installPhase = '' # bin stuff @@ -126,48 +121,19 @@ let ''; } source; - stableSource = rec { - version = "1.2.19"; - qtVersion = 4; - - src = fetchurl { - url = "https://github.com/mumble-voip/mumble/releases/download/${version}/mumble-${version}.tar.gz"; - sha256 = "1s60vaici3v034jzzi20x23hsj6mkjlc0glipjq4hffrg9qgnizh"; - }; - - patches = [ - # Fix compile error against boost 1.66 (#33655): - (fetchpatch { - url = "https://github.com/mumble-voip/mumble/commit/" - + "ea861fe86743c8402bbad77d8d1dd9de8dce447e.patch"; - sha256 = "1r50dc8dcl6jmbj4abhnay9div7y56kpmajzqd7ql0pm853agwbh"; - }) - # Fixes hang on reconfiguring audio (often including startup) - # https://github.com/mumble-voip/mumble/pull/3418 - (fetchpatch { - url = "https://github.com/mumble-voip/mumble/commit/" - + "fbbdf2e8ab7d93ed6f7680268ad0689b7eaa71ad.patch"; - sha256 = "1yhj62mlwm6q42i4aclbia645ha97d3j4ycxhgafr46dbjs0gani"; - }) - ]; - }; - - rcSource = rec { - version = "1.3.0-rc2"; - qtVersion = 5; + source = rec { + version = "1.3.0"; # Needs submodules src = fetchFromGitHub { owner = "mumble-voip"; repo = "mumble"; rev = version; - sha256 = "00irlzz5q4drmsfbwrkyy7p7w8a5fc1ip5vyicq3g3cy58dprpqr"; + sha256 = "0g5ri84gg0x3crhpxlzawf9s9l4hdna6aqw6qbdpx1hjlf5k6g8k"; fetchSubmodules = true; }; }; in { - mumble = client stableSource; - mumble_rc = client rcSource; - murmur = server stableSource; - murmur_rc = server rcSource; + mumble = client source; + murmur = server source; } diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 091824a52390..65bbe42ef6e1 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -443,8 +443,8 @@ mapAliases ({ }; # added 2019-08-01 - mumble_git = pkgs.mumble_rc; - murmur_git = pkgs.murmur_rc; + mumble_git = pkgs.mumble; + murmur_git = pkgs.murmur; # added 2019-09-06 zeroc_ice = pkgs.zeroc-ice; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b01e75138d79..5c7586b915e8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19667,13 +19667,18 @@ in multimon-ng = callPackage ../applications/radio/multimon-ng { }; - inherit (callPackages ../applications/networking/mumble { + murmur = (libsForQt5.callPackage ../applications/networking/mumble { + avahi = avahi-compat; + pulseSupport = config.pulseaudio or false; + iceSupport = config.murmur.iceSupport or true; + }).murmur; + + mumble = (libsForQt5.callPackage ../applications/networking/mumble { avahi = avahi-compat; jackSupport = config.mumble.jackSupport or false; speechdSupport = config.mumble.speechdSupport or false; pulseSupport = config.pulseaudio or false; - iceSupport = config.murmur.iceSupport or true; - }) mumble mumble_rc murmur murmur_rc; + }).mumble; mumble_overlay = callPackage ../applications/networking/mumble/overlay.nix { mumble_i686 = if stdenv.hostPlatform.system == "x86_64-linux"