Update Hyprland, use hyprpaper for wallpaper, split video
Change-Id: I4a000c722e074793d33822e8985539f212cf3299
Reviewed-on: https://git.clicks.codes/c/Coded/nixConfig/+/371
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: Samuel Shuert <coded@clicks.codes>
diff --git a/extensions/eww/eww.scss b/extensions/eww/eww.scss
index 3c47527..d2abe6d 100644
--- a/extensions/eww/eww.scss
+++ b/extensions/eww/eww.scss
@@ -1,447 +1,54 @@
-/** EWW.SCSS
-Created by saimoom **/
-*{
- all: unset;
- font-family: feather;
- font-family: DaddyTimeMono NF;
+* {
+ all: unset; //Unsets everything so you can style everything from scratch
}
-/** General **/
-.bar_class {
- background-color: #0f0f17;
- border-radius: 16px;
-}
-.module {
- margin: 0px 0px 0px 0px;
- border-radius: 10px 16px 0px 10px;
+//Global Styles
+.bar {
+ background-color: #3a3a3a;
+ color: #b0b4bc;
+ padding: 10px;
}
-/** tooltip!! **/
-tooltip.background {
- background-color: #0f0f17;
- font-size: 18;
- border-radius: 10px;
- color: #bfc9db;
-}
+// Styles on classes (see eww.yuck for more information)
-tooltip label {
- margin: 6px;
-}
-
-
-/** Widgets **/
-
-.clock_time_sep {
- font-size: 16;
- color: #bfc9db;
- margin: 0px 4px 1px 4px;
-}
-.clock_time_class, .clock_minute_class {
- font-size: 23;
-}
-.clock_date_class {
- font-size: 18;
- margin: 0px 20px 0px -1px;
- color: #d7beda;
-}
-.clock_minute_class {
- margin: 0px 20px 0px 3px;
- color: #bfc9db;
-}
-
-.clock_time_class {
- color: #bfc9db;
- font-weight: bold;
- margin: 0px 5px 0px 0px;
-}
-
-
-.membar {
- color: #e0b089;
- background-color: #38384d;
- border-radius: 10px;
-}
-.batbar {
- color: #afbea2;
- background-color: #38384d;
- border-radius: 10px;
-}
-.brightbar trough highlight {
- background-image: linear-gradient(to right, #e4c9af 30%, #f2cdcd 50%, #e0b089 100% *50);
- border-radius: 10px;
-}
-.volbar trough highlight {
- background-image: linear-gradient(to right, #afcee0 30%, #a1bdce 50%, #77a5bf 100% *50);
- border-radius: 10px;
-}
-.volume_icon {
- font-size: 22;
- color: #a1bdce;
- margin: 0px 10px 0px 10px;
-}
-
-
-.module_essid {
- font-size: 18;
- color: #a1bdce;
- margin: 0px 10px 0px 0px;
-}
-.module-wif {
- font-size: 22;
- color: #a1bdce;
- border-radius: 100%;
- margin: 0px 10px 0px 5px;
-}
-
-.iconmem {
- color: #e0b089;
-}
-.iconbat {
- color: #afbea2;
-}
-.iconbat, .iconmem {
- font-size: 15;
- margin: 10px;
-}
-.bright_icon {
- font-size: 22;
- color: #e4c9af;
- margin: 0px 10px 0px 10px;
-}
-
-
-.separ {
- color: #3e424f;
- font-weight: bold;
- font-size: 22px;
- margin: 0px 8px 0px 8px;
- }
-
-.mem_module {
- background-color: #0f0f17;
- border-radius: 16px;
- margin: 0px 10px 0px 3px;
- }
-.bat_module {
- background-color: #0f0f17;
- border-radius: 16px;
- margin: 0px 10px 0px 10px;
- }
-
-
-scale trough {
+.sidestuff slider {
all: unset;
- background-color: #22242b;
- box-shadow: 0 2px 3px 2px #06060b;
- border-radius: 16px;
- min-height: 10px;
- min-width: 70px;
- margin: 0px 10px 0px 0px;
+ color: #ffd5cd;
}
-.works {
-font-size: 27px;
-font-weight: normal;
-margin: 5px 0px 0px 20px;
-background-color: #0f0f17;
-}
-
-.0 , .01, .02, .03, .04, .05, .06,
-.011, .022, .033, .044, .055, .066{
- margin: 0px 10px 0px 0px;
-}
-
-/* Unoccupied */
-.0 {
-color: #3e424f;
-}
-
-/* Occupied */
-.01, .02, .03, .04, .05, .06 {
- color: #bfc9db;
-}
-
-/* Focused */
-.011, .022, .033, .044, .055, .066 {
- color: #a1bdce;
-}
-
-
-.song_cover_art {
- background-size: cover;
- background-position: center;
- min-height: 24px;
- min-width: 24px;
- margin: 10px;
- border-radius: 100px;
-}
-
-.song {
- color: #a1bdce;
- font-size : 18px;
- font-weight : bold;
- margin : 3px 5px 0px 0px;
-}
-
-.song_btn_play {
- color: #a1bdce;
- font-size : 28px;
- margin : 3px 0px 0px 5px;
-
-}
-
-
-.song_btn_prev, .song_btn_next {
- color: #bfc9db;
- font-size : 24px;
- margin : 3px 0px 0px 5px;
-
-}
-// Calendar
-.cal {
- background-color: #0f0f17;
- font-family: JetBrainsMono Nerd Font;
- font-size: 18px;
- font-weight: normal;
-
-.cal-in {
- padding: 0px 10px 0px 10px;
- color: #bfc9db;
-
-.cal {
- &.highlight {
- padding: 20px;
- }
-
- padding: 5px 5px 5px 5px;
- margin-left: 10px;
- }
- }
-}
-
-calender {
- color: #bfc9db;
-}
-calendar:selected {
- color: #a1bdce;
-}
-
-calendar.header {
-color: #a1bdce;
-font-weight: bold;
-}
-
-calendar.button {
-color: #afbea2;
-}
-
-calendar.highlight {
-color: #a1bdce;
-font-weight: bold;
-}
-
-calendar:indeterminate {
-color: #bfc9db;
-}
-
-
-
-
-
-
-
-.sys_sep {
- color: #38384d;
- font-size: 18;
- margin: 0px 10px 0px 10px;
-}
-.sys_text_bat_sub, .sys_text_mem_sub {
- font-size: 16;
- color: #bbc5d7;
- margin: 5px 0px 0px 25px;
-}
-.sys_text_bat, .sys_text_mem {
- font-size: 21;
- font-weight: bold;
- margin: 14px 0px 0px 25px;
-}
-.sys_icon_bat, .sys_icon_mem {
- font-size: 30;
- margin: 30px;
-}
-.sys_win {
- background-color: #0f0f17;
-}
-.sys_bat {
- color: #afbea2;
- background-color: #38384d;
+.metric scale trough highlight {
+ all: unset;
+ background-color: #D35D6E;
+ color: #000000;
border-radius: 10px;
}
-.sys_mem {
- color: #e4c9af;
- background-color: #38384d;
+.metric scale trough {
+ all: unset;
+ background-color: #4e4e4e;
+ border-radius: 50px;
+ min-height: 3px;
+ min-width: 50px;
+ margin-left: 10px;
+ margin-right: 20px;
+}
+.metric scale trough highlight {
+ all: unset;
+ background-color: #D35D6E;
+ color: #000000;
border-radius: 10px;
}
-.sys_icon_bat, .sys_text_bat {
- color: #afbea2;
+.metric scale trough {
+ all: unset;
+ background-color: #4e4e4e;
+ border-radius: 50px;
+ min-height: 3px;
+ min-width: 50px;
+ margin-left: 10px;
+ margin-right: 20px;
}
-.sys_icon_mem, .sys_text_mem {
- color: #e4c9af;
+.label-ram {
+ font-size: large;
}
-.sys_bat_box {
- border-radius: 16px;
- margin: 15px 10px 10px 20px;
- }
-.sys_mem_box {
- border-radius: 16px;
- margin: 10px 10px 15px 20px;
- }
-
-
-
-
-
-
-
-.music_pop {
- background-color: #0f0f17;
- border-radius: 16px;
+.workspaces button:hover {
+ color: #D35D6E;
}
- .music_cover_art {
- background-size: cover;
- background-position: center;
- min-height: 100px;
- box-shadow: 5px 5px 5px 5px #06060b;
- min-width: 170px;
- margin: 20px;
- border-radius: 20px;
-}
-
-.music {
- color: #a1bdce;
- font-size : 20px;
- font-weight : bold;
- margin : 20px 0px 0px -15px;
-}
-
-.music_artist {
- color: #bbc5d7;
- font-size : 16px;
- font-weight : normal;
- margin : 0px 0px 0px 0px;
-}
-
-.music_btn_prev, .music_btn_play, .music_btn_next {
- font-family: Iosevka Nerd Font;
-}
-.music_btn_prev {
- color: #bbc5d7;
- font-size : 32px;
- font-weight : normal;
- margin: 0px 0px 0px 0px;
-}
-.music_btn_play {
- color: #a1bdce;
- font-size : 48px;
- font-weight : normal;
- margin: 0px 0px 0px 0px;
-}
-.music_btn_next {
- color: #bbc5d7;
- font-size : 32px;
- font-weight : normal;
- margin: 0px 0px 0px 0px;
-}
-
-.music_bar scale trough highlight {
- all: unset;
- background-image: linear-gradient(to right, #afcee0 30%, #a1bdce 50%, #77a5bf 100% *50);
- border-radius: 24px;
-}
-.music_bar scale trough {
- all: unset;
- background-color: #232232;
- box-shadow: 0 6px 5px 2px #06060b;
- border-radius: 24px;
- min-height: 13px;
- min-width: 190px;
- margin : -10px 10px 20px 0px;
-}
-
-.audio-box {
- background-color: #0f0f17;
- border-radius: 16px;
-}
-.speaker_icon {
- background-size: cover;
- background-image: url('images/speaker.png');
- background-position: center;
- min-height: 70px;
- min-width: 75px;
- margin: 10px 20px 5px 20px;
- border-radius: 12px;
-}
-
-.speaker_text {
- color: #a1bdce;
- font-size : 26px;
- font-weight : bold;
- margin: 20px 0px 0px 0px;
-}
-
-.speaker_bar scale trough highlight {
- all: unset;
- background-image: linear-gradient(to right, #afcee0 30%, #a1bdce 50%, #77a5bf 100% *50);
- border-radius: 24px;
-}
-.speaker_bar scale trough {
- all: unset;
- background-color: #232232;
- box-shadow: 0 6px 5px 2px #06060b;
- border-radius: 24px;
- min-height: 13px;
- min-width: 120px;
- margin : 0px 0px 5px 0px;
-}
-
-
-
-
-.mic_icon {
- background-size: cover;
- background-image: url('images/mic.png');
- background-position: center;
- min-height: 70px;
- min-width: 75px;
- margin: 5px 20px 20px 20px;
- border-radius: 12px;
-}
-
-.mic_text {
- color: #a1bdce;
- font-size : 26px;
- font-weight : bold;
- margin: 0px 0px 0px 0px;
-}
-
-.mic_bar scale trough highlight {
- all: unset;
- background-image: linear-gradient(to right, #afcee0 30%, #a1bdce 50%, #77a5bf 100% *50);
- border-radius: 24px;
-}
-.mic_bar scale trough {
- all: unset;
- box-shadow: 0 6px 5px 2px #06060b;
- background-color: #232232;
- border-radius: 24px;
- min-height: 13px;
- min-width: 120px;
- margin : 0px 0px 20px 0px;
-}
-
-.audio_sep {
- color: #38384d;
- font-size: 18;
- margin : 0px 0px 0px 0px;
-}
-
diff --git a/extensions/eww/eww.yuck b/extensions/eww/eww.yuck
index 27eb4c4..a4a27d2 100644
--- a/extensions/eww/eww.yuck
+++ b/extensions/eww/eww.yuck
@@ -1,350 +1,75 @@
-;; Variables
-(defpoll clock_time :interval "5m" "date +\%I")
-(defpoll clock_minute :interval "5s" "date +\%M")
-(defpoll clock_date :interval "10h" "date '+%d/%m'")
-(defpoll volume_percent :interval "3s" "amixer -D pulse sget Master | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%'")
-(defpoll mic_percent :interval "3s" "amixer -D pulse sget Capture | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%'")
-(defpoll brightness_percent :interval "5s" "brightnessctl -m -d intel_backlight | awk -F, '{print substr($4, 0, length($4)-1)}' | tr -d '%'")
-(defpoll battery :interval "15s" "./scripts/battery --bat")
-(defpoll battery_status :interval "1m" "./scripts/battery --bat-st")
-(defpoll memory :interval "15s" "scripts/memory")
-(defpoll memory_used_mb :interval "2m" "scripts/mem-ad used")
-(defpoll memory_total_mb :interval "2m" "scripts/mem-ad total")
-(defpoll memory_free_mb :interval "2m" "scripts/mem-ad free")
-(defvar vol_reveal false)
-(defvar br_reveal false)
-(defvar music_reveal false)
-(defvar wifi_rev false)
-(defvar time_rev false)
-(deflisten workspace "scripts/workspace")
+(defwidget bar []
+ (centerbox :orientation "h"
+ (workspaces)
+ (music)
+ (sidestuff)))
-(defvar eww "$HOME/.local/bin/eww/eww -c $HOME/.config/eww/bar")
-
-
-(defpoll COL_WLAN :interval "1m" "~/.config/eww/bar/scripts/wifi --COL")
-(defpoll ESSID_WLAN :interval "1m" "~/.config/eww/bar/scripts/wifi --ESSID")
-(defpoll WLAN_ICON :interval "1m" "~/.config/eww/bar/scripts/wifi --ICON")
-
-
-(defpoll song :interval "2s" "~/.config/eww/bar/scripts/music_info --song")
-(defpoll song_artist :interval "2s" "~/.config/eww/bar/scripts/music_info --artist")
-(defpoll current_status :interval "1s" "~/.config/eww/bar/scripts/music_info --time")
-(defpoll song_status :interval "2s" "~/.config/eww/bar/scripts/music_info --status")
-(defpoll cover_art :interval "2s" "~/.config/eww/bar/scripts/music_info --cover")
-
-(defpoll calendar_day :interval "20h" "date '+%d'")
-(defpoll calendar_year :interval "20h" "date '+%Y'")
-
-;; widgets
-
-(defwidget wifi []
- (eventbox :onhover "${eww} update wifi_rev=true"
- :onhoverlost "${eww} update wifi_rev=false"
- (box :vexpand "false" :hexpand "false" :space-evenly "false"
- (button :class "module-wif" :onclick "networkmanager_dmenu" :wrap "false" :limit-width 12 :style "color: ${COL_WLAN};" WLAN_ICON)
- (revealer :transition "slideright"
- :reveal wifi_rev
- :duration "350ms"
- (label :class "module_essid"
- :text ESSID_WLAN
- :orientation "h"
- )))))
-
+(defwidget sidestuff []
+ (box :class "sidestuff" :orientation "h" :space-evenly false :halign "end"
+ (metric :label "🔊"
+ :value volume
+ :onchange "amixer -D pulse sset Master {}%")
+ (metric :label ""
+ :value {EWW_RAM.used_mem_perc}
+ :onchange "")
+ (metric :label "💾"
+ :value {round((1 - (EWW_DISK["/"].free / EWW_DISK["/"].total)) * 100, 0)}
+ :onchange "")
+ time))
(defwidget workspaces []
- (literal :content workspace))
-
-
-(defwidget bat []
- (box :class "bat_module" :vexpand "false" :hexpand "false"
- (circular-progress :value battery
- :class "batbar"
- :thickness 4
- (button
- :class "iconbat"
- :limit-width 2
- :tooltip "battery on ${battery}%"
- :show_truncated false
- :onclick "$HOME/.config/eww/bar/scripts/pop system"
- :wrap false
- ""))))
-
-
-(defwidget mem []
- (box :class "mem_module" :vexpand "false" :hexpand "false"
- (circular-progress :value memory
- :class "membar"
- :thickness 4
- (button
- :class "iconmem"
- :limit-width 2
- :tooltip "using ${memory}% ram"
- :onclick "$HOME/.config/eww/bar/scripts/pop system"
- :show_truncated false
- :wrap false
- ""))))
-
-
-
-(defwidget sep []
- (box :class "module-2" :vexpand "false" :hexpand "false"
- (label :class "separ" :text "|")))
-
-(defwidget clock_module []
- (eventbox :onhover "${eww} update time_rev=true"
- :onhoverlost "${eww} update time_rev=false"
- (box :class "module" :space-evenly "false" :orientation "h" :spacing "3"
- (label :text clock_time :class "clock_time_class" )
- (label :text "" :class "clock_time_sep" )
- (label :text clock_minute :class "clock_minute_class")
- (revealer :transition "slideleft"
- :reveal time_rev
- :duration "350ms"
- (button :class "clock_date_class"
- :onclick "$HOME/.config/eww/bar/scripts/pop calendar" clock_date
- )
- ))))
-
-(defwidget volume []
- (eventbox :onhover "${eww} update vol_reveal=true"
- :onhoverlost "${eww} update vol_reveal=false"
- (box :class "module-2" :space-evenly "false" :orientation "h" :spacing "3"
- (button :onclick "scripts/pop audio" :class "volume_icon" "")
- (revealer :transition "slideleft"
- :reveal vol_reveal
- :duration "350ms"
- (scale :class "volbar"
- :value volume_percent
- :orientation "h"
- :tooltip "${volume_percent}%"
- :max 100
- :min 0
- :onchange "amixer -D pulse sset Master {}%" )))))
-
-(defwidget bright []
- (eventbox :onhover "${eww} update br_reveal=true" :onhoverlost "${eww} update br_reveal=false"
- (box :class "module-2" :space-evenly "false" :orientation "h" :spacing "3"
- (label :text "" :class "bright_icon" :tooltip "brightness")
- (revealer :transition "slideleft"
- :reveal br_reveal
- :duration "350ms"
- (scale :class "brightbar"
- :value brightness_percent
- :orientation "h"
- :tooltip "${brightness_percent}%"
- :max 100
- :min 0
- :onchange "brightnessctl set {}%" )))))
-
-
-
- ;; Music
-(defwidget music []
- (eventbox :onhover "${eww} update music_reveal=true"
- :onhoverlost "${eww} update music_reveal=false"
- (box :class "module-2" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false"
- (box :class "song_cover_art" :vexpand "false" :hexpand "false" :style "background-image: url('${cover_art}');")
- (button :class "song" :wrap "true" :onclick "~/.config/eww/bar/scripts/pop music" song)
- (revealer :transition "slideright"
- :reveal music_reveal
- :duration "350ms"
- (box :vexpand "false" :hexpand "false" :oreintation "h"
- (button :class "song_btn_prev" :onclick "~/.config/eww/bar/scripts/music_info --prev" "")
- (button :class "song_btn_play" :onclick "~/.config/eww/bar/scripts/music_info --toggle" song_status)
- (button :class "song_btn_next" :onclick "~/.config/eww/bar/scripts/music_info --next" ""))))))
-
-
-
-(defwidget left []
- (box :orientation "h"
- :space-evenly false
- :halign "end"
- :class "left_modules"
-(bright)
-(volume)
-(wifi)
-(sep)
-(bat)
-(mem)
-(sep)
-(clock_module)))
-
-
-(defwidget right []
- (box :orientation "h"
- :space-evenly false
- :halign "start"
- :class "right_modules"
-(workspaces)))
-
-
-(defwidget center []
- (box :orientation "h"
- :space-evenly false
- :halign "center"
- :class "center_modules"
-(music)))
-
-(defwidget bar_1 []
- (box :class "bar_class"
+ (box :class "workspaces"
:orientation "h"
- (right)
- (center)
- (left)
- ))
+ :space-evenly true
+ :halign "start"
+ :spacing 10
+ (button :onclick "wmctrl -s 0" 1)
+ (button :onclick "wmctrl -s 1" 2)
+ (button :onclick "wmctrl -s 2" 3)
+ (button :onclick "wmctrl -s 3" 4)
+ (button :onclick "wmctrl -s 4" 5)
+ (button :onclick "wmctrl -s 5" 6)
+ (button :onclick "wmctrl -s 6" 7)
+ (button :onclick "wmctrl -s 7" 8)
+ (button :onclick "wmctrl -s 8" 9)))
+
+(defwidget music []
+ (box :class "music"
+ :orientation "h"
+ :space-evenly false
+ :halign "center"
+ {music != "" ? "🎵${music}" : ""}))
+
+
+(defwidget metric [label value onchange]
+ (box :orientation "h"
+ :class "metric"
+ :space-evenly false
+ (box :class "label" label)
+ (scale :min 0
+ :max 101
+ :active {onchange != ""}
+ :value value
+ :onchange onchange)))
+
+
+
+(deflisten music :initial ""
+ "playerctl --follow metadata --format '{{ artist }} - {{ title }}' || true")
+
+(defpoll volume :interval "1s"
+ "scripts/getvol")
+
+(defpoll time :interval "10s"
+ "date '+%H:%M %b %d, %Y'")
(defwindow bar
- :geometry (geometry :x "0%"
- :y "9px"
- :width "98%"
- :height "30px"
- :anchor "top center")
- :stacking "fg"
- :windowtype "dock"
- (bar_1))
-
-(defwidget system []
- (box :class "sys_win" :orientation "v" :space-evenly "false" :hexpand "false" :vexpand "false" :spacing 0
- (box :class "sys_bat_box" :orientation "h" :space-evenly "false"
- (circular-progress :value battery
- :class "sys_bat"
- :thickness 9
- (label :text ""
- :class "sys_icon_bat"
- :limit-width 2
- :show_truncated false
- :wrap false))
- (box :orientation "v" :space-evenly "false" :spacing 0 :hexpand "false" :vexpand "false"
- (label :text "battery"
- :halign "start"
- :class "sys_text_bat"
- :limit-width 9
- :show_truncated false
- :wrap false)
- (label :text "${battery}%"
- :halign "start"
- :class "sys_text_bat_sub"
- :limit-width 22
- :show_truncated false
- :wrap false)
- (label :text "${battery_status}"
- :halign "start"
- :class "sys_text_bat_sub"
- :limit-width 22
- :show_truncated false
- :wrap false)))
- (label :text "" :class "sys_sep" :halign "center")
- (box :class "sys_mem_box" :orientation "h" :space-evenly "false" :halign "start"
- (circular-progress :value memory
- :class "sys_mem"
- :thickness 9
- (label :text ""
- :class "sys_icon_mem"
- :limit-width 2
- :show_truncated false
- :wrap false
- :angle 0.0))
- (box :orientation "v" :space-evenly "false" :spacing 0 :hexpand "false" :vexpand "false"
- (label :text "memory"
- :halign "start"
- :class "sys_text_mem"
- :limit-width 9
- :show_truncated false
- :wrap false)
- (label :text "${memory_used_mb} | ${memory_total_mb}mb "
- :halign "start"
- :class "sys_text_mem_sub"
- :limit-width 22
- :show_truncated false
- :wrap false)
- (label :text "${memory_free_mb}mb free"
- :halign "start"
- :class "sys_text_mem_sub"
- :limit-width 22
- :show_truncated false
- :wrap false)))))
-
-(defwidget cal []
- (box :class "cal" :orientation "v"
- (box :class "cal-in"
- (calendar :class "cal"
- :day calendar_day
- :year calendar_year))))
-
-(defwindow calendar
- :geometry (geometry :x "-20px"
- :y "7%"
- :anchor "top right"
- :width "270px"
- :height "60px")
-(cal))
-
-
-
-(defwidget audio []
- (box :class "audio-box" :orientation "v" :space-evenly "false" :vexpand "false" :hexpand "false"
- (box :halign "v" :space-evenly "false" :hexpand "false" :vexpand "false"
- (box :class "speaker_icon" :orientation "v")
- (box :orientation "v" :halign "center" :vexpand "false" :hexpand "false"
- (label :class "speaker_text" :text "speaker" :valign "center" :halign "left" )
- (box :class "speaker_bar" :halign "center" :vexpand "false" :hexpand "false"
- (scale :value volume_percent
- :space-evenly "false"
- :orientation "h"
- :onchange "amixer -D pulse sset Master {}%"
- :tooltip "volume on ${volume_percent}%"
- :max 100
- :min 0))))
- (label :text "" :class "audio_sep" :halign "center")
- (box :halign "v" :space-evenly "false" :hexpand "false" :vexpand "false"
- (box :class "mic_icon" :orientation "v")
- (box :orientation "v" :halign "center" :vexpand "false" :hexpand "false"
- (label :class "mic_text" :text "mic" :valign "center" :halign "left" )
- (box :class "mic_bar" :halign "center" :vexpand "false" :hexpand "false"
- (scale :value mic_percent
- :space-evenly "false"
- :orientation "h"
- :tooltip "mic on ${mic_percent}%"
- :onchange "amixer -D pulse sset Capture {}%"
- :max 100
- :min 0))))))
-
-(defwindow audio_ctl
- :geometry (geometry :x "-20px"
- :y "7%"
- :anchor "top right"
- :width "280px"
- :height "60px")
-(audio))
-
-
-(defwindow system
- :geometry (geometry :x "-20px"
- :y "7%"
- :anchor "top right"
- :width "290px"
- :height "120px")
-(system))
-
-
-
-;; Music
-(defwidget music_pop []
- (box :class "music_pop" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false"
- (box :class "music_cover_art" :vexpand "false" :hexpand "false" :style "background-image: url('${cover_art}');")
- (box :orientation "v" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false"
- (label :halign "center" :class "music" :wrap "true" :limit-width 13 :text song)
- (label :halign "center" :class "music_artist" :wrap "true" :limit-width 15 :text song_artist)
- (box :orientation "h" :spacing 15 :halign "center" :space-evenly "false" :vexpand "false" :hexpand "false"
- (button :class "music_btn_prev" :onclick "~/.config/eww/bar/scripts/music_info --prev" "")
- (button :class "music_btn_play" :onclick "~/.config/eww/bar/scripts/music_info --toggle" song_status)
- (button :class "music_btn_next" :onclick "~/.config/eww/bar/scripts/music_info --next" ""))
- (box :class "music_bar" :halign "center" :vexpand "false" :hexpand "false" :space-evenly "false"
- (scale :onscroll "mpc -q seek {}" :min 0 :active "true" :max 100 :value current_status)))))
-
-
-;; music
- (defwindow music_win :stacking "fg" :focusable "false" :screen 1
- :geometry (geometry :x "0" :y "7%" :width 428 :height 104 :anchor "top center")
- (music_pop))
-
+ :monitor 0
+ :windowtype "dock"
+ :geometry (geometry :x "0%"
+ :y "0%"
+ :width "90%"
+ :height "10px"
+ :anchor "top center")
+ :reserve (struts :side "top" :distance "4%")
+ (bar))
diff --git a/extensions/eww/images/mic.png b/extensions/eww/images/mic.png
deleted file mode 100644
index d77f315..0000000
--- a/extensions/eww/images/mic.png
+++ /dev/null
Binary files differ
diff --git a/extensions/eww/images/music.png b/extensions/eww/images/music.png
deleted file mode 100644
index 11804f5..0000000
--- a/extensions/eww/images/music.png
+++ /dev/null
Binary files differ
diff --git a/extensions/eww/images/profile.png b/extensions/eww/images/profile.png
deleted file mode 100644
index 0190a36..0000000
--- a/extensions/eww/images/profile.png
+++ /dev/null
Binary files differ
diff --git a/extensions/eww/images/speaker.png b/extensions/eww/images/speaker.png
deleted file mode 100644
index 79e005b..0000000
--- a/extensions/eww/images/speaker.png
+++ /dev/null
Binary files differ
diff --git a/extensions/eww/launch_bar b/extensions/eww/launch_bar
deleted file mode 100755
index 51f2a1d..0000000
--- a/extensions/eww/launch_bar
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/bash
-
-## Files and cmd
-FILE="$HOME/.cache/eww_launch.xyz"
-EWW="$HOME/.local/bin/eww/eww -c $HOME/.config/eww/bar"
-
-## Run eww daemon if not running already
-if [[ ! `pidof eww` ]]; then
- ${EWW} daemon
- sleep 1
-fi
-
-## Open widgets
-run_eww() {
- ${EWW} open-many \
- bar
-
-}
-
-## Launch or close widgets accordingly
-if [[ ! -f "$FILE" ]]; then
- touch "$FILE"
- run_eww && bspc config -m LVDS-1 top_padding 49
-else
- ${EWW} close-all && killall eww
- rm "$FILE"
-fi
diff --git a/extensions/eww/scripts/battery b/extensions/eww/scripts/battery
deleted file mode 100755
index 0540a1b..0000000
--- a/extensions/eww/scripts/battery
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/bash
-
-battery() {
- BAT=`ls /sys/class/power_supply | grep BAT | head -n 1`
- cat /sys/class/power_supply/${BAT}/capacity
-}
-battery_stat() {
- BAT=`ls /sys/class/power_supply | grep BAT | head -n 1`
- cat /sys/class/power_supply/${BAT}/status
-}
-
-if [[ "$1" == "--bat" ]]; then
- battery
-elif [[ "$1" == "--bat-st" ]]; then
- battery_stat
-fi
-
diff --git a/extensions/eww/scripts/getvol b/extensions/eww/scripts/getvol
new file mode 100644
index 0000000..4e4275d
--- /dev/null
+++ b/extensions/eww/scripts/getvol
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+if command -v pamixer &>/dev/null; then
+ if [ true == $(pamixer --get-mute) ]; then
+ echo 0
+ exit
+ else
+ pamixer --get-volume
+ fi
+else
+ amixer -D pulse sget Master | awk -F '[^0-9]+' '/Left:/{print $3}'
+fi
diff --git a/extensions/eww/scripts/mem-ad b/extensions/eww/scripts/mem-ad
deleted file mode 100755
index 1e4cf89..0000000
--- a/extensions/eww/scripts/mem-ad
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-
-total="$(free -m | grep Mem: | awk '{ print $2 }')"
-used="$(free -m | grep Mem: | awk '{ print $3 }')"
-
-free=$(expr $total - $used)
-
-if [ "$1" = "total" ]; then
- echo $total
-elif [ "$1" = "used" ]; then
- echo $used
-elif [ "$1" = "free" ]; then
- echo $free
-fi
diff --git a/extensions/eww/scripts/memory b/extensions/eww/scripts/memory
deleted file mode 100755
index 217c834..0000000
--- a/extensions/eww/scripts/memory
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-printf "%.0f\n" $(free -m | grep Mem | awk '{print ($3/$2)*100}')
diff --git a/extensions/eww/scripts/music_info b/extensions/eww/scripts/music_info
deleted file mode 100755
index ffafe87..0000000
--- a/extensions/eww/scripts/music_info
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/bash
-# scripts by adi1090x
-
-## Get data
-STATUS="$(mpc status)"
-COVER="/tmp/.music_cover.png"
-MUSIC_DIR="$HOME/Music"
-
-## Get status
-get_status() {
- if [[ $STATUS == *"[playing]"* ]]; then
- echo ""
- else
- echo "奈"
- fi
-}
-
-## Get song
-get_song() {
- song=`mpc -f %title% current`
- if [[ -z "$song" ]]; then
- echo "Offline"
- else
- echo "$song"
- fi
-}
-
-## Get artist
-get_artist() {
- artist=`mpc -f %artist% current`
- if [[ -z "$artist" ]]; then
- echo ""
- else
- echo "$artist"
- fi
-}
-
-## Get time
-get_time() {
- time=`mpc status | grep "%)" | awk '{print $4}' | tr -d '(%)'`
- if [[ -z "$time" ]]; then
- echo "0"
- else
- echo "$time"
- fi
-}
-get_ctime() {
- ctime=`mpc status | grep "#" | awk '{print $3}' | sed 's|/.*||g'`
- if [[ -z "$ctime" ]]; then
- echo "0:00"
- else
- echo "$ctime"
- fi
-}
-get_ttime() {
- ttime=`mpc -f %time% current`
- if [[ -z "$ttime" ]]; then
- echo "0:00"
- else
- echo "$ttime"
- fi
-}
-
-## Get cover
-get_cover() {
- ffmpeg -i "${MUSIC_DIR}/$(mpc current -f %file%)" "${COVER}" -y &> /dev/null
- STATUS=$?
-
- # Check if the file has a embbeded album art
- if [ "$STATUS" -eq 0 ];then
- echo "$COVER"
- else
- echo "images/music.png"
- fi
-}
-
-## Execute accordingly
-if [[ "$1" == "--song" ]]; then
- get_song
-elif [[ "$1" == "--artist" ]]; then
- get_artist
-elif [[ "$1" == "--status" ]]; then
- get_status
-elif [[ "$1" == "--time" ]]; then
- get_time
-elif [[ "$1" == "--ctime" ]]; then
- get_ctime
-elif [[ "$1" == "--ttime" ]]; then
- get_ttime
-elif [[ "$1" == "--cover" ]]; then
- get_cover
-elif [[ "$1" == "--toggle" ]]; then
- mpc -q toggle
-elif [[ "$1" == "--next" ]]; then
- { mpc -q next; get_cover; }
-elif [[ "$1" == "--prev" ]]; then
- { mpc -q prev; get_cover; }
-fi
diff --git a/extensions/eww/scripts/pop b/extensions/eww/scripts/pop
deleted file mode 100755
index aef82e8..0000000
--- a/extensions/eww/scripts/pop
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/bin/bash
-
-calendar() {
-LOCK_FILE="$HOME/.cache/eww-calendar.lock"
-EWW_BIN="$HOME/.local/bin/eww/eww"
-
-run() {
- ${EWW_BIN} -c $HOME/.config/eww/bar open calendar
-}
-
-# Open widgets
-if [[ ! -f "$LOCK_FILE" ]]; then
- ${EWW_BIN} -c $HOME/.config/eww/bar close system music_win audio_ctl
- touch "$LOCK_FILE"
- run && echo "ok good!"
-else
- ${EWW_BIN} -c $HOME/.config/eww/bar close calendar
- rm "$LOCK_FILE" && echo "closed"
-fi
-}
-
-
-system() {
-LOCK_FILE_MEM="$HOME/.cache/eww-system.lock"
-EWW_BIN="$HOME/.local/bin/eww/eww"
-
-run() {
- ${EWW_BIN} -c $HOME/.config/eww/bar open system
-}
-
-# Open widgets
-if [[ ! -f "$LOCK_FILE_MEM" ]]; then
- ${EWW_BIN} -c $HOME/.config/eww/bar close calendar music_win audio_ctl
- touch "$LOCK_FILE_MEM"
- run && echo "ok good!"
-else
- ${EWW_BIN} -c $HOME/.config/eww/bar close system
- rm "$LOCK_FILE_MEM" && echo "closed"
-fi
-}
-
-
-music() {
-LOCK_FILE_SONG="$HOME/.cache/eww-song.lock"
-EWW_BIN="$HOME/.local/bin/eww/eww"
-
-run() {
- ${EWW_BIN} -c $HOME/.config/eww/bar open music_win
-}
-
-# Open widgets
-if [[ ! -f "$LOCK_FILE_SONG" ]]; then
- ${EWW_BIN} -c $HOME/.config/eww/bar close system calendar
- touch "$LOCK_FILE_SONG"
- run && echo "ok good!"
-else
- ${EWW_BIN} -c $HOME/.config/eww/bar close music_win
- rm "$LOCK_FILE_SONG" && echo "closed"
-fi
-}
-
-
-
-audio() {
-LOCK_FILE_AUDIO="$HOME/.cache/eww-audio.lock"
-EWW_BIN="$HOME/.local/bin/eww/eww"
-
-run() {
- ${EWW_BIN} -c $HOME/.config/eww/bar open audio_ctl
-}
-
-# Open widgets
-if [[ ! -f "$LOCK_FILE_AUDIO" ]]; then
- ${EWW_BIN} -c $HOME/.config/eww/bar close system calendar music
- touch "$LOCK_FILE_AUDIO"
- run && echo "ok good!"
-else
- ${EWW_BIN} -c $HOME/.config/eww/bar close audio_ctl
- rm "$LOCK_FILE_AUDIO" && echo "closed"
-fi
-}
-
-
-if [ "$1" = "calendar" ]; then
-calendar
-elif [ "$1" = "system" ]; then
-system
-elif [ "$1" = "music" ]; then
-music
-elif [ "$1" = "audio" ]; then
-audio
-fi
diff --git a/extensions/eww/scripts/wifi b/extensions/eww/scripts/wifi
deleted file mode 100755
index 5d7cc59..0000000
--- a/extensions/eww/scripts/wifi
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-
-status=$(nmcli g | grep -oE "disconnected")
-essid=$(nmcli c | grep wlp2s0 | awk '{print ($1)}')
-
-if [ $status ] ; then
- icon=""
- text=""
- col="#575268"
-
-else
- icon=""
- text="${essid}"
- col="#a1bdce"
-fi
-
-
-
-if [[ "$1" == "--COL" ]]; then
- echo $col
-elif [[ "$1" == "--ESSID" ]]; then
- echo $text
-elif [[ "$1" == "--ICON" ]]; then
- echo $icon
-fi
-
diff --git a/extensions/eww/scripts/workspace b/extensions/eww/scripts/workspace
deleted file mode 100755
index f202ef1..0000000
--- a/extensions/eww/scripts/workspace
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/sh
-workspaces() {
-
-ws1="1"
-ws2="2"
-ws3="3"
-ws4="4"
-ws5="5"
-ws6="6"
-
-# Unoccupied
-un="0"
-
-# check if Occupied
-o1=$(bspc query -D -d .occupied --names | grep "$ws1" )
-o2=$(bspc query -D -d .occupied --names | grep "$ws2" )
-o3=$(bspc query -D -d .occupied --names | grep "$ws3" )
-o4=$(bspc query -D -d .occupied --names | grep "$ws4" )
-o5=$(bspc query -D -d .occupied --names | grep "$ws5" )
-o6=$(bspc query -D -d .occupied --names | grep "$ws6" )
-
-# check if Focused
-f1=$(bspc query -D -d focused --names | grep "$ws1" )
-f2=$(bspc query -D -d focused --names | grep "$ws2" )
-f3=$(bspc query -D -d focused --names | grep "$ws3" )
-f4=$(bspc query -D -d focused --names | grep "$ws4" )
-f5=$(bspc query -D -d focused --names | grep "$ws5" )
-f6=$(bspc query -D -d focused --names | grep "$ws6" )
-
-ic_1=""
-ic_2=""
-ic_3=""
-ic_4=""
-ic_5=""
-ic_6=""
-if [ $f1 ]; then
- ic_1=""
-elif [ $f2 ]; then
- ic_2=""
-elif [ $f3 ]; then
- ic_3=""
-elif [ $f4 ]; then
- ic_4=""
-elif [ $f5 ]; then
- ic_5=""
-elif [ $f6 ]; then
- ic_6=""
-fi
-
-echo "(box :class \"works\" :orientation \"h\" :spacing 5 :space-evenly \"false\" (button :onclick \"bspc desktop -f $ws1\" :class \"$un$o1$f1\" \"$ic_1\") (button :onclick \"bspc desktop -f $ws2\" :class \"$un$o2$f2\" \"$ic_2\") (button :onclick \"bspc desktop -f $ws3\" :class \"$un$o3$f3\" \"$ic_3\") (button :onclick \"bspc desktop -f $ws4\" :class \"$un$o4$f4\" \"$ic_4\") (button :onclick \"bspc desktop -f $ws5\" :class \"$un$o5$f5\" \"$ic_5\") (button :onclick \"bspc desktop -f $ws6\" :class \"$un$o6$f6\" \"$ic_6\"))"
-
-}
-workspaces
-bspc subscribe desktop node_transfer | while read -r _ ; do
-workspaces
-done