-
Notifications
You must be signed in to change notification settings - Fork 626
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[XCB] Add a flag to enable work around for #611.
In issue #611 there is a workaround implemented for an issue within xserver: https://bugs.freedesktop.org/show_bug.cgi?id=104323#c1, https://gitlab.freedesktop.org/xorg/xserver/-/issues/300. With a latest update in xkeyboard-config this workaround breaks rofi, see #1642 and https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/issues/341. This commits disabled this work-around (can be re-enabled with -xserver-i300-workaround flag). Hopefully this restores correct rofi functionality. issue: #611 #1642
- Loading branch information
1 parent
59e9b77
commit af976c3
Showing
13 changed files
with
792 additions
and
730 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,20 @@ | ||
.nh | ||
.TH ROFI DEBUGGING 5 rofi debugging | ||
.SH NAME | ||
.PP | ||
Debugging rofi. | ||
|
||
.PP | ||
When reporting an issue with rofi crashing, or misbehaving. It helps to do some small test | ||
to help pin-point the problem. | ||
to help pin\-point the problem. | ||
|
||
.PP | ||
First try disabling your custom configuration: \fB\fC-no-config\fR | ||
First try disabling your custom configuration: \fB\fC\-no\-config\fR | ||
|
||
.PP | ||
This disables the parsing of the configuration files. This runs rofi in \fIstock\fP mode. | ||
|
||
.PP | ||
If you run custom C plugins, you can disable the plugins using: \fB\fC-no-plugins\fR | ||
If you run custom C plugins, you can disable the plugins using: \fB\fC\-no\-plugins\fR | ||
|
||
.SH Get the relevant information for an issue | ||
.PP | ||
|
@@ -25,19 +24,19 @@ Please pastebin the output of the following commands: | |
.RS | ||
|
||
.nf | ||
rofi -help | ||
rofi -dump-config | ||
rofi -dump-theme | ||
rofi \-help | ||
rofi \-dump\-config | ||
rofi \-dump\-theme | ||
|
||
.fi | ||
.RE | ||
|
||
.PP | ||
\fB\fCrofi -help\fR provides us with the configuration files parsed, the exact version, monitor layout | ||
\fB\fCrofi \-help\fR provides us with the configuration files parsed, the exact version, monitor layout | ||
and more useful information. | ||
|
||
.PP | ||
The \fB\fCrofi -dump-config\fR and \fB\fCrofi -dump-theme\fR output gives us \fB\fCrofi\fR | ||
The \fB\fCrofi \-dump\-config\fR and \fB\fCrofi \-dump\-theme\fR output gives us \fB\fCrofi\fR | ||
interpretation of your configuration and theme. | ||
|
||
.PP | ||
|
@@ -51,7 +50,7 @@ To get a timing trace, enable the \fBTimings\fP debug domain. | |
.RS | ||
|
||
.nf | ||
G_MESSAGES_DEBUG=Timings rofi -show drun | ||
G\_MESSAGES\_DEBUG=Timings rofi \-show drun | ||
|
||
.fi | ||
.RE | ||
|
@@ -67,64 +66,64 @@ Example trace: | |
.RS | ||
|
||
.nf | ||
(process:14942): Timings-DEBUG: 13:47:39.335: 0.000000 (0.000000): Started | ||
(process:14942): Timings-DEBUG: 13:47:39.335: 0.000126 (0.000126): ../source/rofi.c:main:786 | ||
(process:14942): Timings-DEBUG: 13:47:39.335: 0.000163 (0.000037): ../source/rofi.c:main:819 | ||
(process:14942): Timings-DEBUG: 13:47:39.336: 0.000219 (0.000056): ../source/rofi.c:main:826 Setup Locale | ||
(process:14942): Timings-DEBUG: 13:47:39.337: 0.001235 (0.001016): ../source/rofi.c:main:828 Collect MODI | ||
(process:14942): Timings-DEBUG: 13:47:39.337: 0.001264 (0.000029): ../source/rofi.c:main:830 Setup MODI | ||
(process:14942): Timings-DEBUG: 13:47:39.337: 0.001283 (0.000019): ../source/rofi.c:main:834 Setup mainloop | ||
(process:14942): Timings-DEBUG: 13:47:39.337: 0.001369 (0.000086): ../source/rofi.c:main:837 NK Bindings | ||
(process:14942): Timings-DEBUG: 13:47:39.337: 0.001512 (0.000143): ../source/xcb.c:display_setup:1177 Open Display | ||
(process:14942): Timings-DEBUG: 13:47:39.337: 0.001829 (0.000317): ../source/xcb.c:display_setup:1192 Setup XCB | ||
(process:14942): Timings-DEBUG: 13:47:39.346: 0.010650 (0.008821): ../source/rofi.c:main:844 Setup Display | ||
(process:14942): Timings-DEBUG: 13:47:39.346: 0.010715 (0.000065): ../source/rofi.c:main:848 Setup abe | ||
(process:14942): Timings-DEBUG: 13:47:39.350: 0.015101 (0.004386): ../source/rofi.c:main:883 Load cmd config | ||
(process:14942): Timings-DEBUG: 13:47:39.351: 0.015275 (0.000174): ../source/rofi.c:main:907 Setup Modi | ||
(process:14942): Timings-DEBUG: 13:47:39.351: 0.015291 (0.000016): ../source/view.c:rofi_view_workers_initialize:1922 Setup Threadpool, start | ||
(process:14942): Timings-DEBUG: 13:47:39.351: 0.015349 (0.000058): ../source/view.c:rofi_view_workers_initialize:1945 Setup Threadpool, done | ||
(process:14942): Timings-DEBUG: 13:47:39.367: 0.032018 (0.016669): ../source/rofi.c:main:1000 Setup late Display | ||
(process:14942): Timings-DEBUG: 13:47:39.367: 0.032080 (0.000062): ../source/rofi.c:main:1003 Theme setup | ||
(process:14942): Timings-DEBUG: 13:47:39.367: 0.032109 (0.000029): ../source/rofi.c:startup:668 Startup | ||
(process:14942): Timings-DEBUG: 13:47:39.367: 0.032121 (0.000012): ../source/rofi.c:startup:677 Grab keyboard | ||
(process:14942): Timings-DEBUG: 13:47:39.368: 0.032214 (0.000093): ../source/view.c:__create_window:701 xcb create window | ||
(process:14942): Timings-DEBUG: 13:47:39.368: 0.032235 (0.000021): ../source/view.c:__create_window:705 xcb create gc | ||
(process:14942): Timings-DEBUG: 13:47:39.368: 0.033136 (0.000901): ../source/view.c:__create_window:714 create cairo surface | ||
(process:14942): Timings-DEBUG: 13:47:39.369: 0.033286 (0.000150): ../source/view.c:__create_window:723 pango cairo font setup | ||
(process:14942): Timings-DEBUG: 13:47:39.369: 0.033351 (0.000065): ../source/view.c:__create_window:761 configure font | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045896 (0.012545): ../source/view.c:__create_window:769 textbox setup | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045944 (0.000048): ../source/view.c:__create_window:781 setup window attributes | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045955 (0.000011): ../source/view.c:__create_window:791 setup window fullscreen | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045966 (0.000011): ../source/view.c:__create_window:797 setup window name and class | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045974 (0.000008): ../source/view.c:__create_window:808 setup startup notification | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045981 (0.000007): ../source/view.c:__create_window:810 done | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045992 (0.000011): ../source/rofi.c:startup:679 Create Window | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.045999 (0.000007): ../source/rofi.c:startup:681 Parse ABE | ||
(process:14942): Timings-DEBUG: 13:47:39.381: 0.046113 (0.000114): ../source/rofi.c:startup:684 Config sanity check | ||
(process:14942): Timings-DEBUG: 13:47:39.384: 0.048229 (0.002116): ../source/dialogs/run.c:get_apps:216 start | ||
(process:14942): Timings-DEBUG: 13:47:39.390: 0.054626 (0.006397): ../source/dialogs/run.c:get_apps:336 stop | ||
(process:14942): Timings-DEBUG: 13:47:39.390: 0.054781 (0.000155): ../source/dialogs/drun.c:get_apps:634 Get Desktop apps (start) | ||
(process:14942): Timings-DEBUG: 13:47:39.391: 0.055264 (0.000483): ../source/dialogs/drun.c:get_apps:641 Get Desktop apps (user dir) | ||
(process:14942): Timings-DEBUG: 13:47:39.418: 0.082884 (0.027620): ../source/dialogs/drun.c:get_apps:659 Get Desktop apps (system dirs) | ||
(process:14942): Timings-DEBUG: 13:47:39.418: 0.082944 (0.000060): ../source/dialogs/drun.c:get_apps_history:597 Start drun history | ||
(process:14942): Timings-DEBUG: 13:47:39.418: 0.082977 (0.000033): ../source/dialogs/drun.c:get_apps_history:617 Stop drun history | ||
(process:14942): Timings-DEBUG: 13:47:39.419: 0.083638 (0.000661): ../source/dialogs/drun.c:get_apps:664 Sorting done. | ||
(process:14942): Timings-DEBUG: 13:47:39.419: 0.083685 (0.000047): ../source/view.c:rofi_view_create:1759 | ||
(process:14942): Timings-DEBUG: 13:47:39.419: 0.083700 (0.000015): ../source/view.c:rofi_view_create:1783 Startup notification | ||
(process:14942): Timings-DEBUG: 13:47:39.419: 0.083711 (0.000011): ../source/view.c:rofi_view_create:1786 Get active monitor | ||
(process:14942): Timings-DEBUG: 13:47:39.420: 0.084693 (0.000982): ../source/view.c:rofi_view_refilter:1028 Filter start | ||
(process:14942): Timings-DEBUG: 13:47:39.421: 0.085992 (0.001299): ../source/view.c:rofi_view_refilter:1132 Filter done | ||
(process:14942): Timings-DEBUG: 13:47:39.421: 0.086090 (0.000098): ../source/view.c:rofi_view_update:982 | ||
(process:14942): Timings-DEBUG: 13:47:39.421: 0.086123 (0.000033): ../source/view.c:rofi_view_update:1002 Background | ||
(process:14942): Timings-DEBUG: 13:47:39.428: 0.092864 (0.006741): ../source/view.c:rofi_view_update:1008 widgets | ||
(process:14942): Timings\-DEBUG: 13:47:39.335: 0.000000 (0.000000): Started | ||
(process:14942): Timings\-DEBUG: 13:47:39.335: 0.000126 (0.000126): ../source/rofi.c:main:786 | ||
(process:14942): Timings\-DEBUG: 13:47:39.335: 0.000163 (0.000037): ../source/rofi.c:main:819 | ||
(process:14942): Timings\-DEBUG: 13:47:39.336: 0.000219 (0.000056): ../source/rofi.c:main:826 Setup Locale | ||
(process:14942): Timings\-DEBUG: 13:47:39.337: 0.001235 (0.001016): ../source/rofi.c:main:828 Collect MODI | ||
(process:14942): Timings\-DEBUG: 13:47:39.337: 0.001264 (0.000029): ../source/rofi.c:main:830 Setup MODI | ||
(process:14942): Timings\-DEBUG: 13:47:39.337: 0.001283 (0.000019): ../source/rofi.c:main:834 Setup mainloop | ||
(process:14942): Timings\-DEBUG: 13:47:39.337: 0.001369 (0.000086): ../source/rofi.c:main:837 NK Bindings | ||
(process:14942): Timings\-DEBUG: 13:47:39.337: 0.001512 (0.000143): ../source/xcb.c:display\_setup:1177 Open Display | ||
(process:14942): Timings\-DEBUG: 13:47:39.337: 0.001829 (0.000317): ../source/xcb.c:display\_setup:1192 Setup XCB | ||
(process:14942): Timings\-DEBUG: 13:47:39.346: 0.010650 (0.008821): ../source/rofi.c:main:844 Setup Display | ||
(process:14942): Timings\-DEBUG: 13:47:39.346: 0.010715 (0.000065): ../source/rofi.c:main:848 Setup abe | ||
(process:14942): Timings\-DEBUG: 13:47:39.350: 0.015101 (0.004386): ../source/rofi.c:main:883 Load cmd config | ||
(process:14942): Timings\-DEBUG: 13:47:39.351: 0.015275 (0.000174): ../source/rofi.c:main:907 Setup Modi | ||
(process:14942): Timings\-DEBUG: 13:47:39.351: 0.015291 (0.000016): ../source/view.c:rofi\_view\_workers\_initialize:1922 Setup Threadpool, start | ||
(process:14942): Timings\-DEBUG: 13:47:39.351: 0.015349 (0.000058): ../source/view.c:rofi\_view\_workers\_initialize:1945 Setup Threadpool, done | ||
(process:14942): Timings\-DEBUG: 13:47:39.367: 0.032018 (0.016669): ../source/rofi.c:main:1000 Setup late Display | ||
(process:14942): Timings\-DEBUG: 13:47:39.367: 0.032080 (0.000062): ../source/rofi.c:main:1003 Theme setup | ||
(process:14942): Timings\-DEBUG: 13:47:39.367: 0.032109 (0.000029): ../source/rofi.c:startup:668 Startup | ||
(process:14942): Timings\-DEBUG: 13:47:39.367: 0.032121 (0.000012): ../source/rofi.c:startup:677 Grab keyboard | ||
(process:14942): Timings\-DEBUG: 13:47:39.368: 0.032214 (0.000093): ../source/view.c:\_\_create\_window:701 xcb create window | ||
(process:14942): Timings\-DEBUG: 13:47:39.368: 0.032235 (0.000021): ../source/view.c:\_\_create\_window:705 xcb create gc | ||
(process:14942): Timings\-DEBUG: 13:47:39.368: 0.033136 (0.000901): ../source/view.c:\_\_create\_window:714 create cairo surface | ||
(process:14942): Timings\-DEBUG: 13:47:39.369: 0.033286 (0.000150): ../source/view.c:\_\_create\_window:723 pango cairo font setup | ||
(process:14942): Timings\-DEBUG: 13:47:39.369: 0.033351 (0.000065): ../source/view.c:\_\_create\_window:761 configure font | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045896 (0.012545): ../source/view.c:\_\_create\_window:769 textbox setup | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045944 (0.000048): ../source/view.c:\_\_create\_window:781 setup window attributes | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045955 (0.000011): ../source/view.c:\_\_create\_window:791 setup window fullscreen | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045966 (0.000011): ../source/view.c:\_\_create\_window:797 setup window name and class | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045974 (0.000008): ../source/view.c:\_\_create\_window:808 setup startup notification | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045981 (0.000007): ../source/view.c:\_\_create\_window:810 done | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045992 (0.000011): ../source/rofi.c:startup:679 Create Window | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.045999 (0.000007): ../source/rofi.c:startup:681 Parse ABE | ||
(process:14942): Timings\-DEBUG: 13:47:39.381: 0.046113 (0.000114): ../source/rofi.c:startup:684 Config sanity check | ||
(process:14942): Timings\-DEBUG: 13:47:39.384: 0.048229 (0.002116): ../source/dialogs/run.c:get\_apps:216 start | ||
(process:14942): Timings\-DEBUG: 13:47:39.390: 0.054626 (0.006397): ../source/dialogs/run.c:get\_apps:336 stop | ||
(process:14942): Timings\-DEBUG: 13:47:39.390: 0.054781 (0.000155): ../source/dialogs/drun.c:get\_apps:634 Get Desktop apps (start) | ||
(process:14942): Timings\-DEBUG: 13:47:39.391: 0.055264 (0.000483): ../source/dialogs/drun.c:get\_apps:641 Get Desktop apps (user dir) | ||
(process:14942): Timings\-DEBUG: 13:47:39.418: 0.082884 (0.027620): ../source/dialogs/drun.c:get\_apps:659 Get Desktop apps (system dirs) | ||
(process:14942): Timings\-DEBUG: 13:47:39.418: 0.082944 (0.000060): ../source/dialogs/drun.c:get\_apps\_history:597 Start drun history | ||
(process:14942): Timings\-DEBUG: 13:47:39.418: 0.082977 (0.000033): ../source/dialogs/drun.c:get\_apps\_history:617 Stop drun history | ||
(process:14942): Timings\-DEBUG: 13:47:39.419: 0.083638 (0.000661): ../source/dialogs/drun.c:get\_apps:664 Sorting done. | ||
(process:14942): Timings\-DEBUG: 13:47:39.419: 0.083685 (0.000047): ../source/view.c:rofi\_view\_create:1759 | ||
(process:14942): Timings\-DEBUG: 13:47:39.419: 0.083700 (0.000015): ../source/view.c:rofi\_view\_create:1783 Startup notification | ||
(process:14942): Timings\-DEBUG: 13:47:39.419: 0.083711 (0.000011): ../source/view.c:rofi\_view\_create:1786 Get active monitor | ||
(process:14942): Timings\-DEBUG: 13:47:39.420: 0.084693 (0.000982): ../source/view.c:rofi\_view\_refilter:1028 Filter start | ||
(process:14942): Timings\-DEBUG: 13:47:39.421: 0.085992 (0.001299): ../source/view.c:rofi\_view\_refilter:1132 Filter done | ||
(process:14942): Timings\-DEBUG: 13:47:39.421: 0.086090 (0.000098): ../source/view.c:rofi\_view\_update:982 | ||
(process:14942): Timings\-DEBUG: 13:47:39.421: 0.086123 (0.000033): ../source/view.c:rofi\_view\_update:1002 Background | ||
(process:14942): Timings\-DEBUG: 13:47:39.428: 0.092864 (0.006741): ../source/view.c:rofi\_view\_update:1008 widgets | ||
|
||
.fi | ||
.RE | ||
|
||
.SH Debug domains | ||
.PP | ||
To further debug the plugin, you can get a trace with (lots of) debug information. This debug output can be enabled for | ||
multiple parts in rofi using the glib debug framework. Debug domains can be enabled by setting the G_MESSAGES_DEBUG | ||
multiple parts in rofi using the glib debug framework. Debug domains can be enabled by setting the G\_MESSAGES\_DEBUG | ||
environment variable. At the time of creation of this page, the following debug domains exist: | ||
|
||
.RS | ||
|
@@ -173,16 +172,16 @@ Helpers.IconFetcher: Information about icon lookup. | |
For full list see \fB\fCman rofi\fR\&. | ||
|
||
.PP | ||
Example: \fB\fCG_MESSAGES_DEBUG=Dialogs.DRun rofi -show drun\fR To get specific output from the Desktop file run dialog. | ||
Example: \fB\fCG\_MESSAGES\_DEBUG=Dialogs.DRun rofi \-show drun\fR To get specific output from the Desktop file run dialog. | ||
|
||
.PP | ||
To redirect the debug output to a file (\fB\fC~/rofi.log\fR) add: | ||
To redirect the debug output to a file (\fB\fC\~/rofi.log\fR) add: | ||
|
||
.PP | ||
.RS | ||
|
||
.nf | ||
rofi -show drun -log ~/rofi.log | ||
rofi \-show drun \-log \~/rofi.log | ||
|
||
.fi | ||
.RE | ||
|
@@ -199,15 +198,15 @@ First make sure you compile \fBrofi\fP with debug symbols: | |
.RS | ||
|
||
.nf | ||
make CFLAGS="-O0 -g3" clean rofi | ||
make CFLAGS="\-O0 \-g3" clean rofi | ||
|
||
.fi | ||
.RE | ||
|
||
.PP | ||
Getting a backtrace using GDB is not very handy. Because if rofi get stuck, it grabs keyboard and | ||
mouse. So if it crashes in GDB you are stuck. | ||
The best way to go is to enable core file. (ulimit -c unlimited in bash) then make rofi crash. You | ||
The best way to go is to enable core file. (ulimit \-c unlimited in bash) then make rofi crash. You | ||
can then load the core in GDB. | ||
|
||
.PP | ||
|
@@ -235,16 +234,16 @@ thread apply all bt | |
The output trace is useful when reporting crashes. | ||
|
||
.PP | ||
Some distribution have \fB\fCsystemd-coredump\fR, this way you can easily get a backtrace via \fB\fCcoredumpctl\fR\&. | ||
Some distribution have \fB\fCsystemd\-coredump\fR, this way you can easily get a backtrace via \fB\fCcoredumpctl\fR\&. | ||
|
||
.SH SEE ALSO | ||
.PP | ||
\fBrofi-sensible-terminal(1)\fP, \fBdmenu(1)\fP, \fBrofi-debugging(5)\fP, \fBrofi-theme(5)\fP, \fBrofi-script(5)\fP, \fBrofi-keys(5)\fP,\fBrofi-theme-selector(1)\fP | ||
\fBrofi\-sensible\-terminal(1)\fP, \fBdmenu(1)\fP, \fBrofi\-debugging(5)\fP, \fBrofi\-theme(5)\fP, \fBrofi\-script(5)\fP, \fBrofi\-keys(5)\fP,\fBrofi\-theme\-selector(1)\fP | ||
|
||
.SH AUTHOR | ||
.RS | ||
.IP \(bu 2 | ||
Qball Cow [email protected] | ||
\[la]mailto:[email protected]\[ra] | ||
Qball Cow | ||
\[la][email protected]\[ra] | ||
|
||
.RE |
Oops, something went wrong.