nixos-config/home-manager/plasma.nix
2024-08-26 15:43:01 +02:00

115 lines
2.5 KiB
Nix

{ extra, ... }:
{
programs.plasma = {
enable = true;
overrideConfig = true;
workspace = {
lookAndFeel = "org.kde.breezedark.desktop";
wallpaper = "${extra.wall}";
};
kscreenlocker = {
appearance.wallpaper = "${extra.wall}";
};
hotkeys.commands."launch-alacritty" = {
name = "Launch alacritty";
key = "Meta+Return";
command = "wezterm";
};
hotkeys.commands."cpypsk" = {
name = "Launch cpypsk";
key = "Meta+p";
command = "${extra.cpypsk}";
};
fonts = {
general = {
family = "SAX2 Nerd Font";
pointSize = 10;
};
};
powerdevil = {
AC.whenLaptopLidClosed = "hibernate";
battery.whenLaptopLidClosed = "hibernate";
lowBattery.whenLaptopLidClosed = "hibernate";
};
panels = [
{
location = "bottom";
floating = true;
height = 44;
widgets = [
{
name = "org.kde.plasma.kickoff";
config = {
General.icon = "nix-snowflake-white";
};
}
{
name = "org.kde.plasma.icontasks";
config = {
General.launchers = [
"applications:thunderbird.desktop"
"applications:org.wezfurlong.wezterm.desktop"
"applications:firefox.desktop"
"applications:discord.desktop"
];
};
}
{
systemTray.items = {
shown = [
"org.kde.plasma.battery"
"org.kde.plasma.bluetooth"
"org.kde.plasma.networkmanagement"
"org.kde.plasma.volume"
];
};
}
{
digitalClock = {
calendar.firstDayOfWeek = "monday";
time.format = "24h";
};
}
];
}
];
window-rules = [
{
description = "wezterm";
match = {
window-class = {
value = "wezterm";
type = "substring";
};
window-types = [ "normal" ];
};
apply = {
noborder = {
value = true;
apply = "force";
};
maximizehoriz = true;
maximizevert = true;
};
}
];
configFile."kcminputrc" = {
"Mouse"."X11LibInputXAccelProfileFlat" = true;
"Mouse"."XLbInptPointerAcceleration" = 0;
};
};
home.packages = [
extra.rc2nix
];
}