mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-01-21 16:21:34 +01:00
Wrap rofi
This commit is contained in:
parent
d51b29358f
commit
694a21affa
8 changed files with 346 additions and 46 deletions
|
|
@ -2,7 +2,6 @@
|
||||||
imports = [
|
imports = [
|
||||||
./hyprland
|
./hyprland
|
||||||
./theme.nix
|
./theme.nix
|
||||||
./rofi
|
|
||||||
./waybar.nix
|
./waybar.nix
|
||||||
./hypridlelock.nix
|
./hypridlelock.nix
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,6 @@ in {
|
||||||
services.dunst.enable = true;
|
services.dunst.enable = true;
|
||||||
|
|
||||||
myConfig.de = {
|
myConfig.de = {
|
||||||
rofi.enable = true;
|
|
||||||
hypridlelock.enable = true;
|
hypridlelock.enable = true;
|
||||||
waybar.enable = true;
|
waybar.enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
cfg = config.myConfig.de.rofi;
|
|
||||||
in {
|
|
||||||
options.myConfig.de.rofi = {
|
|
||||||
enable = lib.mkEnableOption "";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
programs.rofi = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.rofi-wayland;
|
|
||||||
theme = ./theme.rasi;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -46,5 +46,6 @@
|
||||||
myWrappers.marktext
|
myWrappers.marktext
|
||||||
myWrappers.webcord
|
myWrappers.webcord
|
||||||
(myWrappers.kitty {inherit (config.myConfig.de) theme;})
|
(myWrappers.kitty {inherit (config.myConfig.de) theme;})
|
||||||
|
(myWrappers.rofi {inherit (config.myConfig.de) theme;})
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,6 @@
|
||||||
.wrapped;
|
.wrapped;
|
||||||
in {
|
in {
|
||||||
_module.args.myWrappers = lib.pipe (builtins.readDir ./.) [
|
_module.args.myWrappers = lib.pipe (builtins.readDir ./.) [
|
||||||
(lib.filterAttrs (name: value: value == "regular"))
|
|
||||||
(lib.filterAttrs (name: value: name != "default.nix"))
|
(lib.filterAttrs (name: value: name != "default.nix"))
|
||||||
(lib.concatMapAttrs (name: _: {${lib.removeSuffix ".nix" name} = import ./${name} {inherit assembleWrapper pkgs lib;};}))
|
(lib.concatMapAttrs (name: _: {${lib.removeSuffix ".nix" name} = import ./${name} {inherit assembleWrapper pkgs lib;};}))
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,3 @@
|
||||||
/**
|
|
||||||
*
|
|
||||||
* Author : Aditya Shakya (adi1090x)
|
|
||||||
* Github : @adi1090x
|
|
||||||
*
|
|
||||||
* Rofi Theme File
|
|
||||||
* Rofi Version: 1.7.3
|
|
||||||
**/
|
|
||||||
|
|
||||||
/*****----- Configuration -----*****/
|
|
||||||
configuration {
|
|
||||||
modi: "drun,run,filebrowser,window";
|
|
||||||
show-icons: true;
|
|
||||||
display-drun: "";
|
|
||||||
display-run: "";
|
|
||||||
display-filebrowser: "";
|
|
||||||
display-window: "";
|
|
||||||
drun-display-format: "{name}";
|
|
||||||
window-format: "{w} · {c} · {t}";
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Global Properties -----*****/
|
|
||||||
* {
|
* {
|
||||||
background: #1E2127FF;
|
background: #1E2127FF;
|
||||||
background-alt: #282B31FF;
|
background-alt: #282B31FF;
|
||||||
|
|
@ -29,8 +7,21 @@ configuration {
|
||||||
urgent: #E06C75FF;
|
urgent: #E06C75FF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****----- Configuration -----*****/
|
||||||
|
configuration {
|
||||||
|
modi: "drun,run,filebrowser,window";
|
||||||
|
show-icons: true;
|
||||||
|
display-drun: "";
|
||||||
|
display-run: "";
|
||||||
|
display-filebrowser: "";
|
||||||
|
display-window: "";
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
window-format: "{w} · {c} · {t}";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Global Properties -----*****/
|
||||||
* {
|
* {
|
||||||
font: "Open Sans 12, Symbols Nerd Font 12";
|
font: "Open Sans 12, Symbols Nerd Font Mono 12";
|
||||||
}
|
}
|
||||||
|
|
||||||
* {
|
* {
|
||||||
21
wrappers/rofi/default.nix
Normal file
21
wrappers/rofi/default.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
assembleWrapper,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {theme ? "dark"}:
|
||||||
|
assembleWrapper {
|
||||||
|
basePackage = pkgs.rofi-wayland;
|
||||||
|
|
||||||
|
flags = let
|
||||||
|
kitty-config =
|
||||||
|
{
|
||||||
|
dark = ./dark-config.rasi;
|
||||||
|
light = ./light-config.rasi;
|
||||||
|
}
|
||||||
|
.${theme};
|
||||||
|
in [
|
||||||
|
"-config"
|
||||||
|
kitty-config
|
||||||
|
];
|
||||||
|
}
|
||||||
310
wrappers/rofi/light-config.rasi
Normal file
310
wrappers/rofi/light-config.rasi
Normal file
|
|
@ -0,0 +1,310 @@
|
||||||
|
* {
|
||||||
|
background: #F1F1F1FF;
|
||||||
|
background-alt: #E0E0E0FF;
|
||||||
|
foreground: #252525FF;
|
||||||
|
selected: #008EC4FF;
|
||||||
|
active: #10A778FF;
|
||||||
|
urgent: #C30771FF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Configuration -----*****/
|
||||||
|
configuration {
|
||||||
|
modi: "drun,run,filebrowser,window";
|
||||||
|
show-icons: true;
|
||||||
|
display-drun: "";
|
||||||
|
display-run: "";
|
||||||
|
display-filebrowser: "";
|
||||||
|
display-window: "";
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
window-format: "{w} · {c} · {t}";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Global Properties -----*****/
|
||||||
|
* {
|
||||||
|
font: "Open Sans 12, Symbols Nerd Font Mono 12";
|
||||||
|
}
|
||||||
|
|
||||||
|
* {
|
||||||
|
border-colour: var(selected);
|
||||||
|
handle-colour: var(selected);
|
||||||
|
background-colour: var(background);
|
||||||
|
foreground-colour: var(foreground);
|
||||||
|
alternate-background: var(background-alt);
|
||||||
|
normal-background: var(background);
|
||||||
|
normal-foreground: var(foreground);
|
||||||
|
urgent-background: var(urgent);
|
||||||
|
urgent-foreground: var(background);
|
||||||
|
active-background: var(active);
|
||||||
|
active-foreground: var(background);
|
||||||
|
selected-normal-background: var(selected);
|
||||||
|
selected-normal-foreground: var(background);
|
||||||
|
selected-urgent-background: var(active);
|
||||||
|
selected-urgent-foreground: var(background);
|
||||||
|
selected-active-background: var(urgent);
|
||||||
|
selected-active-foreground: var(background);
|
||||||
|
alternate-normal-background: var(background);
|
||||||
|
alternate-normal-foreground: var(foreground);
|
||||||
|
alternate-urgent-background: var(urgent);
|
||||||
|
alternate-urgent-foreground: var(background);
|
||||||
|
alternate-active-background: var(active);
|
||||||
|
alternate-active-foreground: var(background);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Window -----*****/
|
||||||
|
window {
|
||||||
|
/* properties for window widget */
|
||||||
|
transparency: "real";
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
fullscreen: false;
|
||||||
|
width: 600px;
|
||||||
|
x-offset: 0px;
|
||||||
|
y-offset: 0px;
|
||||||
|
|
||||||
|
/* properties for all widgets */
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
cursor: "default";
|
||||||
|
/* Backgroud Colors */
|
||||||
|
background-color: @background-colour;
|
||||||
|
/* Backgroud Image */
|
||||||
|
//background-image: url("/path/to/image.png", none);
|
||||||
|
/* Simple Linear Gradient */
|
||||||
|
//background-image: linear-gradient(red, orange, pink, purple);
|
||||||
|
/* Directional Linear Gradient */
|
||||||
|
//background-image: linear-gradient(to bottom, pink, yellow, magenta);
|
||||||
|
/* Angle Linear Gradient */
|
||||||
|
//background-image: linear-gradient(45, cyan, purple, indigo);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Box -----*****/
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 30px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px 0px 0px 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "inputbar", "message", "listview" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Inputbar -----*****/
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
children: [ "textbox-prompt-colon", "entry", "mode-switcher" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
textbox-prompt-colon {
|
||||||
|
enabled: true;
|
||||||
|
padding: 5px 0px;
|
||||||
|
expand: false;
|
||||||
|
str: "";
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
enabled: true;
|
||||||
|
padding: 5px 0px;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: text;
|
||||||
|
placeholder: "Search...";
|
||||||
|
placeholder-color: inherit;
|
||||||
|
}
|
||||||
|
num-filtered-rows {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
textbox-num-sep {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
str: "/";
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
num-rows {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
case-indicator {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Listview -----*****/
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 1;
|
||||||
|
lines: 8;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: true;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
|
||||||
|
spacing: 5px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
cursor: "default";
|
||||||
|
}
|
||||||
|
scrollbar {
|
||||||
|
handle-width: 5px ;
|
||||||
|
handle-color: @handle-colour;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Elements -----*****/
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
element normal.normal {
|
||||||
|
background-color: var(normal-background);
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
element normal.urgent {
|
||||||
|
background-color: var(urgent-background);
|
||||||
|
text-color: var(urgent-foreground);
|
||||||
|
}
|
||||||
|
element normal.active {
|
||||||
|
background-color: var(active-background);
|
||||||
|
text-color: var(active-foreground);
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
element selected.urgent {
|
||||||
|
background-color: var(selected-urgent-background);
|
||||||
|
text-color: var(selected-urgent-foreground);
|
||||||
|
}
|
||||||
|
element selected.active {
|
||||||
|
background-color: var(selected-active-background);
|
||||||
|
text-color: var(selected-active-foreground);
|
||||||
|
}
|
||||||
|
element alternate.normal {
|
||||||
|
background-color: var(alternate-normal-background);
|
||||||
|
text-color: var(alternate-normal-foreground);
|
||||||
|
}
|
||||||
|
element alternate.urgent {
|
||||||
|
background-color: var(alternate-urgent-background);
|
||||||
|
text-color: var(alternate-urgent-foreground);
|
||||||
|
}
|
||||||
|
element alternate.active {
|
||||||
|
background-color: var(alternate-active-background);
|
||||||
|
text-color: var(alternate-active-foreground);
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
size: 24px;
|
||||||
|
cursor: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Mode Switcher -----*****/
|
||||||
|
mode-switcher{
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
button {
|
||||||
|
padding: 5px 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
button selected {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Message -----*****/
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px 0px 0px 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 8px 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
highlight: none;
|
||||||
|
placeholder-color: @foreground-colour;
|
||||||
|
blink: true;
|
||||||
|
markup: true;
|
||||||
|
}
|
||||||
|
error-message {
|
||||||
|
padding: 10px;
|
||||||
|
border: 2px solid;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @background-colour;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue