Merge pull request #22357 from NixOS/openssl-1.1

Use openssl 1.1 by default
This commit is contained in:
Linus Heckemann 2019-08-23 17:51:52 +02:00 committed by GitHub
commit 25559a5597
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
102 changed files with 11032 additions and 5703 deletions

View file

@ -237,6 +237,12 @@
</para>
</listitem>
<listitem>
<para>
The <literal>shibboleth-sp</literal> package has been updated to version 3.
It is largely backward compatible, for further information refer to the
<link xlink:href="https://wiki.shibboleth.net/confluence/display/SP3/ReleaseNotes">release notes</link>
and <link xlink:href="https://wiki.shibboleth.net/confluence/display/SP3/UpgradingFromV2">upgrade guide</link>.
</para>
<para>
Nodejs 8 is scheduled EOL under the lifetime of 19.09 and has been dropped.
</para>
@ -273,6 +279,11 @@
The <option>services.mantisbt</option> module has been removed from nixpkgs due to lack of maintainer.
</para>
</listitem>
<listitem>
<para>
Squid 3 has been removed and the <option>squid</option> derivation now refers to Squid 4.
</para>
</listitem>
</itemizedlist>
</section>

View file

@ -1,38 +0,0 @@
--- a/src/txmempool.h
+++ b/src/txmempool.h
@@ -204,7 +204,7 @@
class CompareTxMemPoolEntryByDescendantScore
{
public:
- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
+ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
{
bool fUseADescendants = UseDescendantScore(a);
bool fUseBDescendants = UseDescendantScore(b);
@@ -226,7 +226,7 @@
}
// Calculate which score to use for an entry (avoiding division).
- bool UseDescendantScore(const CTxMemPoolEntry &a)
+ bool UseDescendantScore(const CTxMemPoolEntry &a) const
{
double f1 = (double)a.GetModifiedFee() * a.GetSizeWithDescendants();
double f2 = (double)a.GetModFeesWithDescendants() * a.GetTxSize();
@@ -241,7 +241,7 @@
class CompareTxMemPoolEntryByScore
{
public:
- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
+ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
{
double f1 = (double)a.GetModifiedFee() * b.GetTxSize();
double f2 = (double)b.GetModifiedFee() * a.GetTxSize();
@@ -255,7 +255,7 @@
class CompareTxMemPoolEntryByEntryTime
{
public:
- bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
+ bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b) const
{
return a.GetTime() < b.GetTime();
}

View file

@ -1,34 +1,32 @@
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, openssl, db48, boost
, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, libevent
, withGui
, zlib, miniupnpc, utillinux, protobuf, qrencode, libevent, python3
, withGui, wrapQtAppsHook ? null, qtbase ? null, qttools ? null
, Foundation, ApplicationServices, AppKit }:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-unlimited-" + version;
version = "1.0.3.0";
version = "1.6.0.1";
src = fetchFromGitHub {
owner = "bitcoinunlimited";
repo = "bitcoinunlimited";
rev = "v${version}";
sha256 = "0l02a7h502msrp4c02wgm7f3159ap8l61k4890vas99gq7ywxkcx";
rev = "bucash${version}";
sha256 = "0f0mnal4jf8xdj7w5m4rdlcqkrkbpxi88c006m5k45lmjmj141zr";
};
nativeBuildInputs = [ pkgconfig autoreconfHook ];
nativeBuildInputs = [ pkgconfig autoreconfHook python3 ]
++ optionals withGui [ wrapQtAppsHook qttools ];
buildInputs = [ openssl db48 boost zlib
miniupnpc utillinux protobuf libevent ]
++ optionals withGui [ qt4 qrencode ]
++ optionals withGui [ qtbase qttools qrencode ]
++ optionals stdenv.isDarwin [ Foundation ApplicationServices AppKit ];
patches = [
./bitcoin-unlimited-const-comparators.patch
];
configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
++ optionals withGui [ "--with-gui=qt4" ];
++ optionals withGui [ "--with-gui=qt5"
"--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin"
];
enableParallelBuilding = true;
meta = {

View file

@ -1,51 +0,0 @@
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, openssl, db48, boost
, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, curl, libevent
, withGui
, Foundation, ApplicationServices, AppKit }:
with stdenv.lib;
stdenv.mkDerivation rec{
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-xt-" + version;
version = "0.11H";
src = fetchFromGitHub {
owner = "bitcoinxt";
repo = "bitcoinxt";
rev = "v${version}";
sha256 = "1v43bynmidn2zdpky939km721x3ks91bzyh4200gji61qzsmyg62";
};
nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [ openssl db48 boost zlib libevent
miniupnpc utillinux protobuf curl ]
++ optionals withGui [ qt4 qrencode ]
++ optionals stdenv.isDarwin [ Foundation ApplicationServices AppKit ];
configureFlags = [
"--with-boost-libdir=${boost.out}/lib"
"--with-libcurl-headers=${curl.dev}/include"
] ++ optionals withGui [ "--with-gui=qt4" ];
enableParallelBuilding = true;
meta = {
description = "Peer-to-peer electronic cash system (XT client)";
longDescription= ''
Bitcoin is a free open source peer-to-peer electronic cash system that is
completely decentralized, without the need for a central server or trusted
parties. Users hold the crypto keys to their own money and transact directly
with each other, with the help of a P2P network to check for double-spending.
Bitcoin XT is an implementation of a Bitcoin full node, based upon the
source code of Bitcoin Core. It is built by taking the latest stable
Core release, applying a series of patches, and then doing deterministic
builds so anyone can check the downloads correspond to the source code.
'';
homepage = https://bitcoinxt.software/;
maintainers = with maintainers; [ jefdaj ];
license = licenses.mit;
broken = stdenv.isDarwin;
platforms = platforms.unix;
};
}

View file

@ -1,4 +1,4 @@
{ callPackage, boost155, boost165, openssl_1_1, darwin, libsForQt5, libsForQt59, miniupnpc_2, python3, buildGo110Package }:
{ callPackage, boost155, boost165, darwin, libsForQt5, libsForQt59, miniupnpc_2, python3, buildGo110Package }:
rec {
@ -11,7 +11,7 @@ rec {
bitcoin-abc = libsForQt5.callPackage ./bitcoin-abc.nix { boost = boost165; withGui = true; };
bitcoind-abc = callPackage ./bitcoin-abc.nix { boost = boost165; withGui = false; };
bitcoin-unlimited = callPackage ./bitcoin-unlimited.nix {
bitcoin-unlimited = libsForQt5.callPackage ./bitcoin-unlimited.nix {
inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit;
withGui = true;
};
@ -23,15 +23,6 @@ rec {
bitcoin-classic = libsForQt5.callPackage ./bitcoin-classic.nix { boost = boost165; withGui = true; };
bitcoind-classic = callPackage ./bitcoin-classic.nix { boost = boost165; withGui = false; };
bitcoin-xt = callPackage ./bitcoin-xt.nix {
inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit;
boost = boost165; withGui = true;
};
bitcoind-xt = callPackage ./bitcoin-xt.nix {
inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit;
boost = boost165; withGui = false;
};
btc1 = callPackage ./btc1.nix {
inherit (darwin.apple_sdk.frameworks) AppKit;
boost = boost165;
@ -69,9 +60,6 @@ rec {
masari = callPackage ./masari.nix { boost = boost165; };
memorycoin = callPackage ./memorycoin.nix { boost = boost165; withGui = true; };
memorycoind = callPackage ./memorycoin.nix { boost = boost165; withGui = false; };
mist = callPackage ./mist.nix { };
namecoin = callPackage ./namecoin.nix { withGui = true; };
@ -90,7 +78,6 @@ rec {
zcash = callPackage ./zcash {
withGui = false;
openssl = openssl_1_1;
};
parity = callPackage ./parity { };

View file

@ -1,8 +1,8 @@
{ stdenv , fetchFromGitHub
, pkgconfig, autoreconfHook
, db5, openssl, boost, zlib, miniupnpc
, db5, openssl, boost, zlib, miniupnpc, libevent
, protobuf, utillinux, qt4, qrencode
, withGui, libevent }:
, withGui }:
with stdenv.lib;
stdenv.mkDerivation rec {

View file

@ -34,5 +34,8 @@ stdenv.mkDerivation rec {
license = licenses.mit;
maintainers = [ maintainers.viric ];
platforms = platforms.linux;
# upstream doesn't support newer openssl versions, use 1.0.1 for testing
broken = true;
};
}

View file

@ -1,56 +0,0 @@
{ stdenv, fetchurl, pkgconfig, openssl, db48, boost
, zlib, qt4, qmake4Hook, utillinux, protobuf, qrencode
, withGui }:
with stdenv.lib;
stdenv.mkDerivation rec{
name = "memorycoin" + (toString (optional (!withGui) "d")) + "-" + version;
version = "0.8.5";
src = fetchurl {
url = "https://github.com/memorycoin/memorycoin/archive/v${version}.tar.gz";
sha256 = "1iyh6dqrg0mirwci5br5n5qw3ghp2cs23wd8ygr56bh9ml4dr1m8";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ openssl db48 boost zlib utillinux protobuf ]
++ optionals withGui [ qt4 qmake4Hook qrencode ];
qmakeFlags = ["USE_UPNP=-"];
makeFlags = ["USE_UPNP=-"];
configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
++ optionals withGui [ "--with-gui=qt4" ];
preBuild = "unset AR;"
+ (toString (optional (!withGui) "cd src; cp makefile.unix Makefile"));
installPhase =
if withGui
then "install -D bitcoin-qt $out/bin/memorycoin-qt"
else "install -D bitcoind $out/bin/memorycoind";
# `make build/version.o`:
# make: *** No rule to make target 'build/build.h', needed by 'build/version.o'. Stop.
enableParallelBuilding = false;
meta = {
description = "Peer-to-peer, CPU-based electronic cash system";
longDescription= ''
Memorycoin is a cryptocurrency that aims to empower the
economically and financially marginalized. It allows individuals
to participate in the internet economy even when they live in
countries where credit card companies and PayPal(R) refuse to
operate. Individuals can store and transfer wealth with just a
memorized pass phrase.
Memorycoin is based on the Bitcoin code, but with some key
differences.
'';
homepage = http://www.bitcoin.org/;
maintainers = with maintainers; [ AndersonTorres ];
license = licenses.mit;
platforms = [ "x86_64-linux" ];
};
}

View file

@ -50,5 +50,12 @@ stdenv.mkDerivation rec {
homepage = https://www.dash.org;
maintainers = with maintainers; [ wucke13 ];
platforms = platforms.unix;
# upstream doesn't support newer openssl versions
# https://github.com/PIVX-Project/PIVX/issues/748
# "Your system is most probably using openssl 1.1 which is not the
# officialy supported version. Either use 1.0.1 or run again configure
# with the given option."
broken = true;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, makeDesktopItem, openssl_1_1, xorg, curl, fontconfig, krb5, zlib, dotnet-sdk }:
{ stdenv, fetchurl, makeDesktopItem, openssl, xorg, curl, fontconfig, krb5, zlib, dotnet-sdk }:
stdenv.mkDerivation rec {
pname = "wasabiwallet";
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
cd $out/opt/${pname}
for i in $(find . -type f -name '*.so') wassabee
do
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ openssl_1_1 stdenv.cc.cc.lib xorg.libX11 curl fontconfig.lib krb5 zlib dotnet-sdk ]} $i
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ openssl stdenv.cc.cc.lib xorg.libX11 curl fontconfig.lib krb5 zlib dotnet-sdk ]} $i
done
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" wassabee
ln -s $out/opt/${pname}/wassabee $out/bin/${pname}

View file

@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
makeFlags = [ "PREFIX=$(out)" ];
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
meta = with stdenv.lib; {
description = "A collection of tools to download books from Google Books";
homepage = https://njw.me.uk/getxbook/;

View file

@ -1,5 +1,6 @@
{ stdenv, mkDerivation, fetchurl
, qtbase, qtsvg, qtserialport, qtwebkit, qtmultimedia, qttools, qtconnectivity
{ stdenv, fetchFromGitHub, mkDerivation
, qtbase, qtsvg, qtserialport, qtwebkit, qtmultimedia, qttools
, qtconnectivity, qtcharts
, yacc, flex, zlib, qmake, makeDesktopItem, makeWrapper
}:
@ -15,20 +16,22 @@ let
};
in mkDerivation rec {
name = "golden-cheetah-${version}";
version = "3.4";
src = fetchurl {
name = "${name}.tar.gz";
url = "https://github.com/GoldenCheetah/GoldenCheetah/archive/V${version}.tar.gz";
sha256 = "0fiz2pj155cd357kph50lc6rjyzwp045glfv4y68qls9j7m9ayaf";
version = "3.5-DEV1903";
src = fetchFromGitHub {
owner = "GoldenCheetah";
repo = "GoldenCheetah";
rev = "v${version}";
sha256 = "130b0hm04i0hf97rs1xrdfhbal5vjsknj3x4cdxjh7rgbg2p1sm3";
};
buildInputs = [
qtbase qtsvg qtserialport qtwebkit qtmultimedia qttools zlib
qtconnectivity
qtconnectivity qtcharts
];
nativeBuildInputs = [ flex makeWrapper qmake yacc ];
NIX_LDFLAGS = [
"-lz"
];
NIX_LDFLAGS = [ "-lz" ];
qtWrapperArgs = [ "--set LD_LIBRARY_PATH ${zlib.out}/lib" ];
@ -38,6 +41,7 @@ in mkDerivation rec {
echo 'QMAKE_LRELEASE = ${qttools.dev}/bin/lrelease' >> src/gcconfig.pri
sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local
'';
installPhase = ''
runHook preInstall

View file

@ -6,7 +6,6 @@
, jrePlugin, icedtea_web
, bluejeans, djview4, adobe-reader
, google_talk_plugin, fribid, gnome3/*.gnome-shell*/
, esteidfirefoxplugin
, browserpass, chrome-gnome-shell, uget-integrator, plasma-browser-integration, bukubrow
, tridactyl-native
, udev
@ -61,7 +60,6 @@ let
++ lib.optional (cfg.enableGnomeExtensions or false) gnome3.gnome-shell
++ lib.optional (cfg.enableBluejeans or false) bluejeans
++ lib.optional (cfg.enableAdobeReader or false) adobe-reader
++ lib.optional (cfg.enableEsteid or false) esteidfirefoxplugin
++ extraPlugins
);
nativeMessagingHosts =

View file

@ -1,46 +0,0 @@
{ stdenv, fetchurl, gtk2, openssl, pcsclite, pkgconfig, opensc }:
stdenv.mkDerivation rec {
version = "3.12.1.1142";
name = "esteidfirefoxplugin-${version}";
src = fetchurl {
url = "https://installer.id.ee/media/ubuntu/pool/main/e/esteidfirefoxplugin/esteidfirefoxplugin_3.12.1.1142.orig.tar.xz";
sha256 = "0y7759x1xr00p5r3c5wpllcqqnnxh2zi74cmy4m9m690z3ywn0fx";
};
unpackPhase = ''
mkdir src
tar xf $src -C src
cd src
'';
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ gtk2 openssl pcsclite opensc ];
buildPhase = ''
sed -i "s|opensc-pkcs11.so|${opensc}/lib/pkcs11/opensc-pkcs11.so|" Makefile
make plugin
'';
installPhase = ''
plugins=$out/lib/mozilla/plugins
mkdir -p $plugins
cp -a npesteid-firefox-plugin.so $plugins/
rp=$(patchelf --print-rpath $plugins/npesteid-firefox-plugin.so)
patchelf --set-rpath "$rp:${opensc}/lib:${opensc}/lib/pkcs11" $plugins/npesteid-firefox-plugin.so
'';
passthru.mozillaPlugin = "/lib/mozilla/plugins";
dontStrip = true;
dontPatchELF = true;
meta = with stdenv.lib; {
description = "Firefox ID card signing plugin";
homepage = http://www.id.ee/;
license = licenses.lgpl2;
platforms = platforms.linux;
maintainers = [ maintainers.jagajaga ];
};
}

View file

@ -1,7 +1,9 @@
{ stdenv, fetchurl, makeWrapper, pkgconfig, which, maven, cmake, jre, bash, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl }:
{ stdenv, fetchurl, makeWrapper, pkgconfig, which, maven, cmake, jre, bash
, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl, openssl_1_0_2
}:
let
common = { version, sha256, dependencies-sha256, tomcat }:
common = { version, sha256, dependencies-sha256, tomcat, opensslPkg ? openssl }:
let
# compile the hadoop tarball from sources, it requires some patches
binary-distributon = stdenv.mkDerivation rec {
@ -33,7 +35,7 @@ let
};
nativeBuildInputs = [ maven cmake pkgconfig ];
buildInputs = [ fuse snappy zlib bzip2 openssl protobuf2_5 ];
buildInputs = [ fuse snappy zlib bzip2 opensslPkg protobuf2_5 ];
# most of the hardcoded pathes are fixed in 2.9.x and 3.0.0, this list of patched files might be reduced when 2.7.x and 2.8.x will be deprecated
postPatch = ''
for file in hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HardLink.java \
@ -84,7 +86,7 @@ let
mv $n $out/bin.wrapped/
makeWrapper $out/bin.wrapped/$(basename $n) $n \
--prefix PATH : "${stdenv.lib.makeBinPath [ which jre bash coreutils ]}" \
--prefix JAVA_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ openssl snappy zlib bzip2 ]}" \
--prefix JAVA_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ opensslPkg snappy zlib bzip2 ]}" \
--set JAVA_HOME "${jre}" \
--set HADOOP_PREFIX "$out"
fi
@ -127,18 +129,21 @@ in {
sha256 = "1ahv67f3lwak3kbjvnk1gncq56z6dksbajj872iqd0awdsj3p5rf";
dependencies-sha256 = "1lsr9nvrynzspxqcamb10d596zlnmnfpxhkd884gdiva0frm0b1r";
tomcat = tomcat_6_0_48;
opensslPkg = openssl_1_0_2;
};
hadoop_2_8 = common {
version = "2.8.4";
sha256 = "16c3ljhrzibkjn3y1bmjxdgf0kn60l23ay5hqpp7vpbnqx52x68w";
dependencies-sha256 = "1j4f461487fydgr5978nnm245ksv4xbvskfr8pbmfhcyss6b7w03";
tomcat = tomcat_6_0_48;
opensslPkg = openssl_1_0_2;
};
hadoop_2_9 = common {
version = "2.9.1";
sha256 = "0qgmpfbpv7f521fkjy5ldzdb4lwiblhs0hyl8qy041ws17y5x7d7";
dependencies-sha256 = "1d5i8jj5y746rrqb9lscycnd7acmxlkz64ydsiyqsh5cdqgy2x7x";
tomcat = tomcat_6_0_48;
opensslPkg = openssl_1_0_2;
};
hadoop_3_0 = common {
version = "3.0.3";

View file

@ -1,41 +0,0 @@
{ stdenv, fetchgit
, qtbase, qtmultimedia, qtquick1, qtquickcontrols
, qtimageformats, qtgraphicaleffects, qtwebkit
, telegram-qml, libqtelegram-aseman-edition
, gst_all_1
, makeWrapper, qmake }:
stdenv.mkDerivation rec {
name = "cutegram-${meta.version}";
src = fetchgit {
url = "https://github.com/Aseman-Land/Cutegram.git";
rev = "1dbe2792fb5a1760339379907f906e236c09db84";
sha256 = "146vd3ri05da2asxjjxibnqmb685lgwl2kaz7mwb7ja7vi4149f0";
};
buildInputs =
[ qtbase qtmultimedia qtquick1 qtquickcontrols
qtimageformats qtgraphicaleffects qtwebkit
telegram-qml libqtelegram-aseman-edition
] ++ (with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly ]);
enableParallelBuilding = true;
nativeBuildInputs = [ makeWrapper qmake ];
fixupPhase = ''
wrapProgram $out/bin/cutegram \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
'';
meta = with stdenv.lib; {
version = "2.7.1";
description = "Telegram client forked from sigram";
homepage = http://aseman.co/en/products/cutegram/;
license = licenses.gpl3;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.linux;
};
}
#TODO: appindicator, for system tray plugin

View file

@ -1,32 +0,0 @@
{ stdenv, fetchFromGitHub
, qtbase, qtmultimedia, qtquick1, qmake }:
stdenv.mkDerivation rec {
name = "libqtelegram-aseman-edition-${meta.version}";
src = fetchFromGitHub {
owner = "Aseman-Land";
repo = "libqtelegram-aseman-edition";
rev = "v${meta.version}-stable";
sha256 = "1pfd4pvh51639zk9shv1s4f6pf0ympnhar8a302vhrkga9i4cbx6";
};
buildInputs = [ qtbase qtmultimedia qtquick1 ];
enableParallelBuilding = true;
nativeBuildInputs = [ qmake ];
patchPhase = ''
substituteInPlace libqtelegram-ae.pro --replace "/libqtelegram-ae" ""
substituteInPlace libqtelegram-ae.pro --replace "/\$\$LIB_PATH" ""
'';
meta = with stdenv.lib; {
version = "6.1";
description = "A fork of libqtelegram by Aseman, using qmake";
homepage = src.meta.homepage;
license = licenses.gpl3;
maintainers = [ maintainers.Profpatsch ];
platforms = platforms.linux;
};
}

View file

@ -1,37 +0,0 @@
{ stdenv, fetchgit, libconfig, libevent, openssl
, readline, zlib, lua5_2, python, pkgconfig, jansson
, runtimeShell
}:
stdenv.mkDerivation rec {
name = "telegram-cli-2016-03-23";
src = fetchgit {
url = "https://github.com/vysheng/tg.git";
sha256 = "07sss5cnw2ygd7mp8f5532lmj7qm6ywqf4cjaq5g13i8igzqzwzj";
rev = "6547c0b21b977b327b3c5e8142963f4bc246187a";
};
buildInputs = [
libconfig libevent openssl readline zlib
lua5_2 python pkgconfig jansson
];
installPhase = ''
mkdir -p $out/bin
cp ./bin/telegram-cli $out/bin/telegram-wo-key
cp ./tg-server.pub $out/
cat > $out/bin/telegram-cli <<EOF
#!${runtimeShell}
$out/bin/telegram-wo-key -k $out/tg-server.pub "\$@"
EOF
chmod +x $out/bin/telegram-cli
'';
meta = {
description = "Command-line interface for Telegram messenger";
homepage = https://telegram.org/;
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.jagajaga ];
};
}

View file

@ -1,35 +0,0 @@
{ stdenv, fetchFromGitHub
, qtbase, qtmultimedia, qtquick1, qmake
, libqtelegram-aseman-edition }:
stdenv.mkDerivation rec {
name = "telegram-qml-${meta.version}";
src = fetchFromGitHub {
owner = "Aseman-Land";
repo = "TelegramQML";
rev = "v${meta.version}";
sha256 = "0j8vn845f2virvddk9yjbljy6vkr9ikyn6iy7hpj8nvr2xls3499";
};
propagatedBuildInputs = [ qtbase qtmultimedia qtquick1 libqtelegram-aseman-edition ];
enableParallelBuilding = true;
nativeBuildInputs = [ qmake ];
patchPhase = ''
substituteInPlace telegramqml.pro --replace "/\$\$LIB_PATH" ""
substituteInPlace telegramqml.pro --replace "INSTALL_HEADERS_PREFIX/telegramqml" "INSTALL_HEADERS_PREFIX"
'';
qmakeFlags = [ "BUILD_MODE+=lib" ];
meta = with stdenv.lib; {
version = "0.9.2";
description = "Telegram API tools for QtQml and Qml";
homepage = src.meta.homepage;
license = licenses.gpl3;
maintainers = [ maintainers.Profpatsch ];
platforms = platforms.linux;
};
}

View file

@ -2,7 +2,6 @@
, openldap
}:
# NOTE: Please check if any changes here are applicable to ../realpine/ as well
stdenv.mkDerivation rec {
name = "alpine-${version}";
version = "2.21";

View file

@ -1,42 +0,0 @@
{stdenv, fetchurl, ncurses, tcl, openssl, pam, kerberos
, openldap
}:
# NOTE: Please check if any changes here are applicable to ../alpine/ as well
let
baseName = "re-alpine";
version = "2.03";
in
stdenv.mkDerivation {
name = "${baseName}-${version}";
inherit version;
src = fetchurl {
url = "mirror://sourceforge/re-alpine/re-alpine-${version}.tar.bz2";
sha256 = "11xspzbk9cwmklmcw6rxsan7j71ysd4m9c7qldlc59ck595k5nbh";
};
buildInputs = [
ncurses tcl openssl pam kerberos openldap
];
hardeningDisable = [ "format" ];
configureFlags = [
"--with-ssl-include-dir=${openssl.dev}/include/openssl"
"--with-tcl-lib=${tcl.libPrefix}"
"--with-passfile=.pine-passfile"
];
preConfigure = ''
export NIX_LDFLAGS="$NIX_LDFLAGS -lgcc_s"
'';
meta = {
description = "Console mail reader";
license = stdenv.lib.licenses.asl20;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
homepage = https://sourceforge.net/projects/re-alpine/;
downloadPage = "https://sourceforge.net/projects/re-alpine/files/";
};
}

View file

@ -1,5 +1,5 @@
{ lib, mkDerivation, fetchgit, cmake, pkgconfig, qtbase, qtwebkit, qtkeychain, qttools, sqlite
, inotify-tools, openssl_1_1, pcre, qtwebengine, libsecret
, inotify-tools, openssl, pcre, qtwebengine, libsecret
, libcloudproviders
}:
@ -20,17 +20,17 @@ mkDerivation rec {
nativeBuildInputs = [ pkgconfig cmake ];
buildInputs = [ qtbase qtwebkit qtkeychain qttools qtwebengine sqlite openssl_1_1.out pcre inotify-tools libcloudproviders ];
buildInputs = [ qtbase qtwebkit qtkeychain qttools qtwebengine sqlite openssl.out pcre inotify-tools libcloudproviders ];
enableParallelBuilding = true;
NIX_LDFLAGS = "${openssl_1_1.out}/lib/libssl.so ${openssl_1_1.out}/lib/libcrypto.so";
NIX_LDFLAGS = "${openssl.out}/lib/libssl.so ${openssl.out}/lib/libcrypto.so";
cmakeFlags = [
"-UCMAKE_INSTALL_LIBDIR"
"-DCMAKE_BUILD_TYPE=Release"
"-DOPENSSL_LIBRARIES=${openssl_1_1.out}/lib"
"-DOPENSSL_INCLUDE_DIR=${openssl_1_1.dev}/include"
"-DOPENSSL_LIBRARIES=${openssl.out}/lib"
"-DOPENSSL_INCLUDE_DIR=${openssl.dev}/include"
"-DINOTIFY_LIBRARY=${inotify-tools}/lib/libinotifytools.so"
"-DINOTIFY_INCLUDE_DIR=${inotify-tools}/include"
];

View file

@ -1,33 +0,0 @@
{ stdenv, fetchurl, imake, zlib, jdk, libX11, libXt, libXmu
, libXaw, libXext, libXpm, openjpeg, openssl, tk, perl }:
stdenv.mkDerivation rec {
name = "ssvnc-${version}";
version = "1.0.29";
src = fetchurl {
url = "mirror://sourceforge/ssvnc/${name}.src.tar.gz";
sha256 = "74df32eb8eaa68b07c9693a232ebe42154617c7f3cbe1d4e68d3fe7c557d618d";
};
buildInputs = [ imake zlib jdk libX11 libXt libXmu libXaw libXext libXpm openjpeg openssl ];
dontUseImakeConfigure = true;
makeFlags = "PREFIX=$(out)";
hardeningDisable = [ "format" ];
postInstall = ''
sed -i -e 's|exec wish|exec ${tk}/bin/wish|' $out/lib/ssvnc/util/ssvnc.tcl
sed -i -e 's|/usr/bin/perl|${perl}/bin/perl|' $out/lib/ssvnc/util/ss_vncviewer
'';
meta = {
description = "VNC viewer that adds encryption security to VNC connections";
homepage = http://www.karlrunge.com/x11vnc/ssvnc.html;
license = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.edwtjo ];
platforms = with stdenv.lib.platforms; linux;
};
}

View file

@ -1,34 +1,23 @@
{ stdenv, fetchFromGitHub, cmake, libpcap, libnet, zlib, curl, pcre
, openssl, ncurses, glib, gtk2, atk, pango, flex, bison
, fetchpatch }:
, openssl, ncurses, glib, gtk3, atk, pango, flex, bison, geoip
, pkgconfig }:
stdenv.mkDerivation rec {
name = "ettercap-${version}";
version = "0.8.2";
version = "0.8.3";
src = fetchFromGitHub {
owner = "Ettercap";
repo = "ettercap";
rev = "v${version}";
sha256 = "1kvrzv2f8kxy7pndfadkzv10cs5wsyfkaa1ski20r2mq4wrvd0cd";
sha256 = "0m40bmbrv9a8qlg54z3b5f8r541gl9vah5hm0bbqcgyyljpg39bz";
};
patches = [
(fetchpatch {
name = "CVE-2017-8366.patch";
url = "https://github.com/Ettercap/ettercap/commit/1083d604930ebb9f350126b83802ecd2cbc17f90.patch";
sha256 = "1ff6fp8fxisvd3fkkd01y4fjykgcj414kczzpfscdmi52ridwg8m";
})
(fetchpatch {
name = "CVE-2017-6430.patch";
url = "https://github.com/Ettercap/ettercap/commit/7f50c57b2101fe75592c8dc9960883bbd1878bce.patch";
sha256 = "0s13nc9yzxzp611rixsd1c8aw1b57q2lnvfq8wawxyrw07h7b2j4";
})
];
strictDeps = true;
nativeBuildInputs = [ cmake flex bison pkgconfig ];
buildInputs = [
cmake libpcap libnet zlib curl pcre openssl ncurses
glib gtk2 atk pango flex bison
libpcap libnet zlib curl pcre openssl ncurses
glib gtk3 atk pango geoip
];
preConfigure = ''
@ -37,8 +26,8 @@ stdenv.mkDerivation rec {
'';
cmakeFlags = [
"-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include"
"-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2.out}/lib/gtk-2.0/include"
"-DBUNDLED_LIBS=Off"
"-DGTK3_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include"
];
meta = with stdenv.lib; {

View file

@ -1,6 +1,6 @@
{ stdenv
, fetchFromGitHub
, openssl
, openssl_1_0_2
, zlib
, libssh
, cmake
@ -35,7 +35,7 @@ buildRustPackage rec {
];
buildInputs = [
openssl
openssl_1_0_2
libssh
zlib
] ++ stdenv.lib.optionals (stdenv.isDarwin) [

View file

@ -1,4 +1,4 @@
{ python37, openssl_1_1
{ python37, openssl
, callPackage }:
# To expose the *srht modules, they have to be a python module so we use `buildPythonModule`
@ -23,16 +23,6 @@ let
todosrht = self.callPackage ./todo.nix { };
scmsrht = self.callPackage ./scm.nix { };
# OVERRIDES
cryptography = super.cryptography.override {
openssl = openssl_1_1;
};
pyopenssl = super.pyopenssl.override {
openssl = openssl_1_1;
};
};
};
in with python.pkgs; {

View file

@ -1,9 +1,10 @@
{ stdenv, fetchurl, pkgconfig, intltool, glib, libxml2, gtk3, gtk-vnc, gmp
, libgcrypt, gnupg, cyrus_sasl, shared-mime-info, libvirt, yajl, xen
, libgcrypt, gnupg, cyrus_sasl, shared-mime-info, libvirt, yajl
, gsettings-desktop-schemas, wrapGAppsHook, libvirt-glib, libcap_ng, numactl
, libapparmor, gst_all_1
, spiceSupport ? true
, spice-gtk ? null, spice-protocol ? null, libcap ? null, gdbm ? null
, xenSupport ? false, xen ? null
}:
assert spiceSupport ->
@ -26,7 +27,7 @@ stdenv.mkDerivation rec {
glib libxml2 gtk3 gtk-vnc gmp libgcrypt gnupg cyrus_sasl shared-mime-info
libvirt yajl gsettings-desktop-schemas libvirt-glib
libcap_ng numactl libapparmor
] ++ optionals stdenv.isx86_64 [
] ++ optionals xenSupport [
xen
] ++ optionals spiceSupport [
spice-gtk spice-protocol libcap gdbm

View file

@ -1,7 +1,9 @@
{ callPackage, pkgs }:
rec {
#### CORE EFL
efl = callPackage ./efl.nix { openjpeg = pkgs.openjpeg_1; };
efl = callPackage ./efl.nix {
openjpeg = pkgs.openjpeg_1;
};
#### WINDOW MANAGER
enlightenment = callPackage ./enlightenment.nix { };

View file

@ -37,7 +37,9 @@ lib.makeScope pkgs.newScope (self: with self; {
gnome_python_desktop = callPackage ./bindings/gnome-python-desktop { };
gnome_vfs = callPackage ./platform/gnome-vfs { };
gnome_vfs = callPackage ./platform/gnome-vfs {
openssl = pkgs.openssl_1_0_2;
};
libgnome = callPackage ./platform/libgnome { };

View file

@ -1285,4 +1285,7 @@ self: super: {
# QuickCheck >=2.3 && <2.13, hspec >=2.1 && <2.7
graphviz = dontCheck super.graphviz;
# https://github.com/elliottt/hsopenid/issues/15
openid = markBroken super.openid;
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super

View file

@ -1,6 +1,6 @@
{ stdenv, substituteAll, fetchurl
, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi
, sqlite, openssl, ncurses, python, expat, tcl, tk, tix, xlibsWrapper, libX11
, sqlite, openssl_1_0_2, ncurses, python, expat, tcl, tk, tix, xlibsWrapper, libX11
, self, gdbm, db, lzma
, python-setup-hook
# For the Python package set
@ -40,7 +40,7 @@ in with passthru; stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
bzip2 openssl pythonForPypy libffi ncurses expat sqlite tk tcl xlibsWrapper libX11 gdbm db
bzip2 openssl_1_0_2 pythonForPypy libffi ncurses expat sqlite tk tcl xlibsWrapper libX11 gdbm db
] ++ optionals isPy3k [
lzma
] ++ optionals (stdenv ? cc && stdenv.cc.libc != null) [

View file

@ -1,47 +0,0 @@
{stdenv, fetchurl, openssl, jdk, premake3}:
# Info on how to use / obtain aacs keys:
# http://vlc-bluray.whoknowsmy.name/
# https://wiki.archlinux.org/index.php/BluRay
let baseName = "aacskeys";
version = "0.4.0e";
in
stdenv.mkDerivation {
name = "${baseName}-${version}";
patchPhase = ''
substituteInPlace "premake.lua" \
--replace "/usr/lib/jvm/java-6-sun/include" "${jdk}/include"
'';
src = fetchurl {
url = "http://deb-multimedia.org/pool/main/a/${baseName}/${baseName}_${version}.orig.tar.gz";
sha256 = "0d3zvwixpkixfkkc16wj37h2xbcq5hsqqhqngzqr6pslmqr67vnr";
};
buildInputs = [openssl jdk premake3];
installPhase = ''
mkdir -p $out/{bin,lib,share/${baseName}}
# Install lib
install -Dm444 lib/linux/libaacskeys.so $out/lib
# Install program
install -Dm555 bin/linux/aacskeys $out/bin
# Install resources
install -Dm444 HostKeyCertificate.txt $out/share/${baseName}
install -Dm444 ProcessingDeviceKeysSimple.txt $out/share/${baseName}
'';
meta = with stdenv.lib; {
homepage = http://forum.doom9.org/showthread.php?t=123311;
description = "A library and program to retrieve decryption keys for HD discs";
platforms = platforms.linux;
license = licenses.publicDomain;
};
}

View file

@ -1,20 +1,27 @@
{stdenv, fetchurl, libosip, openssl, pkgconfig }:
{ stdenv, fetchurl, libosip, openssl, pkgconfig, fetchpatch }:
stdenv.mkDerivation rec {
name = "libexosip2-${version}";
version = "4.1.0";
src = fetchurl {
url = "mirror://savannah/exosip/libeXosip2-${version}.tar.gz";
sha256 = "17cna8kpc8nk1si419vgr6r42k2lda0rdk50vlxrw8rzg0xp2xrw";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libosip openssl ];
patches = [
(fetchpatch {
url = "https://sources.debian.net/data/main/libe/libexosip2/4.1.0-2.1/debian/patches/openssl110.patch";
sha256 = "01q2dax7pwh197mn18r22y38mrsky85mvs9vbkn9fpcilrdayal6";
})
];
meta = with stdenv.lib; {
license = licenses.gpl2Plus;
description = "Library that hides the complexity of using the SIP protocol";
platforms =platforms.linux;
platforms = platforms.linux;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, zlib, openssl, pcsclite }:
{ stdenv, fetchurl, pkgconfig, zlib, openssl_1_0_2, pcsclite }:
stdenv.mkDerivation rec {
name = "globalplatform-${version}";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ zlib openssl pcsclite ];
buildInputs = [ zlib openssl_1_0_2 pcsclite ];
meta = with stdenv.lib; {
homepage = https://sourceforge.net/p/globalplatform/wiki/Home/;

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, globalplatform, openssl, pcsclite }:
{ stdenv, fetchurl, pkgconfig, globalplatform, openssl_1_0_2, pcsclite }:
stdenv.mkDerivation rec {
name = "gppcscconnectionplugin-${version}";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ globalplatform openssl pcsclite ];
buildInputs = [ globalplatform openssl_1_0_2 pcsclite ];
meta = with stdenv.lib; {
homepage = https://sourceforge.net/p/globalplatform/wiki/Home/;

View file

@ -1,6 +1,7 @@
{ stdenv, fetchurl, pkgconfig, libvirt, glib, libxml2, intltool, libtool, yajl
, nettle, libgcrypt, pythonPackages, gobject-introspection, libcap_ng, numactl
, xen, libapparmor, vala
, libapparmor, vala
, xenSupport ? false, xen ? null
}:
let
@ -19,7 +20,7 @@ in stdenv.mkDerivation rec {
buildInputs = [
libvirt glib libxml2 intltool libtool yajl nettle libgcrypt
python pygobject2 gobject-introspection libcap_ng numactl libapparmor
] ++ stdenv.lib.optionals stdenv.isx86_64 [
] ++ stdenv.lib.optionals xenSupport [
xen
];

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, libbsd, openssl, libmilter
, perl, makeWrapper }:
, autoreconfHook, perl, makeWrapper }:
stdenv.mkDerivation rec {
name = "opendkim-${version}";
@ -16,10 +16,12 @@ stdenv.mkDerivation rec {
"ac_cv_func_realloc_0_nonnull=yes"
];
nativeBuildInputs = [ pkgconfig makeWrapper ];
nativeBuildInputs = [ autoreconfHook pkgconfig makeWrapper ];
buildInputs = [ libbsd openssl libmilter perl ];
patches = [ ./openssl-1.1.patch ];
postInstall = ''
wrapProgram $out/sbin/opendkim-genkey \
--prefix PATH : ${openssl.bin}/bin

View file

@ -0,0 +1,81 @@
--- a/configure.ac
+++ b/configure.ac
@@ -864,26 +864,28 @@
AC_SEARCH_LIBS([ERR_peek_error], [crypto], ,
AC_MSG_ERROR([libcrypto not found]))
- AC_SEARCH_LIBS([SSL_library_init], [ssl], ,
- [
- if test x"$enable_shared" = x"yes"
- then
- AC_MSG_ERROR([Cannot build shared opendkim
- against static openssl libraries.
- Configure with --disable-shared
- to get this working or obtain a
- shared libssl library for
- opendkim to use.])
- fi
-
- # avoid caching issue - last result of SSL_library_init
- # shouldn't be cached for this next check
- unset ac_cv_search_SSL_library_init
- LIBCRYPTO_LIBS="$LIBCRYPTO_LIBS -ldl"
- AC_SEARCH_LIBS([SSL_library_init], [ssl], ,
- AC_MSG_ERROR([libssl not found]), [-ldl])
- ]
- )
+
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#include <openssl/ssl.h>]],
+ [[SSL_library_init();]])],
+ [od_have_ossl="yes";],
+ [od_have_ossl="no";])
+ if test x"$od_have_ossl" = x"no"
+ then
+ if test x"$enable_shared" = x"yes"
+ then
+ AC_MSG_ERROR([Cannot build shared opendkim
+ against static openssl libraries.
+ Configure with --disable-shared
+ to get this working or obtain a
+ shared libssl library for
+ opendkim to use.])
+ fi
+
+ LIBCRYPTO_LIBS="$LIBCRYPTO_LIBS -ldl"
+ AC_SEARCH_LIBS([SSL_library_init], [ssl], ,
+ AC_MSG_ERROR([libssl not found]), [-ldl])
+ fi
AC_CHECK_DECL([SHA256_DIGEST_LENGTH],
AC_DEFINE([HAVE_SHA256], 1,
--- a/opendkim/opendkim-crypto.c
+++ b/opendkim/opendkim-crypto.c
@@ -222,7 +222,11 @@
{
assert(pthread_setspecific(id_key, ptr) == 0);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000
+ OPENSSL_thread_stop();
+#else
ERR_remove_state(0);
+#endif
free(ptr);
@@ -392,11 +396,15 @@
{
if (crypto_init_done)
{
+#if OPENSSL_VERSION_NUMBER >= 0x10100000
+ OPENSSL_thread_stop();
+#else
CRYPTO_cleanup_all_ex_data();
CONF_modules_free();
EVP_cleanup();
ERR_free_strings();
ERR_remove_state(0);
+#endif
if (nmutexes > 0)
{

View file

@ -1,17 +1,21 @@
{ stdenv, fetchgit, autoreconfHook, boost, openssl, log4shib, xercesc, xml-security-c, xml-tooling-c, zlib }:
{ stdenv, fetchgit, autoreconfHook, pkgconfig
, boost, openssl, log4shib, xercesc, xml-security-c, xml-tooling-c, zlib
}:
stdenv.mkDerivation rec {
name = "opensaml-cpp-${version}";
version = "2.6.1";
version = "3.0.1";
src = fetchgit {
url = "https://git.shibboleth.net/git/cpp-opensaml.git";
rev = version;
sha256 = "0wjb6jyvh4hwpy1pvhh63i821746nqijysrd4vasbirkf4h6z7nx";
sha256 = "0ms3sqmwqkrqb92d7jy2hqwnz5yd7cbrz73n321jik0jilrwl5w8";
};
buildInputs = [ boost openssl log4shib xercesc xml-security-c xml-tooling-c zlib ];
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [
boost openssl log4shib xercesc xml-security-c xml-tooling-c zlib
];
nativeBuildInputs = [ autoreconfHook pkgconfig ];
configureFlags = [ "--with-xmltooling=${xml-tooling-c}" ];

View file

@ -25,6 +25,11 @@ stdenv.mkDerivation rec {
(fetchpatch { url = http://sources.debian.net/data/main/p/ptlib/2.10.11~dfsg-2.1/debian/patches/no-sslv3;
sha256 = "172s1dnnrl54p9sf1nl7s475sm78rpw3p8jxi0pdx6izzl8hcdr0";
})
(fetchpatch {
name = "openssl-1.1.patch";
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/openssl-1.1.0.patch?h=packages/ptlib&id=1dfa9f55e7e030d261228fca27dda82979ca7f30";
sha256 = "11hdgyyibycg0wf5ls0wk9hksa4jd434i86xqiccbyg17n4l6lc1";
})
./ptlib-2.10.11-glibc-2.26.patch
];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, pkgconfig, qt, darwin }:
{ stdenv, fetchurl, openssl_1_0_2, cmake, pkgconfig, qt, darwin }:
stdenv.mkDerivation rec {
name = "qca-${version}";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ qt ]
buildInputs = [ openssl_1_0_2 qt ]
++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
enableParallelBuilding = true;

View file

@ -83,13 +83,14 @@ stdenv.mkDerivation rec {
+ "21b342d71c19e6d68b649947f913410fe6129ea4/debian/patches/kubuntu_39_fix_medium_font.diff";
sha256 = "0bli44chn03c2y70w1n8l7ss4ya0b40jqqav8yxrykayi01yf95j";
})
# Patch is no longer available from here, so vendoring it for now.
# Patches are no longer available from here, so vendoring it for now.
#(fetchpatch {
# name = "qt4-gcc6.patch";
# url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qt4-gcc6.patch?h=packages/qt4&id=ca773a144f5abb244ac4f2749eeee9333cac001f";
# sha256 = "07lrva7bjh6i40p7b3ml26a2jlznri8bh7y7iyx5zmvb1gfxmj34";
#})
./qt4-gcc6.patch
./qt4-openssl-1.1.patch
]
++ lib.optional gtkStyle (substituteAll ({
src = ./dlopen-gtkstyle.diff;

View file

@ -0,0 +1,398 @@
--- a/src/network/ssl/qsslcertificate.cpp
+++ b/src/network/ssl/qsslcertificate.cpp
@@ -259,10 +259,10 @@
QByteArray QSslCertificate::version() const
{
QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
- if (d->versionString.isEmpty() && d->x509)
+ if (d->versionString.isEmpty() && d->x509) {
d->versionString =
- QByteArray::number(qlonglong(q_ASN1_INTEGER_get(d->x509->cert_info->version)) + 1);
-
+ QByteArray::number(qlonglong(q_X509_get_version(d->x509)) + 1);
+ }
return d->versionString;
}
@@ -276,7 +276,7 @@
{
QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
if (d->serialNumberString.isEmpty() && d->x509) {
- ASN1_INTEGER *serialNumber = d->x509->cert_info->serialNumber;
+ ASN1_INTEGER *serialNumber = q_X509_get_serialNumber(d->x509);
// if we cannot convert to a long, just output the hexadecimal number
if (serialNumber->length > 4) {
QByteArray hexString;
@@ -489,24 +489,33 @@
QSslKey key;
key.d->type = QSsl::PublicKey;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
X509_PUBKEY *xkey = d->x509->cert_info->key;
+#else
+ X509_PUBKEY *xkey = q_X509_get_X509_PUBKEY(d->x509);
+#endif
EVP_PKEY *pkey = q_X509_PUBKEY_get(xkey);
Q_ASSERT(pkey);
- if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA) {
+ int key_id;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ key_id = q_EVP_PKEY_type(pkey->type);
+#else
+ key_id = q_EVP_PKEY_base_id(pkey);
+#endif
+ if (key_id == EVP_PKEY_RSA) {
key.d->rsa = q_EVP_PKEY_get1_RSA(pkey);
key.d->algorithm = QSsl::Rsa;
key.d->isNull = false;
- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA) {
+ } else if (key_id == EVP_PKEY_DSA) {
key.d->dsa = q_EVP_PKEY_get1_DSA(pkey);
key.d->algorithm = QSsl::Dsa;
key.d->isNull = false;
- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DH) {
+ } else if (key_id == EVP_PKEY_DH) {
// DH unsupported
} else {
// error?
}
-
q_EVP_PKEY_free(pkey);
return key;
}
--- a/src/network/ssl/qsslkey.cpp
+++ b/src/network/ssl/qsslkey.cpp
@@ -321,8 +321,19 @@
{
if (d->isNull)
return -1;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
return (d->algorithm == QSsl::Rsa)
? q_BN_num_bits(d->rsa->n) : q_BN_num_bits(d->dsa->p);
+#else
+ if (d->algorithm == QSsl::Rsa) {
+ return q_RSA_bits(d->rsa);
+ }else{
+ BIGNUM *p = NULL;
+ q_DSA_get0_pqg(d->dsa, &p, NULL, NULL);
+ return q_BN_num_bits(p);
+ }
+#endif
+
}
/*!
--- a/src/network/ssl/qsslsocket_openssl.cpp
+++ b/src/network/ssl/qsslsocket_openssl.cpp
@@ -93,6 +93,7 @@
bool QSslSocketPrivate::s_loadedCiphersAndCerts = false;
bool QSslSocketPrivate::s_loadRootCertsOnDemand = false;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
/* \internal
From OpenSSL's thread(3) manual page:
@@ -174,6 +175,8 @@
}
} // extern "C"
+#endif //OPENSSL_VERSION_NUMBER >= 0x10100000L
+
QSslSocketBackendPrivate::QSslSocketBackendPrivate()
: ssl(0),
ctx(0),
@@ -222,9 +225,12 @@
ciph.d->encryptionMethod = descriptionList.at(4).mid(4);
ciph.d->exportable = (descriptionList.size() > 6 && descriptionList.at(6) == QLatin1String("export"));
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
ciph.d->bits = cipher->strength_bits;
ciph.d->supportedBits = cipher->alg_bits;
-
+#else
+ ciph.d->bits = q_SSL_CIPHER_get_bits(cipher, &ciph.d->supportedBits);
+#endif
}
return ciph;
}
@@ -367,7 +373,7 @@
//
// See also: QSslContext::fromConfiguration()
if (caCertificate.expiryDate() >= QDateTime::currentDateTime()) {
- q_X509_STORE_add_cert(ctx->cert_store, (X509 *)caCertificate.handle());
+ q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(ctx), (X509 *)caCertificate.handle());
}
}
@@ -504,8 +510,10 @@
*/
void QSslSocketPrivate::deinitialize()
{
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
q_CRYPTO_set_id_callback(0);
q_CRYPTO_set_locking_callback(0);
+#endif
}
/*!
@@ -526,13 +534,17 @@
return false;
// Check if the library itself needs to be initialized.
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
QMutexLocker locker(openssl_locks()->initLock());
+#endif
if (!s_libraryLoaded) {
s_libraryLoaded = true;
// Initialize OpenSSL.
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
q_CRYPTO_set_id_callback(id_function);
q_CRYPTO_set_locking_callback(locking_function);
+#endif
if (q_SSL_library_init() != 1)
return false;
q_SSL_load_error_strings();
@@ -571,7 +583,9 @@
void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
{
- QMutexLocker locker(openssl_locks()->initLock());
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ QMutexLocker locker(openssl_locks()->initLock());
+#endif
if (s_loadedCiphersAndCerts)
return;
s_loadedCiphersAndCerts = true;
@@ -663,13 +677,18 @@
STACK_OF(SSL_CIPHER) *supportedCiphers = q_SSL_get_ciphers(mySsl);
for (int i = 0; i < q_sk_SSL_CIPHER_num(supportedCiphers); ++i) {
if (SSL_CIPHER *cipher = q_sk_SSL_CIPHER_value(supportedCiphers, i)) {
- if (cipher->valid) {
+
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ if (cipher->valid) {
+#endif
QSslCipher ciph = QSslSocketBackendPrivate::QSslCipher_from_SSL_CIPHER(cipher);
if (!ciph.isNull()) {
if (!ciph.name().toLower().startsWith(QLatin1String("adh")))
ciphers << ciph;
}
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
}
+#endif
}
}
--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp
+++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -290,6 +290,22 @@
DEFINEFUNC(void, OPENSSL_add_all_algorithms_conf, void, DUMMYARG, return, DUMMYARG)
DEFINEFUNC3(int, SSL_CTX_load_verify_locations, SSL_CTX *ctx, ctx, const char *CAfile, CAfile, const char *CApath, CApath, return 0, return)
DEFINEFUNC(long, SSLeay, void, DUMMYARG, return 0, return)
+DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *ctx, ctx, return 0, return)
+
+DEFINEFUNC(ASN1_INTEGER *, X509_get_serialNumber, X509 *x, x, return 0, return)
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+DEFINEFUNC(int, EVP_PKEY_id, const EVP_PKEY *pkey, pkey, return 0, return)
+DEFINEFUNC(int, EVP_PKEY_base_id, const EVP_PKEY *pkey, pkey, return 0, return)
+DEFINEFUNC2(int, SSL_CIPHER_get_bits, const SSL_CIPHER *cipher, cipher, int *alg_bits, alg_bits, return 0, return)
+DEFINEFUNC2(long, SSL_CTX_set_options, SSL_CTX *ctx, ctx, long options, options, return 0, return)
+DEFINEFUNC(long, X509_get_version, X509 *x, x, return 0, return)
+DEFINEFUNC(X509_PUBKEY *, X509_get_X509_PUBKEY, X509 *x, x, return 0, return)
+DEFINEFUNC(int, RSA_bits, const RSA *rsa, rsa, return 0, return)
+DEFINEFUNC(int, DSA_security_bits, const DSA *dsa, dsa, return 0, return)
+DEFINEFUNC(ASN1_TIME *, X509_get_notAfter, X509 *x, x, return 0, return)
+DEFINEFUNC(ASN1_TIME *, X509_get_notBefore, X509 *x, x, return 0, return)
+DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, BIGNUM **p, p, BIGNUM **q, q, BIGNUM **g, g, return, return)
+#endif
#ifdef Q_OS_SYMBIAN
#define RESOLVEFUNC(func, ordinal, lib) \
@@ -801,6 +817,7 @@
RESOLVEFUNC(SSL_CTX_use_PrivateKey)
RESOLVEFUNC(SSL_CTX_use_RSAPrivateKey)
RESOLVEFUNC(SSL_CTX_use_PrivateKey_file)
+ RESOLVEFUNC(SSL_CTX_get_cert_store)
RESOLVEFUNC(SSL_accept)
RESOLVEFUNC(SSL_clear)
RESOLVEFUNC(SSL_connect)
@@ -823,6 +840,23 @@
RESOLVEFUNC(SSL_set_connect_state)
RESOLVEFUNC(SSL_shutdown)
RESOLVEFUNC(SSL_write)
+
+ RESOLVEFUNC(X509_get_serialNumber)
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RESOLVEFUNC(SSL_CTX_ctrl)
+ RESOLVEFUNC(EVP_PKEY_id)
+ RESOLVEFUNC(EVP_PKEY_base_id)
+ RESOLVEFUNC(SSL_CIPHER_get_bits)
+ RESOLVEFUNC(SSL_CTX_set_options)
+ RESOLVEFUNC(X509_get_version)
+ RESOLVEFUNC(X509_get_X509_PUBKEY)
+ RESOLVEFUNC(RSA_bits)
+ RESOLVEFUNC(DSA_security_bits)
+ RESOLVEFUNC(DSA_get0_pqg)
+ RESOLVEFUNC(X509_get_notAfter)
+ RESOLVEFUNC(X509_get_notBefore)
+#endif
+
#ifndef OPENSSL_NO_SSL2
RESOLVEFUNC(SSLv2_client_method)
#endif
--- a/src/network/ssl/qsslsocket_openssl_symbols_p.h
+++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h
@@ -399,7 +399,25 @@
PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_DSAPrivateKey,PEM_STRING_DSA,\
bp,(char *)x,enc,kstr,klen,cb,u)
#endif
+
+X509_STORE * q_SSL_CTX_get_cert_store(const SSL_CTX *ctx);
+ASN1_INTEGER * q_X509_get_serialNumber(X509 *x);
+
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
#define q_SSL_CTX_set_options(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_OPTIONS,(op),NULL)
+#define q_X509_get_version(x) X509_get_version(x)
+#else
+int q_EVP_PKEY_id(const EVP_PKEY *pkey);
+int q_EVP_PKEY_base_id(const EVP_PKEY *pkey);
+int q_SSL_CIPHER_get_bits(const SSL_CIPHER *cipher, int *alg_bits);
+long q_SSL_CTX_set_options(SSL_CTX *ctx, long options);
+long q_X509_get_version(X509 *x);
+X509_PUBKEY * q_X509_get_X509_PUBKEY(X509 *x);
+int q_RSA_bits(const RSA *rsa);
+int q_DSA_security_bits(const DSA *dsa);
+void q_DSA_get0_pqg(const DSA *d, BIGNUM **p, BIGNUM **q, BIGNUM **g);
+#endif
+
#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
#define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st))
@@ -410,8 +428,15 @@
#define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
#define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
+
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
#define q_X509_get_notAfter(x) X509_get_notAfter(x)
#define q_X509_get_notBefore(x) X509_get_notBefore(x)
+#else
+ASN1_TIME *q_X509_get_notAfter(X509 *x);
+ASN1_TIME *q_X509_get_notBefore(X509 *x);
+#endif
+
#define q_EVP_PKEY_assign_RSA(pkey,rsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_RSA,\
(char *)(rsa))
#define q_EVP_PKEY_assign_DSA(pkey,dsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\
--- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslcertificate.cpp.omv~ 2017-03-15 02:27:18.143322736 +0100
+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslcertificate.cpp 2017-03-15 02:29:56.215819741 +0100
@@ -696,7 +696,7 @@
unsigned char *data = 0;
int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e));
info[QString::fromUtf8(obj)] = QString::fromUtf8((char*)data, size);
- q_CRYPTO_free(data);
+ q_OPENSSL_free(data);
}
return info;
}
--- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslkey.cpp.0131~ 2017-03-15 02:22:37.053244125 +0100
+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslkey.cpp 2017-03-15 02:22:37.055244057 +0100
@@ -328,7 +328,7 @@
if (d->algorithm == QSsl::Rsa) {
return q_RSA_bits(d->rsa);
}else{
- BIGNUM *p = NULL;
+ const BIGNUM *p = NULL;
q_DSA_get0_pqg(d->dsa, &p, NULL, NULL);
return q_BN_num_bits(p);
}
--- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp.0131~ 2017-03-15 02:22:37.054244091 +0100
+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-03-15 02:29:41.155236836 +0100
@@ -111,16 +111,16 @@
DEFINEFUNC2(int, ASN1_STRING_to_UTF8, unsigned char **a, a, ASN1_STRING *b, b, return 0, return);
DEFINEFUNC4(long, BIO_ctrl, BIO *a, a, int b, b, long c, c, void *d, d, return -1, return)
DEFINEFUNC(int, BIO_free, BIO *a, a, return 0, return)
-DEFINEFUNC(BIO *, BIO_new, BIO_METHOD *a, a, return 0, return)
+DEFINEFUNC(BIO *, BIO_new, const BIO_METHOD *a, a, return 0, return)
DEFINEFUNC2(BIO *, BIO_new_mem_buf, void *a, a, int b, b, return 0, return)
DEFINEFUNC3(int, BIO_read, BIO *a, a, void *b, b, int c, c, return -1, return)
-DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
+DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG)
DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG)
-DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
+DEFINEFUNC(void, OPENSSL_free, void *a, a, return, DUMMYARG)
DEFINEFUNC(void, DSA_free, DSA *a, a, return, DUMMYARG)
#if OPENSSL_VERSION_NUMBER < 0x00908000L
DEFINEFUNC3(X509 *, d2i_X509, X509 **a, a, unsigned char **b, b, long c, c, return 0, return)
@@ -300,7 +300,7 @@
DEFINEFUNC(int, DSA_security_bits, const DSA *dsa, dsa, return 0, return)
DEFINEFUNC(ASN1_TIME *, X509_get_notAfter, X509 *x, x, return 0, return)
DEFINEFUNC(ASN1_TIME *, X509_get_notBefore, X509 *x, x, return 0, return)
-DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, BIGNUM **p, p, BIGNUM **q, q, BIGNUM **g, g, return, return)
+DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, const BIGNUM **p, p, const BIGNUM **q, q, const BIGNUM **g, g, return, return)
#endif
#ifdef Q_OS_SYMBIAN
--- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols_p.h.0131~ 2017-03-15 02:22:37.054244091 +0100
+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-03-15 02:29:50.192986268 +0100
@@ -59,6 +59,9 @@
QT_BEGIN_NAMESPACE
#define DUMMYARG
+#ifndef OPENSSL_NO_SSL2
+#define OPENSSL_NO_SSL2 1
+#endif
#if !defined QT_LINKED_OPENSSL
// **************** Shared declarations ******************
@@ -207,16 +210,16 @@
int q_ASN1_STRING_to_UTF8(unsigned char **a, ASN1_STRING *b);
long q_BIO_ctrl(BIO *a, int b, long c, void *d);
int q_BIO_free(BIO *a);
-BIO *q_BIO_new(BIO_METHOD *a);
+BIO *q_BIO_new(const BIO_METHOD *a);
BIO *q_BIO_new_mem_buf(void *a, int b);
int q_BIO_read(BIO *a, void *b, int c);
-BIO_METHOD *q_BIO_s_mem();
+const BIO_METHOD *q_BIO_s_mem();
int q_BIO_write(BIO *a, const void *b, int c);
int q_BN_num_bits(const BIGNUM *a);
int q_CRYPTO_num_locks();
void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int));
void q_CRYPTO_set_id_callback(unsigned long (*a)());
-void q_CRYPTO_free(void *a);
+void q_OPENSSL_free(void *a);
void q_DSA_free(DSA *a);
#if OPENSSL_VERSION_NUMBER >= 0x00908000L
// 0.9.8 broke SC and BC by changing this function's signature.
@@ -326,7 +329,6 @@
void q_SSL_set_connect_state(SSL *a);
int q_SSL_shutdown(SSL *a);
#if OPENSSL_VERSION_NUMBER >= 0x10000000L
-const SSL_METHOD *q_SSLv2_client_method();
const SSL_METHOD *q_SSLv3_client_method();
const SSL_METHOD *q_SSLv23_client_method();
const SSL_METHOD *q_TLSv1_client_method();
@@ -335,7 +337,6 @@
const SSL_METHOD *q_SSLv23_server_method();
const SSL_METHOD *q_TLSv1_server_method();
#else
-SSL_METHOD *q_SSLv2_client_method();
SSL_METHOD *q_SSLv3_client_method();
SSL_METHOD *q_SSLv23_client_method();
SSL_METHOD *q_TLSv1_client_method();
@@ -415,7 +416,7 @@
X509_PUBKEY * q_X509_get_X509_PUBKEY(X509 *x);
int q_RSA_bits(const RSA *rsa);
int q_DSA_security_bits(const DSA *dsa);
-void q_DSA_get0_pqg(const DSA *d, BIGNUM **p, BIGNUM **q, BIGNUM **g);
+void q_DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g);
#endif
#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)

View file

@ -1,193 +0,0 @@
/*
# New packages
READ THIS FIRST
This module is for official packages in Qt 5. All available packages are listed
in `./srcs.nix`, although a few are not yet packaged in Nixpkgs (see below).
IF YOUR PACKAGE IS NOT LISTED IN `./srcs.nix`, IT DOES NOT GO HERE.
Many of the packages released upstream are not yet built in Nixpkgs due to lack
of demand. To add a Nixpkgs build for an upstream package, copy one of the
existing packages here and modify it as necessary.
# Updates
1. Update the URL in `./fetch.sh`.
2. Run `./maintainers/scripts/fetch-kde-qt.sh pkgs/development/libraries/qt-5/$VERSION/`
from the top of the Nixpkgs tree.
3. Check that the new packages build correctly.
4. Commit the changes and open a pull request.
*/
{
newScope,
stdenv, fetchurl, fetchpatch, makeSetupHook, makeWrapper,
bison, cups ? null, harfbuzz, libGL, perl,
gstreamer, gst-plugins-base,
# options
developerBuild ? false,
decryptSslTraffic ? false,
debug ? false,
}:
with stdenv.lib;
let
qtCompatVersion = srcs.qtbase.version;
mirror = "http://download.qt.io";
srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; };
patches = {
qtbase = [
./qtbase.patch
./qtbase-fixguicmake.patch
(fetchpatch {
name = "CVE-2018-15518.patch";
url = "https://codereview.qt-project.org/gitweb?p=qt/qtbase.git;a=patch;h=28a6e642af2ccb454dd019f551c2908753f76f08";
sha256 = "0nyssg7d0br7qgzp481f1w8b4p1bj2ggv9iyfrm1mng5v9fypdd7";
})
(fetchpatch {
name = "CVE-2018-19873.patch";
url = "https://codereview.qt-project.org/gitweb?p=qt/qtbase.git;a=patch;h=c9b9f663d7243988bcb5fee9180ea9cb3a321a86";
sha256 = "1q01cafy92c1j8cgrv4sk133mi3d48x8kbg3glbnnbijpc4k6di5";
})
(fetchpatch {
name = "CVE-2018-19870.patch";
url = "http://code.qt.io/cgit/qt/qtbase.git/patch/?id=ac0a910756f91726e03c0e6a89d213bdb4f48fec";
sha256 = "00qb9yqwvwnp202am3lqirkjxln1cj8v4wvmlyqya6hna176lj2l";
})
];
qtdeclarative = [ ./qtdeclarative.patch ];
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
qttools = [ ./qttools.patch ];
qtwebengine = [ ./qtwebengine-seccomp.patch ];
qtwebkit = [ ./qtwebkit.patch ];
qtvirtualkeyboard = [
(fetchpatch {
name = "CVE-2018-19865-A.patch";
url = "https://codereview.qt-project.org/gitweb?p=qt/qtvirtualkeyboard.git;a=patch;h=c02115db1de1f3aba81e109043766d600f886522";
sha256 = "0ncnyl8f3ypi1kcb9z2i8j33snix111h28njrx8rb49ny01ap8x2";
})
(fetchpatch {
name = "CVE-2018-19865-B.patch";
url = "https://codereview.qt-project.org/gitweb?p=qt/qtvirtualkeyboard.git;a=patch;h=01fc537adc74d5e102c8cc93384cdf5cb08b4442";
sha256 = "19z8kxqf2lpjqr8189ingrpadch4niviw3p5v93zgx24v7950q27";
})
(fetchpatch {
name = "CVE-2018-19865-C.patch";
url = "https://codereview.qt-project.org/gitweb?p=qt/qtvirtualkeyboard.git;a=patch;h=993a21ba03534b172d5354405cc9d50a2a822e24";
sha256 = "1bipqxr9bvy8z402pv9kj2w1yzcsj1v03l09pg5jyg1xh6jbgiky";
})
];
qtimageformats = [
(fetchpatch {
name = "CVE-2018-19871.patch";
url = "https://codereview.qt-project.org/gitweb?p=qt/qtimageformats.git;a=patch;h=9299ab07df61c56b70e047f1fe5f06b6ff541aa3";
sha256 = "0fd3mxdlc0s405j02bc0g72fvdfvpi31a837xfwf40m5j4jbyndr";
})
];
qtsvg = [
(fetchpatch {
name = "CVE-2018-19869.patch";
url = "http://code.qt.io/cgit/qt/qtsvg.git/patch/?id=c5f1dd14098d1cc2cb52448fb44f53966d331443";
sha256 = "1kgyfsxw2f0qv5fx9y7wysjsvqikam0qc7wzhklf0406zz6rhxbl";
})
];
};
qtModule =
import ../qtModule.nix
{
inherit perl;
inherit (stdenv) lib;
# Use a variant of mkDerivation that does not include wrapQtApplications
# to avoid cyclic dependencies between Qt modules.
mkDerivation =
import ../mkDerivation.nix
{ inherit (stdenv) lib; inherit debug; wrapQtAppsHook = null; }
stdenv.mkDerivation;
}
{ inherit self srcs patches; };
addPackages = self: with self;
let
callPackage = self.newScope { inherit qtCompatVersion qtModule srcs; };
in {
mkDerivationWith =
import ../mkDerivation.nix
{ inherit (stdenv) lib; inherit debug; inherit (self) wrapQtAppsHook; };
mkDerivation = mkDerivationWith stdenv.mkDerivation;
qtbase = callPackage ../modules/qtbase.nix {
inherit bison cups harfbuzz libGL;
inherit (srcs.qtbase) src version;
patches = patches.qtbase;
inherit developerBuild decryptSslTraffic;
};
/* qt3d = not packaged */
/* qtactiveqt = not packaged */
/* qtandroidextras = not packaged */
/* qtcanvas3d = not packaged */
qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
qtdoc = callPackage ../modules/qtdoc.nix {};
qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
qtimageformats = callPackage ../modules/qtimageformats.nix {};
qtlocation = callPackage ../modules/qtlocation.nix {};
/* qtmacextras = not packaged */
qtmultimedia = callPackage ../modules/qtmultimedia.nix {
inherit gstreamer gst-plugins-base;
};
qtquick1 = null;
qtquickcontrols = callPackage ../modules/qtquickcontrols.nix {};
qtquickcontrols2 = callPackage ../modules/qtquickcontrols2.nix {};
qtscript = callPackage ../modules/qtscript.nix {};
qtsensors = callPackage ../modules/qtsensors.nix {};
qtserialport = callPackage ../modules/qtserialport.nix {};
qtsvg = callPackage ../modules/qtsvg.nix {};
qttools = callPackage ../modules/qttools.nix {};
qttranslations = callPackage ../modules/qttranslations.nix {};
qtwayland = callPackage ../modules/qtwayland.nix {};
qtwebchannel = callPackage ../modules/qtwebchannel.nix {};
qtwebengine = callPackage ../modules/qtwebengine.nix {};
qtwebkit = callPackage ../modules/qtwebkit.nix {};
qtwebsockets = callPackage ../modules/qtwebsockets.nix {};
/* qtwinextras = not packaged */
qtx11extras = callPackage ../modules/qtx11extras.nix {};
qtxmlpatterns = callPackage ../modules/qtxmlpatterns.nix {};
qtvirtualkeyboard = callPackage ../modules/qtvirtualkeyboard.nix {};
env = callPackage ../qt-env.nix {};
full = env "qt-full-${qtbase.version}" [
qtconnectivity qtdeclarative qtdoc qtgraphicaleffects qtimageformats
qtlocation qtmultimedia qtquickcontrols qtquickcontrols2 qtscript
qtsensors qtserialport qtsvg qttools qttranslations qtwayland
qtwebchannel qtwebengine qtwebkit qtwebsockets qtx11extras qtxmlpatterns
];
qmake = makeSetupHook {
deps = [ self.qtbase.dev ];
substitutions = { inherit (stdenv) isDarwin; };
} ../hooks/qmake-hook.sh;
wrapQtAppsHook = makeSetupHook {
deps =
[ self.qtbase.dev makeWrapper ]
++ optional stdenv.isLinux self.qtwayland.dev;
} ../hooks/wrap-qt-apps-hook.sh;
};
self = makeScope newScope addPackages;
in self

View file

@ -1,2 +0,0 @@
WGET_ARGS=( http://download.qt.io/official_releases/qt/5.6/5.6.3/submodules/ \
http://download.qt.io/community_releases/5.6/5.6.3/ )

View file

@ -1,30 +0,0 @@
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
index 0bbc871..3673634 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -286,7 +286,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
+ set(imported_location \"${PLUGIN_LOCATION}\")
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
set_target_properties(Qt5::${Plugin} PROPERTIES
\"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
index 5baf0fd..3583745 100644
--- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
@@ -2,10 +2,10 @@
add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
!!IF !isEmpty(CMAKE_RELEASE_TYPE)
-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
!!ENDIF
!!IF !isEmpty(CMAKE_DEBUG_TYPE)
-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
!!ENDIF
list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME)

View file

@ -1,795 +0,0 @@
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
index 11fb52a0b1..614fdbb046 100644
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
@@ -21,7 +21,7 @@ load(cmake_functions)
# at cmake time whether package has been found via a symlink, and correct
# that to an absolute path. This is only done for installations to
# the /usr or / prefix.
-CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS])
+CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/)
contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR
CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake
@@ -47,47 +47,22 @@ split_incpath {
$$cmake_extra_source_includes.output
}
-CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX])
-contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") {
- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/
- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True
-}
+CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/
+CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True
!exists($$first(QT.$${MODULE}_private.includes)): CMAKE_NO_PRIVATE_INCLUDES = true
-CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX])
-contains(CMAKE_LIB_DIR,"^\\.\\./.*") {
- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/
- CMAKE_LIB_DIR_IS_ABSOLUTE = True
-} else {
- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS])
- # We need to go up another two levels because the CMake files are
- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME}
- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../"
-}
+CMAKE_LIB_DIR = $$NIX_OUTPUT_OUT/lib/
+CMAKE_LIB_DIR_IS_ABSOLUTE = True
-CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])
-contains(CMAKE_BIN_DIR, "^\\.\\./.*") {
- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/
- CMAKE_BIN_DIR_IS_ABSOLUTE = True
-}
+CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/
+CMAKE_BIN_DIR_IS_ABSOLUTE = True
-CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX])
-contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") {
- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/
- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True
-}
+CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/
+CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True
-win32:!wince:!static:!staticlib {
- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX])
- contains(CMAKE_DLL_DIR, "^\\.\\./.*") {
- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/
- CMAKE_DLL_DIR_IS_ABSOLUTE = True
- }
-} else {
- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR
- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE
-}
+CMAKE_DLL_DIR = $$NIX_OUTPUT_OUT/lib/
+CMAKE_DLL_DIR_IS_ABSOLUTE = True
static|staticlib:CMAKE_STATIC_TYPE = true
@@ -167,7 +142,7 @@ contains(CONFIG, plugin) {
cmake_target_file
cmake_qt5_plugin_file.files = $$cmake_target_file.output
- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
+ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME}
INSTALLS += cmake_qt5_plugin_file
return()
@@ -314,7 +289,7 @@ exists($$cmake_macros_file.input) {
cmake_qt5_module_files.files += $$cmake_macros_file.output
}
-cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
+cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME}
# We are generating cmake files. Most developers of Qt are not aware of cmake,
# so we require automatic tests to be available. The only module which should
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
index d2358cae4b..61d8cc0471 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -9,30 +9,6 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
endif()
!!ENDIF
-!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND)
-!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
-!!ELSE
-get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH)
-# Use original install prefix when loaded through a
-# cross-prefix symbolic link such as /lib -> /usr/lib.
-get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH)
-get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH)
-if(_realCurr STREQUAL _realOrig)
- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE)
-else()
- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
-endif()
-unset(_realOrig)
-unset(_realCurr)
-unset(_IMPORT_PREFIX)
-!!ENDIF
-!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
-!!ELSE
-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
-!!ENDIF
-
!!IF !equals(TEMPLATE, aux)
# For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead.
set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.MAJOR_VERSION).$$eval(QT.$${MODULE}.MINOR_VERSION).$$eval(QT.$${MODULE}.PATCH_VERSION)")
@@ -58,11 +34,7 @@ endmacro()
macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION)
set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
-!!ELSE
set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
-!!ENDIF
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
\"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\"
@@ -75,11 +47,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI
)
!!IF !isEmpty(CMAKE_WINDOWS_BUILD)
-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
-!!ELSE
set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
-!!ENDIF
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib})
if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\")
set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
@@ -95,24 +63,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!IF !no_module_headers
!!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
)
!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
- )
-!!ELSE
- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
-!!ENDIF
-!!ELSE
-!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\")
-!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\"
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\"
+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
)
!!ELSE
set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
@@ -128,7 +85,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
!!ENDIF
!!ENDIF
-!!ENDIF
!!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS)
include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL)
!!ENDIF
@@ -254,25 +210,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
!!IF isEmpty(CMAKE_DEBUG_TYPE)
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
_populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" )
!!ELSE // CMAKE_STATIC_WINDOWS_BUILD
if (EXISTS
-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
-!!ELSE
\"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
-!!ENDIF
AND EXISTS
-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
-!!ELSE
\"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
-!!ENDIF
_populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
endif()
@@ -291,25 +235,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
!!IF isEmpty(CMAKE_RELEASE_TYPE)
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
_populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" )
!!ELSE // CMAKE_STATIC_WINDOWS_BUILD
if (EXISTS
-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
-!!ELSE
\"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
-!!ENDIF
AND EXISTS
-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
-!!ELSE
\"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
-!!ENDIF
_populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
endif()
@@ -328,11 +260,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
-!!ELSE
set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
-!!ENDIF
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
set_target_properties(Qt5::${Plugin} PROPERTIES
\"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf
index 47ebe78400..25aa2b93e7 100644
--- a/mkspecs/features/qml_module.prf
+++ b/mkspecs/features/qml_module.prf
@@ -17,10 +17,7 @@ fq_qml_files = $$_PRO_FILE_PWD_/qmldir
for(qmlf, QML_FILES): fq_qml_files += $$absolute_path($$qmlf, $$_PRO_FILE_PWD_)
-qml1_target: \
- instbase = $$[QT_INSTALL_IMPORTS]
-else: \
- instbase = $$[QT_INSTALL_QML]
+instbase = $$NIX_OUTPUT_QML
# Install rules
qmldir.base = $$_PRO_FILE_PWD_
diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf
index ebec1db8da..62ace84a6c 100644
--- a/mkspecs/features/qml_plugin.prf
+++ b/mkspecs/features/qml_plugin.prf
@@ -46,13 +46,8 @@ exists($$QMLTYPEFILE): QML_FILES += $$QMLTYPEFILE
load(qt_build_paths)
-qml1_target {
- DESTDIR = $$MODULE_BASE_OUTDIR/imports/$$TARGETPATH
- instbase = $$[QT_INSTALL_IMPORTS]
-} else {
- DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
- instbase = $$[QT_INSTALL_QML]
-}
+DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
+instbase = $$NIX_OUTPUT_QML
target.path = $$instbase/$$TARGETPATH
INSTALLS += target
diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf
index 46aca50cc2..4f4e634724 100644
--- a/mkspecs/features/qt_app.prf
+++ b/mkspecs/features/qt_app.prf
@@ -29,7 +29,7 @@ host_build:force_bootstrap {
target.path = $$[QT_HOST_BINS]
} else {
!build_pass:contains(QT_CONFIG, debug_and_release): CONFIG += release
- target.path = $$[QT_INSTALL_BINS]
+ target.path = $$NIX_OUTPUT_BIN/bin
CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable
}
INSTALLS += target
diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf
index 1848f00e90..2af93675c5 100644
--- a/mkspecs/features/qt_build_paths.prf
+++ b/mkspecs/features/qt_build_paths.prf
@@ -23,6 +23,6 @@ exists($$MODULE_BASE_INDIR/.git): \
!force_independent {
# If the module is not built independently, everything ends up in qtbase.
# This is the case in non-prefix builds, except for selected modules.
- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX]
- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX]
+ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT
+ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT
}
diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
index 08b3f3e5af..5ffeafd9d8 100644
--- a/mkspecs/features/qt_common.prf
+++ b/mkspecs/features/qt_common.prf
@@ -30,8 +30,8 @@ contains(TEMPLATE, .*lib) {
qqt_libdir = \$\$\$\$[QT_HOST_LIBS]
qt_libdir = $$[QT_HOST_LIBS]
} else {
- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS]
- qt_libdir = $$[QT_INSTALL_LIBS]
+ qqt_libdir = \$\$\$\$NIX_OUTPUT_OUT/lib
+ qt_libdir = $$NIX_OUTPUT_OUT/lib
}
contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) {
lib_replace.match = "[^ ']*$$rplbase/lib"
diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf
index 183d0c9502..17982b04ec 100644
--- a/mkspecs/features/qt_docs.prf
+++ b/mkspecs/features/qt_docs.prf
@@ -41,7 +41,7 @@ QMAKE_DOCS_OUTPUTDIR = $$QMAKE_DOCS_BASE_OUTDIR/$$QMAKE_DOCS_TARGETDIR
QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR)
!build_online_docs: \
- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS])
+ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC)
PREP_DOC_INDEXES =
DOC_INDEXES =
!isEmpty(QTREPOS) {
@@ -60,8 +60,8 @@ DOC_INDEXES =
DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc)
} else {
prepare_docs: \
- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get])
- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get])
+ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC)
+ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC)
}
doc_command = $$QDOC $$QMAKE_DOCS
prepare_docs {
@@ -75,12 +75,12 @@ prepare_docs {
qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch)
inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR
- inst_html_docs.path = $$[QT_INSTALL_DOCS]
+ inst_html_docs.path = $$NIX_OUTPUT_DOC
inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build
INSTALLS += inst_html_docs
inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch
- inst_qch_docs.path = $$[QT_INSTALL_DOCS]
+ inst_qch_docs.path = $$NIX_OUTPUT_DOC
inst_qch_docs.CONFIG += no_check_exist no_default_install no_build
INSTALLS += inst_qch_docs
diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf
index 4c68cfd72f..f422f18266 100644
--- a/mkspecs/features/qt_example_installs.prf
+++ b/mkspecs/features/qt_example_installs.prf
@@ -70,7 +70,7 @@ probase = $$relative_path($$_PRO_FILE_PWD_, $$dirname(_QMAKE_CONF_)/examples)
$$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \
$$DBUS_ADAPTORS $$DBUS_INTERFACES
addInstallFiles(sources.files, $$sourcefiles)
- sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase
+ sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase
INSTALLS += sources
check_examples {
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
index 4a1d265a8b..d346424b5b 100644
--- a/mkspecs/features/qt_functions.prf
+++ b/mkspecs/features/qt_functions.prf
@@ -70,7 +70,7 @@ defineTest(qtHaveModule) {
defineTest(qtPrepareTool) {
cmd = $$eval(QT_TOOL.$${2}.binary)
isEmpty(cmd) {
- cmd = $$[QT_HOST_BINS]/$$2
+ cmd = $$system("command -v $$2")
exists($${cmd}.pl) {
cmd = perl -w $$system_path($${cmd}.pl)
} else: contains(QMAKE_HOST.os, Windows) {
diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf
index 3a5dbb6274..24f321bd82 100644
--- a/mkspecs/features/qt_installs.prf
+++ b/mkspecs/features/qt_installs.prf
@@ -12,16 +12,10 @@
#library
!qt_no_install_library {
win32 {
- host_build: \
- dlltarget.path = $$[QT_HOST_BINS]
- else: \
- dlltarget.path = $$[QT_INSTALL_BINS]
+ dlltarget.path = $$NIX_OUTPUT_BIN/bin
INSTALLS += dlltarget
}
- host_build: \
- target.path = $$[QT_HOST_LIBS]
- else: \
- target.path = $$[QT_INSTALL_LIBS]
+ target.path = $$NIX_OUTPUT_OUT/lib
!static: target.CONFIG = no_dll
INSTALLS += target
}
@@ -29,33 +23,33 @@
#headers
qt_install_headers {
class_headers.files = $$SYNCQT.HEADER_CLASSES
- class_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
+ class_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME
INSTALLS += class_headers
targ_headers.files = $$SYNCQT.HEADER_FILES
- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
+ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME
INSTALLS += targ_headers
private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES
- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private
+ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private
INSTALLS += private_headers
qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES
- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa
+ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa
INSTALLS += qpa_headers
}
#module
qt_install_module {
!isEmpty(MODULE_PRI) {
- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
+ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules
pritarget.files = $$MODULE_PRI
INSTALLS += pritarget
} else: isEmpty(MODULE_PRIVATE_PRI) {
warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.")
}
!isEmpty(MODULE_PRIVATE_PRI) {
- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
+ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules
privpritarget.files = $$MODULE_PRIVATE_PRI
INSTALLS += privpritarget
}
diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf
index 3cf6c7349c..83e68025a5 100644
--- a/mkspecs/features/qt_plugin.prf
+++ b/mkspecs/features/qt_plugin.prf
@@ -82,7 +82,7 @@ CONFIG(static, static|shared)|prefix_build {
}
}
-target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE
+target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE
INSTALLS += target
TARGET = $$qt5LibraryTarget($$TARGET)
diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
index 91a4eb619a..08b533e69c 100644
--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
+++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake)
add_executable(Qt5::qmake IMPORTED)
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
!!ENDIF
@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc)
add_executable(Qt5::moc IMPORTED)
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
!!ENDIF
@@ -35,7 +35,7 @@ if (NOT TARGET Qt5::rcc)
add_executable(Qt5::rcc IMPORTED)
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
!!ENDIF
@@ -131,7 +131,7 @@ if (NOT TARGET Qt5::WinMain)
!!IF !isEmpty(CMAKE_RELEASE_TYPE)
set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
!!ELSE
set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
!!ENDIF
@@ -145,7 +145,7 @@ if (NOT TARGET Qt5::WinMain)
set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
!!ELSE
set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
!!ENDIF
diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
index c357237d0e..6f0c75de3c 100644
--- a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+++ b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
@@ -1,6 +1,6 @@
!!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE)
-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
+set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
!!ELSE
set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
!!ENDIF
diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
index 706304cf34..546420f6ad 100644
--- a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+++ b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
@@ -1,6 +1,6 @@
!!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE)
-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
+set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
!!ELSE
set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
!!ENDIF
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
index bd3c12ce97..a796775970 100644
--- a/src/corelib/kernel/qcoreapplication.cpp
+++ b/src/corelib/kernel/qcoreapplication.cpp
@@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPaths()
QStringList *app_libpaths = new QStringList;
coreappdata()->app_libpaths.reset(app_libpaths);
+ // Add library paths derived from PATH
+ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
+ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX);
+ for (const QString &path: paths) {
+ if (!path.isEmpty()) {
+ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir));
+ }
+ }
+
const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH");
if (!libPathEnv.isEmpty()) {
QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);
diff --git a/src/corelib/tools/qtimezoneprivate_tz.cpp b/src/corelib/tools/qtimezoneprivate_tz.cpp
index c13c9a5223..6936851511 100644
--- a/src/corelib/tools/qtimezoneprivate_tz.cpp
+++ b/src/corelib/tools/qtimezoneprivate_tz.cpp
@@ -64,7 +64,11 @@ typedef QHash<QByteArray, QTzTimeZone> QTzTimeZoneHash;
// Parse zone.tab table, assume lists all installed zones, if not will need to read directories
static QTzTimeZoneHash loadTzTimeZones()
{
- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
+ // Try TZDIR first, in case we're running on NixOS.
+ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab");
+ // Fallback to traditional paths in case we are not on NixOS.
+ if (!QFile::exists(path))
+ path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
if (!QFile::exists(path))
path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
@@ -636,12 +640,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
if (!tzif.open(QIODevice::ReadOnly))
return;
} else {
- // Open named tz, try modern path first, if fails try legacy path
- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+ // Try TZDIR first, in case we're running on NixOS
+ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId));
if (!tzif.open(QIODevice::ReadOnly)) {
- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
- if (!tzif.open(QIODevice::ReadOnly))
- return;
+ // Open named tz, try modern path first, if fails try legacy path
+ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+ if (!tzif.open(QIODevice::ReadOnly)) {
+ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+ if (!tzif.open(QIODevice::ReadOnly))
+ return;
+ }
}
}
diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in
index 1d947159e2..b36865fc48 100644
--- a/src/dbus/Qt5DBusConfigExtras.cmake.in
+++ b/src/dbus/Qt5DBusConfigExtras.cmake.in
@@ -2,11 +2,7 @@
if (NOT TARGET Qt5::qdbuscpp2xml)
add_executable(Qt5::qdbuscpp2xml IMPORTED)
-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
-!!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
-!!ENDIF
+ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
_qt5_DBus_check_file_exists(${imported_location})
set_target_properties(Qt5::qdbuscpp2xml PROPERTIES
@@ -17,11 +13,7 @@ endif()
if (NOT TARGET Qt5::qdbusxml2cpp)
add_executable(Qt5::qdbusxml2cpp IMPORTED)
-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
-!!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
-!!ENDIF
+ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
_qt5_DBus_check_file_exists(${imported_location})
set_target_properties(Qt5::qdbusxml2cpp PROPERTIES
diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
index 07869efd7d..fb4183bada 100644
--- a/src/gui/Qt5GuiConfigExtras.cmake.in
+++ b/src/gui/Qt5GuiConfigExtras.cmake.in
@@ -2,7 +2,7 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\")
!!ELSE
set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
!!ENDIF
@@ -17,13 +17,13 @@ macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATIO
set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
!!ELSE
set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
!!ENDIF
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+ set(imported_implib \"$$NIX_OUTPUT_OUT/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
!!ELSE
set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
!!ENDIF
diff --git a/src/network/kernel/qdnslookup_unix.cpp b/src/network/kernel/qdnslookup_unix.cpp
index 584f0b0f0e..24d80063f2 100644
--- a/src/network/kernel/qdnslookup_unix.cpp
+++ b/src/network/kernel/qdnslookup_unix.cpp
@@ -83,7 +83,7 @@ static bool resolveLibraryInternal()
if (!lib.load())
#endif
{
- lib.setFileName(QLatin1String("resolv"));
+ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
if (!lib.load())
return false;
}
diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp
index dabf1913cc..53bb867e07 100644
--- a/src/network/kernel/qhostinfo_unix.cpp
+++ b/src/network/kernel/qhostinfo_unix.cpp
@@ -94,7 +94,7 @@ static bool resolveLibraryInternal()
if (!lib.load())
#endif
{
- lib.setFileName(QLatin1String("resolv"));
+ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
if (!lib.load())
return false;
}
diff --git a/src/network/ssl/qsslcontext_openssl.cpp b/src/network/ssl/qsslcontext_openssl.cpp
index 68caaeb6dc..fef4a81474 100644
--- a/src/network/ssl/qsslcontext_openssl.cpp
+++ b/src/network/ssl/qsslcontext_openssl.cpp
@@ -340,7 +340,7 @@ init_context:
const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
if (!qcurves.isEmpty()) {
-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+#if OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
// Set the curves to be used
if (q_SSLeay() >= 0x10002000L) {
// SSL_CTX_ctrl wants a non-const pointer as last argument,
@@ -354,7 +354,7 @@ init_context:
return sslContext;
}
} else
-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
{
// specific curves requested, but not possible to set -> error
sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version too old, need at least v1.0.2"));
diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
index 338c7ca3be..dd52114bac 100644
--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -251,12 +251,9 @@ void TableGenerator::initPossibleLocations()
// the QTCOMPOSE environment variable
if (qEnvironmentVariableIsSet("QTCOMPOSE"))
m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE")));
- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale"));
- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale"));
- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale"));
- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale"));
m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale"));
m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale"));
+ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE));
}
QString TableGenerator::findComposeFile()
diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
index c2b7a562a9..4fa5f6d6a5 100644
--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -570,7 +570,14 @@ void (*QGLXContext::getProcAddress(const QByteArray &procName)) ()
#ifndef QT_NO_LIBRARY
extern const QString qt_gl_library_name();
// QLibrary lib(qt_gl_library_name());
+ // Check system library paths first
QLibrary lib(QLatin1String("GL"));
+#ifdef NIXPKGS_MESA_GL
+ if (!lib.load()) {
+ // Fallback to Mesa driver
+ lib.setFileName(QLatin1String(NIXPKGS_MESA_GL));
+ }
+#endif // NIXPKGS_MESA_GL
glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
#endif
}
diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp
index 4646ced954..ff3111f393 100644
--- a/src/plugins/platforms/xcb/qxcbcursor.cpp
+++ b/src/plugins/platforms/xcb/qxcbcursor.cpp
@@ -303,10 +303,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen)
#if defined(XCB_USE_XLIB) && !defined(QT_NO_LIBRARY)
static bool function_ptrs_not_initialized = true;
if (function_ptrs_not_initialized) {
- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
+ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1);
bool xcursorFound = xcursorLib.load();
if (!xcursorFound) { // try without the version number
- xcursorLib.setFileName(QLatin1String("Xcursor"));
+ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR));
xcursorFound = xcursorLib.load();
}
if (xcursorFound) {
diff --git a/src/testlib/qtestassert.h b/src/testlib/qtestassert.h
index ca3e02ca06..28dd73d772 100644
--- a/src/testlib/qtestassert.h
+++ b/src/testlib/qtestassert.h
@@ -38,10 +38,13 @@
QT_BEGIN_NAMESPACE
-
-#define QTEST_ASSERT(cond) do { if (!(cond)) qt_assert(#cond,__FILE__,__LINE__); } while (0)
-
-#define QTEST_ASSERT_X(cond, where, what) do { if (!(cond)) qt_assert_x(where, what,__FILE__,__LINE__); } while (0)
+#if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS)
+#define QTEST_ASSERT(cond) do { } while ((false) && (cond))
+#define QTEST_ASSERT_X(cond, where, what) do { } while ((false) && (cond))
+#else
+#define QTEST_ASSERT(cond) do { if (!(cond)) qt_assert(#cond,__FILE__,__LINE__); } while (false)
+#define QTEST_ASSERT_X(cond, where, what) do { if (!(cond)) qt_assert_x(where, what,__FILE__,__LINE__); } while (false)
+#endif
QT_END_NAMESPACE
diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
index 99d87e2e46..a4eab2aa72 100644
--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic)
add_executable(Qt5::uic IMPORTED)
!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
!!ENDIF

