36 lines
1 KiB
Nix
36 lines
1 KiB
Nix
{ stdenv, fetchFromGitHub, xorg, boost, cmake, gtest }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "xlayoutdisplay";
|
|
version = "1.1.2";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "alex-courtis";
|
|
repo = pname;
|
|
rev = "v${version}";
|
|
sha256 = "0n3vg25gzwn1pcg6caxyyd1xf2w6n98m6jpxc70kqpxfqldxwl0m";
|
|
};
|
|
|
|
nativeBuildInputs = [ cmake ];
|
|
buildInputs = with xorg; [ libX11 libXrandr libXcursor boost ];
|
|
checkInputs = [ gtest ];
|
|
|
|
doCheck = true;
|
|
|
|
# format security fixup
|
|
postPatch = ''
|
|
substituteInPlace test/test-Monitors.cpp \
|
|
--replace 'fprintf(lidStateFile, contents);' \
|
|
'fputs(contents, lidStateFile);'
|
|
|
|
substituteInPlace CMakeLists.txt --replace "set(Boost_USE_STATIC_LIBS ON)" ""
|
|
'';
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Detects and arranges linux display outputs, using XRandR for detection and xrandr for arrangement";
|
|
homepage = "https://github.com/alex-courtis/xlayoutdisplay";
|
|
maintainers = with maintainers; [ dtzWill ];
|
|
license = licenses.asl20;
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|