Add plasma-manager module and configuration

Signed-off-by: George Kaklamanos <gkaklas@gkaklas.gr>
This commit is contained in:
George Kaklamanos 2024-04-28 22:35:56 +03:00
parent e792137d5b
commit d3773e4e4f
No known key found for this signature in database
GPG key ID: C0CAB8A6BDC9399D
5 changed files with 229 additions and 0 deletions

View file

@ -8,11 +8,18 @@
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
plasma-manager = {
url = "github:pjones/plasma-manager";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
};
outputs = {
nixpkgs,
home-manager,
plasma-manager,
...
}: let
system = "x86_64-linux";
@ -22,6 +29,9 @@
inherit pkgs;
modules = [
./home.nix
./plasma/plasma.nix
plasma-manager.homeManagerModules.plasma-manager
];
};
};

View file

@ -0,0 +1,83 @@
{
kwinrulesrc = import ./kwinrulesrc.nix;
"baloofilerc"."Basic Settings"."Indexing-Enabled".value = false;
"kdeglobals"."KDE"."AnimationDurationFactor".value = 0.125;
"kdeglobals"."Shortcuts"."Quit".value = "";
kwinrc = {
Desktops = {
# uuidgen -rC6
"Id_1".value = "1c3962f3-bd6e-42e4-bcaf-9f1dc0a55cab";
"Id_2".value = "a76e8497-148d-44d8-96a1-026278642d79";
"Id_3".value = "e2f3dcc2-8009-46b0-af71-745daf70b846";
"Id_4".value = "4e471453-b165-4c9f-bc56-a2eb9e7f969e";
"Id_5".value = "645f9867-ff82-48b3-ac5b-cc389bc9fd31";
"Id_6".value = "95e0579d-b58f-47c7-a47f-5caf30cdf399";
"Name_1".value = "Web";
"Name_2".value = "Main";
"Name_3".value = "Comm";
"Name_4".value = "Aux1";
"Name_5".value = "Aux2";
"Name_6".value = "Music";
"Number".value = 6;
"Rows".value = 1;
};
"Windows"."FocusPolicy".value = "FocusFollowsMouse";
"Windows"."BorderlessMaximizedWindows".value = true;
};
kcminputrc = {
# Framework 13 7040 touchpad
"Libinput/2362/628/PIXA3854:00 093A:0274 Touchpad" = {
"TapToClick".value = true;
"NaturalScroll".value = true;
};
};
kxkbrc.Layout = {
"DisplayNames".value = ",";
"LayoutList".value = "us,gr";
"VariantList".value = ",";
"Options".value = "grp:caps_toggle,grp_led:caps,compose:ralt";
"ResetOldOptions".value = true;
"SwitchMode".value = "Window";
"Use".value = true;
};
"plasmarc"."OSD"."kbdLayoutChangedEnabled".value = false;
plasma-localerc.Formats = {
"LANG".value = "en_US.UTF-8";
"LC_MEASUREMENT".value = "el_GR.UTF-8";
"LC_MONETARY".value = "el_GR.UTF-8";
"LC_NUMERIC".value = "el_GR.UTF-8";
"LC_TIME".value = "en_IE.UTF-8";
};
powermanagementprofilesrc = {
"AC/DPMSControl"."idleTime".value = 300;
"AC/DPMSControl"."lockBeforeTurnOff".value = 0;
"AC/DimDisplay"."idleTime".value = 120000;
"Battery/DPMSControl"."idleTime".value = 300;
"Battery/DPMSControl"."lockBeforeTurnOff".value = 0;
"Battery/DimDisplay"."idleTime".value = 120000;
"Battery/HandleButtonEvents"."lidAction".value = 0;
"Battery/HandleButtonEvents"."powerButtonAction".value = 16;
"Battery/HandleButtonEvents"."powerDownAction".value = 16;
"Battery/HandleButtonEvents"."triggerLidActionWhenExternalMonitorPresent".value = false;
"Battery/SuspendSession"."idleTime".value = 600000;
"Battery/SuspendSession"."suspendThenHibernate".value = false;
"Battery/SuspendSession"."suspendType".value = 1;
"LowBattery/BrightnessControl"."value".value = 30;
"LowBattery/DPMSControl"."idleTime".value = 120;
"LowBattery/DPMSControl"."lockBeforeTurnOff".value = 0;
"LowBattery/DimDisplay"."idleTime".value = 60000;
"LowBattery/HandleButtonEvents"."lidAction".value = 1;
"LowBattery/HandleButtonEvents"."powerButtonAction".value = 16;
"LowBattery/HandleButtonEvents"."powerDownAction".value = 16;
"LowBattery/HandleButtonEvents"."triggerLidActionWhenExternalMonitorPresent".value = false;
"Migration"."MigratedProfilesToPlasma6".value = "powerdevilrc";
};
}

