diff --git a/flake.nix b/flake.nix index 4f272b380..53f2b4e19 100644 --- a/flake.nix +++ b/flake.nix @@ -87,14 +87,12 @@ clang-tools ]; - shellHook = pkgs.lib.optionalString isLinux '' - export CC=${pkgs.gcc15}/bin/gcc - export CXX=${pkgs.gcc15}/bin/g++ - export CMAKE_C_COMPILER=$CC - export CMAKE_CXX_COMPILER=$CXX - - export QML2_IMPORT_PATH=${pkgs.qt6.qtdeclarative}/lib/qt-6/qml - export QML_IMPORT_PATH=${pkgs.qt6.qtdeclarative}/lib/qt-6/qml + # qmlls discovers QML modules through these, so point them at the + # aggregate env: qtdeclarative alone hides LayerShellQt and the + # modules shipped by the other Qt packages. + shellHook = '' + export QML2_IMPORT_PATH=${qtEnv}/lib/qt-6/qml + export QML_IMPORT_PATH=${qtEnv}/lib/qt-6/qml ''; }; } diff --git a/nix/vicinae.nix b/nix/vicinae.nix index debc17d94..cf81a4903 100644 --- a/nix/vicinae.nix +++ b/nix/vicinae.nix @@ -5,15 +5,23 @@ kdePackages, lib, libqalculate, + libx11, + libxcb, + libxcb-keysyms, + libxkbcommon, llvmPackages_21, ninja, nodejs, npmHooks, + openssl, pkg-config, qt6, stdenv, gcc15Stdenv, + udev, wayland, + wayland-protocols, + wayland-scanner, glaze, swift ? null, apple-sdk ? null, @@ -65,6 +73,7 @@ in "VICINAE_GIT_TAG" = "v${finalAttrs.version}"; "VICINAE_GIT_COMMIT_HASH" = manifestGet "short_rev"; "VICINAE_PROVENANCE" = "nix"; + "INSTALL_MODULES_LOAD_CONFIG" = "OFF"; "INSTALL_NODE_MODULES" = "OFF"; "USE_SYSTEM_CMARK_GFM" = "ON"; "USE_SYSTEM_GLAZE" = "ON"; @@ -91,6 +100,9 @@ in qt6.qttools qt6.wrapQtAppsHook ] + ++ lib.optionals isLinux [ + wayland-scanner + ] ++ lib.optionals isDarwin [ swift ]; @@ -111,8 +123,15 @@ in ] ++ lib.optionals isLinux [ kdePackages.layer-shell-qt + libx11 + libxcb + libxcb-keysyms + libxkbcommon + openssl qt6.qtwayland + udev wayland + wayland-protocols ] ++ lib.optionals isDarwin [ apple-sdk