- Add `noctalia` input to flake and lock it in `flake.lock`. - Include `noctalia` and `quickshell` modules in `flake.nix`. - Extend core packages to accept `inputs` and `system`; add `quickshell.nix` with required Qt6 packages and environment variables. - Enable `upower` service for battery handling. - Add home modules `noctalia.nix` and `overview.nix` (QML UI, README, assets, widgets, services) to provide a workspace overview. - Comment out unused rofi and web‑search binds; update `exec‑once` to start the overview daemon and `noctalia-shell`. - Provide `restart.noctalia` script and its Nix wrapper. - Enable `noctalia-shell` in `stylix` configuration.
31 lines
825 B
Nix
31 lines
825 B
Nix
{pkgs, ...}: {
|
||
environment = {
|
||
systemPackages = with pkgs; [
|
||
quickshell
|
||
|
||
# Qt6 related kits(for slove Qt5Compat problem)
|
||
qt6.qt5compat
|
||
qt6.qtbase
|
||
qt6.qtquick3d
|
||
qt6.qtwayland
|
||
qt6.qtdeclarative
|
||
qt6.qtsvg
|
||
|
||
# alternate options
|
||
# libsForQt5.qt5compat
|
||
kdePackages.qt5compat
|
||
libsForQt5.qt5.qtgraphicaleffects
|
||
];
|
||
# necessary environment variables
|
||
variables = {
|
||
QML_IMPORT_PATH = "${pkgs.qt6.qt5compat}/lib/qt-6/qml:${pkgs.qt6.qtbase}/lib/qt-6/qml";
|
||
QML2_IMPORT_PATH = "${pkgs.qt6.qt5compat}/lib/qt-6/qml:${pkgs.qt6.qtbase}/lib/qt-6/qml";
|
||
};
|
||
# make sure the Qt application is working properly
|
||
sessionVariables = {
|
||
QT_QPA_PLATFORM = "wayland;xcb";
|
||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||
};
|
||
};
|
||
}
|