diff --git a/docs/ISSUE_GUIDELINES.md b/docs/ISSUE_GUIDELINES.md index a689ebe3..0e47fecb 100644 --- a/docs/ISSUE_GUIDELINES.md +++ b/docs/ISSUE_GUIDELINES.md @@ -58,14 +58,17 @@ coredumpctl info [PID] where `[PID]` is the PID you remembered. ## Obtaining the debug Hyprland coredump -In very rare cases, the normal coredump would not be enough. -If that's the case, you could try obtaining the debug coredump. +A debug coredump provides more information for debugging and may speed up the process of fixing the bug. + +Make sure you're on latest git. Run `git pull --recurse-submodules` to sync everything. + 1. [Compile Hyprland with debug mode](http://wiki.hyprland.org/Contributing-and-Debugging/#build-in-debug-mode) > Note: The config file used will be `hyprlandd.conf` instead of `hyprland.conf` -2. Reproduce the crash in debug mode. -3. `env DEBUGINFOD_URLS="https://debuginfod.archlinux.org/" coredumpctl debug [PID]`(see section above) -4. Wait until the `(gdb)` appears -5. If gdb asks you `press y to continue without paging?` Type `y` -6. `bt -full` -7. copy the output of the command and provide that. +2. `cd ~` +3. For your own convenience, launch Hyprland from a tty with the envvar `ASAN_OPTIONS="log_path=asan.log"`: + - If using a wrapper, add `export ASAN_OPTIONS="log_path=asan.log"` in a separate line before the `exec Hyprland` line. + - If launching straight from the tty, execute `ASAN_OPTIONS="log_path=asan.log" ~/path/to/Hyprland` +4. Reproduce the crash. Hyprland should instantly close. +5. Check out your `~` and find a file called `asan.log.XXXXX` where `XXXXX` will be a number corresponding to the PID of the Hyprland instance that crashed. +6. That is your coredump. Attach it to your issue.