default.nix
1006 bytes
1{
2 hyprland,
3
4 lib,
5 nix-gitignore,
6 keepDebugInfo,
7 stdenv ? (keepDebugInfo hyprland.stdenv),
8
9 cmake,
10 ninja,
11 pkg-config,
12 pango,
13 cairo,
14
15 debug ? false,
16 hlversion ? "git",
17 versionCheck ? true,
18}: hyprland.stdenv.mkDerivation {
19 pname = "hy3";
20 version = "hl${hlversion}${lib.optionalString debug "-debug"}";
21 src = nix-gitignore.gitignoreSource [] ./.;
22
23 nativeBuildInputs = [
24 cmake
25 ninja
26 pkg-config
27 ];
28
29 buildInputs = [
30 hyprland.dev
31 pango
32 cairo
33 ] ++ hyprland.buildInputs;
34
35 cmakeFlags = lib.optional (!versionCheck) "-DHY3_NO_VERSION_CHECK=ON";
36
37 cmakeBuildType = if debug
38 then "Debug"
39 else "RelWithDebInfo";
40
41 buildPhase = "ninjaBuildPhase";
42 enableParallelBuilding = true;
43 dontStrip = true;
44
45 meta = with lib; {
46 homepage = "https://github.com/outfoxxed/hy3";
47 description = "Hyprland plugin for an i3 like manual tiling layout";
48 license = licenses.gpl3;
49 platforms = platforms.linux;
50 };
51}