131 lines
4.0 KiB
Nix
131 lines
4.0 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}: {
|
|
home.packages = [
|
|
pkgs.bibata-cursors
|
|
pkgs.papirus-icon-theme
|
|
pkgs.kdePackages.oxygen
|
|
pkgs.kdePackages.oxygen-sounds
|
|
];
|
|
|
|
home.activation = {
|
|
linkThemingAssets = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
|
#!/bin/bash
|
|
if [ ! -d /home/grey/.local/share/wallpapers/ExposeAir ]; then
|
|
mkdir -p /home/grey/.local/share/wallpapers
|
|
ln -s /home/grey/nixos/assets/expose-air/wallpapers/ExposeAir /home/grey/.local/share/wallpapers/ExposeAir
|
|
fi
|
|
|
|
if [ ! -f /home/grey/.local/share/color-schemes/OxygenDarkEdit.colors ]; then
|
|
mkdir -p /home/grey/.local/share/color-schemes
|
|
ln -s /home/grey/nixos/assets/OxygenDarkEdit.colors /home/grey/.local/share/color-schemes/OxygenDarkEdit.colors
|
|
fi
|
|
|
|
if [ ! -f /home/grey/.config/oxygenrc ]; then
|
|
ln -s /home/grey/nixos/assets/oxygenrc /home/grey/.config/oxygenrc
|
|
fi
|
|
|
|
if [ ! -d /home/grey/.local/share/plasma/desktoptheme/exposeair ]; then
|
|
mkdir -p /home/grey/.local/share/plasma/desktoptheme
|
|
ln -s /home/grey/nixos/assets/expose-air/desktoptheme/exposeair /home/grey/.local/share/plasma/desktoptheme/exposeair
|
|
fi
|
|
'';
|
|
};
|
|
|
|
programs.plasma = {
|
|
enable = true;
|
|
overrideConfig = true;
|
|
|
|
session.sessionRestore.restoreOpenApplicationsOnLogin = "startWithEmptySession";
|
|
|
|
input.keyboard.numlockOnStartup = "on";
|
|
|
|
workspace = {
|
|
clickItemTo = "select";
|
|
colorScheme = "OxygenDarkEdit";
|
|
cursor = {
|
|
size = 22;
|
|
theme = "Bibata-Modern-Ice";
|
|
};
|
|
iconTheme = "Papirus-Dark";
|
|
theme = "exposeair";
|
|
wallpaper = "/home/grey/.local/share/wallpapers/ExposeAir/contents/images/2560x1440.png";
|
|
windowDecorations = {
|
|
library = "org.kde.oxygen";
|
|
theme = "oxygen";
|
|
};
|
|
soundTheme = "oxygen";
|
|
};
|
|
|
|
hotkeys.commands."rebuild-flake" = {
|
|
name = "Rebuild NixOS Flake";
|
|
key = "Meta+Z";
|
|
command = "kitty --hold bash -c \"nh os switch /home/grey/nixos; if [ \\$? == 0 ]; then exit; fi\"";
|
|
};
|
|
|
|
shortcuts = {
|
|
plasmashell = {
|
|
"Show Activity Switcher" = "none";
|
|
"manage activities" = "none";
|
|
};
|
|
|
|
kwin = {
|
|
"Close Window" = "Meta+Q";
|
|
"Window Close" = "Meta+Q";
|
|
};
|
|
|
|
"services/kitty.desktop"."_launch" = "Meta+Return";
|
|
};
|
|
|
|
panels = [
|
|
{
|
|
location = "bottom";
|
|
widgets = [
|
|
{
|
|
name = "org.kde.plasma.kickoff";
|
|
config = {
|
|
General = {
|
|
icon = "nix-snowflake";
|
|
};
|
|
};
|
|
}
|
|
{
|
|
name = "org.kde.plasma.icontasks";
|
|
config = {
|
|
iconsOnly = true;
|
|
launchers = [
|
|
"applications:zen-beta.desktop"
|
|
"applications:thunderbird.desktop"
|
|
"applications:org.kde.dolphin.desktop"
|
|
"applications:equibop.desktop"
|
|
"applications:spotify.desktop"
|
|
"applications:steam.desktop"
|
|
"applications:org.prismlauncher.PrismLauncher.desktop"
|
|
"applications:obsidian.desktop"
|
|
"applications:github-desktop.desktop"
|
|
"applications:unityhub.desktop"
|
|
"applications:org.godotengine.Godot4.6.desktop"
|
|
"applications:code.desktop"
|
|
"applications:idea.desktop"
|
|
"applications:clion.desktop"
|
|
"applications:com.obsproject.Studio.desktop"
|
|
"applications:proton.vpn.app.gtk.desktop"
|
|
"applications:systemsettings.desktop"
|
|
"applications:io.ente.auth.desktop"
|
|
"applications:io.github.ilya_zlobintsev.LACT.desktop"
|
|
];
|
|
};
|
|
}
|
|
"org.kde.plasma.marginsseparator"
|
|
"org.kde.plasma.systemtray"
|
|
"org.kde.plasma.digitalclock"
|
|
"org.kde.plasma.showdesktop"
|
|
];
|
|
height = 48;
|
|
}
|
|
];
|
|
};
|
|
}
|