syncplay: Allow disabling GUI

The GUI brings a huge closure size with it, about 1.64GB, or 90.5% of
the total. Turning the GUI off brings the closure size down to just
177MB
main
Silvan Mosberger 2 years ago
parent 6ddcd831fa
commit d2b1a168d6
  1. 10
      pkgs/applications/networking/syncplay/default.nix
  2. 2
      pkgs/top-level/all-packages.nix

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, buildPythonApplication, pyside2, shiboken2, twisted, certifi, qt5 }:
{ lib, fetchFromGitHub, buildPythonApplication, pyside2, twisted, certifi, qt5, enableGUI ? true }:
buildPythonApplication rec {
pname = "syncplay";
@ -13,12 +13,14 @@ buildPythonApplication rec {
sha256 = "0qm3qn4a1nahhs7q81liz514n9blsi107g9s9xfw2i8pzi7v9v0v";
};
propagatedBuildInputs = [ pyside2 shiboken2 twisted certifi ] ++ twisted.extras.tls;
nativeBuildInputs = [ qt5.wrapQtAppsHook ];
propagatedBuildInputs = [ twisted certifi ]
++ twisted.extras.tls
++ lib.optional enableGUI pyside2;
nativeBuildInputs = lib.optionals enableGUI [ qt5.wrapQtAppsHook ];
makeFlags = [ "DESTDIR=" "PREFIX=$(out)" ];
postFixup = ''
postFixup = lib.optionalString enableGUI ''
wrapQtApp $out/bin/syncplay
'';

@ -29309,6 +29309,8 @@ with pkgs;
syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { };
syncplay-nogui = syncplay.override { enableGUI = false; };
syncterm = callPackage ../applications/terminal-emulators/syncterm { };
inherit (callPackages ../applications/networking/syncthing { })

Loading…
Cancel
Save