View file

@ -0,0 +1,52 @@
{
# nix run github:pjones/plasma-manager -- -c -a $XDG_CONFIG_HOME/kwinrulesrc
"General"."count".value = 4;
"General"."rules".value = "9cb7744a-21bd-424a-a7ac-fd801162a1af,dbc65444-ab37-4ce6-9707-663ba303527a,9a0909c3-97a0-4e38-9c34-b1867c34cb38,f28e63b8-f0bb-4a4d-a89e-ff018c27eb17";
"9a0909c3-97a0-4e38-9c34-b1867c34cb38" = {
"Description".value = "Firefox";
"desktops".value = "1c3962f3-bd6e-42e4-bcaf-9f1dc0a55cab";
"desktopsrule".value = 3;
"maximizehoriz".value = true;
"maximizehorizrule".value = 3;
"maximizevert".value = true;
"maximizevertrule".value = 3;
"wmclass".value = "firefox-devedition";
"wmclasscomplete".value = true;
"wmclassmatch".value = 1;
};
"9cb7744a-21bd-424a-a7ac-fd801162a1af" = {
"Description".value = "Ferdium";
"desktops".value = "e2f3dcc2-8009-46b0-af71-745daf70b846";
"desktopsrule".value = 2;
"noborder".value = true;
"noborderrule".value = 2;
"wmclass".value = "ferdium Ferdium";
"wmclasscomplete".value = true;
"wmclassmatch".value = 1;
};
"dbc65444-ab37-4ce6-9707-663ba303527a" = {
"Description".value = "Thunderbird";
"desktops".value = "e2f3dcc2-8009-46b0-af71-745daf70b846";
"desktopsrule".value = 2;
"maximizehoriz".value = true;
"maximizehorizrule".value = 3;
"maximizevert".value = true;
"maximizevertrule".value = 3;
"wmclass".value = "Mail thunderbird";
"wmclasscomplete".value = true;
"wmclassmatch".value = 1;
};
"f28e63b8-f0bb-4a4d-a89e-ff018c27eb17" = {
"Description".value = "Spotify-qt";
"desktops".value = "95e0579d-b58f-47c7-a47f-5caf30cdf399";
"desktopsrule".value = 2;
"wmclass".value = "spotify-qt spotify-qt";
"wmclasscomplete".value = true;
"wmclassmatch".value = 1;
};
}

View file

@ -0,0 +1,42 @@
[
{
location = "bottom";
widgets = [
{
name = "org.kde.plasma.pager";
config = {
General.displayedText = "Name";
};
}
{
name = "org.kde.plasma.panelspacer";
config = {
General.length = "400";
Generla.expanding = "false";
};
}
"org.kde.plasma.kickoff"
{
name = "org.kde.plasma.icontasks";
config = {
# Unpin default apps
General.launchers = [];
General.middleClickAction = "None";
General.groupingStrategy = "0";
General.minimizeActiveTaskOnClick = "false";
General.wheelEnabled = "false";
};
}
"org.kde.plasma.panelspacer"
"org.kde.plasma.systemtray"
{
name = "org.kde.plasma.digitalclock";
config = {
Appearance.showSeconds = "always";
};
}
];
height = 40;
floating = false;
}
]

View file

@ -0,0 +1,42 @@
{pkgs, ...}: {
programs.plasma = {
enable = true;
# overrideConfig = true;
configFile = import ./configFile.nix;
# Unfortunately I really need to configure the system tray and keyboard
# shortcuts for its applets, so I have disabled the panel configuration
# for now so it doesn't get reset
# https://github.com/pjones/plasma-manager/issues/126
# panels = import ./panels.nix;
workspace = {
clickItemTo = "select";
lookAndFeel = "org.kde.breezedark.desktop";
wallpaper = "${pkgs.libsForQt5.plasma-workspace-wallpapers}/share/wallpapers/MilkyWay/contents/images/1080x1920.png";
};
shortcuts = {
ksmserver = {
"Lock Session" = ["Meta+L"];
};
kwin = {
"Switch to Desktop 1" = "Ctrl+F1";
"Switch to Desktop 2" = "Ctrl+F2";
"Switch to Desktop 3" = "Ctrl+F3";
"Switch to Desktop 4" = "Ctrl+F4";
"Switch to Desktop 5" = "Ctrl+F5";
"Switch to Desktop 6" = "Ctrl+F6";
"Window Close" = "Meta+Q";
};
org_kde_powerdevil = {
"Sleep" = ["Sleep" "Meta+Shift+S"];
};
"services/firefox-devedition.desktop"."_launch" = "Meta+F";
"services/Alacritty.desktop"."_launch" = "Meta+Return";
};
};
}