Skip to content

Instantly share code, notes, and snippets.

@tuurep
Last active September 20, 2025 19:32
Show Gist options
  • Select an option

  • Save tuurep/58d58cf4ad621120c14e7ae094655127 to your computer and use it in GitHub Desktop.

Select an option

Save tuurep/58d58cf4ad621120c14e7ae094655127 to your computer and use it in GitHub Desktop.

Rofi config dump for bug report

davatorium/rofi#2195

For minimal reproduction, I tested with a config.rasi only consisting of this:

configuration {
    window {
        close-on-delete: false;
    }
}

rofi -info

Display backends:
	• xcb: selected
	• wayland

Detected Window manager:
	• Openbox

Monitor layout:
              ID: 0 (primary)
            name: eDP
        position: 0,0
            size: 1920,1080
            size: 309mm,173mm  dpi: 158,159


Detected modes:
        • +window
        • windowcd
        • +run
        • +ssh
        • +drun
        • combi
        • keys
        • filebrowser
        • recursivebrowser

Detected user scripts:

Compile time options:
	• Pango   version 1.56.4
	• window  enabled
	• drun    enabled
	• asan    disabled
	• imdkit  enabled
	• xcb     enabled
	• wayland enabled (1.24.0)

For more information see: man rofi
                 Version: 2.0.0-dirty
              Bugreports: https://github.com/davatorium/rofi/
                 Support: https://github.com/davatorium/rofi/discussions
                          #rofi @ libera.chat
      Configuration file: /home/tuure/.config/rofi/config.rasi

Parsed files:
	‣ /home/tuure/.config/rofi/config.rasi

rofi -dump-config

