47 lines
1.2 KiB
Nix
47 lines
1.2 KiB
Nix
{
|
|
user ? throw "user argument is required",
|
|
home ? throw "home argument is required",
|
|
}:
|
|
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
home-manager.users.${user} = {
|
|
qt = {
|
|
enable = true;
|
|
platformTheme.name = "qtct";
|
|
style.package = with pkgs; [
|
|
libsForQt5.qtstyleplugin-kvantum
|
|
qt6Packages.qtstyleplugin-kvantum
|
|
];
|
|
};
|
|
|
|
home.sessionVariables = {
|
|
QT_QPA_PLATFORM = "wayland";
|
|
QT_QPA_PLATFORMTHEME = "qt5ct";
|
|
};
|
|
|
|
theme.template = {
|
|
# https://github.com/GabePoel/KvLibadwaita/blob/main/src/KvLibadwaita/KvLibadwaita.kvconfig
|
|
".config/Kvantum/KvAdwQt/KvAdwQt.kvconfig".source = ./KvAdwQt/KvAdwQt.kvconfig;
|
|
# https://github.com/GabePoel/KvLibadwaita/blob/main/src/KvLibadwaita/KvLibadwaita.svg
|
|
".config/Kvantum/KvAdwQt/KvAdwQt.svg".source = ./KvAdwQt/KvAdwQt.svg;
|
|
};
|
|
|
|
xdg.configFile =
|
|
let
|
|
qtConfig = (pkgs.formats.ini { }).generate "qt5ct.conf" { Appearance.style = "kvantum"; };
|
|
in
|
|
{
|
|
"qt5ct/qt5ct.conf".source = qtConfig;
|
|
"qt6ct/qt6ct.conf".source = qtConfig;
|
|
"Kvantum/kvantum.kvconfig".source = (pkgs.formats.ini { }).generate "kvantum.kvconfig" {
|
|
General.theme = "KvAdwQt";
|
|
};
|
|
};
|
|
};
|
|
}
|