227 lines
8.6 KiB
Nix
227 lines
8.6 KiB
Nix
{ config, pkgs, username, lib, ... }:
|
|
{
|
|
config = lib.mkIf config.hyprland.enable {
|
|
|
|
home-manager.users.${username} = {
|
|
home.packages = with pkgs; [
|
|
(writeShellScriptBin "rofi-launcher" ''
|
|
if pgrep -x "rofi" > /dev/null; then
|
|
# Rofi is running, kill it
|
|
pkill -x rofi
|
|
exit 0
|
|
fi
|
|
rofi -show drun
|
|
'')
|
|
];
|
|
programs = {
|
|
rofi = {
|
|
enable = true;
|
|
package = pkgs.rofi-wayland;
|
|
extraConfig = {
|
|
modi = "drun,filebrowser,run";
|
|
show-icons = true;
|
|
icon-theme = "Papirus";
|
|
location = 0;
|
|
font = "JetBrainsMono Nerd Font Mono 12";
|
|
drun-display-format = "{icon} {name}";
|
|
display-drun = " Apps";
|
|
display-run = " Run";
|
|
display-filebrowser = " File";
|
|
};
|
|
# theme =
|
|
# let
|
|
# inherit (config.lib.formats.rasi) mkLiteral;
|
|
# in
|
|
# {
|
|
# "*" = {
|
|
# bg = mkLiteral "#${config.stylix.base16Scheme.base00}";
|
|
# bg-alt = mkLiteral "#${config.stylix.base16Scheme.base09}";
|
|
# foreground = mkLiteral "#${config.stylix.base16Scheme.base01}";
|
|
# selected = mkLiteral "#${config.stylix.base16Scheme.base08}";
|
|
# active = mkLiteral "#${config.stylix.base16Scheme.base0B}";
|
|
# text-selected = mkLiteral "#${config.stylix.base16Scheme.base00}";
|
|
# text-color = mkLiteral "#${config.stylix.base16Scheme.base05}";
|
|
# border-color = mkLiteral "#${config.stylix.base16Scheme.base0F}";
|
|
# urgent = mkLiteral "#${config.stylix.base16Scheme.base0E}";
|
|
# };
|
|
# "window" = {
|
|
# width = mkLiteral "50%";
|
|
# transparency = "real";
|
|
# orientation = mkLiteral "vertical";
|
|
# cursor = mkLiteral "default";
|
|
# spacing = mkLiteral "0px";
|
|
# border = mkLiteral "2px";
|
|
# border-color = "@border-color";
|
|
# border-radius = mkLiteral "20px";
|
|
# background-color = mkLiteral "@bg";
|
|
# };
|
|
# "mainbox" = {
|
|
# padding = mkLiteral "15px";
|
|
# enabled = true;
|
|
# orientation = mkLiteral "vertical";
|
|
# children = map mkLiteral [
|
|
# "inputbar"
|
|
# "listbox"
|
|
# ];
|
|
# background-color = mkLiteral "transparent";
|
|
# };
|
|
# "inputbar" = {
|
|
# enabled = true;
|
|
# padding = mkLiteral "10px 10px 200px 10px";
|
|
# margin = mkLiteral "10px";
|
|
# background-color = mkLiteral "transparent";
|
|
# border-radius = "25px";
|
|
# orientation = mkLiteral "horizontal";
|
|
# children = map mkLiteral [
|
|
# "entry"
|
|
# "dummy"
|
|
# "mode-switcher"
|
|
# ];
|
|
# background-image = mkLiteral ''url("~/Pictures/Wallpapers/beautifulmountainscape.jpg", width)'';
|
|
# };
|
|
# "entry" = {
|
|
# enabled = true;
|
|
# expand = false;
|
|
# width = mkLiteral "20%";
|
|
# padding = mkLiteral "10px";
|
|
# border-radius = mkLiteral "12px";
|
|
# background-color = mkLiteral "@selected";
|
|
# text-color = mkLiteral "@text-selected";
|
|
# cursor = mkLiteral "text";
|
|
# placeholder = "🖥️ Search ";
|
|
# placeholder-color = mkLiteral "inherit";
|
|
# };
|
|
# "listbox" = {
|
|
# spacing = mkLiteral "10px";
|
|
# padding = mkLiteral "10px";
|
|
# background-color = mkLiteral "transparent";
|
|
# orientation = mkLiteral "vertical";
|
|
# children = map mkLiteral [
|
|
# "message"
|
|
# "listview"
|
|
# ];
|
|
# };
|
|
# "listview" = {
|
|
# enabled = true;
|
|
# columns = 2;
|
|
# lines = 6;
|
|
# cycle = true;
|
|
# dynamic = true;
|
|
# scrollbar = false;
|
|
# layout = mkLiteral "vertical";
|
|
# reverse = false;
|
|
# fixed-height = false;
|
|
# fixed-columns = true;
|
|
# spacing = mkLiteral "10px";
|
|
# background-color = mkLiteral "transparent";
|
|
# border = mkLiteral "0px";
|
|
# };
|
|
# "dummy" = {
|
|
# expand = true;
|
|
# background-color = mkLiteral "transparent";
|
|
# };
|
|
# "mode-switcher" = {
|
|
# enabled = true;
|
|
# spacing = mkLiteral "10px";
|
|
# background-color = mkLiteral "transparent";
|
|
# };
|
|
# "button" = {
|
|
# width = mkLiteral "5%";
|
|
# padding = mkLiteral "12px";
|
|
# border-radius = mkLiteral "12px";
|
|
# background-color = mkLiteral "@text-selected";
|
|
# text-color = mkLiteral "@text-color";
|
|
# cursor = mkLiteral "pointer";
|
|
# };
|
|
# "button selected" = {
|
|
# background-color = mkLiteral "@selected";
|
|
# text-color = mkLiteral "@text-selected";
|
|
# };
|
|
# "scrollbar" = {
|
|
# width = mkLiteral "4px";
|
|
# border = 0;
|
|
# handle-color = mkLiteral "@border-color";
|
|
# handle-width = mkLiteral "8px";
|
|
# padding = 0;
|
|
# };
|
|
# "element" = {
|
|
# enabled = true;
|
|
# spacing = mkLiteral "10px";
|
|
# padding = mkLiteral "10px";
|
|
# border-radius = mkLiteral "12px";
|
|
# background-color = mkLiteral "transparent";
|
|
# cursor = mkLiteral "pointer";
|
|
# };
|
|
# "element normal.normal" = {
|
|
# background-color = mkLiteral "inherit";
|
|
# text-color = mkLiteral "inherit";
|
|
# };
|
|
# "element normal.urgent" = {
|
|
# background-color = mkLiteral "@urgent";
|
|
# text-color = mkLiteral "@foreground";
|
|
# };
|
|
# "element normal.active" = {
|
|
# background-color = mkLiteral "@active";
|
|
# text-color = mkLiteral "@foreground";
|
|
# };
|
|
# "element selected.normal" = {
|
|
# background-color = mkLiteral "@selected";
|
|
# text-color = mkLiteral "@text-selected";
|
|
# };
|
|
# "element selected.urgent" = {
|
|
# background-color = mkLiteral "@urgent";
|
|
# text-color = mkLiteral "@text-selected";
|
|
# };
|
|
# "element selected.active" = {
|
|
# background-color = mkLiteral "@urgent";
|
|
# text-color = mkLiteral "@text-selected";
|
|
# };
|
|
# "element alternate.normal" = {
|
|
# background-color = mkLiteral "transparent";
|
|
# text-color = mkLiteral "inherit";
|
|
# };
|
|
# "element alternate.urgent" = {
|
|
# background-color = mkLiteral "transparent";
|
|
# text-color = mkLiteral "inherit";
|
|
# };
|
|
# "element alternate.active" = {
|
|
# background-color = mkLiteral "transparent";
|
|
# text-color = mkLiteral "inherit";
|
|
# };
|
|
# "element-icon" = {
|
|
# background-color = mkLiteral "transparent";
|
|
# text-color = mkLiteral "inherit";
|
|
# size = mkLiteral "36px";
|
|
# cursor = mkLiteral "inherit";
|
|
# };
|
|
# "element-text" = {
|
|
# background-color = mkLiteral "transparent";
|
|
# font = "JetBrainsMono Nerd Font Mono 12";
|
|
# text-color = mkLiteral "inherit";
|
|
# cursor = mkLiteral "inherit";
|
|
# vertical-align = mkLiteral "0.5";
|
|
# horizontal-align = mkLiteral "0.0";
|
|
# };
|
|
# "message" = {
|
|
# background-color = mkLiteral "transparent";
|
|
# border = mkLiteral "0px";
|
|
# };
|
|
# "textbox" = {
|
|
# padding = mkLiteral "12px";
|
|
# border-radius = mkLiteral "10px";
|
|
# background-color = mkLiteral "@bg-alt";
|
|
# text-color = mkLiteral "@bg";
|
|
# vertical-align = mkLiteral "0.5";
|
|
# horizontal-align = mkLiteral "0.0";
|
|
# };
|
|
# "error-message" = {
|
|
# padding = mkLiteral "12px";
|
|
# border-radius = mkLiteral "20px";
|
|
# background-color = mkLiteral "@bg-alt";
|
|
# text-color = mkLiteral "@bg";
|
|
# };
|
|
# };
|
|
};
|
|
};
|
|
};
|
|
};} |