j0h

Desktop_Brightness_AppX11

j0h
Dec 28th, 2025
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.11 KB | None | 0 0
  1. #!/usr/bin/env python3
  2. import sys, subprocess
  3. from PyQt5.QtWidgets import QApplication, QWidget, QSlider, QVBoxLayout
  4. from PyQt5.QtCore import Qt
  5. #import os
  6. #os.environ["QT_LOGGING_RULES"] = "*.warning=false"  # STFU Qt warnings
  7.  
  8. app = QApplication(sys.argv)
  9.  
  10. w = QWidget()
  11. #w.setWindowTitle("*")
  12. w.setFixedSize(20, 120)
  13.  
  14. slider = QSlider(Qt.Vertical)
  15. slider.setRange(10, 120)
  16. '''
  17. evidently if display brigthness goes to 0,
  18. my machine tries to go to sleep
  19.  
  20. also interesting, is you can over drive brightness with xrandr
  21.  
  22. '''
  23. slider.setValue(50)
  24.  
  25.  
  26. def set_brightness(value):
  27.     # int -> float  (slider% 0->100 -> 0.0-1.0 xrandr brightness)
  28.     brightness = value / 100.0
  29.     #print(f"{value} bights")
  30.     OUTPUT = "HDMI-1"     #find with: $xrandr
  31.     # xrandr --output HDMI-1 --brightness 0.7 # base command
  32.     subprocess.run(
  33.         ["xrandr", "--output", OUTPUT, "--brightness", str(brightness)],
  34.         check=False
  35.     )
  36.  
  37.  
  38. layout = QVBoxLayout(w)
  39. layout.setContentsMargins(0, 0, 0, 0)
  40. layout.addWidget(slider)
  41.  
  42. slider.valueChanged.connect(set_brightness)
  43.  
  44. w.show()
  45. sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment