aboutsummaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
authorsrdusr <trevorgray@srdusr.com>2022-11-16 16:24:16 +0200
committersrdusr <trevorgray@srdusr.com>2022-11-16 16:24:16 +0200
commite383d2893fc0dfbff4e6207610f3d02ca59f2187 (patch)
treed5368fe9c7e273c08665da4ddfa4a12a1f0ebc7b /.config
parenta4985f2015b7d467e1c342015ea04bb454dc22f4 (diff)
downloaddotfiles-e383d2893fc0dfbff4e6207610f3d02ca59f2187.tar.gz
dotfiles-e383d2893fc0dfbff4e6207610f3d02ca59f2187.zip
Added eww
Diffstat (limited to '.config')
-rw-r--r--.config/eww/bar/main.yuck193
-rw-r--r--.config/eww/bar/style.scss16
-rw-r--r--.config/eww/dock/main.yuck94
-rw-r--r--.config/eww/dock/style.scss16
-rw-r--r--.config/eww/eww.scss21
-rw-r--r--.config/eww/eww.yuck26
-rw-r--r--.config/eww/panel/drives.yuck77
-rw-r--r--.config/eww/panel/main.yuck142
-rw-r--r--.config/eww/panel/style.scss69
-rw-r--r--.config/eww/status/main.yuck44
-rw-r--r--.config/eww/status/style.scss14
11 files changed, 712 insertions, 0 deletions
diff --git a/.config/eww/bar/main.yuck b/.config/eww/bar/main.yuck
new file mode 100644
index 0000000..a379ace
--- /dev/null
+++ b/.config/eww/bar/main.yuck
@@ -0,0 +1,193 @@
+(defwindow bar
+ :monitor 0
+ :geometry (geometry :x -28 :y 0 :anchor "center right")
+(bar))
+
+(defwidget bar []
+ (box
+ :class "bar"
+ :orientation "v"
+ :space-evenly false
+ (bar-group
+ (bar-item-center-window)
+ (bar-item-resize-ratio)
+ (bar-item-resize)
+ (bar-item-toggle-floaty)
+ (bar-item-close-window)
+ )
+ (bar-group
+ (bar-item-balance)
+ (bar-item-rotate)
+ (bar-item-focus-parent)
+ )
+ (bar-group
+ (bar-item-toggle-borders)
+ (bar-item-toggle-hidden)
+ (bar-item-toggle-monocle)
+ )
+ (bar-group
+ (bar-item-empty-desktop)
+ (bar-item-cycle-desktops)
+ )
+ (bar-group
+ ;(bar-item-clipboard)
+ (bar-item-screenshot)
+ (bar-item-power)
+ )
+ )
+)
+
+(defwidget bar-group []
+ (box
+ :class "bar-group"
+ :orientation "v"
+ (children)
+ )
+)
+
+(defwidget bar-item [icon ?color ?lclick ?rclick]
+ (box
+ :class "bar-item"
+ (eventbox
+ :onscroll "resize-window {}"
+ (button
+ :onclick lclick
+ :onrightclick rclick
+ ;:timeout 200
+ (icon :name icon :color color)
+ )
+ )
+ )
+)
+
+(defwidget bar-item-balance []
+ (bar-item
+ :icon "columns"
+ :color "yellow"
+ :lclick "bspc node @/ -B"
+ )
+)
+
+(defwidget bar-item-center-window []
+ (bar-item
+ :icon "minimize"
+ :color "yellow"
+ :lclick "center-window"
+ )
+)
+
+(defwidget bar-item-clipboard []
+ (bar-item
+ :icon "clipboard"
+ :color "yellow"
+ )
+)
+
+(defwidget bar-item-close-window []
+ (bar-item
+ :icon "x-circle"
+ :color "red"
+ :lclick "close-window"
+ )
+)
+
+(defwidget bar-item-cycle-desktops []
+ (bar-item
+ :icon "skip-forward"
+ :color "blue"
+ :lclick "show-desktop next"
+ :rclick "show-desktop prev"
+ )
+)
+
+(defwidget bar-item-empty-desktop []
+ (bar-item
+ :icon "plus-circle"
+ :color "green"
+ :lclick "show-desktop empty"
+ )
+)
+
+(defwidget bar-item-focus-parent []
+ (bar-item
+ :icon "arrow-up-circle"
+ :color "blue"
+ :lclick "bspc node -f @parent"
+ )
+)
+
+(defwidget bar-item-power []
+ (bar-item
+ :icon "power"
+ :color "red"
+ :lclick "shut-down"
+ )
+)
+
+(defwidget bar-item-resize []
+ (bar-item
+ :icon "maximize-2"
+ :color "blue"
+ :lclick "bspc node -z top_left -16 -9 \
+ && bspc node -z bottom_right 16 9"
+ :rclick "bspc node -z top_left 16 9 \
+ && bspc node -z bottom_right -16 -9"
+ )
+)
+
+(defwidget bar-item-resize-ratio []
+ (bar-item
+ :icon "youtube"
+ :color "green"
+ :lclick "resize-ratio 16 9"
+ )
+)
+
+(defwidget bar-item-rotate []
+ (bar-item
+ :icon "rotate-cw"
+ :color "green"
+ :lclick "bspc node -R 90"
+ )
+)
+
+(defwidget bar-item-screenshot []
+ (bar-item
+ :icon "camera"
+ :color "purple"
+ :lclick "notify hello"
+ :rclick "scrot -s -l mode=edge,width=7,color=\"#FFFFFF\",opacity=20 -e 'mv $f ~/unsorted/screenshots'"
+ )
+)
+
+(defwidget bar-item-toggle-borders []
+ (bar-item
+ :icon "maximize"
+ :icon {disableBorders ? "square" : "maximize"}
+ :color "purple"
+ :lclick "toggle-borders"
+ )
+)
+
+(defwidget bar-item-toggle-floaty []
+ (bar-item
+ :icon {focusIsFloaty ? "corner-left-down" : "corner-right-up"}
+ :color "purple"
+ :lclick "toggle-floaty"
+ )
+)
+
+(defwidget bar-item-toggle-hidden []
+ (bar-item
+ :icon "eye"
+ :color "red"
+ :lclick "toggle-hidden"
+ )
+)
+(defwidget bar-item-toggle-monocle []
+ (bar-item
+ :icon {monocleMode ? "zoom-out" : "zoom-in"}
+ :color "yellow"
+ :lclick "toggle-monocle"
+ )
+)
diff --git a/.config/eww/bar/style.scss b/.config/eww/bar/style.scss
new file mode 100644
index 0000000..121cd12
--- /dev/null
+++ b/.config/eww/bar/style.scss
@@ -0,0 +1,16 @@
+.bar {
+ background-color: $borderColor;
+ // border: $borderSize solid $borderColor;
+ padding: $borderSize 0 0 0;
+}
+
+.bar-group {
+ background-color: $bgColor;
+ border-radius: $borderRadius;
+ margin: 0 $borderSize $borderSize $borderSize;
+ padding: 7;
+}
+
+.bar-item {
+ padding: 7;
+}
diff --git a/.config/eww/dock/main.yuck b/.config/eww/dock/main.yuck
new file mode 100644
index 0000000..a3ec73f
--- /dev/null
+++ b/.config/eww/dock/main.yuck
@@ -0,0 +1,94 @@
+(defwindow dock
+ :monitor 0
+ :geometry (geometry :x 0 :y -28 :anchor "bottom center")
+ (dock))
+
+(defwidget dock []
+ (box
+ :class "dock"
+ :space-evenly false
+ (dock-group
+ (dock-item
+ :icon "firefox"
+ :lclick "quick-app -c firefox -i Navigator&"
+ :rclick "firefox&"
+ )
+ (dock-item
+ :icon "nautilus"
+ :lclick "quick-app -c Thunar -f thunar ~/unsorted"
+ )
+ (dock-item
+ :icon "terminal"
+ :lclick "quick-app -c kitty -i quick -f kitty --name quick"
+ :rclick "cd ~ && kitty&"
+ )
+ )
+ (dock-group
+ (dock-item
+ :icon "email"
+ )
+ (dock-item
+ :icon "telegram"
+ :lclick "quick-app -c TelegramDesktop -f telegram-desktop"
+ )
+ (dock-item
+ :icon "weechat"
+ )
+ (dock-item
+ :icon "discord-development"
+ :lclick "quick-app -c discord -f"
+ )
+ )
+ (dock-group
+ (dock-item
+ :icon "preferences-desktop-color"
+ ;:icon "openrgb"
+ ;:icon "gcolor3"
+ :lclick "quick-app -c Gcolor3 -f gcolor3"
+ )
+ (dock-item
+ :icon "gnome-calculator"
+ :lclick "quick-app -c gnome-calculator -f"
+ )
+ (dock-item
+ :icon "easyeffects"
+ :lclick "quick-app -c easyeffects -f"
+ )
+ (dock-item
+ :icon "obs"
+ :lclick "quick-app -c obs -f"
+ )
+ (dock-item
+ :icon "deepin-music-player"
+ )
+ )
+ (dock-group
+ (dock-item :icon "youtube" :lclick "quick-app -c mpv&")
+ (dock-item
+ :icon "steam"
+ :lclick "quick-app -c Steam steam&"
+ )
+ (dock-item :icon "blender" :lclick "quick-app -c Blender blender&")
+ (dock-item :icon "godot" :lclick "quick-app -c Godot -f godot&")
+ (dock-item :icon "inkscape" :lclick "quick-app -c Inkscape inkscape&")
+ )
+ )
+)
+
+(defwidget dock-group []
+ (box
+ :class "dock-group"
+ (children)
+ )
+)
+
+(defwidget dock-item [icon ?lclick ?rclick]
+ (box
+ :class "dock-item"
+ (button
+ :onclick lclick
+ :onrightclick rclick
+ (image :path "${appIcons}${icon}.svg")
+ )
+ )
+)
diff --git a/.config/eww/dock/style.scss b/.config/eww/dock/style.scss
new file mode 100644
index 0000000..4cc4515
--- /dev/null
+++ b/.config/eww/dock/style.scss
@@ -0,0 +1,16 @@
+.dock {
+ background-color: $borderColor;
+ // border: $borderSize solid $borderColor;
+ padding: 0 0 0 $borderSize;
+}
+
+.dock-group {
+ background-color: $bgColor;
+ border-radius: $borderRadius;
+ margin: $borderSize $borderSize $borderSize 0;
+ padding: 5;
+}
+
+.dock-item {
+ padding: 5;
+}
diff --git a/.config/eww/eww.scss b/.config/eww/eww.scss
new file mode 100644
index 0000000..3c46de1
--- /dev/null
+++ b/.config/eww/eww.scss
@@ -0,0 +1,21 @@
+$borderColor: #24283b;
+$borderRadius: 5px;
+$borderSize: 5px;
+$bgColor: #1a1b26;
+$fgColor: #c0caf5;
+
+* {
+ all: unset;
+ color: $fgColor;
+}
+
+// .window {
+// background-color: $bgColor;
+// border: $borderSize solid $borderColor;
+// color: $fgColor;
+// }
+
+@import "bar/style.scss";
+@import "dock/style.scss";
+@import "panel/style.scss";
+@import "status/style.scss";
diff --git a/.config/eww/eww.yuck b/.config/eww/eww.yuck
new file mode 100644
index 0000000..fbd1bc3
--- /dev/null
+++ b/.config/eww/eww.yuck
@@ -0,0 +1,26 @@
+(defvar appIcons "/usr/share/icons/Papirus-Dark/48x48/apps/")
+(defvar barIcons "/home/sxrdusr/.local/share/icons/feather-icons/")
+
+(defvar disableBorders false)
+(defvar externalMonitor false)
+(defvar focusIsFloaty false)
+(defvar monocleMode false)
+(defvar ultrawide true)
+(defvar brightness 10)
+(defvar nightlight 0)
+(defvar volume 10)
+
+(defpoll date :interval "1m" "date '+%B %d'")
+(defpoll time :interval "2s" "date '+%H:%M'")
+
+(defwidget icon [name ?color ?size]
+ (image
+ :image-width {size?:20}
+ :path "${barIcons}/${color?:'white'}/${name}.svg"
+ )
+)
+
+(include "bar/main.yuck")
+(include "dock/main.yuck")
+(include "panel/main.yuck")
+(include "status/main.yuck")
diff --git a/.config/eww/panel/drives.yuck b/.config/eww/panel/drives.yuck
new file mode 100644
index 0000000..122f0d8
--- /dev/null
+++ b/.config/eww/panel/drives.yuck
@@ -0,0 +1,77 @@
+(defwidget dock-drives []
+ (box
+ :orientation "v"
+ (disk
+ :label "System"
+ :mount "/"
+ :space "100"
+ )
+ (disk
+ :label "SSD 1"
+ :mount "/mnt/ssd250"
+ :space "250"
+ )
+ (disk
+ :label "SSD 2"
+ :mount "/mnt/games"
+ :space "250"
+ )
+ (disk
+ :label "HDD"
+ :mount "/mnt/hdd500"
+ :space "500"
+ )
+ (disk
+ :label "RAID"
+ :mount "/mnt/raid"
+ :space "3000"
+ )
+ )
+)
+
+(defwidget disk [label mount space]
+ (eventbox
+ :class "disk-wrapper"
+ (button
+ :onclick "quick file ${mount}"
+ (box
+ :class "disk"
+ :space-evenly false
+ (box
+ :class "disk-icon"
+ :width 30
+ (image :path "/home/edwin/workspace/icons/hard-drive.svg")
+ )
+ (box
+ :class "disk-usage"
+ :orientation "v"
+ :spacing 3
+ :space-evenly false
+ (box
+ :class "disk-usage-text"
+ :width 140
+ (box
+ :halign "start"
+ :valign "start"
+ label
+ )
+ (box
+ :halign "end"
+ :valign "end"
+ :hexpand true
+ :vexpand true
+ "${round(EWW_DISK[mount].free/1000000000, 0)} GB"
+ )
+ )
+ (scale
+ :class "disk-usage-bar"
+ :marks "false"
+ :max 100
+ :min 0
+ :value {EWW_DISK[mount].used_perc}
+ )
+ )
+ )
+ )
+ )
+)
diff --git a/.config/eww/panel/main.yuck b/.config/eww/panel/main.yuck
new file mode 100644
index 0000000..ac8b559
--- /dev/null
+++ b/.config/eww/panel/main.yuck
@@ -0,0 +1,142 @@
+(defwindow panel
+ :monitor 0
+ :geometry (geometry :x 28 :y 0 :anchor "center left")
+ (panel))
+
+(defwidget panel []
+ (box
+ :class "panel"
+ :orientation "v"
+ :space-evenly false
+ (panel-audio)
+ (panel-video)
+ )
+)
+
+; Panel Items
+
+(defwidget panel-buttons []
+ (box
+ :class "panel-buttons"
+ :space-evenly false
+ (children)
+ )
+)
+
+(defwidget panel-checkbox [?change text ?value]
+ (button
+ :onclick change
+ (box
+ :class "panel-checkbox"
+ :space-evenly false
+ (icon :name {value ? "check-square" : "square"})
+ text
+ )
+ )
+)
+
+(defwidget panel-slider [icon ?setter ?value]
+ (eventbox
+ ;:onscroll setter
+ (box
+ :space-evenly false
+ (icon :name icon)
+ (scale
+ :class "panel-slider"
+ :min 0
+ :max 11
+ :onchange setter
+ :value value
+ )
+ )
+ )
+)
+
+; Panel Sections
+
+(defwidget panel-section [color icon title]
+ (box
+ :class "panel-section"
+ :orientation "v"
+ :space-evenly false
+ (box
+ :class "panel-header"
+ :spacing 10
+ :space-evenly false
+ (icon :name icon :color color)
+ title
+ )
+ (box
+ :orientation "v"
+ :space-evenly false
+ :spacing 14
+ (children)
+ )
+ )
+)
+
+(defwidget panel-audio []
+ (panel-section
+ :color "green"
+ :icon "sliders"
+ :title "Audio"
+
+ ; audio device
+ (panel-buttons
+ (button :onclick "set-output -a pci-0000_00_1b" "Bar")
+ (button :onclick "set-output -a stereo-game" "Headset")
+ (button :onclick "set-output -a HD3" "Speakers")
+ )
+
+ ; volume slider
+ (panel-slider
+ :icon "volume-2"
+ :setter "set-volume {}"
+ :value volume
+ )
+ )
+)
+
+(defwidget panel-video []
+ (panel-section
+ :color "red"
+ :icon "monitor"
+ :title "Video"
+
+ ; wallpaper setter
+ (eventbox
+ :ondropped "set-wallpaper {}"
+ (button
+ :onclick "quick-app -c Thunar -f \
+ && thunar /home/edwin/.local/share/backgrounds"
+ (image
+ :class "panel-wallpaper"
+ :path "/home/edwin/.config/wallpaper"
+ :image-height 108
+ :image-width 256
+ )
+ )
+ )
+
+ ; brightness slider
+ (panel-slider
+ :icon "sun"
+ :setter "set-brightness {}"
+ :value brightness
+ )
+
+ ; external monitor
+ (panel-checkbox
+ :change "set-output -e ${!externalMonitor}"
+ :text "External Monitor"
+ :value externalMonitor
+ )
+
+ ; ultrawide resolution
+ (panel-checkbox
+ :change "set-output -u ${!ultrawide}"
+ :text "Ultrawide Resolution"
+ :value ultrawide
+ )
+ )
+)
diff --git a/.config/eww/panel/style.scss b/.config/eww/panel/style.scss
new file mode 100644
index 0000000..0f39959
--- /dev/null
+++ b/.config/eww/panel/style.scss
@@ -0,0 +1,69 @@
+.panel {
+ background-color: $borderColor;
+ padding: $borderSize;
+
+ .button {
+ background-color: $borderColor;
+ border-radius: $borderRadius;
+ margin-left: 10;
+ padding: 8;
+
+ &:first-child {
+ margin-left: 0;
+ }
+ }
+}
+
+.panel-buttons {
+ button {
+ background-color: $borderColor;
+ border-radius: $borderRadius;
+ margin-left: 14;
+ padding: 7 9;
+
+ &:first-child {
+ margin-left: 0;
+ }
+ }
+}
+
+.panel-checkbox {
+ image {
+ margin-right: 10;
+ }
+}
+
+.panel-header {
+ margin-bottom: 14;
+}
+
+.panel-section {
+ background-color: $bgColor;
+ border-radius: $borderRadius;
+ margin-top: $borderSize;
+ padding: 14;
+
+ &:first-child {
+ margin-top: 0;
+ }
+}
+
+.panel-slider {
+ margin-left: 10;
+
+ trough {
+ background-color: $borderColor;
+ border-radius: 5;
+ min-height: 10px;
+ min-width: 232px;
+
+ highlight {
+ border-radius: 5;
+ background-color: #414868;
+ }
+ }
+}
+
+.panel-wallpaper {
+ border: 3px solid $borderColor;
+}
diff --git a/.config/eww/status/main.yuck b/.config/eww/status/main.yuck
new file mode 100644
index 0000000..c6ebd3e
--- /dev/null
+++ b/.config/eww/status/main.yuck
@@ -0,0 +1,44 @@
+; windows
+(defwindow status
+ :monitor 0
+ :geometry (geometry :x 0 :y 28 :anchor "top center")
+ (status))
+
+(defwidget status []
+ (box
+ :class "status"
+ :space-evenly false
+ :spacing 5
+ (status-item :color "green" :icon "clock" :text time)
+ (status-item :color "yellow" :icon "calendar" :text date)
+ (status-item
+ :color "red"
+ :icon "thermometer"
+ :text "${EWW_TEMPS["CPU"]}°"
+ )
+ (status-item
+ :color "blue"
+ :icon "cpu"
+ :text "${round(EWW_CPU["avg"],0)}%"
+ )
+ (status-item
+ :color "purple"
+ :icon "database"
+ :text "${round(EWW_RAM["used_mem_perc"],0)}%"
+ )
+ )
+)
+
+(defwidget status-item [icon ?color text]
+ (box
+ :class "status-item"
+ :space-evenly false
+ :spacing 7
+ (icon :color color :name icon)
+ text
+ )
+)
+
+(defwidget status-seperator []
+ (box :class "status-seperator")
+)
diff --git a/.config/eww/status/style.scss b/.config/eww/status/style.scss
new file mode 100644
index 0000000..a31257e
--- /dev/null
+++ b/.config/eww/status/style.scss
@@ -0,0 +1,14 @@
+.status {
+ background-color: $borderColor;
+ border: $borderSize solid $borderColor;
+}
+
+.status-item {
+ background-color: $bgColor;
+ border-radius: $borderRadius;
+ font-family: "Inter";
+ font-size: 13;
+ font-weight: 700;
+ min-width: 60px;
+ padding: 7;
+}