Desktop environment refactor
This commit is contained in:
55
modules/desktop/tools/rofi.nix
Normal file
55
modules/desktop/tools/rofi.nix
Normal file
@@ -0,0 +1,55 @@
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.samfelag.modules.desktop.tools.rofi;
|
||||
hyprCfg = config.samfelag.modules.desktop.wm.hyprland;
|
||||
i3Cfg = config.samfelag.modules.desktop.wm.i3;
|
||||
nix-colors-lib = inputs.nix-colors.lib-contrib { inherit pkgs; };
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.desktop.tools.rofi = {
|
||||
enable = lib.mkEnableOption "rofi";
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs;
|
||||
if hyprCfg.enable then [
|
||||
rofi-wayland
|
||||
] else [
|
||||
rofi
|
||||
];
|
||||
|
||||
hm.xdg.configFile."rofi/menus".source = ../../../config/rofi/menus;
|
||||
hm.xdg.configFile."rofi/nix.png".source = nix-colors-lib.nixWallpaperFromScheme {
|
||||
scheme = config.colorScheme;
|
||||
width = 600;
|
||||
height = 600;
|
||||
logoScale = 2.0;
|
||||
};
|
||||
|
||||
# Themeing ---------------------------------
|
||||
hm.xdg.configFile."rofi/theme.rasi".text = ''
|
||||
* {
|
||||
font: "Iosevka Nerd Font 10";
|
||||
background: #${config.colorScheme.palette.base00};
|
||||
background-alt: #${config.colorScheme.palette.base02};
|
||||
foreground: #${config.colorScheme.palette.base05};
|
||||
selected: #${config.colorScheme.palette.base03};
|
||||
active: #${config.colorScheme.palette.base07};
|
||||
urgent: #${config.colorScheme.palette.base06};
|
||||
}
|
||||
'';
|
||||
|
||||
samfelag.modules.desktop.wm.hyprland.extraKeybindings = lib.mkIf hyprCfg.enable [
|
||||
"${hyprCfg.mod}, SPACE, exec, $HOME/.config/rofi/menus/launcher/launcher.sh"
|
||||
"${hyprCfg.mod}, END, exec, $HOME/.config/rofi/menus/powermenu/powermenu.sh"
|
||||
"${hyprCfg.mod} SHIFT, W, exec, $HOME/.config/rofi/menus/wifi/wifi.sh"
|
||||
];
|
||||
|
||||
samfelag.modules.desktop.wm.i3.extraKeybindings = lib.mkIf i3Cfg.enable {
|
||||
"${i3Cfg.mod}+space" = "exec $HOME/.config/rofi/menus/launcher/launcher.sh";
|
||||
"${i3Cfg.mod}+End" = "exec $HOME/.config/rofi/menus/powermenu/powermenu.sh";
|
||||
"${i3Cfg.mod}+Shift+w" = "exec $HOME/.config/rofi/menus/wifi/wifi.sh";
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user