configuration {
/*	modes: "window,drun,run,ssh";*/
/*	font: "mono 12";*/
/*	location: 0;*/
/*	yoffset: 0;*/
/*	xoffset: 0;*/
/*	fixed-num-lines: true;*/
/*	show-icons: false;*/
/*	preview-cmd: ;*/
/*	on-selection-changed: ;*/
/*	on-mode-changed: ;*/
/*	on-entry-accepted: ;*/
/*	on-menu-canceled: ;*/
/*	on-menu-error: ;*/
/*	on-screenshot-taken: ;*/
/*	terminal: "rofi-sensible-terminal";*/
/*	ssh-client: "ssh";*/
/*	ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/
/*	run-command: "{cmd}";*/
/*	run-list-command: "";*/
/*	run-shell-command: "{terminal} -e {cmd}";*/
/*	window-command: "wmctrl -i -R {window}";*/
/*	window-match-fields: "all";*/
/*	icon-theme: ;*/
/*	drun-match-fields: "name,generic,exec,categories,keywords";*/
/*	drun-categories: ;*/
/*	drun-exclude-categories: ;*/
/*	drun-show-actions: false;*/
/*	drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
/*	drun-url-launcher: "xdg-open";*/
/*	disable-history: false;*/
/*	ignored-prefixes: "";*/
/*	sort: false;*/
/*	sorting-method: "normal";*/
/*	case-sensitive: false;*/
/*	case-smart: false;*/
/*	cycle: true;*/
/*	sidebar-mode: false;*/
/*	hover-select: false;*/
/*	eh: 1;*/
/*	auto-select: false;*/
/*	parse-hosts: false;*/
/*	parse-known-hosts: true;*/
/*	combi-modes: "window,run";*/
/*	matching: "normal";*/
/*	tokenize: true;*/
/*	m: "-5";*/
/*	filter: ;*/
/*	dpi: -1;*/
/*	threads: 0;*/
/*	scroll-method: 0;*/
/*	window-format: "{w}    {c}   {t}";*/
/*	click-to-exit: true;*/
/*	global-kb: false;*/
/*	max-history-size: 25;*/
/*	combi-hide-mode-prefix: false;*/
/*	combi-display-format: "{mode} {text}";*/
/*	matching-negate-char: '-' /* unsupported */;*/
/*	cache-dir: ;*/
/*	window-thumbnail: false;*/
/*	drun-use-desktop-cache: false;*/
/*	drun-reload-desktop-cache: false;*/
/*	normalize-match: false;*/
/*	steal-focus: false;*/
/*	application-fallback-icon: ;*/
/*	refilter-timeout-limit: 300;*/
/*	xserver-i300-workaround: false;*/
/*	completer-mode: "filebrowser";*/
/*	imdkit: true;*/
/*	pid: "/run/user/1000/rofi.pid";*/
/*	display-window: ;*/
/*	display-windowcd: ;*/
/*	display-run: ;*/
/*	display-ssh: ;*/
/*	display-drun: ;*/
/*	display-combi: ;*/
/*	display-keys: ;*/
/*	display-filebrowser: ;*/
/*	display-recursivebrowser: ;*/
/*	kb-primary-paste: "Control+V,Shift+Insert";*/
/*	kb-secondary-paste: "Control+v,Insert";*/
/*	kb-secondary-copy: "Control+c";*/
/*	kb-clear-line: "Control+w";*/
/*	kb-move-front: "Control+a";*/
/*	kb-move-end: "Control+e";*/
/*	kb-move-word-back: "Alt+b,Control+Left";*/
/*	kb-move-word-forward: "Alt+f,Control+Right";*/
/*	kb-move-char-back: "Left,Control+b";*/
/*	kb-move-char-forward: "Right,Control+f";*/
/*	kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
/*	kb-remove-word-forward: "Control+Alt+d";*/
/*	kb-remove-char-forward: "Delete,Control+d";*/
/*	kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
/*	kb-remove-to-eol: "Control+k";*/
/*	kb-remove-to-sol: "Control+u";*/
/*	kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
/*	kb-accept-custom: "Control+Return";*/
/*	kb-accept-custom-alt: "Control+Shift+Return";*/
/*	kb-accept-alt: "Shift+Return";*/
/*	kb-delete-entry: "Shift+Delete";*/
/*	kb-mode-next: "Shift+Right,Control+Tab";*/
/*	kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
/*	kb-mode-complete: "Control+l";*/
/*	kb-row-left: "Control+Page_Up";*/
/*	kb-row-right: "Control+Page_Down";*/
/*	kb-row-up: "Up,Control+p";*/
/*	kb-row-down: "Down,Control+n";*/
/*	kb-row-tab: "";*/
/*	kb-element-next: "Tab";*/
/*	kb-element-prev: "ISO_Left_Tab";*/
/*	kb-page-prev: "Page_Up";*/
/*	kb-page-next: "Page_Down";*/
/*	kb-row-first: "Home,KP_Home";*/
/*	kb-row-last: "End,KP_End";*/
/*	kb-row-select: "Control+space";*/
/*	kb-screenshot: "Alt+S";*/
/*	kb-ellipsize: "Alt+period";*/
/*	kb-toggle-case-sensitivity: "grave,dead_grave";*/
/*	kb-toggle-sort: "Alt+grave";*/
/*	kb-cancel: "Escape,Control+g,Control+bracketleft";*/
/*	kb-custom-1: "Alt+1";*/
/*	kb-custom-2: "Alt+2";*/
/*	kb-custom-3: "Alt+3";*/
/*	kb-custom-4: "Alt+4";*/
/*	kb-custom-5: "Alt+5";*/
/*	kb-custom-6: "Alt+6";*/
/*	kb-custom-7: "Alt+7";*/
/*	kb-custom-8: "Alt+8";*/
/*	kb-custom-9: "Alt+9";*/
/*	kb-custom-10: "Alt+0";*/
/*	kb-custom-11: "Alt+exclam";*/
/*	kb-custom-12: "Alt+at";*/
/*	kb-custom-13: "Alt+numbersign";*/
/*	kb-custom-14: "Alt+dollar";*/
/*	kb-custom-15: "Alt+percent";*/
/*	kb-custom-16: "Alt+dead_circumflex";*/
/*	kb-custom-17: "Alt+ampersand";*/
/*	kb-custom-18: "Alt+asterisk";*/
/*	kb-custom-19: "Alt+parenleft";*/
/*	kb-select-1: "Super+1";*/
/*	kb-select-2: "Super+2";*/
/*	kb-select-3: "Super+3";*/
/*	kb-select-4: "Super+4";*/
/*	kb-select-5: "Super+5";*/
/*	kb-select-6: "Super+6";*/
/*	kb-select-7: "Super+7";*/
/*	kb-select-8: "Super+8";*/
/*	kb-select-9: "Super+9";*/
/*	kb-select-10: "Super+0";*/
/*	kb-entry-history-up: "Control+Up";*/
/*	kb-entry-history-down: "Control+Down";*/
/*	kb-matcher-up: "Super+equal";*/
/*	kb-matcher-down: "Super+minus";*/
/*	ml-row-left: "ScrollLeft";*/
/*	ml-row-right: "ScrollRight";*/
/*	ml-row-up: "ScrollUp";*/
/*	ml-row-down: "ScrollDown";*/
/*	me-select-entry: "MousePrimary";*/
/*	me-accept-entry: "MouseDPrimary";*/
/*	me-accept-custom: "Control+MouseDPrimary";*/
  timeout {
      action: "kb-cancel";
      delay:  0;
  }
  filebrowser {
      directories-first: true;
      sorting-method:    "name";
  }
  window {
      close-on-delete: false;
  }
}

