mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-22 21:06:01 +01:00
Nix: remove HiDPI patches
- remove `hidpiXWayland` option - rename `nvidiaPatches` -> `enableNvidiaPatches` for consistency
This commit is contained in:
parent
0314a727eb
commit
c1bcbdb3dd
4 changed files with 120 additions and 164 deletions
|
@ -65,9 +65,7 @@
|
||||||
hyprland
|
hyprland
|
||||||
hyprland-unwrapped
|
hyprland-unwrapped
|
||||||
hyprland-debug
|
hyprland-debug
|
||||||
hyprland-hidpi
|
|
||||||
hyprland-nvidia
|
hyprland-nvidia
|
||||||
hyprland-no-hidpi
|
|
||||||
# hyprland-extras
|
# hyprland-extras
|
||||||
xdg-desktop-portal-hyprland
|
xdg-desktop-portal-hyprland
|
||||||
hyprland-share-picker
|
hyprland-share-picker
|
||||||
|
|
|
@ -26,31 +26,23 @@
|
||||||
xcbutilwm,
|
xcbutilwm,
|
||||||
xwayland,
|
xwayland,
|
||||||
debug ? false,
|
debug ? false,
|
||||||
|
enableNvidiaPatches ? false,
|
||||||
enableXWayland ? true,
|
enableXWayland ? true,
|
||||||
hidpiXWayland ? false,
|
|
||||||
legacyRenderer ? false,
|
legacyRenderer ? false,
|
||||||
nvidiaPatches ? false,
|
|
||||||
withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd,
|
withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd,
|
||||||
wrapRuntimeDeps ? true,
|
wrapRuntimeDeps ? true,
|
||||||
version ? "git",
|
version ? "git",
|
||||||
commit,
|
commit,
|
||||||
}: let
|
}:
|
||||||
assertXWayland = lib.assertMsg (hidpiXWayland -> enableXWayland) ''
|
stdenv.mkDerivation {
|
||||||
Hyprland: cannot have hidpiXWayland when enableXWayland is false.
|
pname = "hyprland${lib.optionalString enableNvidiaPatches "-nvidia"}${lib.optionalString debug "-debug"}";
|
||||||
'';
|
|
||||||
in
|
|
||||||
assert assertXWayland;
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
pname = "hyprland" + lib.optionalString debug "-debug";
|
|
||||||
inherit version;
|
inherit version;
|
||||||
|
|
||||||
src = lib.cleanSourceWith {
|
src = lib.cleanSourceWith {
|
||||||
filter = name: type: let
|
filter = name: type: let
|
||||||
baseName = baseNameOf (toString name);
|
baseName = baseNameOf (toString name);
|
||||||
in
|
in
|
||||||
! (
|
! (lib.hasSuffix ".nix" baseName);
|
||||||
lib.hasSuffix ".nix" baseName
|
|
||||||
);
|
|
||||||
src = lib.cleanSource ../.;
|
src = lib.cleanSource ../.;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -83,7 +75,7 @@ in
|
||||||
wayland
|
wayland
|
||||||
wayland-protocols
|
wayland-protocols
|
||||||
pciutils
|
pciutils
|
||||||
(wlroots.override {inherit enableXWayland hidpiXWayland nvidiaPatches;})
|
(wlroots.override {inherit enableNvidiaPatches;})
|
||||||
]
|
]
|
||||||
++ lib.optionals enableXWayland [libxcb xcbutilwm xwayland]
|
++ lib.optionals enableXWayland [libxcb xcbutilwm xwayland]
|
||||||
++ lib.optionals withSystemd [systemd];
|
++ lib.optionals withSystemd [systemd];
|
||||||
|
@ -136,4 +128,4 @@ in
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
mainProgram = "Hyprland";
|
mainProgram = "Hyprland";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,14 +35,14 @@ in {
|
||||||
commit = self.rev or "";
|
commit = self.rev or "";
|
||||||
inherit (final) udis86 hyprland-protocols;
|
inherit (final) udis86 hyprland-protocols;
|
||||||
};
|
};
|
||||||
|
|
||||||
hyprland-unwrapped = final.hyprland.override {wrapRuntimeDeps = false;};
|
hyprland-unwrapped = final.hyprland.override {wrapRuntimeDeps = false;};
|
||||||
hyprland-debug = final.hyprland.override {debug = true;};
|
hyprland-debug = final.hyprland.override {debug = true;};
|
||||||
hyprland-hidpi = final.hyprland.override {hidpiXWayland = true;};
|
hyprland-nvidia = final.hyprland.override {enableNvidiaPatches = true;};
|
||||||
hyprland-nvidia = final.hyprland.override {nvidiaPatches = true;};
|
hyprland-hidpi =
|
||||||
hyprland-no-hidpi =
|
builtins.trace ''
|
||||||
builtins.trace
|
hyprland-hidpi was removed. Please use the hyprland package.
|
||||||
"hyprland-no-hidpi was removed. Please use the default package."
|
For more information, refer to https://wiki.hyprland.org/Configuring/XWayland.
|
||||||
|
''
|
||||||
final.hyprland;
|
final.hyprland;
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
@ -80,6 +80,7 @@ in {
|
||||||
wlroots-hyprland = final.callPackage ./wlroots.nix {
|
wlroots-hyprland = final.callPackage ./wlroots.nix {
|
||||||
version = "${mkDate (inputs.wlroots.lastModifiedDate or "19700101")}_${inputs.wlroots.shortRev or "dirty"}";
|
version = "${mkDate (inputs.wlroots.lastModifiedDate or "19700101")}_${inputs.wlroots.shortRev or "dirty"}";
|
||||||
src = inputs.wlroots;
|
src = inputs.wlroots;
|
||||||
|
|
||||||
libdisplay-info = prev.libdisplay-info.overrideAttrs (old: {
|
libdisplay-info = prev.libdisplay-info.overrideAttrs (old: {
|
||||||
version = "0.1.1+date=2023-03-02";
|
version = "0.1.1+date=2023-03-02";
|
||||||
src = final.fetchFromGitLab {
|
src = final.fetchFromGitLab {
|
||||||
|
@ -90,6 +91,7 @@ in {
|
||||||
sha256 = "sha256-/q79o13Zvu7x02SBGu0W5yQznQ+p7ltZ9L6cMW5t/o4=";
|
sha256 = "sha256-/q79o13Zvu7x02SBGu0W5yQznQ+p7ltZ9L6cMW5t/o4=";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
libliftoff = prev.libliftoff.overrideAttrs (old: {
|
libliftoff = prev.libliftoff.overrideAttrs (old: {
|
||||||
version = "0.5.0-dev";
|
version = "0.5.0-dev";
|
||||||
src = final.fetchFromGitLab {
|
src = final.fetchFromGitLab {
|
||||||
|
|
|
@ -1,64 +1,28 @@
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
version,
|
version,
|
||||||
src,
|
src,
|
||||||
#
|
|
||||||
wlroots,
|
wlroots,
|
||||||
xwayland,
|
|
||||||
fetchpatch,
|
|
||||||
lib,
|
|
||||||
hwdata,
|
hwdata,
|
||||||
libliftoff,
|
|
||||||
libdisplay-info,
|
libdisplay-info,
|
||||||
hidpiXWayland ? true,
|
libliftoff,
|
||||||
enableXWayland ? true,
|
enableXWayland ? true,
|
||||||
nvidiaPatches ? false,
|
enableNvidiaPatches ? false,
|
||||||
}:
|
}:
|
||||||
assert (lib.assertMsg (hidpiXWayland -> enableXWayland) ''
|
wlroots.overrideAttrs (old: {
|
||||||
wlroots-hyprland: cannot have hidpiXWayland when enableXWayland is false.
|
inherit version src enableXWayland;
|
||||||
'');
|
|
||||||
(wlroots.overrideAttrs
|
pname = "${old.pname}-hyprland${lib.optionalString enableNvidiaPatches "-nvidia"}";
|
||||||
(old: {
|
|
||||||
inherit version src;
|
|
||||||
pname =
|
|
||||||
old.pname
|
|
||||||
+ "-hyprland"
|
|
||||||
+ (
|
|
||||||
if hidpiXWayland
|
|
||||||
then "-hidpi"
|
|
||||||
else ""
|
|
||||||
)
|
|
||||||
+ (
|
|
||||||
if nvidiaPatches
|
|
||||||
then "-nvidia"
|
|
||||||
else ""
|
|
||||||
);
|
|
||||||
patches =
|
patches =
|
||||||
(old.patches or [])
|
(old.patches or [])
|
||||||
++ (lib.optionals (enableXWayland && hidpiXWayland) [
|
++ (lib.optionals enableNvidiaPatches [
|
||||||
# adapted from https://gitlab.freedesktop.org/lilydjwg/wlroots/-/commit/6c5ffcd1fee9e44780a6a8792f74ecfbe24a1ca7
|
|
||||||
./patches/wlroots-hidpi.patch
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/18595000f3a21502fd60bf213122859cc348f9af.diff";
|
|
||||||
sha256 = "sha256-jvfkAMh3gzkfuoRhB4E9T5X1Hu62wgUjj4tZkJm0mrI=";
|
|
||||||
revert = true;
|
|
||||||
})
|
|
||||||
])
|
|
||||||
++ (lib.optionals nvidiaPatches [
|
|
||||||
./patches/wlroots-nvidia.patch
|
./patches/wlroots-nvidia.patch
|
||||||
]);
|
]);
|
||||||
|
|
||||||
buildInputs = old.buildInputs ++ [hwdata libliftoff libdisplay-info];
|
buildInputs = old.buildInputs ++ [hwdata libliftoff libdisplay-info];
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = toString [
|
NIX_CFLAGS_COMPILE = toString [
|
||||||
"-Wno-error=maybe-uninitialized"
|
"-Wno-error=maybe-uninitialized"
|
||||||
];
|
];
|
||||||
}))
|
})
|
||||||
.override {
|
|
||||||
xwayland = xwayland.overrideAttrs (old: {
|
|
||||||
patches =
|
|
||||||
(old.patches or [])
|
|
||||||
++ (lib.optionals hidpiXWayland [
|
|
||||||
./patches/xwayland-vsync.patch
|
|
||||||
./patches/xwayland-hidpi.patch
|
|
||||||
]);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in a new issue