Merge various overlays
This commit is contained in:
parent
a135157229
commit
732f962caf
5 changed files with 171 additions and 234 deletions
|
@ -7,9 +7,6 @@ nixpkgs.lib.composeManyExtensions [
|
||||||
colmena.overlays.default
|
colmena.overlays.default
|
||||||
rust-overlay.overlays.default
|
rust-overlay.overlays.default
|
||||||
niri.overlays.niri
|
niri.overlays.niri
|
||||||
self.overlays.no-x
|
|
||||||
self.overlays.no-alsa
|
|
||||||
self.overlays.no-jemalloc
|
|
||||||
self.overlays.modern-minimal
|
self.overlays.modern-minimal
|
||||||
self.overlays.fixes
|
self.overlays.fixes
|
||||||
] final prev
|
] final prev
|
||||||
|
|
|
@ -1,11 +1,56 @@
|
||||||
{ nixpkgs, ... }: final: prev:
|
{ self, nixpkgs, ... }: final: prev:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
inherit (final) system;
|
||||||
|
inherit (nixpkgs.lib.attrsets) genAttrs;
|
||||||
inherit (nixpkgs.lib.lists) remove;
|
inherit (nixpkgs.lib.lists) remove;
|
||||||
|
inherit (nixpkgs.lib.strings) mesonBool mesonEnable;
|
||||||
|
inherit (self.lib) substituteFlags removePackages;
|
||||||
|
|
||||||
final' = final;
|
final' = final;
|
||||||
prev' = prev;
|
prev' = prev;
|
||||||
in {
|
|
||||||
|
in genAttrs [
|
||||||
|
"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; })
|
||||||
|
|
||||||
|
// {
|
||||||
|
xvfb-run = self.packages.${system}.wayland-headless;
|
||||||
|
|
||||||
|
beam = prev.beam_nox;
|
||||||
|
graphviz = prev.graphviz-nox;
|
||||||
|
jdk8 = prev.jdk8_headless;
|
||||||
|
jre8 = prev.jre8_headless;
|
||||||
|
openjdk8 = prev.openjdk_headless;
|
||||||
|
|
||||||
|
SDL2 = prev.SDL2.override {
|
||||||
|
alsaSupport = false;
|
||||||
|
x11Support = false;
|
||||||
|
};
|
||||||
|
|
||||||
curl = prev.curl.override {
|
curl = prev.curl.override {
|
||||||
gssSupport = false;
|
gssSupport = false;
|
||||||
scpSupport = false;
|
scpSupport = false;
|
||||||
|
@ -18,7 +63,15 @@ in {
|
||||||
withSsh = false;
|
withSsh = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
firefox-unwrapped = prev.firefox-unwrapped.override {
|
firefox-unwrapped = (prev.firefox-unwrapped.overrideAttrs (prevAttrs: {
|
||||||
|
buildInputs = prevAttrs.buildInputs or [ ]
|
||||||
|
++ [ final.alsa-lib ];
|
||||||
|
|
||||||
|
configureFlags = prevAttrs.configureFlags or [ ]
|
||||||
|
|> substituteFlags {
|
||||||
|
"--enable-default-toolkit=.*" = "--enable-default-toolkit=cairo-gtk3-wayland-only";
|
||||||
|
};
|
||||||
|
})).override {
|
||||||
alsaSupport = false;
|
alsaSupport = false;
|
||||||
gssSupport = false;
|
gssSupport = false;
|
||||||
jemallocSupport = false;
|
jemallocSupport = false;
|
||||||
|
@ -27,19 +80,89 @@ in {
|
||||||
|
|
||||||
firefox = final.wrapFirefox final.firefox-unwrapped { };
|
firefox = final.wrapFirefox final.firefox-unwrapped { };
|
||||||
|
|
||||||
gst_all_1 = prev.gst_all_1 // {
|
gammastep = prev.gammastep.override {
|
||||||
|
withRandr = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
gd = prev.gd.override { withXorg = false; };
|
||||||
|
|
||||||
|
gst_all_1 = prev.gst_all_1 // (genAttrs [
|
||||||
|
"gst-plugins-base"
|
||||||
|
"gst-plugins-good"
|
||||||
|
] (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)
|
||||||
|
];
|
||||||
|
});
|
||||||
|
}) // {
|
||||||
gst-plugins-bad = prev.gst_all_1.gst-plugins-bad.overrideAttrs (prevAttrs: {
|
gst-plugins-bad = prev.gst_all_1.gst-plugins-bad.overrideAttrs (prevAttrs: {
|
||||||
mesonFlags = prevAttrs.mesonFlags or [ ]
|
mesonFlags = prevAttrs.mesonFlags or [ ]
|
||||||
++ [ "-Dcurl-ssh2=disabled" ];
|
++ [ "-Dcurl-ssh2=disabled" ];
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
imagemagick = prev.imagemagick.override {
|
||||||
|
libX11Support = false;
|
||||||
|
libXtSupport = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
imv = (prev.imv.overrideAttrs(prevAttrs: {
|
||||||
|
buildInputs = prevAttrs.buildInputs or [ ]
|
||||||
|
++ [ final.libGL ];
|
||||||
|
})).override {
|
||||||
|
withWindowSystem = "wayland";
|
||||||
|
};
|
||||||
|
|
||||||
|
inkscape = prev.inkscape.overrideAttrs (prevAttrs: {
|
||||||
|
cmakeFlags = prevAttrs.cmakeFlags or [ ]
|
||||||
|
++ [ "-DWITH_X11:BOOL=OFF" ];
|
||||||
|
});
|
||||||
|
|
||||||
|
keepassxc = (prev.keepassxc.overrideAttrs (prevAttrs: {
|
||||||
|
buildInputs = prevAttrs.buildInputs
|
||||||
|
|> removePackages [ "kio" ];
|
||||||
|
})).override {
|
||||||
|
withKeePassX11 = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
libcanberra = prev.libcanberra.override {
|
||||||
|
withAlsa = false;
|
||||||
|
gtkSupport = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
libepoxy = (prev.libepoxy.overrideAttrs (prevAttrs: {
|
||||||
|
buildInputs = prevAttrs.buildInputs or [ ]
|
||||||
|
++ [ final.libGL ];
|
||||||
|
mesonFlags = prevAttrs.mesonFlags or [ ]
|
||||||
|
|> substituteFlags { "-Degl=.*" = "-Degl=yes"; };
|
||||||
|
})).override {
|
||||||
|
x11Support = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
libgnomekbd = prev.libgnomekbd.overrideAttrs (prevAttrs: {
|
||||||
|
mesonFlags = prevAttrs.mesonFlags or [ ]
|
||||||
|
++ [ (mesonBool "tests" false) ];
|
||||||
|
});
|
||||||
|
|
||||||
libsForQt5 = prev.libsForQt5.overrideScope (final: prev: {
|
libsForQt5 = prev.libsForQt5.overrideScope (final: prev: {
|
||||||
inherit (final') qt5;
|
inherit (final') qt5;
|
||||||
|
|
||||||
|
kguiaddons = prev.kguiaddons.overrideAttrs (prevAttrs: {
|
||||||
|
cmakeFlags = prevAttrs.cmakeFlags or [ ]
|
||||||
|
++ [ "-DWITH_X11:BOOL=OFF" ];
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
mesa = (prev.mesa.overrideAttrs (prevAttrs: {
|
mesa = (prev.mesa.overrideAttrs (prevAttrs: {
|
||||||
outputs = remove "spirv2dxil" prevAttrs.outputs;
|
outputs = remove "spirv2dxil" prevAttrs.outputs;
|
||||||
|
|
||||||
|
mesonFlags = prevAttrs.mesonFlags or [ ] ++ [
|
||||||
|
(mesonEnable "xlib-lease" false)
|
||||||
|
(mesonEnable "glx" false)
|
||||||
|
(mesonEnable "gallium-vdpau" false)
|
||||||
|
];
|
||||||
})).override {
|
})).override {
|
||||||
galliumDrivers = [
|
galliumDrivers = [
|
||||||
"iris"
|
"iris"
|
||||||
|
@ -76,8 +199,21 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
qt5 = prev.qt5.overrideScope (final: prev: {
|
qt5 = prev.qt5.overrideScope (final: prev: {
|
||||||
qtbase = prev.qtbase.override {
|
qtbase = (prev.qtbase.overrideAttrs (prevAttrs: {
|
||||||
|
env = prevAttrs.env or { } // {
|
||||||
|
NIX_CFLAGS_COMPILE = prevAttrs.env.NIX_CFLAGS_COMPILE or ""
|
||||||
|
|> substituteFlags { "-DUSE_X11" = null; };
|
||||||
|
};
|
||||||
|
|
||||||
|
configureFlags = prevAttrs.configureFlags or [ ]
|
||||||
|
|> substituteFlags {
|
||||||
|
"-qpa .*" = null;
|
||||||
|
"-xcb" = "-no-xcb";
|
||||||
|
};
|
||||||
|
})).override {
|
||||||
mysqlSupport = false;
|
mysqlSupport = false;
|
||||||
|
withGtk3 = false;
|
||||||
|
withQttranslation = false;
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -86,4 +222,34 @@ in {
|
||||||
withHomed = false;
|
withHomed = false;
|
||||||
withIptables = false;
|
withIptables = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
thunderbird-unwrapped = prev.thunderbird-unwrapped.overrideAttrs (prevAttrs: {
|
||||||
|
configureFlags = prevAttrs.configureFlags or [ ]
|
||||||
|
|> substituteFlags {
|
||||||
|
"--enable-default-toolkit=.*" = "--enable-default-toolkit=cairo-gtk3-wayland-only";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
thunderbird = final.wrapThunderbird final.thunderbird-unwrapped { };
|
||||||
|
|
||||||
|
w3m = prev.w3m.override {
|
||||||
|
x11Support = false;
|
||||||
|
imlib2 = final.imlib2;
|
||||||
|
};
|
||||||
|
|
||||||
|
utsushi = prev.utsushi.overrideAttrs (prevAttrs: {
|
||||||
|
buildInputs = prevAttrs.buildInputs or [ ]
|
||||||
|
|> removePackages [ "gtkmm" ];
|
||||||
|
configureFlags = prevAttrs.configureFlags or [ ]
|
||||||
|
|> substituteFlags { "--with-gtkmm" = null; };
|
||||||
|
});
|
||||||
|
|
||||||
|
vim-full = prev.vim-full.override {
|
||||||
|
guiSupport = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
wayland = prev.wayland.override {
|
||||||
|
# broken
|
||||||
|
withDocumentation = false;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
{ nixpkgs, ... }: final: prev:
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (nixpkgs.lib.attrsets) genAttrs;
|
|
||||||
in genAttrs [
|
|
||||||
"SDL2"
|
|
||||||
"mpv-unwrapped"
|
|
||||||
] (pkg: prev.${pkg}.override { alsaSupport = false; })
|
|
||||||
// genAttrs [
|
|
||||||
"ffmpeg"
|
|
||||||
"libcanberra"
|
|
||||||
] (pkg: prev.${pkg}.override { withAlsa = false; })
|
|
||||||
// {
|
|
||||||
firefox-unwrapped = (prev.firefox-unwrapped.overrideAttrs (prevAttrs: {
|
|
||||||
buildInputs = prevAttrs.buildInputs or [ ]
|
|
||||||
++ [ final.alsa-lib ];
|
|
||||||
})).override {
|
|
||||||
alsaSupport = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
firefox = final.wrapFirefox final.firefox-unwrapped { };
|
|
||||||
|
|
||||||
mpv = final.mpv-unwrapped.wrapper {
|
|
||||||
mpv = final.mpv-unwrapped;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{ nixpkgs, ... }: final: prev:
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (nixpkgs.lib.attrsets) genAttrs;
|
|
||||||
in genAttrs [
|
|
||||||
"firefox-unwrapped"
|
|
||||||
] (pkg: prev.${pkg}.override { jemallocSupport = false; })
|
|
||||||
// {
|
|
||||||
firefox = final.wrapFirefox final.firefox-unwrapped { };
|
|
||||||
}
|
|
190
overlay/no-x.nix
190
overlay/no-x.nix
|
@ -1,190 +0,0 @@
|
||||||
{ self, nixpkgs, ... }: final: prev:
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (final) system;
|
|
||||||
inherit (nixpkgs.lib.attrsets) genAttrs;
|
|
||||||
inherit (nixpkgs.lib.lists) remove toList;
|
|
||||||
inherit (nixpkgs.lib.strings) mesonBool mesonEnable;
|
|
||||||
inherit (self.lib) substituteFlags removePackages;
|
|
||||||
|
|
||||||
final' = final;
|
|
||||||
prev' = prev;
|
|
||||||
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; })
|
|
||||||
|
|
||||||
// {
|
|
||||||
xvfb-run = self.packages.${system}.wayland-headless;
|
|
||||||
|
|
||||||
beam = prev.beam_nox;
|
|
||||||
graphviz = prev.graphviz-nox;
|
|
||||||
jdk8 = prev.jdk8_headless;
|
|
||||||
jre8 = prev.jre8_headless;
|
|
||||||
openjdk8 = prev.openjdk_headless;
|
|
||||||
|
|
||||||
firefox-unwrapped = prev.firefox-unwrapped.overrideAttrs (prevAttrs: {
|
|
||||||
configureFlags = prevAttrs.configureFlags or [ ]
|
|
||||||
|> substituteFlags {
|
|
||||||
"--enable-default-toolkit=.*" = "--enable-default-toolkit=cairo-gtk3-wayland-only";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
firefox = final.wrapFirefox final.firefox-unwrapped { };
|
|
||||||
|
|
||||||
gammastep = prev.gammastep.override {
|
|
||||||
withRandr = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
gd = prev.gd.override { withXorg = false; };
|
|
||||||
|
|
||||||
gst_all_1 = prev.gst_all_1 // genAttrs [
|
|
||||||
"gst-plugins-base"
|
|
||||||
"gst-plugins-good"
|
|
||||||
] (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)
|
|
||||||
];
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
imagemagick = prev.imagemagick.override {
|
|
||||||
libX11Support = false;
|
|
||||||
libXtSupport = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
imv = (prev.imv.overrideAttrs(prevAttrs: {
|
|
||||||
buildInputs = prevAttrs.buildInputs or [ ]
|
|
||||||
++ [ final.libGL ];
|
|
||||||
})).override {
|
|
||||||
withWindowSystem = "wayland";
|
|
||||||
};
|
|
||||||
|
|
||||||
inkscape = prev.inkscape.overrideAttrs (prevAttrs: {
|
|
||||||
cmakeFlags = prevAttrs.cmakeFlags or [ ]
|
|
||||||
++ [ "-DWITH_X11:BOOL=OFF" ];
|
|
||||||
});
|
|
||||||
|
|
||||||
keepassxc = (prev.keepassxc.overrideAttrs (prevAttrs: {
|
|
||||||
buildInputs = prevAttrs.buildInputs
|
|
||||||
|> removePackages [ "kio" ];
|
|
||||||
})).override {
|
|
||||||
withKeePassX11 = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
libepoxy = (prev.libepoxy.overrideAttrs (prevAttrs: {
|
|
||||||
buildInputs = prevAttrs.buildInputs or [ ]
|
|
||||||
++ [ final.libGL ];
|
|
||||||
mesonFlags = prevAttrs.mesonFlags or [ ]
|
|
||||||
|> substituteFlags { "-Degl=.*" = "-Degl=yes"; };
|
|
||||||
})).override {
|
|
||||||
x11Support = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
libgnomekbd = prev.libgnomekbd.overrideAttrs (prevAttrs: {
|
|
||||||
mesonFlags = prevAttrs.mesonFlags or [ ]
|
|
||||||
++ [ (mesonBool "tests" false) ];
|
|
||||||
});
|
|
||||||
|
|
||||||
libsForQt5 = prev.libsForQt5.overrideScope (final: prev: {
|
|
||||||
inherit (final') qt5;
|
|
||||||
|
|
||||||
kguiaddons = prev.kguiaddons.overrideAttrs (prevAttrs: {
|
|
||||||
cmakeFlags = prevAttrs.cmakeFlags or [ ]
|
|
||||||
++ [ "-DWITH_X11:BOOL=OFF" ];
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
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;
|
|
||||||
};
|
|
||||||
|
|
||||||
qt5 = prev.qt5.overrideScope (final: prev: {
|
|
||||||
qtbase = (prev.qtbase.overrideAttrs (prevAttrs: {
|
|
||||||
env = prevAttrs.env or { } // {
|
|
||||||
NIX_CFLAGS_COMPILE = prevAttrs.env.NIX_CFLAGS_COMPILE or ""
|
|
||||||
|> substituteFlags { "-DUSE_X11" = null; };
|
|
||||||
};
|
|
||||||
|
|
||||||
configureFlags = prevAttrs.configureFlags or [ ]
|
|
||||||
|> substituteFlags {
|
|
||||||
"-qpa .*" = null;
|
|
||||||
"-xcb" = "-no-xcb";
|
|
||||||
};
|
|
||||||
})).override {
|
|
||||||
withGtk3 = false;
|
|
||||||
withQttranslation = false;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
thunderbird-unwrapped = prev.thunderbird-unwrapped.overrideAttrs (prevAttrs: {
|
|
||||||
configureFlags = prevAttrs.configureFlags or [ ]
|
|
||||||
|> substituteFlags {
|
|
||||||
"--enable-default-toolkit=.*" = "--enable-default-toolkit=cairo-gtk3-wayland-only";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
thunderbird = final.wrapThunderbird final.thunderbird-unwrapped { };
|
|
||||||
|
|
||||||
w3m = prev.w3m.override {
|
|
||||||
x11Support = false;
|
|
||||||
imlib2 = final.imlib2;
|
|
||||||
};
|
|
||||||
|
|
||||||
utsushi = prev.utsushi.overrideAttrs (prevAttrs: {
|
|
||||||
buildInputs = prevAttrs.buildInputs or [ ]
|
|
||||||
|> removePackages [ "gtkmm" ];
|
|
||||||
configureFlags = prevAttrs.configureFlags or [ ]
|
|
||||||
|> substituteFlags { "--with-gtkmm" = null; };
|
|
||||||
});
|
|
||||||
|
|
||||||
vim-full = prev.vim-full.override {
|
|
||||||
guiSupport = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland = prev.wayland.override {
|
|
||||||
# broken
|
|
||||||
withDocumentation = false;
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue