forked from Shinonome/alt-illogical-impulse
Use symlinkJoin to wrap quickshell
This commit is contained in:
@@ -26,20 +26,21 @@
|
|||||||
{
|
{
|
||||||
overlays.default = final: prev: {
|
overlays.default = final: prev: {
|
||||||
# Enhanced quickshell wrapper with Qt5Compat support for dots-hyprland
|
# Enhanced quickshell wrapper with Qt5Compat support for dots-hyprland
|
||||||
quickshell = final.writeShellScriptBin "quickshell" ''
|
# Wraps the quickshell from nixpkgs (which must already be in prev)
|
||||||
# Add Qt5Compat, QtPositioning, and quickshell config directories to QML import path
|
quickshell = if prev ? quickshell then
|
||||||
export QML2_IMPORT_PATH="${final.kdePackages.qt5compat}/lib/qt-6/qml:${final.kdePackages.qtpositioning}/lib/qt-6/qml:${final.kdePackages.qtlocation}/lib/qt-6/qml:$HOME/.config/quickshell/ii:$HOME/.config/quickshell:$QML2_IMPORT_PATH"
|
final.symlinkJoin {
|
||||||
|
name = "quickshell-wrapped";
|
||||||
# Set critical environment variables for dots-hyprland functionality
|
paths = [ prev.quickshell ];
|
||||||
export ILLOGICAL_IMPULSE_VIRTUAL_ENV="$HOME/.local/state/quickshell/.venv"
|
buildInputs = [ final.makeWrapper ];
|
||||||
export XDG_DATA_DIRS="$XDG_DATA_DIRS:${final.gsettings-desktop-schemas}/share"
|
postBuild = ''
|
||||||
|
wrapProgram $out/bin/quickshell \
|
||||||
# Ensure child processes (execDetached) have access to system libraries for Python virtual environment
|
--prefix QML2_IMPORT_PATH : "${final.kdePackages.qt5compat}/lib/qt-6/qml:${final.kdePackages.qtpositioning}/lib/qt-6/qml:${final.kdePackages.qtlocation}/lib/qt-6/qml:$HOME/.config/quickshell/ii:$HOME/.config/quickshell" \
|
||||||
export LD_LIBRARY_PATH="${final.stdenv.cc.cc.lib}/lib:${final.glibc}/lib:${final.zlib}/lib:${final.libffi}/lib:${final.openssl}/lib:${final.bzip2.out}/lib:${final.xz.out}/lib:${final.ncurses}/lib:${final.readline}/lib:${final.sqlite.out}/lib:$LD_LIBRARY_PATH"
|
--set ILLOGICAL_IMPULSE_VIRTUAL_ENV "$HOME/.local/state/quickshell/.venv" \
|
||||||
|
--prefix XDG_DATA_DIRS : "${final.gsettings-desktop-schemas}/share" \
|
||||||
# Execute quickshell from nixpkgs
|
--prefix LD_LIBRARY_PATH : "${final.stdenv.cc.cc.lib}/lib:${final.glibc}/lib:${final.zlib}/lib:${final.libffi}/lib:${final.openssl}/lib:${final.bzip2.out}/lib:${final.xz.out}/lib:${final.ncurses}/lib:${final.readline}/lib:${final.sqlite.out}/lib"
|
||||||
exec ${prev.quickshell}/bin/quickshell "$@"
|
'';
|
||||||
'';
|
}
|
||||||
|
else prev.quickshell;
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = forAllSystems (system:
|
packages = forAllSystems (system:
|
||||||
|
|||||||
Reference in New Issue
Block a user