I am batman

This commit is contained in:
2026-07-10 20:07:29 -04:00
commit 4aac54bff6
175 changed files with 18136 additions and 0 deletions

6
modules/rofi/default.nix Normal file
View File

@@ -0,0 +1,6 @@
{
imports = [
./rofi.nix
# ./style.nix
];
}

367
modules/rofi/rofi.nix Normal file
View File

@@ -0,0 +1,367 @@
{ config, pkgs, ... }:
{
programs.rofi = {
enable = true;
package = pkgs.rofi;
theme = "user"; # default theme
};
xdg.configFile."rofi/user.rasi".text = ''
// Config //
configuration {
modi: "drun,run,window";
show-icons: true;
font: "JetBrainsMono Nerd Font 12"; // slightly bigger
icon-theme: "Tela-circle-dracula";
}
@theme "~/.config/rofi/colors.rasi"
// Main window //
window {
width: 25em;
height: 14em;
transparency: "real";
fullscreen: false;
cursor: "default";
border-color: @foreground;
border-width: 2px;
background-color: @foreground;
padding: 0.15em;
}
// Mainbox (vertical stack: input on top, list below)
mainbox {
orientation: vertical;
spacing: 0.5em;
padding: 0.25em;
background-color: @background;
}
// Input bar at top with border
inputbar {
enabled: true;
children: [ "entry" ];
background-color: @background;
border-color: @foreground;
border-width: 2px;
padding: 0.4em 0.5em;
}
entry {
enabled: true;
text-color: @foreground;
background-color: @background;
padding: 0.2em 0.4em;
}
// List view //
listbox {
spacing: 0.5em;
padding: 0.5em;
background-color: transparent;
}
listview {
enabled: true;
columns: 1;
lines: 6;
cycle: true;
dynamic: true;
scrollbar: false;
layout: vertical;
background-color: transparent;
text-color: @foreground;
}
// Elements (programs) //
element {
enabled: true;
spacing: 0.5em;
padding: 0.3em 0.5em;
cursor: pointer;
background-color: transparent;
text-color: @foreground;
}
// Highlight both selection and mouse hover
element selected.normal,
element selected.active,
element selected.focused,
element hovered {
background-color: @foreground;
text-color: @background;
}
element-icon {
size: 1.5em;
background-color: transparent;
text-color: inherit;
}
element-text {
cursor: inherit;
background-color: transparent;
text-color: inherit;
}
// Error messages //
error-message {
text-color: @foreground;
background-color: @background;
}
textbox {
text-color: @foreground;
background-color: inherit;
}
'';
xdg.configFile."rofi/wallpaper.rasi".text = ''
configuration {
modi: "drun";
show-icons: true;
drun-display-format: "{name}";
}
@theme "~/.config/rofi/colors.rasi"
window {
enabled: true;
fullscreen: false;
width: 100%;
transparency: "real";
cursor: "default";
spacing: 0px;
padding: 0px;
border: 0px;
border-radius: 0px;
border-color: transparent;
background-color: transparent;
}
mainbox {
enabled: true;
children: [ "listview" ];
background-color: @background;
}
listview {
enabled: true;
columns: 6;
lines: 1;
spacing: 10px 20px;
padding: 20px 10px;
cycle: true;
dynamic: false;
scrollbar: false;
layout: vertical;
reverse: false;
fixed-height: false;
height: 40px;
fixed-columns: true;
cursor: "default";
background-color: transparent;
text-color: transparent;
}
element {
enabled: true;
orientation: horizontal;
spacing: 0px;
padding: 4px;
border-radius: 4px;
cursor: pointer;
background-color: transparent;
text-color: transparent;
}
@media(max-aspect-ratio: 1.8) {
element {
orientation: vertical;
}
}
element selected.normal {
background-color: @foreground;
text-color: transparent;
}
element-icon {
size: 50%;
border-radius: 4px;
cursor: inherit;
background-color: transparent;
text-color: transparent;
}
element-text {
enabled: false;
}
'';
xdg.configFile."rofi/network.rasi".text = ''
@theme "~/.config/rofi/colors.rasi"
configuration {
show-icons: false;
display-drun: "";
display-run: "";
display-window: "";
font: "JetBrainsMono Nerd Font 11";
}
window {
width: 420px;
height: 300px;
transparency: "real";
fullscreen: false;
enabled: true;
border-radius: 8px;
border-color: @foreground;
border-width: 2px;
background-color: @background;
padding: 0.5em;
}
mainbox {
orientation: vertical;
spacing: 0.5em;
padding: 0.5em;
background-color: @background;
}
inputbar {
enabled: true;
children: [ "entry" ];
background-color: @background;
border-color: @foreground;
border-width: 2px;
border-radius: 4px;
padding: 0.4em 0.5em;
spacing: 0.5em;
}
entry {
enabled: true;
text-color: @foreground;
background-color: @background;
placeholder: "Search networks...";
placeholder-color: @normal-background;
}
listbox {
spacing: 0.5em;
padding: 0.25em;
background-color: transparent;
}
listview {
enabled: true;
columns: 1;
lines: 10;
cycle: true;
dynamic: true;
scrollbar: false;
layout: vertical;
background-color: transparent;
text-color: @foreground;
}
element {
enabled: true;
spacing: 0.5em;
padding: 0.5em 0.6em;
cursor: pointer;
background-color: transparent;
text-color: @foreground;
border-radius: 4px;
}
element selected {
background-color: @foreground;
text-color: @background;
}
element-text {
cursor: inherit;
background-color: transparent;
text-color: inherit;
}
element-icon {
size: 1.2em;
background-color: transparent;
text-color: inherit;
}
textbox {
text-color: @foreground;
background-color: @background;
padding: 0.5em;
border-radius: 4px;
}
'';
xdg.configFile."rofi/fullscreen-grid.rasi".text = ''
@theme "~/.config/rofi/colors.rasi"
configuration {
show-icons: true;
drun-display-format: "{name}";
icon-theme: "Papirus-Dark";
location: 5;
}
* {
background-color: @background;
text-color: @foreground;
}
window {
fullscreen: true;
width: 100%;
height: 100%;
font: "UW Ttyp0 10";
background-color: @background;
}
prompt { enabled: false; }
entry {
padding: 10px 0 10px 0;
horizontal-align: 0.5;
margin: 65px 40% 0 40%;
color: @normal-foreground;
background-color: @normal-background;
font: "UW Ttyp0 11";
border-radius: 30px;
placeholder: "Search";
}
listview {
columns: 7;
margin: 10% 10% 10% 10%;
}
element {
padding: 0.8%;
margin: 1%;
orientation: vertical;
}
element selected {
text-color: @foreground;
background-color: @background;
border-radius: 10px;
}
element-icon {
size: 64;
}
element-text {
horizontal-align: 0.5;
}
'';
}

