AquaticOS/modules/programs/hyprland/dms.nix

175 lines
No EOL
4.5 KiB
Nix

{ inputs, ... }:
{
flake.modules.nixos.hyprland =
{ pkgs, ... }:
{
imports = [
inputs.dms.nixosModules.dank-material-shell
inputs.dms-plugin-registry.modules.default
];
programs.dank-material-shell = {
enable = true;
enableSystemMonitoring = true;
dgop.package = inputs.dgop.packages.${pkgs.stdenv.hostPlatform.system}.default;
};
};
flake.modules.homeManager.hyprland =
{ pkgs, nixosConfig, lib, ... }:
{
imports = [
inputs.dms.homeModules.dank-material-shell
inputs.dms-plugin-registry.modules.default
];
programs.dank-material-shell =
{
enable = true;
dgop.package = inputs.dgop.packages.${pkgs.stdenv.hostPlatform.system}.default;
settings =
{
showWorkspaceIndex = true;
useFahrenheit = true;
useAutoLocation = true;
notificationHistoryMaxCount = 100;
notificationHistoryMaxAgeDays = 14;
barConfigs = [
{
id = "default";
name = "Main Bar";
enabled = true;
position = 1;
screenPreferences = [
"all"
];
leftWidgets = [
{
id = "workspaceSwitcher";
enabled = true;
}
];
centerWidgets = [
{
id = "music";
enabled = true;
}
{
id = "weather";
enabled = true;
}
];
rightWidgets = [
{
id = "nixStatus";
enabled = true;
}
{
id = "cpuUsage";
enabled = true;
}
{
id = "memUsage";
enabled = true;
}
{
id = "clipboard";
enabled = true;
}
{
id = "notepadButton";
enabled = true;
}
{
id = "notificationButton";
enabled = true;
}
{
id = "systemTray";
enabled = true;
}
{
id = "controlCenterButton";
enabled = true;
}
{
id = "clock";
enabled = true;
}
{
id = "powerMenuButton";
enabled = true;
}
];
spacing = 0;
innerPadding = 0;
bottomGap = 0;
transparency = 0.9;
widgetTransparency = 1;
squareCorners = true;
noBackground = false;
gothCornersEnabled = true;
gothCornerRadiusValue = 12;
borderEnabled = false;
fontScale = 1;
autoHide = false;
openOnOverview = false;
visible = true;
popipGapsAuto = true;
maximizeDetection = true;
}
];
currentThemeName = "custom";
currentThemeCategory = "registry";
customThemeFile = "/home/aqua/.config/DankMaterialShell/themes/catppuccin/theme.json";
registryThemeVariants = {
catppuccin = {
flavor = "mocha";
accent = "mauve";
};
};
};
plugins = {
nixStatus =
{
enable = true;
src = "${fetchGit {
url = "ssh://git@git.aquaticservers.com/aqua/NixStatus";
ref = "master";
rev = "abc89eaa3d89815f9f2bd70d93b823ed8da11e7c";
}}";
#settings =
#{
# nixRepoPath = "${nixosConfig.aquatic.path}";
#};
};
linuxWallpaperEngine =
{
enable = true;
settings =
{
enabled = true;
monitorScenes =
lib.listToAttrs (
lib.map (mon: {
name = mon.output;
value = mon.wpeng;
}) (lib.filter (mon: mon.wpeng != null) nixosConfig.aquaticConfig.hyprland.monitors)
);
sceneSettings =
lib.listToAttrs (
lib.map (mon: {
name = mon.wpeng;
value = { scaling = "fit"; };
}) (lib.filter (mon: mon.wpeng != null) nixosConfig.aquaticConfig.hyprland.monitors)
);
};
};
};
};
};
}