summaryrefslogtreecommitdiffstats
path: root/eww
diff options
context:
space:
mode:
Diffstat (limited to 'eww')
-rw-r--r--eww/eww.scss19
-rw-r--r--eww/eww.yuck27
-rwxr-xr-xeww/scripts/audio15
-rwxr-xr-xeww/scripts/backlight2
-rwxr-xr-xeww/scripts/fetch34
-rwxr-xr-xeww/scripts/system44
-rwxr-xr-xeww/scripts/wifi4
-rw-r--r--eww/scss/focal/audioSlider.scss46
-rw-r--r--eww/scss/focal/focal.scss79
-rw-r--r--eww/scss/footer/backlight.scss20
-rw-r--r--eww/scss/footer/brightness.scss20
-rw-r--r--eww/scss/footer/btns.scss52
-rw-r--r--eww/scss/header/fetch.scss29
-rw-r--r--eww/scss/header/statusBtns.scss16
-rw-r--r--eww/scss/themes/catppuccin.scss10
-rw-r--r--eww/scss/themes/dracula.scss10
-rw-r--r--eww/scss/themes/everblush.scss9
-rw-r--r--eww/scss/themes/gruvchad.scss10
-rw-r--r--eww/scss/themes/nord.scss10
-rw-r--r--eww/scss/themes/onedark.scss10
-rw-r--r--eww/src/dashboard.yuck7
-rw-r--r--eww/src/focal/audioSliders.yuck47
-rw-r--r--eww/src/focal/init.yuck5
-rw-r--r--eww/src/focal/widgets.yuck22
-rw-r--r--eww/src/footer/btns.yuck33
-rw-r--r--eww/src/footer/init.yuck15
-rw-r--r--eww/src/header/fetch.yuck36
-rw-r--r--eww/src/header/init.yuck12
-rw-r--r--eww/src/widgets.yuck24
-rw-r--r--eww/var.yuck58
30 files changed, 725 insertions, 0 deletions
diff --git a/eww/eww.scss b/eww/eww.scss
new file mode 100644
index 0000000..fc6db90
--- /dev/null
+++ b/eww/eww.scss
@@ -0,0 +1,19 @@
+@import "scss/themes/onedark.scss";
+
+// header
+@import "scss/header/statusBtns.scss";
+@import "scss/header/fetch.scss";
+
+// focal
+@import "scss/focal/focal.scss";
+@import "scss/focal/audioSlider.scss";
+
+// footer
+@import "scss/footer/btns.scss";
+@import "scss/footer/backlight.scss";
+
+.eww {
+ padding: 1rem;
+ padding-top: .6rem;
+ background-color: $black;
+}
diff --git a/eww/eww.yuck b/eww/eww.yuck
new file mode 100644
index 0000000..3330387
--- /dev/null
+++ b/eww/eww.yuck
@@ -0,0 +1,27 @@
+; defined ones
+(include './var.yuck')
+(include './src/widgets.yuck')
+
+; header
+(include './src/header/fetch.yuck')
+(include './src/header/init.yuck')
+
+; focal
+(include './src/focal/widgets.yuck')
+(include './src/focal/audioSliders.yuck')
+(include './src/focal/init.yuck')
+
+; footer
+(include './src/footer/btns.yuck')
+(include './src/footer/init.yuck')
+
+; dashboard
+(include './src/dashboard.yuck')
+
+; whole eww window
+(defwindow eww
+ :geometry (geometry :x "-1%"
+ :y "-2%"
+ :anchor "right bottom")
+ :wm-ignore true
+(dashboard))
diff --git a/eww/scripts/audio b/eww/scripts/audio
new file mode 100755
index 0000000..570d80e
--- /dev/null
+++ b/eww/scripts/audio
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+headvol() {
+ amixer sget Headphone | grep 'Left:' | cut -d\ -f7 | tr -d '[%]'
+}
+
+mastervol() {
+ amixer get Master | awk '$0~/%/{print $4}' | tr -d '[%]'
+}
+
+micvol() {
+ amixer sget Mic | grep 'Left:' | cut -d\ -f7 | tr -d '[%]'
+}
+
+"$@"
diff --git a/eww/scripts/backlight b/eww/scripts/backlight
new file mode 100755
index 0000000..4f03d54
--- /dev/null
+++ b/eww/scripts/backlight
@@ -0,0 +1,2 @@
+#!/bin/sh
+printf "%.0f\n" $(xbacklight -get)
diff --git a/eww/scripts/fetch b/eww/scripts/fetch
new file mode 100755
index 0000000..931bf30
--- /dev/null
+++ b/eww/scripts/fetch
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+os() {
+ source /etc/os-release
+ echo $PRETTY_NAME | awk '{print $1;}'
+
+}
+
+wm() {
+ wm=$XDG_CURRENT_DESKTOP
+ [ "$wm" ] || wm=$DESKTOP_SESSION
+
+ ## WM/DE
+ [ ! "$wm" ] &&
+ # loop over all processes and check the binary name
+ for i in /proc/*/comm; do
+ read -r c <"$i"
+ case $c in
+ *bar*) ;;
+ awesome | xmonad* | qtile | sway | i3 | [bfo]*box | *wm*)
+ wm=${c%%-*}
+ break
+ ;;
+ esac
+ done
+
+ echo $wm
+}
+
+shell() {
+ basename $SHELL
+}
+
+"$@"
diff --git a/eww/scripts/system b/eww/scripts/system
new file mode 100755
index 0000000..d1cba41
--- /dev/null
+++ b/eww/scripts/system
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+pkgCount() {
+ xbps-query -l | wc -l
+}
+
+pkgUpdates() {
+ updates=$(xbps-install -S -un | cut -d' ' -f2 | sort | uniq -c | xargs)
+
+ if [ -z "$updates" ]; then
+ echo "Fully Updated"
+ else
+ echo " $updates""s"
+ fi
+}
+
+battery() {
+ cat /sys/class/power_supply/BAT1/capacity
+}
+
+cpu() {
+ grep -o "^[^ ]*" /proc/loadavg
+}
+
+disk() {
+ df -hl | awk '/^\/dev\/sd[ab]/ { sum+=$5 } END { print sum }'
+}
+
+ram() {
+ printf "%.0f\n" $(free -m | grep Mem | awk '{print ($3/$2)*100}')
+}
+
+backlight() {
+ printf "%.0f\n" $(xbacklight -get)
+}
+
+wifi() {
+ case "$(cat /sys/class/net/wl*/operstate 2>/dev/null)" in
+ up) printf "󰤨" ;;
+ down) printf "󰤭" ;;
+ esac
+}
+
+"$@"
diff --git a/eww/scripts/wifi b/eww/scripts/wifi
new file mode 100755
index 0000000..ae6fe2f
--- /dev/null
+++ b/eww/scripts/wifi
@@ -0,0 +1,4 @@
+ case "$(cat /sys/class/net/wl*/operstate 2>/dev/null)" in
+ up) printf "󰤨" ;;
+ down) printf "󰤭" ;;
+ esac
diff --git a/eww/scss/focal/audioSlider.scss b/eww/scss/focal/audioSlider.scss
new file mode 100644
index 0000000..5f323cd
--- /dev/null
+++ b/eww/scss/focal/audioSlider.scss
@@ -0,0 +1,46 @@
+.audioSliders {
+ margin-bottom: 1rem;
+}
+
+.masterSlider,.headphoneSlider,.micSlider {
+ margin: 0 .5rem;
+ font-size: 1.5rem;
+ margin-top: -1rem;
+ margin-bottom: -2rem;
+}
+
+.addPadding {
+ padding: 0 .3rem;
+}
+
+.masterSlider scale trough highlight, .headphoneSlider scale trough highlight , .micSlider scale trough highlight {
+ border-radius: 10px;
+}
+
+.masterSlider scale trough, .headphoneSlider scale trough , .micSlider scale trough {
+ background-color: $blackAlt;
+ border-radius: 1rem;
+ min-width: 1.5rem;
+}
+
+.masterSlider scale trough highlight {
+ background-color: $red;
+}
+
+.headphoneSlider scale trough highlight {
+ background-color: $yellow;
+}
+
+.micSlider scale trough highlight {
+ background-color: $blue;
+}
+
+.audioIcon {
+ font-family: 'JetbrainsMono Nerd Font';
+ font-size: 1.5rem;
+ margin-bottom: 2rem;
+ padding: 0.5rem 1.1rem;
+ background-color: $blackAlt;
+ border-radius: 50%;
+ color: $lightGrey;
+}
diff --git a/eww/scss/focal/focal.scss b/eww/scss/focal/focal.scss
new file mode 100644
index 0000000..183bed1
--- /dev/null
+++ b/eww/scss/focal/focal.scss
@@ -0,0 +1,79 @@
+.radialBars {
+ margin-bottom: -4rem;
+ padding: 1.5rem 0.8rem;
+}
+
+// progress bars
+.CPU, .RAM , .DISK, .battery {
+ background-color: $blackAlt;
+ color: $blue;
+ font-size: 2.1rem;
+ font-family: 'JetBrainsMono Nerd Font';
+}
+
+.CPU {
+ font-size: 2.5rem;
+}
+
+.RAM {
+ color: $green;
+}
+
+.battery {
+ color: $red;
+}
+
+.DISK {
+ font-size: 1rem;
+ color: $white;
+ background-color: $grey;
+}
+
+.time {
+ font-family: 'Iosevka';
+ font-size: 1.2rem;
+ background-color: $blackAlt;
+ margin: 2.5rem 0.5rem;
+ margin-bottom: -0.6rem;
+ border-radius:1rem;
+ padding: 0 1rem;
+ color: $white;
+}
+
+.mute {
+ background-color: $blackAlt;
+ border-radius: 1rem;
+ color: $green;
+ font-family: 'JetBrainsMono Nerd Font';
+ font-size: 2rem;
+ margin: .8rem ;
+}
+
+.mute:hover {
+ background-color: $grey;
+ color: $white;
+}
+
+.pkgs{
+ margin: 1.5rem;
+ border-radius: 1rem;
+ font-family: 'JetBrainsMono Nerd Font';
+ color: $green;
+ background-color: $blackAlt;
+ padding: 0 1rem;
+}
+
+.pkgsBox {
+ margin: -1rem;
+ margin-top: .3rem;
+ margin-bottom: -3.5rem;
+ margin-left: .15rem;
+}
+
+.CPUBOX {
+ margin-right: .4rem;
+}
+
+.RAMBOX {
+ margin-left: .4rem;
+}
diff --git a/eww/scss/footer/backlight.scss b/eww/scss/footer/backlight.scss
new file mode 100644
index 0000000..f7e3c5e
--- /dev/null
+++ b/eww/scss/footer/backlight.scss
@@ -0,0 +1,20 @@
+* {
+ all: unset;
+}
+
+.brightness {
+ padding: 0 1rem;
+ margin-bottom: -2rem;
+}
+
+.brightness scale trough highlight {
+ background-color: $red;
+ border-radius: 10px;
+}
+
+.brightness scale trough {
+ background-color: $grey;
+ border-radius: 1rem;
+ min-width: 16rem;
+ min-height: .3rem;
+}
diff --git a/eww/scss/footer/brightness.scss b/eww/scss/footer/brightness.scss
new file mode 100644
index 0000000..f7e3c5e
--- /dev/null
+++ b/eww/scss/footer/brightness.scss
@@ -0,0 +1,20 @@
+* {
+ all: unset;
+}
+
+.brightness {
+ padding: 0 1rem;
+ margin-bottom: -2rem;
+}
+
+.brightness scale trough highlight {
+ background-color: $red;
+ border-radius: 10px;
+}
+
+.brightness scale trough {
+ background-color: $grey;
+ border-radius: 1rem;
+ min-width: 16rem;
+ min-height: .3rem;
+}
diff --git a/eww/scss/footer/btns.scss b/eww/scss/footer/btns.scss
new file mode 100644
index 0000000..b520c1e
--- /dev/null
+++ b/eww/scss/footer/btns.scss
@@ -0,0 +1,52 @@
+.btn {
+ font-family: "JetbrainsMono Nerd Font";
+ font-size: 1.6rem;
+ padding: 0 1.3rem;
+ box-shadow: none;
+ background-color: $grey;
+ border-radius: 50%;
+}
+
+.close {
+ color: $red;
+}
+
+.sleep {
+ color: $red;
+}
+
+.restart {
+ color: $green;
+}
+
+.lock {
+ color: $blue;
+ padding: 0 1.4rem;
+}
+
+.lock:hover , .restart:hover, .wifi:hover, .sleep:hover{
+ background-color: $green;
+ color: $black;
+}
+
+.wifi {
+ background-color: $red;
+ color: $black;
+ padding: 0 1.1rem;
+}
+
+.lock, .restart, .close, .wifi{
+ transition: ease-out .2s;
+}
+
+.btnMargin {
+ background-color: $grey;
+ border-radius: 50%;
+ margin: 0.5rem;
+}
+
+.footerBtns {
+ background-color: $blackAlt;
+ padding: 0.5rem;
+ border-radius: 1.3rem;
+}
diff --git a/eww/scss/header/fetch.scss b/eww/scss/header/fetch.scss
new file mode 100644
index 0000000..346f7c7
--- /dev/null
+++ b/eww/scss/header/fetch.scss
@@ -0,0 +1,29 @@
+.fetchContent {
+ padding: 2rem 0;
+ font-family: 'JetBrainsMono Nerd Font';
+ color: $white;
+ border-right: 2px solid $grey;
+}
+
+.logo {
+ font-family: 'JetBrainsMono Nerd Font';
+ font-size: 4rem;
+ color: $green;
+ margin:0 1.5rem
+}
+
+.fetch {
+ background-color: $blackAlt;
+ border-radius: 1rem;
+ margin-bottom: 1rem;
+ margin-top: .6rem;
+}
+
+.fetchTitles {
+ color: $green;
+ padding-right: 1rem
+}
+
+.hdd {
+ margin: 1rem;
+}
diff --git a/eww/scss/header/statusBtns.scss b/eww/scss/header/statusBtns.scss
new file mode 100644
index 0000000..8fb782a
--- /dev/null
+++ b/eww/scss/header/statusBtns.scss
@@ -0,0 +1,16 @@
+.close , .min , .max{
+ font-family: 'JetBrainsMono Nerd Font';
+ font-size: 1.3rem;
+ padding: 0 0.3rem;
+ color: $red;
+}
+
+.min {
+ color: $yellow;
+}
+
+.close:hover , .min:hover{
+ background-color: $grey;
+ color: $white;
+ border-radius: 50%;
+}
diff --git a/eww/scss/themes/catppuccin.scss b/eww/scss/themes/catppuccin.scss
new file mode 100644
index 0000000..efbcd7f
--- /dev/null
+++ b/eww/scss/themes/catppuccin.scss
@@ -0,0 +1,10 @@
+$white: #D9E0EE;
+$black: #1E1D2D;
+$blackAlt: #252434;
+$grey: #313040;
+$lightGrey: #585767;
+$green: #ABE9B3;
+$red: #F28FAD;
+$blue: #8bc2f0;
+$yellow: #FAE3B0;
+$purple: #d5aeea;
diff --git a/eww/scss/themes/dracula.scss b/eww/scss/themes/dracula.scss
new file mode 100644
index 0000000..e00ab14
--- /dev/null
+++ b/eww/scss/themes/dracula.scss
@@ -0,0 +1,10 @@
+$white: #f8f8f2;
+$black: #21222c;
+$blackAlt: #282a36;
+$grey: #44475a;
+$lightGrey: #6272a4;
+$green: #50fa7b;
+$red: #ff5555;
+$blue: #8be9fd;
+$yellow: #f1fa8c;
+$purple: #bd93f9;
diff --git a/eww/scss/themes/everblush.scss b/eww/scss/themes/everblush.scss
new file mode 100644
index 0000000..b7b734d
--- /dev/null
+++ b/eww/scss/themes/everblush.scss
@@ -0,0 +1,9 @@
+$white: #dadada;
+$black: #181f21;
+$blackAlt: #202729;
+$grey: #2f3638;
+$lightGrey: #575e60;
+$green: #8ccf7e ;
+$red: #e06e6e;
+$blue: #67b0e8;
+$yellow: #e5c76b;
diff --git a/eww/scss/themes/gruvchad.scss b/eww/scss/themes/gruvchad.scss
new file mode 100644
index 0000000..024095b
--- /dev/null
+++ b/eww/scss/themes/gruvchad.scss
@@ -0,0 +1,10 @@
+$white: #c7b89d;
+$black: #1e2122;
+$blackAlt: #242728;
+$grey: #2f3233;
+$lightGrey: #696c6d;
+$green: #89b482;
+$red: #ec6b64;
+$blue: #6d8dad;
+$yellow: #d6b676;
+$purple: #9f899c;
diff --git a/eww/scss/themes/nord.scss b/eww/scss/themes/nord.scss
new file mode 100644
index 0000000..7102311
--- /dev/null
+++ b/eww/scss/themes/nord.scss
@@ -0,0 +1,10 @@
+$white: #D8DEE9;
+$black: #2a303c;
+$blackAlt: #333945;
+$grey: #3e4450;
+$lightGrey: #545a66;
+$green: #A3BE8C;
+$red: #d57780;
+$blue: #81A1C1;
+$yellow: #EBCB8B;
+$purple: #c882e7;
diff --git a/eww/scss/themes/onedark.scss b/eww/scss/themes/onedark.scss
new file mode 100644
index 0000000..fad0849
--- /dev/null
+++ b/eww/scss/themes/onedark.scss
@@ -0,0 +1,10 @@
+$white: #abb2bf;
+$black: #1e222a;
+$blackAlt: #252931;
+$grey: #353b45;
+$lightGrey: #6f737b;
+$green: #7eca9c;
+$red: #e06c75;
+$blue: #61afef;
+$yellow: #e7c787;
+$purple: #c882e7;
diff --git a/eww/src/dashboard.yuck b/eww/src/dashboard.yuck
new file mode 100644
index 0000000..39d7a4d
--- /dev/null
+++ b/eww/src/dashboard.yuck
@@ -0,0 +1,7 @@
+(defwidget dashboard []
+ (box :orientation "v"
+ (header)
+ (audioSliders)
+ (focal)
+ (footer)
+ ))
diff --git a/eww/src/focal/audioSliders.yuck b/eww/src/focal/audioSliders.yuck
new file mode 100644
index 0000000..8f4fb50
--- /dev/null
+++ b/eww/src/focal/audioSliders.yuck
@@ -0,0 +1,47 @@
+(defwidget audioSliders []
+ (box :space-evenly false :class 'audioSliders'
+
+ ; Master
+ (box :orientation 'v' :class 'addPadding'
+ (label :text '' :class 'audioIcon')
+ (metric
+ :class 'masterSlider'
+ :value master_vol
+ :onchange "amixer set Master {}%"
+ :orientation 'v'
+ :flipped true
+ )
+ )
+
+ ; Headphone
+ (box :orientation 'v' :class 'addPadding'
+ (label :text '' :class 'audioIcon')
+ (metric
+ :class 'headphoneSlider'
+ :value head_vol
+ :onchange "amixer set Headphone {}%"
+ :orientation 'v'
+ :flipped true
+ ))
+
+ ; Mic
+ (box :orientation 'v' :class 'addPadding'
+ (label :text '' :class 'audioIcon')
+ (metric
+ :class 'micSlider'
+ :value mic_vol
+ :onchange "amixer set Mic {}%"
+ :orientation 'v'
+ :flipped true
+ ))
+
+ (box :orientation 'v' :class 'pkgsBox'
+ (progressBar
+ :value battery
+ :text ''
+ :class 'battery'
+ )
+ ; package count
+ (label :text ' ${pkgs} pkgs' :class 'pkgs')
+ )
+ ))
diff --git a/eww/src/focal/init.yuck b/eww/src/focal/init.yuck
new file mode 100644
index 0000000..e3e5da7
--- /dev/null
+++ b/eww/src/focal/init.yuck
@@ -0,0 +1,5 @@
+(defwidget focal []
+ (box :orientation "v"
+ (time)
+ (radialBars)
+ ))
diff --git a/eww/src/focal/widgets.yuck b/eww/src/focal/widgets.yuck
new file mode 100644
index 0000000..7f609c0
--- /dev/null
+++ b/eww/src/focal/widgets.yuck
@@ -0,0 +1,22 @@
+(defwidget time[]
+ (box :class 'time'
+ '󱑆 ${time} | ${date}')
+ )
+
+(defwidget radialBars[]
+ (box :class "radialBars"
+ (progressBar
+ :value cpu
+ :text ''
+ :class 'CPU'
+ :boxClass 'CPUBOX'
+ )
+ (progressBar
+ :value ram
+ :text '﬙'
+ :class 'RAM'
+ :boxClass 'RAMBOX'
+ )
+ (button :class 'mute' :onclick 'amixer set Master 0' '' )
+ )
+)
diff --git a/eww/src/footer/btns.yuck b/eww/src/footer/btns.yuck
new file mode 100644
index 0000000..0cb3ade
--- /dev/null
+++ b/eww/src/footer/btns.yuck
@@ -0,0 +1,33 @@
+(defwidget btn [name command class]
+ (box :orientation "v"
+ :halign "center"
+ :class "btnMargin"
+ (button :onclick command
+ :class "btn ${class}"
+ name))
+)
+
+(defwidget btns []
+ (box :orientation "h"
+ :class 'footerBtns'
+
+ (btn :name ""
+ :command "rofi -show drun"
+ :class "restart"
+ )
+
+(btn :name ""
+ :command "slock"
+ :class "lock"
+ )
+
+ (btn :name wifi
+ :command "iwgtk"
+ :class "wifi"
+ )
+
+ (btn :name ""
+ :command "doas zzz"
+ :class "sleep"
+ )
+))
diff --git a/eww/src/footer/init.yuck b/eww/src/footer/init.yuck
new file mode 100644
index 0000000..d80ea37
--- /dev/null
+++ b/eww/src/footer/init.yuck
@@ -0,0 +1,15 @@
+(defwidget backlightSlider []
+ (metric
+ :class 'brightness'
+ :value brightness
+ :onchange "xbacklight -set {}%"
+ :orientation 'h'
+ :flipped false
+ )
+)
+
+(defwidget footer []
+ (box :orientation "v"
+ (backlightSlider)
+ (btns)
+ ))
diff --git a/eww/src/header/fetch.yuck b/eww/src/header/fetch.yuck
new file mode 100644
index 0000000..34aa7e1
--- /dev/null
+++ b/eww/src/header/fetch.yuck
@@ -0,0 +1,36 @@
+(defwidget txt [label]
+ (box :halign 'start' label ))
+
+(defwidget title[]
+ (box :class 'fetchTitles' :orientation 'v'
+ (txt :label 'os')
+ (txt :label 'wm')
+ (txt :label 'sh')
+))
+
+(defwidget details[]
+ (box :orientation 'v'
+ (txt :label os)
+ (txt :label wm)
+ (txt :label shell)
+))
+
+(defwidget hdd[]
+ (box :orientation 'v' :class 'hdd'
+ (progressBar
+ :value disk
+ :text 'HDD'
+ :class 'DISK'
+ )
+ )
+ )
+
+(defwidget fetch[]
+ (box :class 'fetch'
+ (box :class 'logo' '' )
+ (box :orientation 'h' :class 'fetchContent' :space-evenly false
+ (title)
+ (details)
+ )
+ (hdd)
+))
diff --git a/eww/src/header/init.yuck b/eww/src/header/init.yuck
new file mode 100644
index 0000000..4568dc0
--- /dev/null
+++ b/eww/src/header/init.yuck
@@ -0,0 +1,12 @@
+(defwidget headerBtns[]
+ (box :space-evenly false :valign 'end' :halign 'end' :class 'headerBtns'
+ (button :class 'min' :onclick 'eww close eww' '')
+ (button :class 'close' :onclick 'eww kill' '')
+ )
+ )
+
+(defwidget header[]
+ (box :orientation 'v' :space-evenly false
+ (headerBtns)
+ (fetch)
+))
diff --git a/eww/src/widgets.yuck b/eww/src/widgets.yuck
new file mode 100644
index 0000000..f299ed9
--- /dev/null
+++ b/eww/src/widgets.yuck
@@ -0,0 +1,24 @@
+; radial progress bar
+(defwidget progressBar [value text class ?boxClass]
+ (box :class boxClass
+ (circular-progress :class class
+ :value value
+ :thickness 5
+ text
+ )
+ )
+)
+
+; slider
+(defwidget metric [class value ?onchange orientation flipped ]
+ (box :class class :orientation orientation :space-evenly true
+ (scale
+ :min 0
+ :max 101
+ :active {onchange != ""}
+ :value value
+ :onchange onchange
+ :orientation orientation
+ :flipped flipped
+ )
+))
diff --git a/eww/var.yuck b/eww/var.yuck
new file mode 100644
index 0000000..57a5779
--- /dev/null
+++ b/eww/var.yuck
@@ -0,0 +1,58 @@
+; system i.e for progress bars
+(defpoll cpu :interval "1s"
+ "scripts/system cpu")
+
+(defpoll ram :interval "1s"
+ "scripts/system ram")
+
+(defpoll disk :interval "1s"
+ "scripts/system disk")
+
+(defpoll battery :interval "1s"
+ "scripts/system battery")
+
+; date time
+(defpoll time :interval "1s"
+ "date +'%H:%M'")
+
+(defpoll date :interval "1s"
+ "date +'%a, %d %m %y'")
+
+; sliders
+
+; audio
+(defpoll master_vol :interval "1s"
+ "scripts/audio mastervol")
+
+(defpoll head_vol :interval "1s"
+ "scripts/audio headvol")
+
+(defpoll mic_vol :interval "1h"
+ "scripts/audio micvol")
+
+; backlight
+(defpoll brightness :interval "1s"
+ "scripts/system backlight")
+
+; pkg related
+(defpoll updates :interval "1s"
+ "scripts/system pkgUpdates")
+
+(defpoll pkgs :interval "1s"
+ "scripts/system pkgCount")
+
+; btns
+
+; wifi iwdgtk btn
+(defpoll wifi :interval "1s"
+ "scripts/system wifi")
+
+;fetch
+(defpoll os :interval '10000s'
+ 'scripts/fetch os')
+
+(defpoll shell :interval '100000s'
+ 'scripts/fetch shell')
+
+(defpoll wm :interval '100000s'
+ 'scripts/fetch wm')