diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index cce31b6a5373..e60280f30ebe 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3115,6 +3115,11 @@ github = "olynch"; name = "Owen Lynch"; }; + OPNA2608 = { + email = "christoph.neidahl@gmail.com"; + github = "OPNA2608"; + name = "Christoph Neidahl"; + }; orbekk = { email = "kjetil.orbekk@gmail.com"; github = "orbekk"; diff --git a/pkgs/tools/X11/x11vnc/default.nix b/pkgs/tools/X11/x11vnc/default.nix index 2dc6d8ffd78c..6dc785621b59 100644 --- a/pkgs/tools/X11/x11vnc/default.nix +++ b/pkgs/tools/X11/x11vnc/default.nix @@ -1,35 +1,49 @@ -{ stdenv, fetchurl, openssl, zlib, libjpeg, xorg, coreutils }: +{ stdenv, fetchFromGitHub, + openssl, zlib, libjpeg, xorg, coreutils, libvncserver, + autoreconfHook, pkgconfig }: stdenv.mkDerivation rec { - name = "x11vnc-0.9.13"; + name = "x11vnc-${version}"; + version = "0.9.15"; - src = fetchurl { - url = "mirror://sourceforge/libvncserver/${name}.tar.gz"; - sha256 = "0fzib5xb1vbs8kdprr4z94v0fshj2c5hhaz69llaarwnc8p9z0pn"; + src = fetchFromGitHub { + owner = "LibVNC"; + repo = "x11vnc"; + rev = version; + sha256 = "1a1b65k1hsy4nhg2sx1yrpaz3vx6s7rmrx8nwygpaam8wpdlkh8p"; }; + nativeBuildInputs = [ autoreconfHook pkgconfig ]; + buildInputs = [ xorg.libXfixes xorg.fixesproto openssl xorg.libXdamage xorg.damageproto zlib xorg.libX11 xorg.xproto libjpeg xorg.libXtst xorg.libXinerama xorg.xineramaproto xorg.libXrandr xorg.randrproto xorg.libXext xorg.xextproto xorg.inputproto xorg.recordproto xorg.libXi xorg.libXrender xorg.renderproto + libvncserver ]; - preConfigure = '' - configureFlags="--mandir=$out/share/man" - - substituteInPlace x11vnc/unixpw.c \ + postPatch = '' + substituteInPlace src/unixpw.c \ --replace '"/bin/su"' '"/run/wrappers/bin/su"' \ --replace '"/bin/true"' '"${coreutils}/bin/true"' - sed -i -e '/#!\/bin\/sh/a"PATH=${xorg.xdpyinfo}\/bin:${xorg.xauth}\/bin:$PATH\\n"' -e 's|/bin/su|/run/wrappers/bin/su|g' x11vnc/ssltools.h + sed -i -e '/#!\/bin\/sh/a"PATH=${xorg.xdpyinfo}\/bin:${xorg.xauth}\/bin:$PATH\\n"' -e 's|/bin/su|/run/wrappers/bin/su|g' src/ssltools.h + + # Xdummy script is currently broken, so we avoid building it. This removes everything Xdummy-related from the affected Makefile + sed -i -e '/^\tXdummy.c\ \\$/,$d' -e 's/\tx11vnc_loop\ \\/\tx11vnc_loop/' misc/Makefile.am + ''; + + preConfigure = '' + configureFlags="--mandir=$out/share/man" ''; meta = with stdenv.lib; { description = "A VNC server connected to a real X11 screen"; - homepage = http://www.karlrunge.com/x11vnc/; + homepage = https://github.com/LibVNC/x11vnc/; platforms = platforms.linux; license = licenses.gpl2; + maintainers = with maintainers; [ OPNA2608 ]; }; }