163
modules/rofi/style.nix Normal file
View File

@@ -0,0 +1,163 @@
{ config, pkgs, lib, ... }:
{
programs.rofi.theme = "user";
xdg.configFile."rofi/user.rasi".text = ''
// Config //
configuration {
modi: "drun,filebrowser,window,run";
show-icons: true;
display-drun: "";
display-run: "";
display-filebrowser: "";
display-window: "";
drun-display-format: "{name}";
window-format: "{w}{t}";
font: "JetBrainsMono Nerd Font 10";
icon-theme: "Tela-circle-dracula";
}
@theme "~/.config/rofi/theme.rasi"
// Main //
window {
height: 33em;
width: 63em;
transparency: "real";
fullscreen: false;
enabled: true;
cursor: "default";
spacing: 0em;
padding: 0em;
border-color: @main-br;
background-color: @main-bg;
}
mainbox {
enabled: true;
spacing: 0em;
padding: 0em;
orientation: horizontal;
children: [ "dummywall" , "listbox" ];
background-color: transparent;
}
dummywall {
spacing: 0em;
padding: 0em;
width: 37em;
expand: false;
orientation: horizontal;
children: [ "mode-switcher" , "inputbar" ];
background-color: transparent;
background-image: url("~/.cache/hyde/wall.thmb", height);
}
// Modes //
mode-switcher{
orientation: vertical;
enabled: true;
width: 3.8em;
padding: 9.2em 0.5em 9.2em 0.5em;
spacing: 1.2em;
background-color: transparent;
background-image: url("~/.cache/hyde/wall.blur", height);
}
button {
cursor: pointer;
border-radius: 2em;
background-color: @main-bg;
text-color: @main-fg;
}
button selected {
background-color: @main-fg;
text-color: @main-bg;
}
// Inputs //
inputbar {
enabled: true;
children: [ "entry" ];
background-color: transparent;
}
entry {
enabled: false;
}
// Lists //
listbox {
spacing: 0em;
padding: 2em;
children: [ "dummy" , "listview" , "dummy" ];
background-color: transparent;
}
listview {
enabled: true;
spacing: 0em;
padding: 0em;
columns: 1;
lines: 8;
cycle: true;
dynamic: true;
scrollbar: false;
layout: vertical;
reverse: false;
expand: false;
fixed-height: true;
fixed-columns: true;
cursor: "default";
background-color: transparent;
text-color: @main-fg;
}
dummy {
background-color: transparent;
}
// Elements //
element {
enabled: true;
spacing: 0.8em;
padding: 0.4em 0.4em 0.4em 1.5em;
cursor: pointer;
background-color: transparent;
text-color: @main-fg;
}
element selected.normal {
background-color: @select-bg;
text-color: @select-fg;
}
element-icon {
size: 2.8em;
cursor: inherit;
background-color: transparent;
text-color: inherit;
}
element-text {
vertical-align: 0.5;
horizontal-align: 0.0;
cursor: inherit;
background-color: transparent;
text-color: inherit;
}
// Error message //
error-message {
text-color: @main-fg;
background-color: @main-bg;
text-transform: capitalize;
children: [ "textbox" ];
}
textbox {
text-color: inherit;
background-color: inherit;
vertical-align: 0.5;
horizontal-align: 0.5;
}
'';
}