aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/applications/networking/remote/teamviewer/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/applications/networking/remote/teamviewer/default.nix')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/applications/networking/remote/teamviewer/default.nix66
1 files changed, 66 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/applications/networking/remote/teamviewer/default.nix b/infra/libkookie/nixpkgs/pkgs/applications/networking/remote/teamviewer/default.nix
new file mode 100644
index 000000000000..9c3ed826a2d5
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -0,0 +1,66 @@
+{ mkDerivation, lib, fetchurl, autoPatchelfHook, makeWrapper, xdg_utils, dbus
+, qtbase, qtwebkit, qtx11extras, qtquickcontrols, glibc
+, libXrandr, libX11, libXext, libXdamage, libXtst, libSM, libXfixes
+, wrapQtAppsHook
+}:
+
+mkDerivation rec {
+ pname = "teamviewer";
+ version = "15.8.3";
+
+ src = fetchurl {
+ url = "https://dl.tvcdn.de/download/linux/version_15x/teamviewer_${version}_amd64.deb";
+ sha256 = "1c947yxgs0mv5x6qvy40dypbbhhjbglma1pwl66z39gzg51n2dmc";
+ };
+
+ unpackPhase = ''
+ ar x $src
+ tar xf data.tar.*
+ '';
+
+ nativeBuildInputs = [ autoPatchelfHook makeWrapper wrapQtAppsHook ];
+ buildInputs = [ dbus qtbase qtwebkit qtx11extras libX11 ];
+ propagatedBuildInputs = [ qtquickcontrols ];
+
+ installPhase = ''
+ mkdir -p $out/share/teamviewer $out/bin $out/share/applications
+ cp -a opt/teamviewer/* $out/share/teamviewer
+ rm -R \
+ $out/share/teamviewer/logfiles \
+ $out/share/teamviewer/config \
+ $out/share/teamviewer/tv_bin/xdg-utils \
+ $out/share/teamviewer/tv_bin/script/{teamviewer_setup,teamviewerd.sysv,teamviewerd.service,teamviewerd.*.conf,libdepend,tv-delayed-start.sh}
+
+ ln -s $out/share/teamviewer/tv_bin/script/teamviewer $out/bin
+ ln -s $out/share/teamviewer/tv_bin/teamviewerd $out/bin
+ ln -s $out/share/teamviewer/tv_bin/desktop/com.teamviewer.*.desktop $out/share/applications
+ ln -s /var/lib/teamviewer $out/share/teamviewer/config
+ ln -s /var/log/teamviewer $out/share/teamviewer/logfiles
+ ln -s ${xdg_utils}/bin $out/share/teamviewer/tv_bin/xdg-utils
+
+ sed -i "s,/opt/teamviewer,$out/share/teamviewer,g" $out/share/teamviewer/tv_bin/desktop/com.teamviewer.*.desktop
+
+ substituteInPlace $out/share/teamviewer/tv_bin/script/tvw_aux \
+ --replace '/lib64/ld-linux-x86-64.so.2' '${glibc.out}/lib/ld-linux-x86-64.so.2'
+ substituteInPlace $out/share/teamviewer/tv_bin/script/tvw_config \
+ --replace '/var/run/' '/run/'
+
+ wrapProgram $out/share/teamviewer/tv_bin/script/teamviewer --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libXrandr libX11 ]}"
+ wrapProgram $out/share/teamviewer/tv_bin/teamviewerd --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libXrandr libX11 ]}"
+ wrapProgram $out/share/teamviewer/tv_bin/TeamViewer --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libXrandr libX11 ]}"
+ wrapProgram $out/share/teamviewer/tv_bin/TeamViewer_Desktop --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [libXrandr libX11 libXext libXdamage libXtst libSM libXfixes ]}"
+
+ wrapQtApp $out/bin/teamviewer
+ '';
+
+ dontStrip = true;
+ preferLocalBuild = true;
+
+ meta = with lib; {
+ homepage = "http://www.teamviewer.com";
+ license = licenses.unfree;
+ description = "Desktop sharing application, providing remote support and online meetings";
+ platforms = [ "x86_64-linux" ];
+ maintainers = with maintainers; [ jagajaga dasuxullebt ];
+ };
+}