View file

@ -1,20 +0,0 @@
diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp
index dfdf2edbe..7ee96049d 100644
--- a/src/qml/qml/qqmlimport.cpp
+++ b/src/qml/qml/qqmlimport.cpp
@@ -1568,6 +1568,15 @@ QQmlImportDatabase::QQmlImportDatabase(QQmlEngine *e)
QString installImportsPath = QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath);
addImportPath(installImportsPath);
+ // Add import paths derived from PATH
+ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
+ const QString qmldir = QStringLiteral("../" NIXPKGS_QML2_IMPORT_PREFIX);
+ for (const QString &path: paths) {
+ if (!path.isEmpty()) {
+ addImportPath(QDir::cleanPath(path + QDir::separator() + qmldir));
+ }
+ }
+
// env import paths
if (Q_UNLIKELY(!qEnvironmentVariableIsEmpty("QML2_IMPORT_PATH"))) {
const QByteArray envImportPath = qgetenv("QML2_IMPORT_PATH");

View file

@ -1,13 +0,0 @@
diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
index 1f6d25e..087c3fb 100644
--- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
@@ -81,7 +81,7 @@
#include <pthread.h>
#elif PLATFORM(GTK)
#include <wtf/gtk/GOwnPtr.h>
-typedef struct _GMutex GMutex;
+typedef union _GMutex GMutex;
typedef struct _GCond GCond;
#endif

View file

@ -1,22 +0,0 @@
diff --git a/src/serialport/qtudev_p.h b/src/serialport/qtudev_p.h
index 6f2cabd..cd3c0ed 100644
--- a/src/serialport/qtudev_p.h
+++ b/src/serialport/qtudev_p.h
@@ -105,9 +105,17 @@ inline QFunctionPointer resolveSymbol(QLibrary *udevLibrary, const char *symbolN
inline bool resolveSymbols(QLibrary *udevLibrary)
{
if (!udevLibrary->isLoaded()) {
+#ifdef NIXPKGS_LIBUDEV
+ udevLibrary->setFileNameAndVersion(QLatin1String(NIXPKGS_LIBUDEV), 1);
+#else
udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 1);
+#endif
if (!udevLibrary->load()) {
+#ifdef NIXPKGS_LIBUDEV
+ udevLibrary->setFileNameAndVersion(QLatin1String(NIXPKGS_LIBUDEV), 0);
+#else
udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 0);
+#endif
if (!udevLibrary->load()) {
qWarning("Failed to load the library: %s, supported version(s): %i and %i", qPrintable(udevLibrary->fileName()), 1, 0);
return false;

View file

@ -1,64 +0,0 @@
diff --git a/src/assistant/help/Qt5HelpConfigExtras.cmake.in b/src/assistant/help/Qt5HelpConfigExtras.cmake.in
index 5a5bd5ce..1c6727d4 100644
--- a/src/assistant/help/Qt5HelpConfigExtras.cmake.in
+++ b/src/assistant/help/Qt5HelpConfigExtras.cmake.in
@@ -2,14 +2,13 @@
if (NOT TARGET Qt5::qcollectiongenerator)
add_executable(Qt5::qcollectiongenerator IMPORTED)
-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5Help_install_prefix}/$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
-!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
-!!ENDIF
+ if(NOT EXISTS \"${imported_location}\")
+ set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
+ endif()
_qt5_Help_check_file_exists(${imported_location})
set_target_properties(Qt5::qcollectiongenerator PROPERTIES
IMPORTED_LOCATION ${imported_location}
)
-endif()
+endif()
\ No newline at end of file
diff --git a/src/linguist/Qt5LinguistToolsConfig.cmake.in b/src/linguist/Qt5LinguistToolsConfig.cmake.in
index 4318b16f..d60db4ff 100644
--- a/src/linguist/Qt5LinguistToolsConfig.cmake.in
+++ b/src/linguist/Qt5LinguistToolsConfig.cmake.in
@@ -44,11 +44,7 @@ endmacro()
if (NOT TARGET Qt5::lrelease)
add_executable(Qt5::lrelease IMPORTED)
-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
-!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
-!!ENDIF
_qt5_LinguistTools_check_file_exists(${imported_location})
set_target_properties(Qt5::lrelease PROPERTIES
@@ -59,11 +55,7 @@ endif()
if (NOT TARGET Qt5::lupdate)
add_executable(Qt5::lupdate IMPORTED)
-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
-!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
-!!ENDIF
_qt5_LinguistTools_check_file_exists(${imported_location})
set_target_properties(Qt5::lupdate PROPERTIES
@@ -74,11 +66,7 @@ endif()
if (NOT TARGET Qt5::lconvert)
add_executable(Qt5::lconvert IMPORTED)
-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
-!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
-!!ENDIF
_qt5_LinguistTools_check_file_exists(${imported_location})
set_target_properties(Qt5::lconvert PROPERTIES

View file

@ -1,24 +0,0 @@
Backported to Qt 5.6 for epoll_pwait fix on newer glibc
Part of upstream Chromium's 4e8083b4ab953ba298aedfc4e79d464be15e4012
Review URL: https://codereview.chromium.org/1613883002
---
diff --git a/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
index 10278dc5fc9b..b30b3e6acef6 100644
--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
@@ -414,6 +414,7 @@ bool SyscallSets::IsAllowedEpoll(int sysno) {
case __NR_epoll_create:
case __NR_epoll_wait:
#endif
+ case __NR_epoll_pwait:
case __NR_epoll_create1:
case __NR_epoll_ctl:
return true;
@@ -421,7 +422,6 @@ bool SyscallSets::IsAllowedEpoll(int sysno) {
#if defined(__x86_64__)
case __NR_epoll_ctl_old:
#endif
- case __NR_epoll_pwait:
#if defined(__x86_64__)
case __NR_epoll_wait_old:
#endif

View file

@ -1,149 +0,0 @@
diff --git a/Source/JavaScriptCore/API/JSStringRef.cpp b/Source/JavaScriptCore/API/JSStringRef.cpp
index 812f3d413..77a3fd0f4 100644
--- a/Source/JavaScriptCore/API/JSStringRef.cpp
+++ b/Source/JavaScriptCore/API/JSStringRef.cpp
@@ -37,7 +37,7 @@ using namespace WTF::Unicode;
JSStringRef JSStringCreateWithCharacters(const JSChar* chars, size_t numChars)
{
initializeThreading();
- return OpaqueJSString::create(chars, numChars).leakRef();
+ return OpaqueJSString::create(reinterpret_cast<const UChar*>(chars), numChars).leakRef();
}
JSStringRef JSStringCreateWithUTF8CString(const char* string)
@@ -62,7 +62,7 @@ JSStringRef JSStringCreateWithUTF8CString(const char* string)
JSStringRef JSStringCreateWithCharactersNoCopy(const JSChar* chars, size_t numChars)
{
initializeThreading();
- return OpaqueJSString::create(StringImpl::createWithoutCopying(chars, numChars, WTF::DoesNotHaveTerminatingNullCharacter)).leakRef();
+ return OpaqueJSString::create(StringImpl::createWithoutCopying(reinterpret_cast<const UChar*>(chars), numChars, WTF::DoesNotHaveTerminatingNullCharacter)).leakRef();
}
JSStringRef JSStringRetain(JSStringRef string)
@@ -83,7 +83,7 @@ size_t JSStringGetLength(JSStringRef string)
const JSChar* JSStringGetCharactersPtr(JSStringRef string)
{
- return string->characters();
+ return reinterpret_cast<const JSChar*>(string->characters());
}
size_t JSStringGetMaximumUTF8CStringSize(JSStringRef string)
diff --git a/Source/JavaScriptCore/runtime/DateConversion.cpp b/Source/JavaScriptCore/runtime/DateConversion.cpp
index 0b57f012d..05e27338b 100644
--- a/Source/JavaScriptCore/runtime/DateConversion.cpp
+++ b/Source/JavaScriptCore/runtime/DateConversion.cpp
@@ -107,7 +107,8 @@ String formatDateTime(const GregorianDateTime& t, DateTimeFormat format, bool as
#if OS(WINDOWS)
TIME_ZONE_INFORMATION timeZoneInformation;
GetTimeZoneInformation(&timeZoneInformation);
- const WCHAR* timeZoneName = t.isDST() ? timeZoneInformation.DaylightName : timeZoneInformation.StandardName;
+ const WCHAR* winTimeZoneName = t.isDST() ? timeZoneInformation.DaylightName : timeZoneInformation.StandardName;
+ String timeZoneName(reinterpret_cast<const UChar*>(winTimeZoneName));
#else
struct tm gtm = t;
char timeZoneName[70];
diff --git a/Source/WTF/WTF.pri b/Source/WTF/WTF.pri
index 1f4866d66..bb61e4ba3 100644
--- a/Source/WTF/WTF.pri
+++ b/Source/WTF/WTF.pri
@@ -12,7 +12,7 @@ mac {
# Mac OS does ship libicu but not the associated header files.
# Therefore WebKit provides adequate header files.
INCLUDEPATH = $${ROOT_WEBKIT_DIR}/Source/WTF/icu $$INCLUDEPATH
- LIBS += -licucore
+ LIBS += /usr/lib/libicucore.dylib
} else:!use?(wchar_unicode): {
win32 {
CONFIG(static, static|shared) {
diff --git a/Source/WTF/wtf/TypeTraits.h b/Source/WTF/wtf/TypeTraits.h
index 9df2c95cf..f5d6121fd 100644
--- a/Source/WTF/wtf/TypeTraits.h
+++ b/Source/WTF/wtf/TypeTraits.h
@@ -72,6 +72,9 @@ namespace WTF {
template<> struct IsInteger<unsigned long> { static const bool value = true; };
template<> struct IsInteger<long long> { static const bool value = true; };
template<> struct IsInteger<unsigned long long> { static const bool value = true; };
+#if __cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__) || (defined(_HAS_CHAR16_T_LANGUAGE_SUPPORT) && _HAS_CHAR16_T_LANGUAGE_SUPPORT)
+ template<> struct IsInteger<char16_t> { static const bool value = true; };
+#endif
#if !COMPILER(MSVC) || defined(_NATIVE_WCHAR_T_DEFINED)
template<> struct IsInteger<wchar_t> { static const bool value = true; };
#endif
diff --git a/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
index a923d49aa..46772a4bb 100644
--- a/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+++ b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
@@ -136,7 +136,11 @@ static void initializeGtk(QLibrary* module = 0)
}
}
+#ifdef NIXPKGS_LIBGTK2
+ QLibrary library(QLatin1String(NIXPKGS_LIBGTK2), 0);
+#else
QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
+#endif
if (library.load()) {
typedef void *(*gtk_init_check_ptr)(int*, char***);
gtk_init_check_ptr gtkInitCheck = (gtk_init_check_ptr)library.resolve("gtk_init_check");
diff --git a/Source/WebCore/plugins/qt/PluginViewQt.cpp b/Source/WebCore/plugins/qt/PluginViewQt.cpp
index de06a2fea..86fe39ef1 100644
--- a/Source/WebCore/plugins/qt/PluginViewQt.cpp
+++ b/Source/WebCore/plugins/qt/PluginViewQt.cpp
@@ -697,7 +697,11 @@ static Display *getPluginDisplay()
// support gdk based plugins (like flash) that use a different X connection.
// The code below has the same effect as this one:
// Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
+#ifdef NIXPKGS_LIBGDK2
+ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
+#else
QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
+#endif
if (!library.load())
return 0;
diff --git a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
index 8de65216b..38f5c05e5 100644
--- a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+++ b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
@@ -53,7 +53,11 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr
static bool initializeGtk()
{
+#ifdef NIXPKGS_LIBGTK2
+ QLibrary gtkLibrary(QLatin1String(NIXPKGS_LIBGTK2), 0);
+#else
QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
+#endif
if (!gtkLibrary.load())
return false;
typedef void* (*gtk_init_ptr)(void*, void*);
diff --git a/Source/WebKit2/Shared/API/c/WKString.cpp b/Source/WebKit2/Shared/API/c/WKString.cpp
index cbac67dd8..23400a64e 100644
--- a/Source/WebKit2/Shared/API/c/WKString.cpp
+++ b/Source/WebKit2/Shared/API/c/WKString.cpp
@@ -55,7 +55,7 @@ size_t WKStringGetLength(WKStringRef stringRef)
size_t WKStringGetCharacters(WKStringRef stringRef, WKChar* buffer, size_t bufferLength)
{
COMPILE_ASSERT(sizeof(WKChar) == sizeof(UChar), WKStringGetCharacters_sizeof_WKChar_matches_UChar);
- return (toImpl(stringRef)->getCharacters(static_cast<UChar*>(buffer), bufferLength));
+ return (toImpl(stringRef)->getCharacters(reinterpret_cast<UChar*>(buffer), bufferLength));
}
size_t WKStringGetMaximumUTF8CStringSize(WKStringRef stringRef)
diff --git a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
index d734ff684..0f6ff63d1 100644
--- a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+++ b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
@@ -64,7 +64,11 @@ static Display* getPluginDisplay()
// The code below has the same effect as this one:
// Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
+#ifdef NIXPKGS_LIBGDK2
+ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
+#else
QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
+#endif
if (!library.load())
return 0;

View file

@ -1,309 +0,0 @@
# DO NOT EDIT! This file is generated automatically by fetch-kde-qt.sh
{ fetchurl, mirror }:
{
qt3d = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qt3d-opensource-src-5.6.3.tar.xz";
sha256 = "1zkzc3wh2i89nacb55mbgl09zhrjbrxg9ir626bsvz15x4q5ml0h";
name = "qt3d-opensource-src-5.6.3.tar.xz";
};
};
qtactiveqt = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtactiveqt-opensource-src-5.6.3.tar.xz";
sha256 = "00qscqjpkv5ssrjdwwcjp9q1rqgp8lsdjjksjpyyg4v6knd74s0i";
name = "qtactiveqt-opensource-src-5.6.3.tar.xz";
};
};
qtandroidextras = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtandroidextras-opensource-src-5.6.3.tar.xz";
sha256 = "1v19p1pqcdicylj3hd2lbm5swqddydlv9aqmws3qwsc2vwh15d4n";
name = "qtandroidextras-opensource-src-5.6.3.tar.xz";
};
};
qtbase = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtbase-opensource-src-5.6.3.tar.xz";
sha256 = "18ad7cxln61276cm8h8hzm0y6svw6b5m5nbm1niif9pwlqlqbx7y";
name = "qtbase-opensource-src-5.6.3.tar.xz";
};
};
qtcanvas3d = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtcanvas3d-opensource-src-5.6.3.tar.xz";
sha256 = "1zsn3xbsqapivfg80cldjlh7z07nf88958a7g6dm7figkwahx7p9";
name = "qtcanvas3d-opensource-src-5.6.3.tar.xz";
};
};
qtcharts = {
version = "2.1.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtcharts-opensource-src-2.1.3.tar.xz";
sha256 = "0bvxmqx7094mq1svrv1i1jp6vl87r2mp7k9n3gqpixjmqaqsjdpn";
name = "qtcharts-opensource-src-2.1.3.tar.xz";
};
};
qtconnectivity = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtconnectivity-opensource-src-5.6.3.tar.xz";
sha256 = "1pnc0zmps5iw5yhn2w0wl8cnyxhcy88d3rnaiv62ljpsccynwh7s";
name = "qtconnectivity-opensource-src-5.6.3.tar.xz";
};
};
qtdatavis3d = {
version = "1.2.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtdatavis3d-opensource-src-1.2.3.tar.xz";
sha256 = "0rqhr6s3fic91r6r1g2ws57j6ixvkh4zhcwh7savs1risx374vya";
name = "qtdatavis3d-opensource-src-1.2.3.tar.xz";
};
};
qtdeclarative = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtdeclarative-opensource-src-5.6.3.tar.xz";
sha256 = "1z4ih5jbydnk5dz0arhvwc54fjw7fynqx3rhm6f8lsyis19w0gzn";
name = "qtdeclarative-opensource-src-5.6.3.tar.xz";
};
};
qtdeclarative-render2d = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtdeclarative-render2d-opensource-src-5.6.3.tar.xz";
sha256 = "0r2qn8l3wh73cj75rq34zmc6rgl7v11c31pjdcsybad76nw5wb2p";
name = "qtdeclarative-render2d-opensource-src-5.6.3.tar.xz";
};
};
qtdoc = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtdoc-opensource-src-5.6.3.tar.xz";
sha256 = "11zhlry8hlql1q3pm4mf7qyky9i2irxqdrr9nr5m93wjyfsjbh7f";
name = "qtdoc-opensource-src-5.6.3.tar.xz";
};
};
qtenginio = {
version = "1.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtenginio-opensource-src-1.6.3.tar.xz";
sha256 = "04ir5pa8wpkc7cq08s0b69a0vhkr7479ixn3m2vww4jm6l5hc1yr";
name = "qtenginio-opensource-src-1.6.3.tar.xz";
};
};
qtgraphicaleffects = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtgraphicaleffects-opensource-src-5.6.3.tar.xz";
sha256 = "1vcrm4jfmxjlw23dnwf45mzq2z5s4fz6j2znknr25ca5bqnmjhn7";
name = "qtgraphicaleffects-opensource-src-5.6.3.tar.xz";
};
};
qtimageformats = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtimageformats-opensource-src-5.6.3.tar.xz";
sha256 = "1hs8b258xsbc4xb4844mas9ka54f5cfhhszblawwjxn9j0ydmr7g";
name = "qtimageformats-opensource-src-5.6.3.tar.xz";
};
};
qtlocation = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtlocation-opensource-src-5.6.3.tar.xz";
sha256 = "0rhlmyi5kkhl1bimaj1fmp36v7x5r79j3flgx9dv27rkric1ra5p";
name = "qtlocation-opensource-src-5.6.3.tar.xz";
};
};
qtmacextras = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtmacextras-opensource-src-5.6.3.tar.xz";
sha256 = "10v2a058yv6k76gg9dgpy4fc0xd652dknzsw5432gm8d9391382i";
name = "qtmacextras-opensource-src-5.6.3.tar.xz";
};
};
qtmultimedia = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtmultimedia-opensource-src-5.6.3.tar.xz";
sha256 = "0ihvbv0ldravbrx6406ps0z8y6521iz6h58n5ws44xq3m2g06dmf";
name = "qtmultimedia-opensource-src-5.6.3.tar.xz";
};
};
qtpurchasing = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtpurchasing-opensource-src-5.6.3.tar.xz";
sha256 = "0lf269jzd6y4x5bxjwgz9dpw7hxmc6sp39qpxwlswd505cf0wgd7";
name = "qtpurchasing-opensource-src-5.6.3.tar.xz";
};
};
qtquickcontrols = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtquickcontrols-opensource-src-5.6.3.tar.xz";
sha256 = "13nvn0d2i4lf4igc1xqf7m98n4j66az1bi02zzv5m18vyb40zfri";
name = "qtquickcontrols-opensource-src-5.6.3.tar.xz";
};
};
qtquickcontrols2 = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtquickcontrols2-opensource-src-5.6.3.tar.xz";
sha256 = "1jw1zykrx8aa9p781hc74h9za7lnnm4ifpdyqa4ahbdy193phl7c";
name = "qtquickcontrols2-opensource-src-5.6.3.tar.xz";
};
};
qtscript = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtscript-opensource-src-5.6.3.tar.xz";
sha256 = "12dkf2s1l9y9cwdyayg2mpnwvx14kq93pymp3iy3fw1s1vfj11zh";
name = "qtscript-opensource-src-5.6.3.tar.xz";
};
};
qtsensors = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtsensors-opensource-src-5.6.3.tar.xz";
sha256 = "0ws96fmk5zz9szrw9x1dwa6gnv9rpv1q0h9ax9z5m1kiapfd80km";
name = "qtsensors-opensource-src-5.6.3.tar.xz";
};
};
qtserialbus = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtserialbus-opensource-src-5.6.3.tar.xz";
sha256 = "17lskz4r549hc02riv0a3jdjbyaq4y4a94xd3jhy454lhzirpj3i";
name = "qtserialbus-opensource-src-5.6.3.tar.xz";
};
};
qtserialport = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtserialport-opensource-src-5.6.3.tar.xz";
sha256 = "06mfkd88rcn4p8pfzsyqbfg956vwwcql0khchjgx3bh34zp1yb88";
name = "qtserialport-opensource-src-5.6.3.tar.xz";
};
};
qtsvg = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtsvg-opensource-src-5.6.3.tar.xz";
sha256 = "1v6wz8fcgsh4lfv68bhavms0l1z3mcn8vggakc3m8rdl2wsih3qh";
name = "qtsvg-opensource-src-5.6.3.tar.xz";
};
};
qttools = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qttools-opensource-src-5.6.3.tar.xz";
sha256 = "09krlrgcglylsv7xx4r681v7zmyy6nr8j18482skrmsqh21vlqqs";
name = "qttools-opensource-src-5.6.3.tar.xz";
};
};
qttranslations = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qttranslations-opensource-src-5.6.3.tar.xz";
sha256 = "1avcfymi9bxk02i1rqh89c6hnvf4bg9qry94z29g1r62c80lxvbd";
name = "qttranslations-opensource-src-5.6.3.tar.xz";
};
};
qtvirtualkeyboard = {
version = "2.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtvirtualkeyboard-opensource-src-2.0.tar.xz";
sha256 = "1v0saqz76h9gnb13b8mri4jq93i7f1gr7hj81zj3vz433s2klm0x";
name = "qtvirtualkeyboard-opensource-src-2.0.tar.xz";
};
};
qtwayland = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtwayland-opensource-src-5.6.3.tar.xz";
sha256 = "18ys14fzjybx02aj85vyqzsp89ypv2c6vfpklxzslwyvn9w54iss";
name = "qtwayland-opensource-src-5.6.3.tar.xz";
};
};
qtwebchannel = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtwebchannel-opensource-src-5.6.3.tar.xz";
sha256 = "04q7wmdnv4pskah2s5nnrzbsb207fvkj333m69wkqrc64anb1ccf";
name = "qtwebchannel-opensource-src-5.6.3.tar.xz";
};
};
qtwebengine = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtwebengine-opensource-src-5.6.3.tar.xz";
sha256 = "19xpvnjwrjpj6wx7sy1cs1r1ibnh5hqfk9w9rnqf5h7n77xnk780";
name = "qtwebengine-opensource-src-5.6.3.tar.xz";
};
};
qtwebkit = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/community_releases/5.6/5.6.3/qtwebkit-opensource-src-5.6.3.tar.xz";
sha256 = "15iqgaw3jznfq1mdg1mmr7pn8w3qhw964h5m36vg3ywqayr6p309";
name = "qtwebkit-opensource-src-5.6.3.tar.xz";
};
};
qtwebkit-examples = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/community_releases/5.6/5.6.3/qtwebkit-examples-opensource-src-5.6.3.tar.xz";
sha256 = "17hnls8j4wz0kyzzq7m3105lqz71zsxr0hya7i23pl4qc8affv1d";
name = "qtwebkit-examples-opensource-src-5.6.3.tar.xz";
};
};
qtwebsockets = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtwebsockets-opensource-src-5.6.3.tar.xz";
sha256 = "1sr8q0wqw4xwcdl6nvnv04pcjxb0fbs4ywrkcghdz2bcc52r0hx2";
name = "qtwebsockets-opensource-src-5.6.3.tar.xz";
};
};
qtwebview = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtwebview-opensource-src-5.6.3.tar.xz";
sha256 = "076q9g2ca41v8lyhn7354rs8w2ca0wp2hsxc76zprzghi5p4b2kn";
name = "qtwebview-opensource-src-5.6.3.tar.xz";
};
};
qtwinextras = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtwinextras-opensource-src-5.6.3.tar.xz";
sha256 = "0nmhvd1g18w12q6i8s87aq7rwikcn1m8m9m0a02l3p22xvimkxzf";
name = "qtwinextras-opensource-src-5.6.3.tar.xz";
};
};
qtx11extras = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtx11extras-opensource-src-5.6.3.tar.xz";
sha256 = "0zv70z5z48wlg0q2zd7nbp7i0wimdcalns6yg0mjp7v2w2b8wyhy";
name = "qtx11extras-opensource-src-5.6.3.tar.xz";
};
};
qtxmlpatterns = {
version = "5.6.3";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.3/submodules/qtxmlpatterns-opensource-src-5.6.3.tar.xz";
sha256 = "1xjimf88j2s5jrqgr9ki82zmis8r979rrzq4k6dxw43k1ngzyqd4";
name = "qtxmlpatterns-opensource-src-5.6.3.tar.xz";
};
};
}

