overlays/cross: remove upstreamed blueprint-compiler fixes
This commit is contained in:
@@ -81,55 +81,9 @@ let
|
||||
);
|
||||
|
||||
# build a GI_TYPELIB_PATH out of some packages, useful for build-time tools which otherwise
|
||||
# try to load gobject-introspection files for the wrong platform (e.g. `blueprint` compiler).
|
||||
# try to load gobject-introspection files for the wrong platform (e.g. `gjspack`).
|
||||
typelibPath = pkgs: lib.concatStringsSep ":" (builtins.map (p: "${lib.getLib p}/lib/girepository-1.0") pkgs);
|
||||
|
||||
# blueprint-compiler runs on the build machine, but tries to load gobject-introspection types meant for the host.
|
||||
# wrap it so that it accesses the build-time GIR, whatever those are for some derivation
|
||||
# wrapBlueprint = typelibs: final.buildPackages.blueprint-compiler.overrideAttrs (upstream: {
|
||||
# nativeBuildInputs = (upstream.nativeBuildInputs or []) ++ [
|
||||
# final.buildPackages.makeShellWrapper
|
||||
# ];
|
||||
# postInstall = (upstream.postInstall or "") + ''
|
||||
# wrapProgram $out/bin/blueprint-compiler --set GI_TYPELIB_PATH ${typelibPath typelibs}
|
||||
# '';
|
||||
# });
|
||||
# wrapBlueprint = typelibs: final.buildPackages.writeShellScriptBin "blueprint-compiler" ''
|
||||
# export GI_TYPELIB_PATH=${typelibPath typelibs}
|
||||
# exec ${lib.getExe final.buildPackages.blueprint-compiler} "$@"
|
||||
# '';
|
||||
|
||||
# use like: `p.override { blueprint-compiler = crossBlueprint; }`
|
||||
crossBlueprint = final.buildPackages.blueprint-compiler.overrideAttrs (upstream: {
|
||||
nativeBuildInputs = (upstream.nativeBuildInputs or []) ++ [
|
||||
final.buildPackages.buildPackages.wrapGAppsNoGuiHook
|
||||
];
|
||||
});
|
||||
# crossBlueprint = final.pkgsBuildBuild.blueprint-compiler.overrideAttrs (upstream: {
|
||||
# # blueprint-compiler isn't invokable in a standalone environment.
|
||||
# # i.e. `blueprint-compiler --help` fails.
|
||||
# # fix by adding glib typelib.
|
||||
# # TODO: upstream! (see `wip-blueprint-compiler` nixpkgs branch)
|
||||
# nativeBuildInputs = (upstream.nativeBuildInputs or []) ++ [
|
||||
# final.pkgsBuildBuild.makeWrapper
|
||||
# ];
|
||||
# postFixup = (upstream.postFixup or "") + ''
|
||||
# wrapProgram $out/bin/blueprint-compiler \
|
||||
# --prefix GI_TYPELIB_PATH : "${lib.getLib final.pkgsBuildBuild.glib}/lib/girepository-1.0:${lib.getLib final.pkgsBuildBuild.gobject-introspection}/lib/girepository-1.0"
|
||||
# '';
|
||||
|
||||
# # propagate gobject-introspection such that it appears in the same host offset as us,
|
||||
# # and populates GI_TYPELIB_PATH with the correct offset.
|
||||
# propagatedBuildInputs = [];
|
||||
# depsTargetTargetPropagated = [ final.gobject-introspection ];
|
||||
# });
|
||||
|
||||
# build a blueprint-based package in a way that is cross-compatible
|
||||
# fixBlueprint = p: mvToDepsBuildBuild [ crossBlueprint ] p;
|
||||
fixBlueprint = p: p.override {
|
||||
blueprint-compiler = crossBlueprint;
|
||||
};
|
||||
|
||||
# `cargo` which adds the correct env vars and `--target` flag when invoked from meson build scripts
|
||||
crossCargo = let
|
||||
inherit (final.pkgsBuildHost) cargo;
|
||||
@@ -170,7 +124,7 @@ let
|
||||
};
|
||||
in with final; {
|
||||
# bamf: required via pantheon.switchboard -> wingpanel -> gala
|
||||
# 2025/01/13: upstreaming is unblocked
|
||||
# 2025/05/01: upstreaming is unblocked
|
||||
# bamf = prev.bamf.overrideAttrs (upstream: {
|
||||
# # "You must have gtk-doc >= 1.0 installed to build documentation"
|
||||
# depsBuildBuild = (upstream.depsBuildBuild or []) ++ [
|
||||
@@ -226,32 +180,8 @@ in with final; {
|
||||
# shell = runtimeShell;
|
||||
# };
|
||||
|
||||
# blanket = fixBlueprint prev.blanket;
|
||||
# blanket = prev.blanket.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# };
|
||||
|
||||
# 2025/02/04: upstreaming is unblocked, but a cleaner solution than this doesn't seem to exist yet
|
||||
# confy = (prev.confy.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# }).overrideAttrs (upstream: {
|
||||
# confy = (fixBlueprint prev.confy).overrideAttrs (upstream: {
|
||||
confy = prev.confy.overrideAttrs (upstream: {
|
||||
# meson's `python.find_installation` method somehow just doesn't support cross compilation.
|
||||
# - <https://mesonbuild.com/Python-module.html#find_installation>
|
||||
@@ -280,18 +210,6 @@ in with final; {
|
||||
});
|
||||
|
||||
# 2024/11/19: upstreaming is unblocked
|
||||
# dialect = (prev.dialect.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# }).overrideAttrs (upstream: {
|
||||
# dialect = (fixBlueprint prev.dialect).overrideAttrs (upstream: {
|
||||
dialect = prev.dialect.overrideAttrs (upstream: {
|
||||
# error: "<dialect> is not allowed to refer to the following paths: <build python>"
|
||||
# dialect's meson build script sets host binaries to use build PYTHON
|
||||
@@ -303,7 +221,7 @@ in with final; {
|
||||
strictDeps = true;
|
||||
});
|
||||
|
||||
# 2024/05/31: upstreaming is blocked on rpm
|
||||
# 2025/05/01: upstreaming is unblocked
|
||||
# dtrx = prev.dtrx.override {
|
||||
# # `binutils` is the nix wrapper, which reads nix-related env vars
|
||||
# # before passing on to e.g. `ld`.
|
||||
@@ -351,19 +269,6 @@ in with final; {
|
||||
|
||||
# 2025/01/13: upstreaming is unblocked
|
||||
# flare-signal = prev.flare-signal.overrideAttrs (upstream: {
|
||||
# # blueprint-compiler runs on the build machine, but tries to load gobject-introspection types meant for the host.
|
||||
# postPatch = (upstream.postPatch or "") + ''
|
||||
# substituteInPlace data/resources/meson.build --replace-fail \
|
||||
# "find_program('blueprint-compiler')" \
|
||||
# "'env', 'GI_TYPELIB_PATH=${typelibPath [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# buildPackages.graphene
|
||||
# ]}', find_program('blueprint-compiler')"
|
||||
# '';
|
||||
# env = let
|
||||
# inherit buildPackages stdenv rust;
|
||||
# ccForBuild = "${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc";
|
||||
@@ -384,19 +289,6 @@ in with final; {
|
||||
# };
|
||||
# });
|
||||
|
||||
# flare-signal-nixified = fixBlueprint prev.flare-signal-nixified;
|
||||
# flare-signal-nixified = prev.flare-signal-nixified.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# };
|
||||
|
||||
# 2025/01/13: upstreaming is blocked by glycin-loaders
|
||||
fractal = prev.fractal.override {
|
||||
cargo = crossCargo;
|
||||
@@ -416,20 +308,6 @@ in with final; {
|
||||
# });
|
||||
# });
|
||||
|
||||
# 2024/11/19: upstreaming is blocked on qtx11extras (via zbar)
|
||||
# gnome-frog = prev.gnome-frog.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# };
|
||||
# gnome-frog = fixBlueprint prev.gnome-frog;
|
||||
|
||||
# 2025/01/13: upstreaming is blocked on gnome-shell
|
||||
# fixes: "gdbus-codegen not found or executable"
|
||||
# gnome-session = mvToNativeInputs [ glib ] super.gnome-session;
|
||||
@@ -459,7 +337,7 @@ in with final; {
|
||||
# ];
|
||||
# });
|
||||
|
||||
# 2025/04/19: blocked on psqlodbc
|
||||
# 2025/05/01: blocked on psqlodbc
|
||||
# used by hyprland (which is an indirect dep of waybar, nwg-panel, etc),
|
||||
# which it shells out to at runtime (and hence, not ever used by me).
|
||||
hyprland-qtutils = null;
|
||||
@@ -496,20 +374,6 @@ in with final; {
|
||||
# nativeBuildInputs = lib.remove [ qt6.wrapQtAppsHook ] upstream.nativeBuildInputs;
|
||||
# });
|
||||
|
||||
# 2024/11/19: upstreaming is unblocked
|
||||
# komikku = fixBlueprint prev.komikku;
|
||||
# komikku = prev.komikku.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# };
|
||||
|
||||
# 2024/08/12: upstreaming is unblocked -- but is this necessary?
|
||||
# koreader = prev.koreader.overrideAttrs (upstream: {
|
||||
# nativeBuildInputs = upstream.nativeBuildInputs ++ [
|
||||
@@ -579,23 +443,7 @@ in with final; {
|
||||
# ncftp = addNativeInputs [ bintools ] prev.ncftp;
|
||||
|
||||
# 2025/04/04: upstreaming is unblocked
|
||||
# newsflash = (prev.newsflash.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.clapper
|
||||
# buildPackages.glib
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.gst_all_1.gstreamer
|
||||
# buildPackages.gst_all_1.gst-plugins-base
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.pango
|
||||
# buildPackages.graphene
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# ];
|
||||
# cargo = crossCargo; #< fixes openssl not being able to find its library
|
||||
# }).overrideAttrs (upstream: {
|
||||
newsflash = (prev.newsflash.override {
|
||||
# blueprint-compiler = crossBlueprint;
|
||||
cargo = crossCargo;
|
||||
}).overrideAttrs (upstream: {
|
||||
postPatch = (upstream.postPatch or "") + ''
|
||||
@@ -862,20 +710,7 @@ in with final; {
|
||||
};
|
||||
|
||||
# 2025/04/04: upstreaming is unblocked
|
||||
# spot = prev.spot.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# cargo = crossCargo;
|
||||
# };
|
||||
spot = prev.spot.override {
|
||||
# blueprint-compiler = crossBlueprint;
|
||||
cargo = crossCargo;
|
||||
};
|
||||
|
||||
@@ -924,18 +759,6 @@ in with final; {
|
||||
# });
|
||||
|
||||
# 2024/11/19: upstreaming is unblocked
|
||||
# tangram = (prev.tangram.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# }).overrideAttrs (upstream: {
|
||||
# tangram = (fixBlueprint prev.tangram).overrideAttrs (upstream: {
|
||||
tangram = prev.tangram.overrideAttrs (upstream: {
|
||||
# gsjpack has a shebang for the host gjs. patchShebangs --build doesn't fix that: just manually specify the build gjs
|
||||
postPatch = let
|
||||
@@ -979,20 +802,7 @@ in with final; {
|
||||
# };
|
||||
|
||||
# 2025/01/13: upstreaming is unblocked
|
||||
# video-trimmer = prev.video-trimmer.override {
|
||||
# blueprint-compiler = wrapBlueprint [
|
||||
# buildPackages.gdk-pixbuf
|
||||
# buildPackages.glib
|
||||
# buildPackages.graphene
|
||||
# buildPackages.gtk4
|
||||
# buildPackages.harfbuzz
|
||||
# buildPackages.libadwaita
|
||||
# buildPackages.pango
|
||||
# ];
|
||||
# cargo = crossCargo;
|
||||
# };
|
||||
video-trimmer = prev.video-trimmer.override {
|
||||
# blueprint-compiler = crossBlueprint;
|
||||
cargo = crossCargo;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user