quickshell: build caelestia with clang
This commit is contained in:
@@ -6,9 +6,35 @@ makeEnable config "myModules.quickshell" false {
|
|||||||
let
|
let
|
||||||
hyprlandEnabled = lib.attrByPath ["myModules" "hyprland" "enable"] false nixos.config;
|
hyprlandEnabled = lib.attrByPath ["myModules" "hyprland" "enable"] false nixos.config;
|
||||||
system = pkgs.stdenv.hostPlatform.system;
|
system = pkgs.stdenv.hostPlatform.system;
|
||||||
|
quickshellBase = inputs.caelestia-shell.inputs.quickshell.packages.${system}.default.override {
|
||||||
|
# GCC 15.2 ICEs on generated NetworkManager DBus sources in
|
||||||
|
# quickshell 0.2.1. Quickshell's own dev shell uses clangStdenv.
|
||||||
|
stdenv = pkgs.clangStdenv;
|
||||||
|
withX11 = false;
|
||||||
|
withI3 = false;
|
||||||
|
};
|
||||||
|
quickshellUnwrapped = quickshellBase.unwrapped.overrideAttrs (old: {
|
||||||
|
# Clang then needs PCH disabled because quickshell's PipeWire target
|
||||||
|
# adds compile flags that do not match the shared PCH target.
|
||||||
|
cmakeFlags = (old.cmakeFlags or []) ++ [ (lib.cmakeBool "NO_PCH" true) ];
|
||||||
|
});
|
||||||
|
quickshellPackage = quickshellUnwrapped.stdenv.mkDerivation {
|
||||||
|
inherit (quickshellUnwrapped) version meta buildInputs;
|
||||||
|
pname = "${quickshellUnwrapped.pname}-wrapped";
|
||||||
|
nativeBuildInputs = quickshellUnwrapped.nativeBuildInputs ++ [ pkgs.qt6.wrapQtAppsHook ];
|
||||||
|
dontUnpack = true;
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -r ${quickshellUnwrapped}/* $out
|
||||||
|
'';
|
||||||
|
passthru.unwrapped = quickshellUnwrapped;
|
||||||
|
};
|
||||||
caelestiaPackage = inputs.caelestia-shell.packages.${system}.with-cli.override {
|
caelestiaPackage = inputs.caelestia-shell.packages.${system}.with-cli.override {
|
||||||
# Caelestia pins app2unit 1.0.3, which no longer builds on this nixpkgs snapshot.
|
# Caelestia pins app2unit 1.0.3, which no longer builds on this nixpkgs snapshot.
|
||||||
app2unit = pkgs.app2unit;
|
app2unit = pkgs.app2unit;
|
||||||
|
quickshell = quickshellPackage;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user