rofi -dump-theme

The idea is to not have a theme file, for minimal reproduction. Here goes, to be sure:

rofi -dump-theme
/**
 * rofi -dump-theme output.
 * Rofi version: 2.0.0
 **/
* {
    red:                         rgba ( 220, 50, 47, 100 % );
    selected-active-foreground:  var(background);
    lightfg:                     rgba ( 88, 104, 117, 100 % );
    separatorcolor:              var(foreground);
    urgent-foreground:           var(red);
    alternate-urgent-background: var(lightbg);
    lightbg:                     rgba ( 238, 232, 213, 100 % );
    background-color:            transparent;
    border-color:                var(foreground);
    normal-background:           var(background);
    selected-urgent-background:  var(red);
    alternate-active-background: var(lightbg);
    spacing:                     2;
    blue:                        rgba ( 38, 139, 210, 100 % );
    alternate-normal-foreground: var(foreground);
    urgent-background:           var(background);
    selected-normal-foreground:  var(lightbg);
    active-foreground:           var(blue);
    background:                  rgba ( 253, 246, 227, 100 % );
    selected-active-background:  var(blue);
    active-background:           var(background);
    selected-normal-background:  var(lightfg);
    alternate-normal-background: var(lightbg);
    foreground:                  rgba ( 0, 43, 54, 100 % );
    selected-urgent-foreground:  var(background);
    normal-foreground:           var(foreground);
    alternate-urgent-foreground: var(red);
    alternate-active-foreground: var(blue);
}
element {
    padding: 1px ;
    cursor:  pointer;
    spacing: 5px ;
    border:  0;
}
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-text {
    background-color: transparent;
    cursor:           inherit;
    highlight:        inherit;
    text-color:       inherit;
}
element-icon {
    background-color: transparent;
    size:             1.0000em ;
    cursor:           inherit;
    text-color:       inherit;
}
window {
    padding:          5;
    background-color: var(background);
    border:           1;
}
mainbox {
    padding: 0;
    border:  0;
}
message {
    padding:      1px ;
    border-color: var(separatorcolor);
    border:       2px dash 0px 0px ;
}
textbox {
    text-color: var(foreground);
}
listview {
    padding:      2px 0px 0px ;
    scrollbar:    true;
    border-color: var(separatorcolor);
    spacing:      2px ;
    fixed-height: 0;
    border:       2px dash 0px 0px ;
}
scrollbar {
    width:        4px ;
    padding:      0;
    handle-width: 8px ;
    border:       0;
    handle-color: var(normal-foreground);
}
sidebar {
    border-color: var(separatorcolor);
    border:       2px dash 0px 0px ;
}
button {
    cursor:     pointer;
    spacing:    0;
    text-color: var(normal-foreground);
}
button selected {
    background-color: var(selected-normal-background);
    text-color:       var(selected-normal-foreground);
}
num-filtered-rows {
    expand:     false;
    text-color: Gray;
}
num-rows {
    expand:     false;
    text-color: Gray;
}
textbox-num-sep {
    expand:     false;
    str:        "/";
    text-color: Gray;
}
inputbar {
    padding:    1px ;
    spacing:    0px ;
    text-color: var(normal-foreground);
    children:   [ "prompt","textbox-prompt-colon","entry","overlay","num-filtered-rows","textbox-num-sep","num-rows","case-indicator" ];
}
overlay {
    padding:          0px 0.2000em ;
    background-color: var(normal-foreground);
    foreground-color: var(normal-background);
    margin:           0px 0.2000em ;
    text-color:       var(normal-background);
}
case-indicator {
    spacing:    0;
    text-color: var(normal-foreground);
}
entry {
    text-color:        var(normal-foreground);
    cursor:            text;
    spacing:           0;
    placeholder-color: Gray;
    placeholder:       "Type to filter";
}
prompt {
    spacing:    0;
    text-color: var(normal-foreground);
}
textbox-prompt-colon {
    margin:     0px 0.3000em 0.0000em 0.0000em ;
    expand:     false;
    str:        ":";
    text-color: inherit;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment