{ lib, stdenv, quickshell, makeWrapper, makeFontsConf, qt6, fonts ? [], hyprland, ddcutil, brightnessctl, networkmanager, lm_sensors, hyprsunset }: let pname = "quickshell-toki-night"; version = "0.1.0"; runtimeDeps = [ hyprland ddcutil brightnessctl networkmanager lm_sensors hyprsunset ]; fontconfig = makeFontsConf { fontDirectories = fonts; }; in stdenv.mkDerivation { inherit pname version; src = ./.; nativeBuildInputs = [ makeWrapper qt6.wrapQtAppsHook ]; buildInputs = [ quickshell qt6.qtbase ] ++ runtimeDeps; # Inhibit file watching prePatch = '' substituteInPlace shell.qml \ --replace-fail 'ShellRoot {' 'ShellRoot { settings.watchFiles: false' ''; dontConfigure = true; dontBuild = true; installPhase = '' runHook preInstall mkdir -p $out/bin mkdir -p $out/share cp -R . $out/share/${pname} makeWrapper ${quickshell}/bin/qs $out/bin/${pname} \ --prefix PATH : "${lib.makeBinPath runtimeDeps}" \ --set FONTCONFIG_FILE "${fontconfig}" \ --add-flags "-p $out/share/${pname}" runHook postInstall ''; meta = { description = "My personal desktop shell, made using Quickshell"; homepage = "https://git.tokinanpa.dev/toki/quickshell"; license = lib.licenses.gpl3Only; mainProgram = pname; }; }