View file

@ -36,7 +36,11 @@ let
srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; };
patches = {
qtbase = [ ./qtbase.patch ./qtbase-fixguicmake.patch ];
qtbase = [
./qtbase.patch
./qtbase-fixguicmake.patch
./qtbase-openssl_1_1.patch
];
qtdeclarative = [ ./qtdeclarative.patch ];
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];

File diff suppressed because it is too large Load diff

View file

@ -994,28 +994,6 @@ index 9a24938284..74962b4ae2 100644
if (!lib.load())
return false;
}
diff --git a/src/network/ssl/qsslcontext_openssl.cpp b/src/network/ssl/qsslcontext_openssl.cpp
index c92d8fc3f8..6008063bcf 100644
--- a/src/network/ssl/qsslcontext_openssl.cpp
+++ b/src/network/ssl/qsslcontext_openssl.cpp
@@ -351,7 +351,7 @@ init_context:
const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
if (!qcurves.isEmpty()) {
-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+#if OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
// Set the curves to be used
if (q_SSLeay() >= 0x10002000L) {
// SSL_CTX_ctrl wants a non-const pointer as last argument,
@@ -364,7 +364,7 @@ init_context:
sslContext->errorCode = QSslError::UnspecifiedError;
}
} else
-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
{
// specific curves requested, but not possible to set -> error
sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version too old, need at least v1.0.2"));
diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
index b5a0a5bbeb..6c20305f4d 100644
--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp

View file

@ -20,8 +20,6 @@
with stdenv.lib;
let qt56 = qtCompatVersion == "5.6"; in
qtModule {
name = "qtwebengine";
qtInputs = [ qtdeclarative qtquickcontrols qtlocation qtwebchannel ];
@ -48,9 +46,9 @@ qtModule {
# Patch Chromium build files
+ optionalString (lib.versionOlder qtCompatVersion "5.12") ''
substituteInPlace ./src/3rdparty/chromium/build/common.gypi --replace /bin/echo ${coreutils}/bin/echo
substituteInPlace ./src/3rdparty/chromium/v8/${if qt56 then "build" else "gypfiles"}/toolchain.gypi \
substituteInPlace ./src/3rdparty/chromium/v8/gypfiles/toolchain.gypi \
--replace /bin/echo ${coreutils}/bin/echo
substituteInPlace ./src/3rdparty/chromium/v8/${if qt56 then "build" else "gypfiles"}/standalone.gypi \
substituteInPlace ./src/3rdparty/chromium/v8/gypfiles/standalone.gypi \
--replace /bin/echo ${coreutils}/bin/echo
''
# Patch library paths in Qt sources
@ -219,7 +217,6 @@ EOF
description = "A web engine based on the Chromium web browser";
maintainers = with maintainers; [ matthewbauer ];
platforms = platforms.unix;
broken = qt56; # 2018-09-13, no successful build since 2018-04-25
};
}

View file

@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
name = "shibboleth-sp-${version}";
version = "2.6.1";
version = "3.0.4.1";
src = fetchgit {
url = "https://git.shibboleth.net/git/cpp-sp.git";
rev = version;
sha256 = "01q13p7gc0janjfml6zs46na8qnval8hc833fk2wrnmi4w9xw4fd";
sha256 = "1qb4dbz5gk10b9w1rf6f4vv7c2wb3a8bfzif6yiaq96ilqad7gdr";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];

View file

@ -1,11 +0,0 @@
--- xml-security-c-1.6.1/xsec/tools/checksig/InteropResolver.cpp.orig 2016-02-02 23:57:26.204655144 +0000
+++ xml-security-c-1.6.1/xsec/tools/checksig/InteropResolver.cpp 2016-02-02 23:57:35.796692305 +0000
@@ -645,7 +645,7 @@
}
- return false;
+ return NULL;
}

