libcosmicAppHook: use RUSTFLAGS instead of platform specific flags

This ensures these flags are picked up correctly, after latest rust
update. We can revert this if we solve the root cause later.

See https://github.com/NixOS/nixpkgs/issues/464392
This commit is contained in:
aleksana
2025-11-26 00:32:54 +08:00
parent 804669426d
commit d2c62217d3
2 changed files with 9 additions and 2 deletions
@@ -15,7 +15,11 @@ libcosmicAppVergenHook() {
libcosmicAppLinkerArgsHook() {
# Force linking to certain libraries like libEGL, which are always dlopen()ed
local flags="CARGO_TARGET_@cargoLinkerVar@_RUSTFLAGS"
# local flags="CARGO_TARGET_@cargoLinkerVar@_RUSTFLAGS"
# Temporarily use this simpler solution, it should work for simple cross compilation
# https://github.com/NixOS/nixpkgs/issues/464392
local flags="RUSTFLAGS"
export "$flags"="${!flags-} -C link-arg=-Wl,--push-state,--no-as-needed"
# shellcheck disable=SC2043
+4 -1
View File
@@ -55,7 +55,10 @@ makeSetupHook {
lib.makeSearchPath "share" (
lib.optionals includeSettings [ fallbackThemes ] ++ [ targetPackages.cosmic-icons ]
);
cargoLinkerVar = targetPackages.stdenv.hostPlatform.rust.cargoEnvVarTarget;
# Temporarily using RUSTFLAGS: https://github.com/NixOS/nixpkgs/issues/464392
# See ./libcosmic-app-hook.sh
# cargoLinkerVar = targetPackages.stdenv.hostPlatform.rust.cargoEnvVarTarget;
# force linking for all libraries that may be dlopen'd by libcosmic/iced apps
cargoLinkLibs = lib.escapeShellArgs (
[