This commit is contained in:
2026-04-06 15:40:00 -04:00
parent 862d02ffb9
commit 5d274cd606
5 changed files with 110 additions and 33 deletions

View File

@@ -27,7 +27,7 @@
}
.clock-box-dash {
padding:10px;
padding:2px;
margin: 6px;
border-radius: 8px;
background-color: rgba(0,0,0,0.25);
@@ -39,6 +39,11 @@
}
.clock-time-dash {
font-size: 100px;
font-weight: 800;
}
.mem-dash {
font-size: 50px;
font-weight: 800;
}
@@ -49,11 +54,12 @@
.clock-date-dash {
font-size: 20px;
margin: 6px;
}
.media {
background-color: rgba(0,0,0,0.25);
padding: 0px;
padding: 5px;
margin: 5px;
border-radius: 8px;
}
@@ -62,7 +68,7 @@
background: none;
border: none;
font-size: 40px;
padding: 0px;
padding: 5px;
border-radius: 9px;
}
@@ -98,3 +104,10 @@
font-size: 18px;
font-weight: 400;
}
.mem-circle {
min-width: 64px;
min-height: 64px;
}

View File

@@ -76,7 +76,11 @@
(defpoll clock-date
:interval "60s"
"date '+%A %B %d'")
"date '+%B %d'")
(defpoll clock-dow
:interval "60s"
"date '+%A'")
(defwidget clock-widget []
(box
@@ -84,16 +88,25 @@
:spacing 2
:class "clock-box"
(label :text clock-time :class "clock-time")
(label :test clock-dow :class "clock-date")
(label :text clock-date :class "clock-date")))
(defwidget clock-dash []
(box
:orientation "v"
:spacing 2
:class "clock-box-dash"
:space-evenly true
:valign "center"
(box
:orientation "v"
:valign "center"
:halign "center"
:space-evenly false
(label :text clock-time :class "clock-time-dash")
(label :text clock-dow :class "clock-date-dash")
(label :text clock-date :class "clock-date-dash")
)
)
)
(defwindow clock
@@ -118,30 +131,44 @@
| sed 's/^file:\\/\\///' \
| tr -d '\\n'")
(defpoll free_mem :interval "5s"
"free -h | awk '/Mem:/ {print $7}'")
(defpoll mem_used :interval "2s"
"sh ~/.config/eww/mem_used.sh")
(defpoll used_mem :interval "5s"
"free -h | awk '/Mem:/ {print $3}'")
(defpoll mem_ratio :interval "5s"
"free --si -h | awk '/Mem:/ {printf \"%s / %s\", $3, $2}'")
(defwidget memory []
(defwidget mem_circle []
(box
:orientation "v"
:class "clock-box"
(label :text "Memory" :class "header")
(box
:orientation "h"
(label :text "Free" :class "subhead")
(label :text "Used" :class "subhead")
)
(box
:orientation "h"
(label :text free_mem)
(label :text used_mem)
:space-evenly true
(label :text mem_ratio :class "mem-dash")
(progress
:value mem_used
:min 0
:max 100
)
)
)
;(defwidget memory []
; (box
; :orientation "v"
; :class "clock-box"
; (label :text "Memory" :class "header")
; (box
; :orientation "h"
; (label :text "Free" :class "subhead")
; (label :text "Used" :class "subhead")
; )
; (box
; :orientation "h"
; (label :text free_mem)
; (label :text used_mem)
; )
; )
;)
(defwindow media_popup
:monitor 0
:geometry (geometry
@@ -179,12 +206,14 @@
(defwidget media-small [art]
(box
:class "media"
:orientation "vertical"
:orientation "horizontal"
:space-evenly true
(box :radius 10 :clip true (image :path art :image-width 150 :image-height 150))
(box :radius 10 :clip true (image :path art :image-width 225 :image-height 225))
(box
:orientation "vertical"
:halign "left"
:valign "center"
:space-evenly false
(label :text track :class "tlabel")
(label :text artist :class "alabel")
(box
@@ -212,8 +241,8 @@
:monitor 0
:stacking "bg"
:geometry (geometry
:width "60%"
:height "40%"
:width "80%"
:height "50%"
:anchor "center"
)
(box
@@ -223,7 +252,7 @@
)
(box
(box :orientation "h" (common-ports))
(box :orientation "v" (clock-dash) (memory))
(box :orientation "v" (clock-dash) (mem_circle))
)
)
)

5
mem_used.sh Executable file
View File

@@ -0,0 +1,5 @@
#!/bin/sh
mem_total=$(awk '/MemTotal/ {print $2}' /proc/meminfo)
mem_avail=$(awk '/MemAvailable/ {print $2}' /proc/meminfo)
mem_used=$((mem_total - mem_avail))
printf "%.0f\n" "$(echo "$mem_used * 100 / $mem_total" | bc -l)"

1
todo.json Normal file
View File

@@ -0,0 +1 @@
[]

29
todo.sh Executable file
View File

@@ -0,0 +1,29 @@
#!/usr/bin/env bash
FILE="$HOME/.config/eww/todo.json"
add() {
TEXT="$1"
jq --arg text "$TEXT" '. += [{"text": $text, "done": false}]' "$FILE" >"$FILE.tmp" && mv "$FILE.tmp" "$FILE"
}
toggle() {
INDEX="$1"
jq ".[$INDEX].done |= not" "$FILE" >"$FILE.tmp" && mv "$FILE.tmp" "$FILE"
}
remove() {
INDEX="$1"
jq "del(.[$INDEX])" "$FILE" >"$FILE.tmp" && mv "$FILE.tmp" "$FILE"
}
list() {
cat "$FILE"
}
case "$1" in
add) add "$2" ;;
toggle) toggle "$2" ;;
remove) remove "$2" ;;
list) list ;;
esac