View file

@ -2,20 +2,13 @@
stdenv.mkDerivation rec {
name = "xml-security-c-${version}";
version = "1.7.3";
version = "2.0.2";
src = fetchurl {
url = "https://www.apache.org/dist/santuario/c-library/${name}.tar.gz";
sha256 = "e5226e7319d44f6fd9147a13fb853f5c711b9e75bf60ec273a0ef8a190592583";
sha256 = "1prh5sxzipkqglpsh53iblbr7rxi54wbijxdjiahzjmrijqa40y3";
};
patches = [ ./cxx11.patch ];
postPatch = ''
mkdir -p xsec/yes/lib
sed -i -e 's/-O2 -DNDEBUG/-DNDEBUG/g' configure
'';
configureFlags = [
"--with-openssl"
"--with-xerces"

View file

@ -1,17 +1,19 @@
{ stdenv, fetchgit, autoreconfHook, boost, curl, openssl, log4shib, xercesc, xml-security-c }:
{ stdenv, fetchgit, autoreconfHook, pkgconfig
, boost, curl, openssl, log4shib, xercesc, xml-security-c
}:
stdenv.mkDerivation rec {
name = "xml-tooling-c-${version}";
version = "1.6.3";
version = "3.0.4";
src = fetchgit {
url = "https://git.shibboleth.net/git/cpp-xmltooling.git";
rev = version;
sha256 = "09z2pp3yy3kqx22vwgxyi3s0vlpdv9camw8dpi3q8piff6zxak3q";
sha256 = "0frj4w70l06nva6dvdcivgm1ax69rqbjdzzbgp0sxhiqhddslbas";
};
buildInputs = [ boost curl openssl log4shib xercesc xml-security-c ];
nativeBuildInputs = [ autoreconfHook ];
nativeBuildInputs = [ autoreconfHook pkgconfig ];
enableParallelBuilding = true;

View file

@ -1,12 +1,14 @@
{ stdenv, fetchgit, cmake, zlib, libpng, bzip2, libusb, openssl }:
{ stdenv, fetchFromGitHub, cmake, zlib, libpng, bzip2, libusb, openssl }:
stdenv.mkDerivation {
name = "xpwn-0.5.8git";
stdenv.mkDerivation rec {
pname = "xpwn";
version = "0.5.8git";
src = fetchgit {
url = "git://github.com/dborca/xpwn.git";
rev = "4534da88d4e8a32cdc9da9b5326e2cc482c95ef0";
sha256 = "1h1ak40fg5bym0hifpii9q2hqdp2m387cwfzb4bl6qq36xpkd6wv";
src = fetchFromGitHub {
owner = "planetbeing";
repo = pname;
rev = "ac362d4ffe4d0489a26144a1483ebf3b431da899";
sha256 = "1qw9vbk463fpnvvvfgzxmn9add2p30k832s09mlycr7z1hrh3wyf";
};
preConfigure = ''
@ -18,7 +20,9 @@ stdenv.mkDerivation {
sed -i -e '/install/d' CMakeLists.txt
'';
buildInputs = [ cmake zlib libpng bzip2 libusb openssl ];
strictDeps = true;
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib libpng bzip2 libusb openssl ];
meta = with stdenv.lib; {
homepage = "http://planetbeing.lighthouseapp.com/projects/15246-xpwn";

View file

@ -1,18 +1,22 @@
{ stdenv, fetchPypi, buildPythonPackage
{ stdenv, fetchPypi, buildPythonPackage, pythonAtLeast
, more-itertools, six, setuptools_scm, setuptools-scm-git-archive
, pytest, pytestcov, portend, pytest-testmon, pytest-mock
, backports_unittest-mock, pyopenssl, requests, trustme, requests-unixsocket
, backports_functools_lru_cache }:
let inherit (stdenv) lib; in
buildPythonPackage rec {
pname = "cheroot";
version = "6.5.5";
version = "6.5.6";
src = fetchPypi {
inherit pname version;
sha256 = "f6a85e005adb5bc5f3a92b998ff0e48795d4d98a0fbb7edde47a7513d4100601";
sha256 = "b824f9961eb447809badeb051820a05770354e2f9ae5c355eecc21f22633c217";
};
patches = [ ./tests.patch ];
nativeBuildInputs = [ setuptools_scm setuptools-scm-git-archive ];
propagatedBuildInputs = [ more-itertools six backports_functools_lru_cache ];
@ -20,14 +24,17 @@ buildPythonPackage rec {
checkInputs = [ pytest pytestcov portend backports_unittest-mock pytest-mock pytest-testmon pyopenssl requests trustme requests-unixsocket ];
# Disable doctest plugin because times out
# Disable xdist (-n arg) because it's incompatible with testmon
# Deselect test_bind_addr_unix on darwin because times out
# Deselect test_http_over_https_error on darwin because builtin cert fails
# Disable warnings-as-errors because of deprecation warnings from socks on python 3.7
checkPhase = ''
substituteInPlace pytest.ini --replace "--doctest-modules" ""
pytest ${stdenv.lib.optionalString stdenv.isDarwin "--deselect=cheroot/test/test_ssl.py::test_http_over_https_error --deselect=cheroot/test/test_server.py::test_bind_addr_unix"}
substituteInPlace pytest.ini --replace "--doctest-modules" "" --replace "-n auto" ""
${lib.optionalString (pythonAtLeast "3.7") "sed -i '/warnings/,+2d' pytest.ini"}
pytest ${lib.optionalString stdenv.isDarwin "--deselect=cheroot/test/test_ssl.py::test_http_over_https_error --deselect=cheroot/test/test_server.py::test_bind_addr_unix"}
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "High-performance, pure-Python HTTP";
homepage = https://github.com/cherrypy/cheroot;
license = licenses.mit;

View file

@ -0,0 +1,45 @@
diff --git a/cheroot/test/test_ssl.py b/cheroot/test/test_ssl.py
index fe8a0a0..92a77c1 100644
--- a/cheroot/test/test_ssl.py
+++ b/cheroot/test/test_ssl.py
@@ -316,11 +316,9 @@ def test_tls_client_auth(
expected_ssl_errors = (
requests.exceptions.SSLError,
OpenSSL.SSL.Error,
- ) if PY34 else (
- requests.exceptions.SSLError,
+ requests.exceptions.ConnectionError,
)
- if IS_WINDOWS:
- expected_ssl_errors += requests.exceptions.ConnectionError,
+
with pytest.raises(expected_ssl_errors) as ssl_err:
make_https_request()
@@ -335,7 +333,7 @@ def test_tls_client_auth(
except AttributeError:
if PY34:
pytest.xfail('OpenSSL behaves wierdly under Python 3.4')
- elif six.PY3 and IS_WINDOWS:
+ elif six.PY3:
err_text = str(ssl_err.value)
else:
raise
@@ -348,8 +346,7 @@ def test_tls_client_auth(
if IS_MACOS and IS_PYPY and adapter_type == 'pyopenssl':
expected_substrings = ('tlsv1 alert unknown ca', )
if (
- IS_WINDOWS
- and tls_verify_mode in (
+ tls_verify_mode in (
ssl.CERT_REQUIRED,
ssl.CERT_OPTIONAL,
)
@@ -361,6 +358,7 @@ def test_tls_client_auth(
"SysCallError(10054, 'WSAECONNRESET')",
"('Connection aborted.', "
'OSError("(10054, \'WSAECONNRESET\')"))',
+ 'OSError("(104, \'ECONNRESET\')"))',
)
assert any(e in err_text for e in expected_substrings)

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "pysocks";
version = "1.6.8";
version = "1.7.0";
src = fetchPypi {
pname = "PySocks";
inherit version;
sha256 = "3fe52c55890a248676fd69dc9e3c4e811718b777834bcaab7a8125cf9deac672";
sha256 = "0z4p31bpqm893cf87qqgb30k7nwd8kqfjwwjm5cvxb6zbyj1w0yr";
};
doCheck = false;

View file

@ -1,6 +1,6 @@
{ stdenv
{ lib
, buildPythonPackage
, fetchdarcs
, fetchFromGitHub
, isPy3k
, pkgs
, cython
@ -14,13 +14,14 @@
buildPythonPackage rec {
pname = "sipsimple";
version = "3.1.1";
version = "3.4.2";
disabled = isPy3k;
src = fetchdarcs {
url = http://devel.ag-projects.com/repositories/python-sipsimple;
src = fetchFromGitHub {
owner = "AGProjects";
repo = "python-sipsimple";
rev = "release-${version}";
sha256 = "0jdilm11f5aahxrzrkxrfx9sgjgkbla1r0wayc5dzd2wmjrdjyrg";
sha256 = "094xf343d6zjhg9jwbm3dr74zq264cyqnn22byvm2m88lnagmhmr";
};
preConfigure = ''
@ -32,7 +33,7 @@ buildPythonPackage rec {
buildInputs = with pkgs; [ alsaLib ffmpeg libv4l sqlite libvpx ];
propagatedBuildInputs = [ cython pkgs.openssl dnspython dateutil xcaplib msrplib lxml python-otr ];
meta = with stdenv.lib; {
meta = with lib; {
description = "SIP SIMPLE implementation for Python";
homepage = http://sipsimpleclient.org/;
license = licenses.gpl3;

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchpatch, rustPlatform, openssl, cmake, perl, pkgconfig, zlib }:
{ stdenv, fetchFromGitHub, fetchpatch, rustPlatform, openssl_1_0_2, cmake, perl, pkgconfig, zlib }:
with rustPlatform;
@ -27,7 +27,7 @@ buildRustPackage rec {
'';
nativeBuildInputs = [ cmake pkgconfig perl ];
buildInputs = [ openssl zlib ];
buildInputs = [ openssl_1_0_2 zlib ];
postBuild = ''
install -D "$src/git-series.1" "$out/man/man1/git-series.1"

View file

@ -3,7 +3,7 @@
, autoreconfHook
, libgsf
, pkgconfig
, openssl_1_1
, openssl
, curl
}:
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
sha256 = "02jnbr3xdsb5dpll3k65080ryrfr7agawmjavwxd0v40w0an5yq8";
};
nativeBuildInputs = [ autoreconfHook libgsf pkgconfig openssl_1_1 curl ];
nativeBuildInputs = [ autoreconfHook libgsf pkgconfig openssl curl ];
meta = with stdenv.lib; {
homepage = "https://github.com/mtrojnar/osslsigncode";

View file

@ -1,26 +0,0 @@
{ stdenv, fetchFromGitHub, rustPlatform, perl, zlib, openssl, curl }:
rustPlatform.buildRustPackage rec {
name = "tw-rs-${version}";
version = "0.1.26";
src = fetchFromGitHub {
owner = "vmchale";
repo = "tw-rs";
rev = "${version}";
sha256 = "1s1gk2wcs3792gdzrngksczz3gma5kv02ni2jqrhib8l6z8mg9ia";
};
buildInputs = [ perl zlib openssl ]
++ stdenv.lib.optional stdenv.isDarwin curl;
cargoSha256 = "00v0b2vjal1dar4kwqk246k44mjyi1zp18hyj15dsww2972bm3b7";
meta = with stdenv.lib; {
description = "Twitter command-line interface written in rust";
homepage = https://github.com/vmchale/tw-rs;
license = licenses.bsd3;
maintainers = with maintainers; [ vmchale ];
platforms = platforms.all;
};
}

View file

@ -1,46 +1,62 @@
{ stdenv, fetchurl, openssl, flex, bison, pkgconfig, groff, libxml2, utillinux
, file, libtool, which }:
{ stdenv, fetchFromGitHub, openssl, flex, bison, pkgconfig, groff, libxml2, utillinux
, file, libtool, which, boost, autoreconfHook
}:
stdenv.mkDerivation rec {
name = "torque-4.2.10";
pname = "torque";
version = "6.1.3h2";
src = fetchurl {
name = "${name}.tar.gz";
url = "http://www.adaptivecomputing.com/index.php?wpfb_dl=2880";
sha256 = "1qpsk3bla6b6m7m0i1xpr183yj79liy3p34xhnz1grgq0776wg5l";
src = fetchFromGitHub {
owner = "adaptivecomputing";
repo = pname;
# branch 6.1.3h2, as they aren't pushing tags
# https://github.com/adaptivecomputing/torque/issues/467
rev = "458883319157cfc5c509046d09f9eb8e68e8d398";
sha256 = "1b56bc5j9wg87kcywzmhf7234byyrwax9v1pqsr9xmv2x7saakrr";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ openssl flex bison groff libxml2 utillinux libtool
which ];
strictDeps = true;
nativeBuildInputs = [ autoreconfHook pkgconfig flex bison libxml2 ];
buildInputs = [
openssl groff libxml2 utillinux libtool
which boost
];
enableParallelBuilding = true;
# added to fix build with gcc7
NIX_CFLAGS_COMPILE = [ "-fpermissive" ];
NIX_CFLAGS_COMPILE = [
"-Wno-error" "-fpermissive"
];
postPatch = ''
substituteInPlace Makefile.am \
--replace "contrib/init.d contrib/systemd" ""
substituteInPlace src/cmds/Makefile.am \
--replace "/etc/" "$out/etc/"
'';
preConfigure = ''
substituteInPlace ./configure \
--replace '/usr/bin/file' '${file}/bin/file'
substituteInPlace ./configure \
--replace '/usr/bin/file' '${file}/bin/file'
# fix broken libxml2 detection
sed -i '/xmlLib\=/c\xmlLib=xml2' ./configure
# fix broken libxml2 detection
sed -i '/xmlLib\=/c\xmlLib=xml2' ./configure
for s in fifo cray_t3e dec_cluster msic_cluster sgi_origin umn_cluster; do
substituteInPlace src/scheduler.cc/samples/$s/Makefile.in \
--replace "schedprivdir = " "schedprivdir = $out/"
done
for s in fifo cray_t3e dec_cluster msic_cluster sgi_origin umn_cluster; do
substituteInPlace src/scheduler.cc/samples/$s/Makefile.in \
--replace "schedprivdir = " "schedprivdir = $out/"
done
for f in $(find ./ -name Makefile.in); do
echo patching $f...
sed -i $f -e '/PBS_MKDIRS/d' -e '/chmod u+s/d'
done
for f in $(find ./ -name Makefile.in); do
echo patching $f...
sed -i $f -e '/PBS_MKDIRS/d' -e '/chmod u+s/d'
done
patchShebangs buildutils
'';
postInstall = ''
mv $out/sbin/* $out/bin/
rmdir $out/sbin
cp -v buildutils/pbs_mkdirs $out/bin/
cp -v torque.setup $out/bin/
chmod +x $out/bin/pbs_mkdirs $out/bin/torque.setup
@ -50,5 +66,6 @@ stdenv.mkDerivation rec {
homepage = http://www.adaptivecomputing.com/products/open-source/torque;
description = "Resource management system for submitting and controlling jobs on supercomputers, clusters, and grids";
platforms = platforms.linux;
license = "TORQUEv1.1";
};
}

View file

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "powerdns-${version}";
version = "4.1.10";
version = "4.1.13";
src = fetchurl {
url = "https://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
sha256 = "1iqmrg0dhf39gr2mq9d8r3s5c6yqkb5mm8grbbla5anajbgcyijs";
sha256 = "09az5yp5d9wvzw8faifyzsljhmmc8ifm4j70m4n2sr83i9i9rsp7";
};
nativeBuildInputs = [ pkgconfig ];

View file

@ -61,5 +61,6 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.agpl3;
platforms = stdenv.lib.platforms.linux;
maintainers = with stdenv.lib.maintainers; [ thoughtpolice bluescreen303 ];
broken = true; # broken with openssl 1.1
};
}

View file

@ -78,5 +78,6 @@ perlPackages.buildPerlPackage {
license = stdenv.lib.licenses.asl20;
maintainers = with stdenv.lib.maintainers; [ tstrobel ];
platforms = with stdenv.lib.platforms; linux;
broken = true; # broken with openssl 1.1 (v2.x might fix this)
};
}

View file

@ -3,7 +3,7 @@ let
generic =
# dependencies
{ stdenv, lib, fetchurl, makeWrapper
, glibc, zlib, readline, openssl, icu, systemd, libossp_uuid
, glibc, zlib, readline, openssl, openssl_1_0_2, icu, systemd, libossp_uuid
, pkgconfig, libxml2, tzdata
# This is important to obtain a version of `libpq` that does not depend on systemd.
@ -32,9 +32,10 @@ let
setOutputFlags = false; # $out retains configureFlags :-/
buildInputs =
[ zlib readline openssl libxml2 makeWrapper ]
[ zlib readline libxml2 makeWrapper ]
++ lib.optionals icuEnabled [ icu ]
++ lib.optionals enableSystemd [ systemd ]
++ [ (if atLeast "9.5" then openssl else openssl_1_0_2) ]
++ lib.optionals (!stdenv.isDarwin) [ libossp_uuid ];
nativeBuildInputs = lib.optionals icuEnabled [ pkgconfig ];

View file

@ -1,39 +0,0 @@
{ stdenv, fetchurl, perl, openldap, pam, db, cyrus_sasl, libcap
, expat, libxml2, openssl }:
stdenv.mkDerivation rec {
name = "squid-4.8";
src = fetchurl {
url = "http://www.squid-cache.org/Versions/v4/${name}.tar.xz";
sha256 = "0432m0ix046rkja7r7qpydgsm2kf1w393xym15nx6h9kv4jb7kbq";
};
buildInputs = [
perl openldap db cyrus_sasl expat libxml2 openssl
] ++ stdenv.lib.optionals stdenv.isLinux [ libcap pam ];
prePatch = ''
substituteInPlace configure --replace "/usr/local/include/libxml2" "${libxml2.dev}/include/libxml2"
'';
configureFlags = [
"--enable-ipv6"
"--disable-strict-error-checking"
"--disable-arch-native"
"--with-openssl"
"--enable-ssl-crtd"
"--enable-storeio=ufs,aufs,diskd,rock"
"--enable-removal-policies=lru,heap"
"--enable-delay-pools"
"--enable-x-accelerator-vary"
] ++ stdenv.lib.optional (stdenv.isLinux && !stdenv.hostPlatform.isMusl) "--enable-linux-netfilter";
meta = with stdenv.lib; {
description = "A caching proxy for the Web supporting HTTP, HTTPS, FTP, and more";
homepage = http://www.squid-cache.org;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ fpletz raskin ];
};
}

View file

@ -1,22 +1,16 @@
{ stdenv, fetchurl, perl, openldap, pam, db, cyrus_sasl, libcap
, expat, libxml2, openssl, fetchpatch }:
, expat, libxml2, openssl, pkgconfig
}:
stdenv.mkDerivation rec {
name = "squid-3.5.28";
name = "squid-4.8";
src = fetchurl {
url = "http://www.squid-cache.org/Versions/v3/3.5/${name}.tar.xz";
sha256 = "1n4f55g56b11qz4fazrnvgzx5wp6b6637c4qkbd1lrjwwqibchgx";
url = "http://www.squid-cache.org/Versions/v4/${name}.tar.xz";
sha256 = "0432m0ix046rkja7r7qpydgsm2kf1w393xym15nx6h9kv4jb7kbq";
};
patches = [
(fetchpatch {
name = "3.5-CVE-2019-13345.patch";
url = "https://github.com/squid-cache/squid/commit/5730c2b5cb56e7639dc423dd62651c8736a54e35.patch";
sha256 = "0955432g9a00vwxzcrwpjzx6vywspx1cxhr7bknr7jzbzam5sxi3";
})
];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
perl openldap db cyrus_sasl expat libxml2 openssl
] ++ stdenv.lib.optionals stdenv.isLinux [ libcap pam ];
@ -38,6 +32,6 @@ stdenv.mkDerivation rec {
homepage = http://www.squid-cache.org;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ fpletz ];
maintainers = with maintainers; [ fpletz raskin ];
};
}

View file

@ -1,5 +1,5 @@
{ stdenv, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl
, darwin, makeWrapper, less, openssl, pam, lttng-ust }:
, darwin, makeWrapper, less, openssl_1_0_2, pam, lttng-ust }:
let platformString = if stdenv.isDarwin then "osx"
else if stdenv.isLinux then "linux"
@ -10,7 +10,7 @@ let platformString = if stdenv.isDarwin then "osx"
platformLdLibraryPath = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH"
else if stdenv.isLinux then "LD_LIBRARY_PATH"
else throw "unsupported platform";
libraries = [ libunwind libuuid icu curl openssl ] ++
libraries = [ libunwind libuuid icu curl openssl_1_0_2 ] ++
(if stdenv.isLinux then [ pam lttng-ust ] else [ darwin.Libsystem ]);
in
stdenv.mkDerivation rec {

View file

@ -1,4 +1,13 @@
{stdenv, fetchurl, fetchpatch, bzip2, zlib, newt, openssl, pkgconfig, slang
{stdenv
, fetchurl
, fetchpatch
, bzip2
, zlib
, newt
, openssl
, pkgconfig
, slang
, autoreconfHook
}:
stdenv.mkDerivation {
name = "partimage-0.6.9";
@ -8,20 +17,19 @@ stdenv.mkDerivation {
url = mirror://sourceforge/partimage/partimage-0.6.9.tar.bz2;
sha256 = "0db6xiphk6xnlpbxraiy31c5xzj0ql6k4rfkmqzh665yyj0nqfkm";
};
configureFlags = [ "--with-ssl-headers=${openssl.dev}/include/openssl" ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [bzip2 zlib newt newt openssl slang
# automake autoconf libtool gettext
];
nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [ bzip2 zlib newt newt openssl slang ];
patches = [
./gentoos-zlib.patch
(fetchpatch {
name = "no-SSLv2.patch";
url = "https://projects.archlinux.org/svntogit/community.git/plain/trunk"
+ "/use-SSLv3-by-default.patch?h=packages/partimage&id=7e95d1c6614e";
sha256 = "17dfqwvwnkinz8vs0l3bjjbmfx3a7y8nv3wn67gjsqpmggcpdnd6";
name = "openssl-1.1.patch";
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-block/partimage/files/"
+ "partimage-0.6.9-openssl-1.1-compatibility.patch?id=3fe8e9910002b6523d995512a646b063565d0447";
sha256 = "1hs0krxrncxq1w36bhad02yk8yx71zcfs35cw87c82sl2sfwasjg";
})
];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libxml2, lzma, openssl, zlib, bzip2, fts }:
{ stdenv, fetchurl, libxml2, lzma, openssl, zlib, bzip2, fts, autoconf }:
stdenv.mkDerivation rec {
version = "1.6.1";
@ -9,7 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "0ghmsbs6xwg1092v7pjcibmk5wkyifwxw6ygp08gfz25d2chhipf";
};
buildInputs = [ libxml2 lzma openssl zlib bzip2 fts ];
buildInputs = [ libxml2 lzma openssl zlib bzip2 fts autoconf ];
prePatch = ''
substituteInPlace configure.ac \
--replace 'OpenSSL_add_all_ciphers' 'OPENSSL_init_crypto' \
--replace 'openssl/evp.h' 'openssl/crypto.h'
'';
preConfigure = "./autogen.sh";
meta = {
homepage = https://mackyle.github.io/xar/;

View file

@ -1,12 +1,10 @@
{
stdenv, fetchFromGitHub,
openssl
{ stdenv, fetchFromGitHub, fetchpatch
, openssl
}:
let
stdenv.mkDerivation rec {
pname = "shallot";
version = "0.0.3";
in stdenv.mkDerivation {
name = "shallot-${version}";
src = fetchFromGitHub {
owner = "katmagic";
@ -17,6 +15,21 @@ in stdenv.mkDerivation {
buildInputs = [ openssl ];
patches = [
(fetchpatch {
url = "https://github.com/katmagic/Shallot/commit/c913088dfaaaf249494514f20a62f2a17b5c6606.patch";
sha256 = "19l1ppbxpdb0736f7plhybj08wh6rqk1lr3bxsp8jpzpnkh114b2";
})
(fetchpatch {
url = "https://github.com/katmagic/Shallot/commit/cd6628d97b981325e700a38f408a43df426fd569.patch";
sha256 = "1gaffp5wp1l5p2qdk0ix3i5fhzpx4xphl0haa6ajhqn8db7hbr9y";
})
(fetchpatch {
url = "https://github.com/katmagic/Shallot/commit/5c7c1ccecbbad5a121c50ba7153cbbee7ee0ebf9.patch";
sha256 = "1zmll4iqz39zwk8vj40n1dpvyq3403l64p2127gsjgh2l2v91s4k";
})
];
installPhase = ''
mkdir -p $out/bin
cp ./shallot $out/bin/

View file

@ -1,26 +0,0 @@
{ stdenv, fetchFromGitHub, openssl }:
stdenv.mkDerivation rec {
name = "vfdecrypt-${version}";
version = "unstable-2010-08-13";
src = fetchFromGitHub {
owner = "Tomer1510";
repo = "VFDecrypt";
rev = "4e2fa32816254907e82886b936afcae9859a876c";
sha256 = "0b945805f7f60bf48556c2db45c9ab26485fb05acbc6160a563d529b20cb56a3";
};
buildInputs = [ openssl ];
installPhase = ''
mkdir -p $out/bin
cp vfdecrypt $out/bin
'';
meta = with stdenv.lib; {
description = "A cross platform dmg decryption tool";
license = licenses.mit;
inherit (src.meta) homepage;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl_1_1 }:
{ stdenv, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl }:
let
/*
dsniff's build system unconditionnaly wants static libraries and does not
@ -33,8 +33,8 @@ let
dontDisableStatic = true;
});
ssl = symlinkJoin {
inherit (openssl_1_1) name;
paths = with openssl_1_1.override { static = true; }; [ out dev ];
inherit (openssl) name;
paths = with openssl.override { static = true; }; [ out dev ];
};
in stdenv.mkDerivation {
pname = "dsniff";

View file

@ -22,6 +22,13 @@ stdenv.mkDerivation {
configureFlags = [
"--with-openssl=${openssl.dev}"
];
patches = [
(fetchurl {
url = https://github.com/muquit/mailsend/commit/960df6d7a11eef90128dc2ae660866b27f0e4336.patch;
sha256 = "0vz373zcfl19inflybfjwshcq06rvhx0i5g0f4b021cxfhyb1sm0";
})
];
meta = {
inherit (s) version;
description = ''CLI email sending tool'';

View file

@ -1,8 +1,8 @@
# NOTE: this is rakshava's version of libtorrent, used mainly by rtorrent
# This is NOT libtorrent-rasterbar, used by Deluge, qbitttorent, and others
{ stdenv, fetchFromGitHub, pkgconfig
, libtool, autoconf, automake, cppunit
, openssl, libsigcxx, zlib }:
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook
, cppunit, openssl, libsigcxx, zlib
}:
stdenv.mkDerivation rec {
pname = "libtorrent";
@ -15,10 +15,8 @@ stdenv.mkDerivation rec {
sha256 = "1h5y6ab3gs20yyprdfwcw8fh1c6czs4yrdj0kf54d2vp9qwz685r";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libtool autoconf automake cppunit openssl libsigcxx zlib ];
preConfigure = "./autogen.sh";
nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [ cppunit openssl libsigcxx zlib ];
meta = with stdenv.lib; {
homepage = "https://github.com/rakshasa/libtorrent";

View file

@ -1,15 +1,18 @@
{ stdenv, fetchurl, openssl }:
{ stdenv, fetchFromGitHub, openssl, autoreconfHook, nettle }:
stdenv.mkDerivation rec {
name = "radsecproxy-${version}";
version = "1.6.9";
pname = "radsecproxy";
version = "1.8.0";
src = fetchurl {
url = "https://software.nordu.net/radsecproxy/radsecproxy-${version}.tar.xz";
sha256 = "6f2c7030236c222782c9ac2c52778baa63540a1865b75a7a6d8c1280ce6ad816";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "1268lbysa82b6h0101jzs0v6ixvmy3x0d0a8hw37sy95filsjmia";
};
buildInputs = [ openssl ];
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ openssl nettle ];
configureFlags = [
"--with-ssl=${openssl.dev}"

View file

@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
platforms = platforms.unix;
license = licenses.gpl2;
maintainers = [ maintainers.eelco ];
broken = true; # broken with openssl 1.1
};
}

View file

@ -1,4 +1,4 @@
{stdenv, fetchurl, pam, openssl}:
{ stdenv, fetchurl, fetchpatch, pam, openssl }:
stdenv.mkDerivation {
name = "uw-imap-2007f";
@ -19,7 +19,12 @@ stdenv.mkDerivation {
buildInputs = [ openssl ]
++ stdenv.lib.optional (!stdenv.isDarwin) pam;
patchPhase = ''
patches = [ (fetchpatch {
url = "https://anonscm.debian.org/cgit/collab-maint/uw-imap.git/plain/debian/patches/1006_openssl1.1_autoverify.patch?id=b4df81d246a6cdbfd035c21f43e844effda3582b";
sha256 = "09xb58awvkhzmmjhrkqgijzgv7ia381ablf0y7i1rvhcqkb5wga7";
}) ];
postPatch = ''
sed -i src/osdep/unix/Makefile -e 's,/usr/local/ssl,${openssl.dev},'
sed -i src/osdep/unix/Makefile -e 's,^SSLCERTS=.*,SSLCERTS=/etc/ssl/certs,'
sed -i src/osdep/unix/Makefile -e 's,^SSLLIB=.*,SSLLIB=${openssl.out}/lib,'

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,10 @@
{ stdenv, lib, fetchgit, darwin, buildPlatform
, buildRustCrate, defaultCrateOverrides }:
, buildRustCrate, buildRustCrateHelpers, defaultCrateOverrides }:
((import ./Cargo.nix { inherit lib buildPlatform buildRustCrate fetchgit; }).cargo_download {}).override {
((import ./Cargo.nix {
inherit lib buildPlatform buildRustCrate buildRustCrateHelpers fetchgit;
cratesIO = import ./crates-io.nix { inherit lib buildRustCrate buildRustCrateHelpers; };
}).cargo_download {}).override {
crateOverrides = defaultCrateOverrides // {
cargo-download = attrs: {
buildInputs = lib.optional stdenv.isDarwin

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, pkgconfig, which, zlib, openssl_1_1, libarchive }:
{ stdenv, fetchFromGitHub, pkgconfig, which, zlib, openssl, libarchive }:
stdenv.mkDerivation rec {
pname = "xbps";
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig which ];
buildInputs = [ zlib openssl_1_1 libarchive ];
buildInputs = [ zlib openssl libarchive ];
patches = [ ./cert-paths.patch ];

View file

@ -80,5 +80,6 @@ stdenv.mkDerivation rec {
maintainers = [ maintainers.tstrobel ];
platforms = [ "x86_64-linux" ];
license = licenses.bsd3;
broken = true; # build failure withn openssl 1.1
};
}

View file

@ -10,6 +10,11 @@ stdenv.mkDerivation rec {
sha256 = "1ms2v57f13r9km6mvf9rha5ndmlmjvrz3mcikai6nzhpj0nrjz0w";
};
patches = [
./openssl-1.1.patch
./signed-ptr.patch
];
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ gawk trousers cryptsetup openssl ];

View file

@ -0,0 +1,63 @@
diff --git a/swtpm-utils/lib/hmac.c b/swtpm-utils/lib/hmac.c
index 5545375..f9bedea 100644
--- a/swtpm-utils/lib/hmac.c
+++ b/swtpm-utils/lib/hmac.c
@@ -381,15 +381,19 @@ uint32_t TSS_authhmac(unsigned char *digest, unsigned char *key, unsigned int ke
/****************************************************************************/
uint32_t TSS_rawhmac(unsigned char *digest, const unsigned char *key, unsigned int keylen, ...)
{
- HMAC_CTX hmac;
+ HMAC_CTX* hmac;
unsigned int dlen;
unsigned char *data;
va_list argp;
-
-#ifdef HAVE_HMAC_CTX_CLEANUP
- HMAC_CTX_init(&hmac);
-#endif
- HMAC_Init(&hmac,key,keylen,EVP_sha1());
+
+ hmac = HMAC_CTX_new();
+
+ if (hmac == NULL)
+ {
+ return ERR_MEM_ERR;
+ }
+
+ HMAC_Init_ex(hmac,key,keylen,EVP_sha1(),NULL);
va_start(argp,keylen);
for (;;)
@@ -398,15 +402,11 @@ uint32_t TSS_rawhmac(unsigned char *digest, const unsigned char *key, unsigned i
if (dlen == 0) break;
data = (unsigned char *)va_arg(argp,unsigned char *);
if (data == NULL) return ERR_NULL_ARG;
- HMAC_Update(&hmac,data,dlen);
+ HMAC_Update(hmac,data,dlen);
}
- HMAC_Final(&hmac,digest,&dlen);
+ HMAC_Final(hmac,digest,&dlen);
-#ifdef HAVE_HMAC_CTX_CLEANUP
- HMAC_CTX_cleanup(&hmac);
-#else
- HMAC_cleanup(&hmac);
-#endif
+ HMAC_CTX_free(hmac);
va_end(argp);
return 0;
}
diff --git a/swtpm-utils/lib/keys.c b/swtpm-utils/lib/keys.c
index 99691b6..6627a1f 100644
--- a/swtpm-utils/lib/keys.c
+++ b/swtpm-utils/lib/keys.c
@@ -1249,8 +1249,7 @@ RSA *TSS_convpubkey(pubkeydata *k)
exp);
}
/* set up the RSA public key structure */
- rsa->n = mod;
- rsa->e = exp;
+ RSA_set0_key(rsa, mod, exp, NULL);
return rsa;
}

View file

@ -0,0 +1,15 @@
diff --git a/swtpm-utils/getcapability.c b/swtpm-utils/getcapability.c
index 7359ba3..17b4324 100644
--- a/swtpm-utils/getcapability.c
+++ b/swtpm-utils/getcapability.c
@@ -480,7 +480,8 @@ int main(int argc, char *argv[])
}
if (c) {
- char pcrmap[4], *pf;
+ char pcrmap[4];
+ unsigned char *pf;
memcpy(pcrmap, ndp.pcrInfoRead.pcrSelection.pcrSelect,
ndp.pcrInfoRead.pcrSelection.sizeOfSelect);

View file

@ -13,6 +13,13 @@ stdenv.mkDerivation rec {
sourceRoot = ".";
patches = [
(fetchurl {
url = https://sources.debian.org/data/main/t/tpm-tools/1.3.9.1-0.1/debian/patches/05-openssl1.1_fix_data_mgmt.patch;
sha256 = "161yysw4wgy3spsz6p1d0ib0h5pnrqm8bdh1l71c4hz6a6wpcyxj";
})
];
nativeBuildInputs = [ perl ];
buildInputs = [ trousers openssl opencryptoki ];

View file

@ -332,6 +332,7 @@ mapAliases ({
spice_protocol = spice-protocol; # added 2018-02-25
sqlite3_analyzer = sqlite-analyzer; # added 2018-05-22
sqliteInteractive = sqlite-interactive; # added 2014-12-06
squid4 = squid; # added 2019-08-22
sshfsFuse = sshfs-fuse; # added 2016-09
suil-qt5 = suil; # added 2018-05-01
surf-webkit2 = surf; # added 2017-04-02

View file

@ -1189,7 +1189,9 @@ in
brltty = callPackage ../tools/misc/brltty { };
bro = callPackage ../applications/networking/ids/bro { };
bro = callPackage ../applications/networking/ids/bro {
openssl = openssl_1_0_2;
};
brook = callPackage ../tools/networking/brook { };
@ -2116,7 +2118,9 @@ in
cabextract = callPackage ../tools/archivers/cabextract { };
cadaver = callPackage ../tools/networking/cadaver { };
cadaver = callPackage ../tools/networking/cadaver {
openssl = openssl_1_0_2;
};
davix = callPackage ../tools/networking/davix { };
@ -2640,7 +2644,9 @@ in
dmd = callPackage ../development/compilers/dmd { };
dmg2img = callPackage ../tools/misc/dmg2img { };
dmg2img = callPackage ../tools/misc/dmg2img {
openssl = openssl_1_0_2;
};
docbook2odf = callPackage ../tools/typesetting/docbook2odf { };
@ -2927,7 +2933,9 @@ in
ethtool = callPackage ../tools/misc/ethtool { };
ettercap = callPackage ../applications/networking/sniffers/ettercap { };
ettercap = callPackage ../applications/networking/sniffers/ettercap {
openssl = openssl_1_0_2;
};
euca2ools = callPackage ../tools/virtualization/euca2ools { };
@ -3629,7 +3637,9 @@ in
gtk-vnc = callPackage ../tools/admin/gtk-vnc {};
gtmess = callPackage ../applications/networking/instant-messengers/gtmess { };
gtmess = callPackage ../applications/networking/instant-messengers/gtmess {
openssl = openssl_1_0_2;
};
gup = callPackage ../development/tools/build-managers/gup {};
@ -3643,7 +3653,9 @@ in
gupnp-tools = callPackage ../tools/networking/gupnp-tools {};
gvpe = callPackage ../tools/networking/gvpe { };
gvpe = callPackage ../tools/networking/gvpe {
openssl = openssl_1_0_2;
};
gvolicon = callPackage ../tools/audio/gvolicon {};
@ -3908,7 +3920,9 @@ in
packages = config.ihaskell.packages or (self: []);
};
imapproxy = callPackage ../tools/networking/imapproxy { };
imapproxy = callPackage ../tools/networking/imapproxy {
openssl = openssl_1_0_2;
};
imapsync = callPackage ../tools/networking/imapsync { };
@ -3972,7 +3986,9 @@ in
buildGoPackage = buildGo110Package;
};
ipmitool = callPackage ../tools/system/ipmitool { };
ipmitool = callPackage ../tools/system/ipmitool {
openssl = openssl_1_0_2;
};
ipmiutil = callPackage ../tools/system/ipmiutil {};
@ -4386,26 +4402,18 @@ in
nodejs-slim = nodejs-slim-10_x;
nodejs-10_x = callPackage ../development/web/nodejs/v10.nix {
openssl = openssl_1_1;
};
nodejs-10_x = callPackage ../development/web/nodejs/v10.nix { };
nodejs-slim-10_x = callPackage ../development/web/nodejs/v10.nix {
enableNpm = false;
openssl = openssl_1_1;
};
nodejs-11_x = callPackage ../development/web/nodejs/v11.nix {
openssl = openssl_1_1;
};
nodejs-11_x = callPackage ../development/web/nodejs/v11.nix { };
nodejs-slim-11_x = callPackage ../development/web/nodejs/v11.nix {
enableNpm = false;
openssl = openssl_1_1;
};
nodejs-12_x = callPackage ../development/web/nodejs/v12.nix {
openssl = openssl_1_1;
};
nodejs-12_x = callPackage ../development/web/nodejs/v12.nix { };
nodejs-slim-12_x = callPackage ../development/web/nodejs/v12.nix {
enableNpm = false;
openssl = openssl_1_1;
};
# Update this when adding the newest nodejs major version!
@ -4444,9 +4452,7 @@ in
ldapvi = callPackage ../tools/misc/ldapvi { };
ldns = callPackage ../development/libraries/ldns {
openssl = openssl_1_1;
};
ldns = callPackage ../development/libraries/ldns { };
leafpad = callPackage ../applications/editors/leafpad { };
@ -4520,7 +4526,7 @@ in
libmongo-client = callPackage ../development/libraries/libmongo-client { };
libmesode = callPackage ../development/libraries/libmesode { };
libmesode = callPackage ../development/libraries/libmesode {};
libnabo = callPackage ../development/libraries/libnabo { };
@ -5196,7 +5202,12 @@ in
pam = if stdenv.isLinux then pam else null;
};
openssh_hpn = pkgs.appendToName "with-hpn" (openssh.override { hpnSupport = true; });
openssh_hpn = pkgs.appendToName "with-hpn" (openssh.override {
hpnSupport = true;
# the hpn patchset does not yet support openssl>1.0.2
# https://github.com/rapier1/openssh-portable/issues/14
openssl = openssl_1_0_2;
});
openssh_gssapi = pkgs.appendToName "with-gssapi" (openssh.override {
withGssapiPatches = true;
@ -5208,7 +5219,7 @@ in
opentsdb = callPackage ../tools/misc/opentsdb {};
openvpn = callPackage ../tools/networking/openvpn { };
openvpn = callPackage ../tools/networking/openvpn {};
openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
@ -5226,7 +5237,9 @@ in
opentracing-cpp = callPackage ../development/libraries/opentracing-cpp { };
openvswitch = callPackage ../os-specific/linux/openvswitch { };
openvswitch = callPackage ../os-specific/linux/openvswitch {
openssl = openssl_1_0_2;
};
optipng = callPackage ../tools/graphics/optipng {
libpng = libpng12;
@ -5333,7 +5346,10 @@ in
pngout = callPackage ../tools/graphics/pngout { };
ipsecTools = callPackage ../os-specific/linux/ipsec-tools { flex = flex_2_5_35; };
ipsecTools = callPackage ../os-specific/linux/ipsec-tools {
flex = flex_2_5_35;
openssl = openssl_1_0_2;
};
patch = gnupatch;
@ -5394,7 +5410,9 @@ in
libusb = libusb1;
};
bully = callPackage ../tools/networking/bully { };
bully = callPackage ../tools/networking/bully {
openssl = openssl_1_0_2;
};
pcapc = callPackage ../tools/networking/pcapc { };
@ -5567,7 +5585,9 @@ in
proxychains = callPackage ../tools/networking/proxychains { };
proxytunnel = callPackage ../tools/misc/proxytunnel { };
proxytunnel = callPackage ../tools/misc/proxytunnel {
openssl = openssl_1_0_2;
};
pws = callPackage ../tools/misc/pws { };
@ -5659,7 +5679,6 @@ in
qesteidutil = libsForQt5.callPackage ../tools/security/qesteidutil { } ;
qdigidoc = libsForQt5.callPackage ../tools/security/qdigidoc { } ;
esteidfirefoxplugin = callPackage ../applications/networking/browsers/mozilla-plugins/esteidfirefoxplugin { };
qgrep = callPackage ../tools/text/qgrep {};
@ -5743,7 +5762,9 @@ in
rt = callPackage ../servers/rt { };
rtmpdump = callPackage ../tools/video/rtmpdump { };
rtmpdump = callPackage ../tools/video/rtmpdump {
openssl = openssl_1_0_2;
};
rtmpdump_gnutls = rtmpdump.override { gnutlsSupport = true; opensslSupport = false; };
reaverwps = callPackage ../tools/networking/reaver-wps {};
@ -6029,7 +6050,9 @@ in
shout = nodePackages.shout;
shellinabox = callPackage ../servers/shellinabox { };
shellinabox = callPackage ../servers/shellinabox {
openssl = openssl_1_0_2;
};
shrikhand = callPackage ../data/fonts/shrikhand { };
@ -6346,7 +6369,9 @@ in
tcpdump = callPackage ../tools/networking/tcpdump { };
tcpflow = callPackage ../tools/networking/tcpflow { };
tcpflow = callPackage ../tools/networking/tcpflow {
openssl = openssl_1_0_2;
};
tcpkali = callPackage ../applications/networking/tcpkali { };
@ -6420,7 +6445,7 @@ in
tilix = callPackage ../applications/misc/tilix { };
tinc_pre = callPackage ../tools/networking/tinc/pre.nix { };
tinc_pre = callPackage ../tools/networking/tinc/pre.nix {};
tiny8086 = callPackage ../applications/virtualization/8086tiny { };
@ -6463,7 +6488,6 @@ in
toml2nix = (callPackage ../tools/toml2nix { }).toml2nix { };
tor = callPackage ../tools/security/tor {
openssl = openssl_1_1;
# remove this, when libevent's openssl is upgraded to 1_1_0 or newer.
libevent = libevent.override {
sslSupport = false;
@ -6533,7 +6557,9 @@ in
trilium = callPackage ../applications/office/trilium { };
trousers = callPackage ../tools/security/trousers { };
trousers = callPackage ../tools/security/trousers {
openssl = openssl_1_0_2;
};
trx = callPackage ../tools/audio/trx { };
@ -6646,9 +6672,11 @@ in
vbetool = callPackage ../tools/system/vbetool { };
vde2 = callPackage ../tools/networking/vde2 { };
vde2 = callPackage ../tools/networking/vde2 {
openssl = openssl_1_0_2;
};
vboot_reference = callPackage ../tools/system/vboot_reference { };
vboot_reference = callPackage ../tools/system/vboot_reference {};
vcftools = callPackage ../applications/science/biology/vcftools { };
@ -6662,8 +6690,6 @@ in
verilog = callPackage ../applications/science/electronics/verilog {};
vfdecrypt = callPackage ../tools/misc/vfdecrypt { };
video2midi = callPackage ../tools/audio/video2midi {
pythonPackages = python3Packages;
};
@ -6734,7 +6760,9 @@ in
inherit (python27Packages) ldap;
};
vtun = callPackage ../tools/networking/vtun { };
vtun = callPackage ../tools/networking/vtun {
openssl = openssl_1_0_2;
};
waifu2x-converter-cpp = callPackage ../tools/graphics/waifu2x-converter-cpp { };
@ -6853,7 +6881,7 @@ in
uemacs = callPackage ../applications/editors/uemacs { };
uftp = callPackage ../servers/uftp { };
uftp = callPackage ../servers/uftp {};
uhttpmock = callPackage ../development/libraries/uhttpmock { };
@ -10134,8 +10162,6 @@ in
a52dec = callPackage ../development/libraries/a52dec { };
aacskeys = callPackage ../development/libraries/aacskeys { };
aalib = callPackage ../development/libraries/aalib { };
abseil-cpp = callPackage ../development/libraries/abseil-cpp { };
@ -10296,7 +10322,7 @@ in
boost_process = callPackage ../development/libraries/boost-process { };
botan = callPackage ../development/libraries/botan { };
botan = callPackage ../development/libraries/botan { openssl = openssl_1_0_2; };
botan2 = callPackage ../development/libraries/botan/2.0.nix { };
box2d = callPackage ../development/libraries/box2d { };
@ -10424,7 +10450,9 @@ in
cpp-ipfs-api = callPackage ../development/libraries/cpp-ipfs-api { };
cpp-netlib = callPackage ../development/libraries/cpp-netlib { };
cpp-netlib = callPackage ../development/libraries/cpp-netlib {
openssl = openssl_1_0_2;
};
uri = callPackage ../development/libraries/uri { };
cppcms = callPackage ../development/libraries/cppcms { };
@ -12048,7 +12076,9 @@ in
libksba = callPackage ../development/libraries/libksba { };
libksi = callPackage ../development/libraries/libksi { };
libksi = callPackage ../development/libraries/libksi {
openssl = openssl_1_0_2;
};
liblinear = callPackage ../development/libraries/liblinear { };
@ -12645,7 +12675,9 @@ in
ogre = ogre1_9;
};
mysocketw = callPackage ../development/libraries/mysocketw { };
mysocketw = callPackage ../development/libraries/mysocketw {
openssl = openssl_1_0_2;
};
mythes = callPackage ../development/libraries/mythes { };
@ -12674,7 +12706,9 @@ in
neon = callPackage ../development/libraries/neon { };
neon_0_29 = callPackage ../development/libraries/neon/0.29.nix { };
neon_0_29 = callPackage ../development/libraries/neon/0.29.nix {
openssl = openssl_1_0_2;
};
nettle = callPackage ../development/libraries/nettle { };
@ -12838,7 +12872,7 @@ in
wolfssl = callPackage ../development/libraries/wolfssl { };
openssl = openssl_1_0_2;
openssl = openssl_1_1;
inherit (callPackages ../development/libraries/openssl { })
openssl_1_0_2
@ -13047,20 +13081,6 @@ in
developerBuild = true;
});
qt56 = recurseIntoAttrs (makeOverridable
(import ../development/libraries/qt-5/5.6) {
inherit newScope;
inherit stdenv fetchurl fetchpatch makeSetupHook makeWrapper;
bison = bison2; # error: too few arguments to function 'int yylex(...
inherit cups;
harfbuzz = harfbuzzFull;
inherit libGL;
inherit perl;
inherit (gst_all_1) gstreamer gst-plugins-base;
});
libsForQt56 = lib.makeScope qt56.newScope mkLibsForQt5;
qt59 = recurseIntoAttrs (makeOverridable
(import ../development/libraries/qt-5/5.9) {
inherit newScope;
@ -13695,7 +13715,9 @@ in
tcllib = callPackage ../development/libraries/tcllib { };
tcltls = callPackage ../development/libraries/tcltls { };
tcltls = callPackage ../development/libraries/tcltls {
openssl = openssl_1_0_2;
};
tclx = callPackage ../development/libraries/tclx { };
@ -13820,6 +13842,7 @@ in
ucommon_openssl = callPackage ../development/libraries/ucommon {
gnutls = null;
openssl = openssl_1_0_2;
};
ucommon_gnutls = lowPrio (ucommon.override {
@ -14494,7 +14517,7 @@ in
dico = callPackage ../servers/dico { };
dict = callPackage ../servers/dict {
libmaa = callPackage ../servers/dict/libmaa.nix {};
libmaa = callPackage ../servers/dict/libmaa.nix {};
};
dictdDBs = recurseIntoAttrs (callPackages ../servers/dict/dictd-db.nix {});
@ -14557,7 +14580,6 @@ in
freeradius = callPackage ../servers/freeradius { };
freeswitch = callPackage ../servers/sip/freeswitch {
openssl = openssl_1_0_2;
inherit (darwin.apple_sdk.frameworks) SystemConfiguration;
};
@ -14694,14 +14716,12 @@ in
# We don't use `with` statement here on purpose!
# See https://github.com/NixOS/nixpkgs/pull/10474/files#r42369334
modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ];
openssl = openssl_1_1;
};
nginxMainline = callPackage ../servers/http/nginx/mainline.nix {
# We don't use `with` statement here on purpose!
# See https://github.com/NixOS/nixpkgs/pull/10474/files#r42369334
modules = [ nginxModules.dav nginxModules.moreheaders ];
openssl = openssl_1_1;
};
nginxModules = callPackage ../servers/http/nginx/modules.nix { };
@ -14817,6 +14837,7 @@ in
mongodb = callPackage ../servers/nosql/mongodb {
sasl = cyrus_sasl;
boost = boost160;
openssl = openssl_1_0_2;
inherit (darwin.apple_sdk.frameworks) Security;
};
@ -14891,7 +14912,7 @@ in
oracleXE = callPackage ../servers/sql/oracle-xe { };
softether_4_25 = callPackage ../servers/softether/4.25.nix { };
softether_4_25 = callPackage ../servers/softether/4.25.nix { openssl = openssl_1_0_2; };
softether_4_29 = callPackage ../servers/softether/4.29.nix { };
softether = softether_4_29;
@ -15129,7 +15150,6 @@ in
spawn_fcgi = callPackage ../servers/http/spawn-fcgi { };
squid = callPackage ../servers/squid { };
squid4 = callPackage ../servers/squid/4.nix { };
sslh = callPackage ../servers/sslh { };
@ -15183,9 +15203,13 @@ in
virtlyst = libsForQt5.callPackage ../servers/web-apps/virtlyst { };
virtuoso6 = callPackage ../servers/sql/virtuoso/6.x.nix { };
virtuoso6 = callPackage ../servers/sql/virtuoso/6.x.nix {
openssl = openssl_1_0_2;
};
virtuoso7 = callPackage ../servers/sql/virtuoso/7.x.nix { };
virtuoso7 = callPackage ../servers/sql/virtuoso/7.x.nix {
openssl = openssl_1_0_2;
};
virtuoso = virtuoso6;
@ -15500,7 +15524,9 @@ in
pcm = callPackage ../os-specific/linux/pcm { };
ima-evm-utils = callPackage ../os-specific/linux/ima-evm-utils { };
ima-evm-utils = callPackage ../os-specific/linux/ima-evm-utils {
openssl = openssl_1_0_2;
};
intel2200BGFirmware = callPackage ../os-specific/linux/firmware/intel2200BGFirmware { };
@ -16127,7 +16153,9 @@ in
quicktemplate = callPackage ../development/tools/quicktemplate { };
gogoclient = callPackage ../os-specific/linux/gogoclient { };
gogoclient = callPackage ../os-specific/linux/gogoclient {
openssl = openssl_1_0_2;
};
linux-pam = callPackage ../os-specific/linux/pam { };
@ -16161,7 +16189,9 @@ in
pam_pgsql = callPackage ../os-specific/linux/pam_pgsql { };
pam_ssh_agent_auth = callPackage ../os-specific/linux/pam_ssh_agent_auth { };
pam_ssh_agent_auth = callPackage ../os-specific/linux/pam_ssh_agent_auth {
openssl = openssl_1_0_2;
};
pam_u2f = callPackage ../os-specific/linux/pam_u2f { };
@ -16914,7 +16944,6 @@ in
powerline-rs = callPackage ../tools/misc/powerline-rs {
inherit (darwin.apple_sdk.frameworks) Security;
openssl = openssl_1_1;
};
profont = callPackage ../data/fonts/profont { };
@ -17275,7 +17304,6 @@ in
clightning = altcoins.clightning;
lnd = altcoins.lnd;
bitcoin-xt = altcoins.bitcoin-xt;
cryptop = altcoins.cryptop;
jnetmap = callPackage ../applications/networking/jnetmap {};
@ -17640,15 +17668,6 @@ in
cutecom = libsForQt5.callPackage ../tools/misc/cutecom { };
cutegram =
let callpkg = libsForQt56.callPackage;
in callpkg ../applications/networking/instant-messengers/telegram/cutegram rec {
libqtelegram-aseman-edition = callpkg ../applications/networking/instant-messengers/telegram/libqtelegram-aseman-edition { };
telegram-qml = callpkg ../applications/networking/instant-messengers/telegram/telegram-qml {
inherit libqtelegram-aseman-edition;
};
};
cvs = callPackage ../applications/version-management/cvs { };
cvsps = callPackage ../applications/version-management/cvsps { };
@ -17850,7 +17869,9 @@ in
electrum-ltc = callPackage ../applications/misc/electrum/ltc.nix { };
elinks = callPackage ../applications/networking/browsers/elinks { };
elinks = callPackage ../applications/networking/browsers/elinks {
openssl = openssl_1_0_2;
};
elvis = callPackage ../applications/editors/elvis { };
@ -18157,7 +18178,9 @@ in
fehlstart = callPackage ../applications/misc/fehlstart { };
fetchmail = callPackage ../applications/misc/fetchmail { };
fetchmail = callPackage ../applications/misc/fetchmail {
openssl = openssl_1_0_2;
};
fff = callPackage ../applications/misc/fff { };
@ -18205,7 +18228,9 @@ in
freewheeling = callPackage ../applications/audio/freewheeling { };
fribid = callPackage ../applications/networking/browsers/mozilla-plugins/fribid { };
fribid = callPackage ../applications/networking/browsers/mozilla-plugins/fribid {
openssl = openssl_1_0_2;
};
fritzing = libsForQt5.callPackage ../applications/science/electronics/fritzing { };
@ -18489,7 +18514,7 @@ in
get_iplayer = callPackage ../applications/misc/get_iplayer {};
getxbook = callPackage ../applications/misc/getxbook {};
getxbook = callPackage ../applications/misc/getxbook { };
ghq = gitAndTools.ghq;
@ -19473,7 +19498,6 @@ in
monero = callPackage ../applications/altcoins/monero {
inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC;
boost = boost16x;
};
monero-gui = libsForQt5.callPackage ../applications/altcoins/monero-gui {
@ -20346,10 +20370,6 @@ in
rdup = callPackage ../tools/backup/rdup { };
realpine = callPackage ../applications/networking/mailreaders/realpine {
tcl = tcl-8_5;
};
reaper = callPackage ../applications/audio/reaper { };
recode = callPackage ../tools/text/recode { };
@ -20520,8 +20540,6 @@ in
ncurses = ncurses5;
};
ssvnc = callPackage ../applications/networking/remote/ssvnc { };
stupidterm = callPackage ../applications/misc/stupidterm {
gtk = gtk3;
};
@ -20820,8 +20838,6 @@ in
'';
tdesktop = qt5.callPackage ../applications/networking/instant-messengers/telegram/tdesktop { };
telegram-cli = callPackage ../applications/networking/instant-messengers/telegram/telegram-cli { };
telepathy-gabble = callPackage ../applications/networking/instant-messengers/telepathy/gabble { };
telepathy-haze = callPackage ../applications/networking/instant-messengers/telepathy/haze {};
@ -24474,7 +24490,9 @@ in
wordpress = callPackage ../servers/web-apps/wordpress { };
wraith = callPackage ../applications/networking/irc/wraith { };
wraith = callPackage ../applications/networking/irc/wraith {
openssl = openssl_1_0_2;
};
wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { };
@ -24634,7 +24652,7 @@ in
inherit pkgs;
};
golden-cheetah = libsForQt56.callPackage ../applications/misc/golden-cheetah {};
golden-cheetah = libsForQt5.callPackage ../applications/misc/golden-cheetah {};
linkchecker = callPackage ../tools/networking/linkchecker { };
@ -24673,8 +24691,6 @@ in
fpm2 = callPackage ../tools/security/fpm2 { };
tw-rs = callPackage ../misc/tw-rs { };
simplenote = callPackage ../applications/misc/simplenote { };
hy = callPackage ../development/interpreters/hy {};

View file

@ -1,4 +1,4 @@
{ callPackage, wxGTK30 }:
{ callPackage, wxGTK30, openssl_1_0_2 }:
rec {
lib = callPackage ../development/beam-modules/lib.nix {};
@ -16,6 +16,7 @@ rec {
# These are standard Erlang versions, using the generic builder.
erlangR18 = lib.callErlang ../development/interpreters/erlang/R18.nix {
wxGTK = wxGTK30;
openssl = openssl_1_0_2;
};
erlangR18_odbc = erlangR18.override { odbcSupport = true; };
erlangR18_javac = erlangR18.override { javacSupport = true; };
@ -25,6 +26,7 @@ rec {
erlangR18_nox = erlangR18.override { wxSupport = false; };
erlangR19 = lib.callErlang ../development/interpreters/erlang/R19.nix {
wxGTK = wxGTK30;
openssl = openssl_1_0_2;
};
erlangR19_odbc = erlangR19.override { odbcSupport = true; };
erlangR19_javac = erlangR19.override { javacSupport = true; };

Some files were not shown because too many files have changed in this diff Show more