From 5db1fe64c0a30e8a10cfb524018a471df2bbc3fa Mon Sep 17 00:00:00 2001
From: Benjamin Staffin <benley@gmail.com>
Date: Mon, 10 Apr 2017 23:00:10 -0400
Subject: [PATCH 1/2] plasma-nm: patch in the correct path to openvpn
 executable

Fixes #24808
---
 .../plasma-nm/0002-openvpn-binary-path.patch        | 13 +++++++++++++
 pkgs/desktops/plasma-5/plasma-nm/default.nix        |  6 +++++-
 2 files changed, 18 insertions(+), 1 deletion(-)
 create mode 100644 pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch

diff --git a/pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch b/pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch
new file mode 100644
index 000000000000..3bc871f09063
--- /dev/null
+++ b/pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch
@@ -0,0 +1,13 @@
+diff --git a/vpn/openvpn/openvpnadvancedwidget.cpp b/vpn/openvpn/openvpnadvancedwidget.cpp
+index 2f11ba1d..310f11b4 100644
+--- a/vpn/openvpn/openvpnadvancedwidget.cpp
++++ b/vpn/openvpn/openvpnadvancedwidget.cpp
+@@ -75,7 +75,7 @@ OpenVpnAdvancedWidget::OpenVpnAdvancedWidget(const NetworkManager::VpnSetting::P
+     connect(m_ui->cmbProxyType, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this, &OpenVpnAdvancedWidget::proxyTypeChanged);
+ 
+     // start openVPN process and get its cipher list
+-    const QString openVpnBinary = QStandardPaths::findExecutable("openvpn", QStringList() << "/sbin" << "/usr/sbin");
++    const QString openVpnBinary = "@openvpn@/bin/openvpn";
+     const QStringList ciphersArgs(QLatin1String("--show-ciphers"));
+     const QStringList versionArgs(QLatin1String("--version"));
+ 
diff --git a/pkgs/desktops/plasma-5/plasma-nm/default.nix b/pkgs/desktops/plasma-5/plasma-nm/default.nix
index da57653bb083..5d5b73d875c9 100644
--- a/pkgs/desktops/plasma-5/plasma-nm/default.nix
+++ b/pkgs/desktops/plasma-5/plasma-nm/default.nix
@@ -4,7 +4,7 @@
 , knotifications, kservice, kwallet, kwidgetsaddons, kwindowsystem
 , kxmlgui, mobile_broadband_provider_info
 , modemmanager-qt, networkmanager-qt, openconnect, plasma-framework
-, qca-qt5, qtdeclarative, solid
+, qca-qt5, qtdeclarative, solid, openvpn
 }:
 
 plasmaPackage {
@@ -14,6 +14,10 @@ plasmaPackage {
       src = ./0001-mobile-broadband-provider-info-path.patch;
       inherit mobile_broadband_provider_info;
     })
+    (substituteAll {
+      src = ./0002-openvpn-binary-path.patch;
+      inherit openvpn;
+    })
   ];
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   propagatedBuildInputs = [

From 7c75940c5e63161fbb6e75c1f8b204fca60e7dcd Mon Sep 17 00:00:00 2001
From: Benjamin Staffin <benley@gmail.com>
Date: Mon, 10 Apr 2017 23:47:51 -0400
Subject: [PATCH 2/2] plasma-nm: enable parallel building

This thing takes a long time to build.
---
 pkgs/desktops/plasma-5/plasma-nm/default.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/desktops/plasma-5/plasma-nm/default.nix b/pkgs/desktops/plasma-5/plasma-nm/default.nix
index 5d5b73d875c9..736d59b40412 100644
--- a/pkgs/desktops/plasma-5/plasma-nm/default.nix
+++ b/pkgs/desktops/plasma-5/plasma-nm/default.nix
@@ -27,4 +27,5 @@ plasmaPackage {
     mobile_broadband_provider_info modemmanager-qt networkmanager-qt openconnect
     qca-qt5 solid
   ];
+  enableParallelBuilding = true;
 }