aboutsummaryrefslogtreecommitdiff
path: root/scrbr.c
diff options
context:
space:
mode:
Diffstat (limited to 'scrbr.c')
-rw-r--r--scrbr.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/scrbr.c b/scrbr.c
new file mode 100644
index 0000000..398a414
--- /dev/null
+++ b/scrbr.c
@@ -0,0 +1,42 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "block.h"
+#define ICON_BR "󰳲 "
+#define FG "#222222"
+#define BG "#dfb24999"
+#define BDIR "/sys/class/backlight/amdgpu_bl1"
+#define BMAXF max_brightness_f
+#define BCURF current_brightness_f
+FILE *BCURF, *BMAXF;
+void scrbr(void)
+{
+ char *buf;
+ unsigned short current_brightness;
+ unsigned short max_brightness;
+ unsigned short size;
+
+ if (!BCURF) BCURF = fopen(BDIR"/brightness","r");
+ if (!BMAXF) BMAXF = fopen(BDIR"/max_brightness","r");
+
+ fseek(BCURF, 0, SEEK_END);
+ fseek(BMAXF, 0, SEEK_END);
+
+ size = ftell(BCURF);
+ buf = malloc(size);
+ rewind(BCURF);
+ fgets(buf, size, BCURF);
+ current_brightness = atoi(buf);
+ free(buf);
+
+ size = ftell(BMAXF);
+ buf = malloc(size);
+ rewind(BMAXF);
+ fgets(buf, size, BMAXF);
+ max_brightness = atoi(buf);
+ free(buf);
+
+ char brightness[10];
+ snprintf(brightness,10,ICON_BR"%3d%%",
+ current_brightness*100/max_brightness);
+ block(brightness,FG,BG,BG);
+}