nixpkgs/pkgs/applications/misc/barrier/default.nix
Ryan Orendorff 797b706daf barrier: add openssl runtime dependency (#75490)
* barrier: add openssl runtime dependency

The barrier GUI creates an SSL certificate at runtime using OpenSSL. We add
openssl to the path to enable this feature.

* barrier: fix GLib-GIO-ERROR rg.gtk.Settings.FileChooser

When you use the Barrier menu item in the GUI to save the configuration, the
program crashes. wrapGAppsHook fixes this issue.

Error was:
GLib-GIO-ERROR **: 19:03:29.155: Settings schema 'org.gtk.Settings.FileChooser' does not contain a key nixos

* barrier: move cmake buildInputs to nativeBuildInputs
2019-12-18 02:32:32 +01:00

41 lines
1.3 KiB
Nix

{ stdenv, fetchFromGitHub, cmake, curl, xorg, avahi, qtbase, mkDerivation,
openssl, wrapGAppsHook,
avahiWithLibdnssdCompat ? avahi.override { withLibdnssdCompat = true; }
}:
mkDerivation rec {
pname = "barrier";
version = "2.3.2";
src = fetchFromGitHub {
owner = "debauchee";
repo = pname;
rev = "v${version}";
sha256 = "1gbg3p7c0vcsdzsjj1ssx6k8xpj3rpyvais12266f0xvnbvihczd";
};
buildInputs = [ curl xorg.libX11 xorg.libXext xorg.libXtst avahiWithLibdnssdCompat qtbase ];
nativeBuildInputs = [ cmake wrapGAppsHook ];
postFixup = ''
substituteInPlace "$out/share/applications/barrier.desktop" --replace "Exec=barrier" "Exec=$out/bin/barrier"
'';
qtWrapperArgs = [
''--prefix PATH : ${stdenv.lib.makeBinPath [ openssl ]}''
];
meta = {
description = "Open-source KVM software";
longDescription = ''
Barrier is KVM software forked from Symless's synergy 1.9 codebase.
Synergy was a commercialized reimplementation of the original
CosmoSynergy written by Chris Schoeneman.
'';
homepage = https://github.com/debauchee/barrier;
downloadPage = https://github.com/debauchee/barrier/releases;
license = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.phryneas ];
platforms = stdenv.lib.platforms.linux;
};
}