mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-26 23:52:33 +00:00
freerdp: 20160909 -> 20170201 and rename old freerdp to freerdp_legacy
The former "stable" version of FreeRDP was actually not stable - it just happened to have a released version while being both buggy and insecure. The "unstable" branch hasn't seen a release in years, but everybody should be using this instead and I have been using it as a daily driver for ages. This new version works beautifully here. If/when at some point upstream does a normal release, we can bring back stable/unstable if needed. As I am quite dependent on FreeRDP working properly, I will be commit to keeping this updated. The commit used for this release follows the Arch Linux release.
This commit is contained in:
parent
f66d7823ec
commit
05684f313e
|
@ -1,67 +1,76 @@
|
|||
{ stdenv
|
||||
, fetchurl
|
||||
, cmake
|
||||
, openssl
|
||||
, printerSupport ? true, cups
|
||||
, pkgconfig
|
||||
, zlib
|
||||
, libX11
|
||||
, libXcursor
|
||||
, libXdamage
|
||||
, libXext
|
||||
, alsaLib
|
||||
, ffmpeg
|
||||
, libxkbfile
|
||||
#, xmlto, docbook_xml_dtd_412, docbook_xml_xslt
|
||||
, libXinerama
|
||||
, libXv
|
||||
, pulseaudioSupport ? true, libpulseaudio
|
||||
{ stdenv, lib, fetchFromGitHub, substituteAll, cmake, pkgconfig
|
||||
, alsaLib, ffmpeg_2, glib, openssl, pcre, zlib
|
||||
, libX11, libXcursor, libXdamage, libXext, libXi, libXinerama, libXrandr, libXrender, libXv
|
||||
, libxkbcommon, libxkbfile
|
||||
, wayland
|
||||
, gstreamer, gst-plugins-base, gst-plugins-good
|
||||
, libpulseaudio ? null
|
||||
, cups ? null
|
||||
, pcsclite ? null
|
||||
, systemd ? null
|
||||
, buildServer ? true
|
||||
, optimize ? true
|
||||
}:
|
||||
|
||||
assert printerSupport -> cups != null;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "freerdp-${version}";
|
||||
version = "1.0.2";
|
||||
name = "freerdp-git-${version}";
|
||||
version = "20170201";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/FreeRDP/FreeRDP/archive/${version}.tar.gz";
|
||||
sha256 = "1w9dk7dsbppspnnms2xwwmbg7jm61i7aw5nkwzbpdyxngbgkgwf0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "FreeRDP";
|
||||
repo = "FreeRDP";
|
||||
rev = "6001cb710dc67eb8811362b7bf383754257a902b";
|
||||
sha256 = "0l2lwqk2r8rq8a0f91wbb30kqg21fv0k0508djpwj0pa9n73fgmg";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
cmake
|
||||
openssl
|
||||
pkgconfig
|
||||
zlib
|
||||
libX11
|
||||
libXcursor
|
||||
libXdamage
|
||||
libXext
|
||||
alsaLib
|
||||
ffmpeg
|
||||
libxkbfile
|
||||
# xmlto docbook_xml_dtd_412 docbook_xml_xslt
|
||||
libXinerama
|
||||
libXv
|
||||
] ++ stdenv.lib.optional printerSupport cups;
|
||||
# outputs = [ "bin" "out" "dev" ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-x" "-DWITH_MANPAGES=OFF"
|
||||
] ++ stdenv.lib.optional printerSupport "--with-printer=cups"
|
||||
++ stdenv.lib.optional pulseaudioSupport "-DWITH_PULSEAUDIO=ON";
|
||||
prePatch = ''
|
||||
export HOME=$TMP
|
||||
substituteInPlace "libfreerdp/freerdp.pc.in" \
|
||||
--replace "Requires:" "Requires: @WINPR_PKG_CONFIG_FILENAME@"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
patches = with lib; [
|
||||
] ++ optional (pcsclite != null)
|
||||
(substituteAll {
|
||||
src = ./dlopen-absolute-paths.diff;
|
||||
inherit pcsclite;
|
||||
});
|
||||
|
||||
buildInputs = with lib; [
|
||||
alsaLib cups ffmpeg_2 glib openssl pcre pcsclite libpulseaudio zlib
|
||||
gstreamer gst-plugins-base gst-plugins-good
|
||||
libX11 libXcursor libXdamage libXext libXi libXinerama libXrandr libXrender libXv
|
||||
libxkbcommon libxkbfile
|
||||
wayland
|
||||
] ++ optional stdenv.isLinux systemd;
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake pkgconfig
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
cmakeFlags = with lib; [
|
||||
"-DCMAKE_INSTALL_LIBDIR=lib"
|
||||
"-DWITH_CUNIT=OFF"
|
||||
"-DWITH_OSS=OFF"
|
||||
] ++ optional (libpulseaudio != null) "-DWITH_PULSE=ON"
|
||||
++ optional (cups != null) "-DWITH_CUPS=ON"
|
||||
++ optional (pcsclite != null) "-DWITH_PCSC=ON"
|
||||
++ optional buildServer "-DWITH_SERVER=ON"
|
||||
++ optional optimize "-DWITH_SSE2=ON";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A Remote Desktop Protocol Client";
|
||||
|
||||
longDescription = ''
|
||||
FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
|
||||
following the Microsoft Open Specifications.
|
||||
'';
|
||||
|
||||
homepage = http://www.freerdp.com/;
|
||||
|
||||
license = stdenv.lib.licenses.free;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
broken = true;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ wkennington peterhoeg ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
73
pkgs/applications/networking/remote/freerdp/legacy.nix
Normal file
73
pkgs/applications/networking/remote/freerdp/legacy.nix
Normal file
|
@ -0,0 +1,73 @@
|
|||
{ stdenv
|
||||
, fetchurl
|
||||
, cmake
|
||||
, openssl
|
||||
, glib, pcre
|
||||
, printerSupport ? true, cups
|
||||
, pkgconfig
|
||||
, zlib
|
||||
, libX11
|
||||
, libXcursor
|
||||
, libXdamage
|
||||
, libXext
|
||||
, alsaLib
|
||||
, ffmpeg
|
||||
, libxkbfile
|
||||
#, xmlto, docbook_xml_dtd_412, docbook_xml_xslt
|
||||
, libXfixes
|
||||
, libXinerama
|
||||
, libXv
|
||||
, pulseaudioSupport ? true, libpulseaudio
|
||||
}:
|
||||
|
||||
assert printerSupport -> cups != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "freerdp-${version}";
|
||||
version = "1.2.0-beta1+android9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/FreeRDP/FreeRDP/archive/${version}.tar.gz";
|
||||
sha256 = "181w4lkrk5h5kh2zjlx6h2cl1mfw2aaami3laq3q32pfj06q3rxl";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
cmake
|
||||
openssl
|
||||
glib pcre
|
||||
pkgconfig
|
||||
zlib
|
||||
libX11
|
||||
libXcursor
|
||||
libXdamage
|
||||
libXext
|
||||
alsaLib
|
||||
ffmpeg
|
||||
libxkbfile
|
||||
# xmlto docbook_xml_dtd_412 docbook_xml_xslt
|
||||
libXinerama
|
||||
libXv
|
||||
] ++ stdenv.lib.optional printerSupport cups;
|
||||
|
||||
preConfigure = ''
|
||||
export HOME=$TMP
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--with-x" "-DWITH_MANPAGES=OFF"
|
||||
] ++ stdenv.lib.optional printerSupport "--with-printer=cups"
|
||||
++ stdenv.lib.optional pulseaudioSupport "-DWITH_PULSEAUDIO=ON";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A Remote Desktop Protocol Client";
|
||||
|
||||
longDescription = ''
|
||||
FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
|
||||
following the Microsoft Open Specifications.
|
||||
'';
|
||||
|
||||
homepage = http://www.freerdp.com/;
|
||||
license = licenses.free;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -1,56 +0,0 @@
|
|||
{ stdenv, fetchFromGitHub, cmake, pkgconfig, openssl, zlib, libX11, libXcursor
|
||||
, libXdamage, libXext, libXrender, glib, alsaLib, ffmpeg, libxkbfile, libXinerama, libXv
|
||||
, substituteAll
|
||||
, libpulseaudio ? null, cups ? null, pcsclite ? null
|
||||
, buildServer ? true, optimize ? true
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "freerdp-2.0-dev";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FreeRDP";
|
||||
repo = "FreeRDP";
|
||||
rev = "1855e36179fb197e713d41c4ef93e19cf1f0be2f";
|
||||
sha256 = "1lydkh6by0sjy6dl57bzg7c11ccyp24s80pwxw9h5kmxkbw6mx5q";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace "libfreerdp/freerdp.pc.in" --replace "Requires:" "Requires: @WINPR_PKG_CONFIG_FILENAME@"
|
||||
'';
|
||||
|
||||
patches = [
|
||||
] ++ stdenv.lib.optional (pcsclite != null)
|
||||
(substituteAll {
|
||||
src = ./dlopen-absolute-paths.diff;
|
||||
inherit pcsclite;
|
||||
});
|
||||
|
||||
buildInputs = [
|
||||
cmake pkgconfig openssl zlib libX11 libXcursor libXdamage libXext libXrender glib
|
||||
alsaLib ffmpeg libxkbfile libXinerama libXv cups libpulseaudio pcsclite
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_INSTALL_LIBDIR=lib"
|
||||
"-DWITH_CUNIT=OFF"
|
||||
] ++ stdenv.lib.optional (libpulseaudio != null) "-DWITH_PULSE=ON"
|
||||
++ stdenv.lib.optional (cups != null) "-DWITH_CUPS=ON"
|
||||
++ stdenv.lib.optional (pcsclite != null) "-DWITH_PCSC=ON"
|
||||
++ stdenv.lib.optional buildServer "-DWITH_SERVER=ON"
|
||||
++ stdenv.lib.optional optimize "-DWITH_SSE2=ON";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A Remote Desktop Protocol Client";
|
||||
longDescription = ''
|
||||
FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
|
||||
following the Microsoft Open Specifications.
|
||||
'';
|
||||
homepage = http://www.freerdp.com/;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ wkennington ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
|
@ -13360,14 +13360,18 @@ with pkgs;
|
|||
xfontsel = callPackage ../applications/misc/xfontsel { };
|
||||
inherit (xorg) xlsfonts;
|
||||
|
||||
freerdpStable = callPackage ../applications/networking/remote/freerdp {
|
||||
freerdp = callPackage ../applications/networking/remote/freerdp {
|
||||
inherit libpulseaudio;
|
||||
inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good;
|
||||
};
|
||||
|
||||
freerdpUnstable = freerdp;
|
||||
|
||||
# This must go when weston v2 is released
|
||||
freerdp_legacy = callPackage ../applications/networking/remote/freerdp/legacy.nix {
|
||||
cmake = cmake_2_8;
|
||||
ffmpeg = ffmpeg_1;
|
||||
};
|
||||
freerdpUnstable = callPackage ../applications/networking/remote/freerdp/unstable.nix {
|
||||
ffmpeg = ffmpeg_2;
|
||||
cmake = cmake_2_8;
|
||||
};
|
||||
freerdp = freerdpUnstable; # freerdpStable is marked broken, please switch back to it once fixed
|
||||
|
||||
freicoin = callPackage ../applications/misc/freicoin {
|
||||
boost = boost155;
|
||||
|
|
Loading…
Reference in a new issue