diff options
-rw-r--r-- | .SRCINFO | 14 | ||||
-rw-r--r-- | PKGBUILD | 17 | ||||
-rwxr-xr-x | swaydim | 47 |
3 files changed, 78 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..10eada561fdc --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,14 @@ +pkgbase = swaydim + pkgdesc = Dims your display using brightnessctl + pkgver = 1 + pkgrel = 1 + url = https://aur.archlinux.org/packages/swaydim + arch = any + license = Unlicense + makedepends = git + depends = python + depends = brightnessctl + source = swaydim + md5sums = e899fdf800fc6dac8904e09028240717 + +pkgname = swaydim diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..20c723f929e2 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,17 @@ +# Maintainer: fossdd <fossdd@pwned.life> + +pkgname=swaydim +pkgver=1 +pkgrel=1 +pkgdesc="Dims your display using brightnessctl" +arch=('any') +url="https://aur.archlinux.org/packages/swaydim" +license=('Unlicense') +depends=('python' 'brightnessctl') +makedepends=('git') +source=("swaydim") +md5sums=('e899fdf800fc6dac8904e09028240717') + +package() { + install -Dm755 "$srcdir/$pkgname" "$pkgdir/usr/bin/$pkgname" +} diff --git a/swaydim b/swaydim new file mode 100755 index 000000000000..b1b29bfdde3e --- /dev/null +++ b/swaydim @@ -0,0 +1,47 @@ +#!/usr/bin/python3 +# +# Dims your display using brightnessctl +# + +import subprocess +import os +import sys + +default_multiplier = 0.1 + +def run(cmd): + print(cmd) + process = subprocess.run( + cmd.split(" "), + capture_output=True, + text = True + ) + return process.stdout.strip("\n") + +def brightnessctl(args): + template = "brightnessctl {args}" + cmd = template.format( + args = args + ) + return run(cmd) + +def multiplier(): + if len(sys.argv) == 2: + return float(sys.argv[1]) + else: + return float(default_multiplier) + +path = "/tmp/brightness-" + str(multiplier()) + +if os.path.exists(path): + with open(path, "r") as file: + brightnessctl("set {brightness}".format(brightness=file.readlines()[0])) + os.remove(path) +else: + current_brightness = brightnessctl("get") + + with open(path, "w") as file: + file.write(current_brightness) + + new_brightness = int(current_brightness) * multiplier() + brightnessctl("set {new_brightness}".format(new_brightness=new_brightness)) |