When checking for the default X web browser, xdg-settings
may emit messages on stderr if some components (such as
kreadconfig5) are unavailable. These messages aren't of
interest to Python, so we just ignore them.
if os.environ.get("DISPLAY"):
try:
cmd = "xdg-settings get default-web-browser".split()
- result = subprocess.check_output(cmd).decode().strip()
+ raw_result = subprocess.check_output(cmd, stderr=subprocess.DEVNULL)
+ result = raw_result.decode().strip()
except (FileNotFoundError, subprocess.CalledProcessError):
pass
else: