2024-08-23 14:27:09 +02:00
|
|
|
{ self, nixpkgs, ... }: final: prev:
|
2024-08-18 13:47:18 +02:00
|
|
|
|
|
|
|
let
|
2024-08-23 14:27:09 +02:00
|
|
|
inherit (final) system;
|
2024-08-18 13:47:18 +02:00
|
|
|
inherit (nixpkgs.lib.attrsets) genAttrs;
|
|
|
|
inherit (nixpkgs.lib.lists) remove toList;
|
|
|
|
inherit (nixpkgs.lib.strings) mesonBool mesonEnable;
|
2024-08-24 14:01:49 +02:00
|
|
|
inherit (self.lib) flags packages;
|
2024-08-24 17:47:19 +02:00
|
|
|
|
|
|
|
final' = final;
|
|
|
|
prev' = prev;
|
2024-08-18 13:47:18 +02:00
|
|
|
in genAttrs [
|
|
|
|
"SDL2"
|
|
|
|
"cairo"
|
|
|
|
"dbus"
|
|
|
|
"ghostscript"
|
|
|
|
"gobject-introspection"
|
|
|
|
"gtk3"
|
|
|
|
"gtk4"
|
|
|
|
"imlib2"
|
|
|
|
"libcaca"
|
|
|
|
"pango"
|
|
|
|
"pipewire"
|
|
|
|
] (pkg: prev.${pkg}.override { x11Support = false; })
|
|
|
|
|
|
|
|
// genAttrs [
|
|
|
|
"intel-media-driver"
|
|
|
|
"mupdf"
|
|
|
|
] (pkg: prev.${pkg}.override { enableX11 = false; })
|
|
|
|
|
|
|
|
// genAttrs [
|
|
|
|
"hyprland"
|
|
|
|
"sway"
|
|
|
|
"sway-unwrapped"
|
|
|
|
"swayfx"
|
|
|
|
"swayfx-unwrapped"
|
|
|
|
"wlroots"
|
|
|
|
] (pkg: prev.${pkg}.override { enableXWayland = false; })
|
|
|
|
|
|
|
|
// {
|
2024-08-23 14:27:09 +02:00
|
|
|
xvfb-run = self.packages.${system}.wayland-headless;
|
|
|
|
|
2024-08-18 13:47:18 +02:00
|
|
|
beam = prev.beam_nox;
|
|
|
|
graphviz = prev.graphviz-nox;
|
|
|
|
|
|
|
|
gammastep = prev.gammastep.override {
|
|
|
|
withRandr = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
gd = prev.gd.override { withXorg = false; };
|
2024-08-22 23:07:55 +02:00
|
|
|
|
2024-08-18 13:47:18 +02:00
|
|
|
gst_all_1 = prev.gst_all_1 // genAttrs [
|
|
|
|
"gst-plugins-base"
|
|
|
|
"gst-plugins-good"
|
2024-08-22 18:51:34 +02:00
|
|
|
] (pkg: prev.gst_all_1.${pkg}.override { enableX11 = false; }) // {
|
|
|
|
gst-vaapi = prev.gst_all_1.gst-vaapi.overrideAttrs (prevAttrs: {
|
|
|
|
mesonFlags = prevAttrs.mesonFlags or [ ] ++ [
|
|
|
|
(mesonEnable "x11" false)
|
|
|
|
(mesonEnable "glx" false)
|
|
|
|
];
|
|
|
|
});
|
|
|
|
};
|
2024-08-18 13:47:18 +02:00
|
|
|
|
|
|
|
imagemagick = prev.imagemagick.override {
|
|
|
|
libX11Support = false;
|
|
|
|
libXtSupport = false;
|
|
|
|
};
|
|
|
|
|
2024-08-21 22:35:05 +02:00
|
|
|
imv = (prev.imv.overrideAttrs(prevAttrs: {
|
|
|
|
buildInputs = prevAttrs.buildInputs or [ ]
|
|
|
|
++ [ final.libGL ];
|
|
|
|
})).override {
|
|
|
|
withWindowSystem = "wayland";
|
|
|
|
};
|
|
|
|
|
2024-08-23 15:57:17 +02:00
|
|
|
inkscape = prev.inkscape.overrideAttrs (prevAttrs: {
|
|
|
|
cmakeFlags = prevAttrs.cmakeFlags or [ ]
|
|
|
|
++ [ "-DWITH_X11:BOOL=OFF" ];
|
|
|
|
});
|
|
|
|
|
2024-08-18 13:47:18 +02:00
|
|
|
libepoxy = (prev.libepoxy.overrideAttrs (prevAttrs: {
|
|
|
|
buildInputs = prevAttrs.buildInputs or [ ]
|
|
|
|
++ [ final.libGL ];
|
|
|
|
mesonFlags = prevAttrs.mesonFlags or [ ]
|
2024-08-24 14:01:49 +02:00
|
|
|
|> flags.subst { "-Degl=no" = "-Degl=yes"; };
|
2024-08-18 13:47:18 +02:00
|
|
|
})).override {
|
|
|
|
x11Support = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
libgnomekbd = prev.libgnomekbd.overrideAttrs (prevAttrs: {
|
|
|
|
mesonFlags = prevAttrs.mesonFlags or [ ]
|
|
|
|
++ [ (mesonBool "tests" false) ];
|
2024-08-24 17:47:19 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
libsForQt5 = prev.libsForQt5.overrideScope (final: prev: {
|
|
|
|
inherit (final') qt5;
|
2024-08-24 20:51:36 +02:00
|
|
|
|
|
|
|
kguiaddons = prev.kguiaddons.overrideAttrs (prevAttrs: {
|
|
|
|
cmakeFlags = prevAttrs.cmakeFlags or [ ]
|
|
|
|
++ [ "-DWITH_X11:BOOL=OFF" ];
|
|
|
|
});
|
2024-08-18 13:47:18 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
mesa = (prev.mesa.overrideAttrs (prevAttrs: {
|
|
|
|
mesonFlags = prevAttrs.mesonFlags or [ ] ++ [
|
|
|
|
(mesonEnable "xlib-lease" false)
|
|
|
|
(mesonEnable "glx" false)
|
|
|
|
(mesonEnable "gallium-vdpau" false)
|
|
|
|
];
|
|
|
|
})).override {
|
|
|
|
eglPlatforms = [ "wayland" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
mpv-unwrapped = prev.mpv-unwrapped.override {
|
|
|
|
x11Support = false;
|
|
|
|
xineramaSupport = false;
|
|
|
|
xvSupport = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
mpv = final.mpv-unwrapped.wrapper {
|
|
|
|
mpv = final.mpv-unwrapped;
|
|
|
|
};
|
|
|
|
|
2024-08-24 17:47:19 +02:00
|
|
|
qt5 = prev.qt5.overrideScope (final: prev: {
|
|
|
|
qtbase = (prev.qtbase.overrideAttrs (prevAttrs: {
|
|
|
|
env = prevAttrs.env or { } // {
|
|
|
|
NIX_CFLAGS_COMPILE = prevAttrs.env.NIX_CFLAGS_COMPILE or ""
|
|
|
|
|> flags.remove [ "-DUSE_X11" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
configureFlags = prevAttrs.configureFlags or [ ]
|
|
|
|
|> flags.remove [ "-qpa xcb" ]
|
|
|
|
|> flags.subst { "-xcb" = "-no-xcb"; };
|
|
|
|
})).override {
|
|
|
|
withGtk3 = false;
|
|
|
|
withQttranslation = false;
|
|
|
|
};
|
|
|
|
});
|
|
|
|
|
2024-08-18 13:47:18 +02:00
|
|
|
w3m = prev.w3m.override {
|
|
|
|
x11Support = false;
|
|
|
|
imlib2 = final.imlib2;
|
|
|
|
};
|
|
|
|
|
|
|
|
utsushi = prev.utsushi.overrideAttrs (prevAttrs: {
|
2024-08-24 14:01:49 +02:00
|
|
|
buildInputs = prevAttrs.buildInputs or [ ]
|
|
|
|
|> packages.remove [ "gtkmm" ];
|
|
|
|
configureFlags = prevAttrs.configureFlags or [ ]
|
|
|
|
|> flags.remove [ "--with-gtkmm" ];
|
2024-08-18 13:47:18 +02:00
|
|
|
});
|
|
|
|
|
2024-08-21 22:35:39 +02:00
|
|
|
vim-full = prev.vim-full.override {
|
|
|
|
guiSupport = false;
|
|
|
|
};
|
|
|
|
|
2024-08-18 13:47:18 +02:00
|
|
|
wayland = prev.wayland.override {
|
|
|
|
# broken
|
|
|
|
withDocumentation = false;
|
|
|
|
};
|
|
|
|
}
|