diff --git a/VolumeWidget/volume-icons/1.png b/VolumeWidget/volume-icons/1.png new file mode 100644 index 0000000..3f4e6b4 Binary files /dev/null and b/VolumeWidget/volume-icons/1.png differ diff --git a/VolumeWidget/volume-icons/2.png b/VolumeWidget/volume-icons/2.png new file mode 100644 index 0000000..9a488c7 Binary files /dev/null and b/VolumeWidget/volume-icons/2.png differ diff --git a/VolumeWidget/volume-icons/3.png b/VolumeWidget/volume-icons/3.png new file mode 100644 index 0000000..a1bfb30 Binary files /dev/null and b/VolumeWidget/volume-icons/3.png differ diff --git a/VolumeWidget/volume-icons/4.png b/VolumeWidget/volume-icons/4.png new file mode 100644 index 0000000..8f11110 Binary files /dev/null and b/VolumeWidget/volume-icons/4.png differ diff --git a/VolumeWidget/volume-icons/5.png b/VolumeWidget/volume-icons/5.png new file mode 100644 index 0000000..613cb4a Binary files /dev/null and b/VolumeWidget/volume-icons/5.png differ diff --git a/VolumeWidget/volume-icons/6.png b/VolumeWidget/volume-icons/6.png new file mode 100644 index 0000000..1defc8a Binary files /dev/null and b/VolumeWidget/volume-icons/6.png differ diff --git a/VolumeWidget/volume-icons/7.png b/VolumeWidget/volume-icons/7.png new file mode 100644 index 0000000..8207899 Binary files /dev/null and b/VolumeWidget/volume-icons/7.png differ diff --git a/VolumeWidget/volume-icons/8.png b/VolumeWidget/volume-icons/8.png new file mode 100644 index 0000000..423f213 Binary files /dev/null and b/VolumeWidget/volume-icons/8.png differ diff --git a/VolumeWidget/volume-icons/9.png b/VolumeWidget/volume-icons/9.png new file mode 100644 index 0000000..e7c40df Binary files /dev/null and b/VolumeWidget/volume-icons/9.png differ diff --git a/VolumeWidget/volume.lua b/VolumeWidget/volume.lua new file mode 100644 index 0000000..e800c32 --- /dev/null +++ b/VolumeWidget/volume.lua @@ -0,0 +1,35 @@ +local wibox = require("wibox") +local awful = require("awful") + +volume_widget = wibox.widget.textbox() +volume_icon = wibox.widget.imagebox() + +function update_volume(widget, icon) + local fd = io.popen("amixer -D pulse sget Master") + local status = fd:read("*all") + fd:close() + + local volume = string.match(status, "(%d?%d?%d)%%") + volume = tonumber(string.format("% 3d", volume)) + + status = string.match(status, "%[(o[^%]]*)%]") + + if (volume >= 0 and volume < 10) then volumeLevel=1 + elseif (volume >= 10 and volume < 20) then volumeLevel=2 + elseif (volume >= 20 and volume < 30) then volumeLevel=3 + elseif (volume >= 30 and volume < 40) then volumeLevel=4 + elseif (volume >= 40 and volume < 50) then volumeLevel=5 + elseif (volume >= 50 and volume < 60) then volumeLevel=6 + elseif (volume >= 60 and volume < 70) then volumeLevel=7 + elseif (volume >= 70 and volume < 80) then volumeLevel=8 + elseif (volume >= 80 and volume <= 100) then volumeLevel=9 + end + + icon:set_image("/home/pashik/.config/awesome/volume-icons/" .. volumeLevel .. ".png") +end + +update_volume(volume_widget, volume_icon) + +mytimer = timer({ timeout = 0.2 }) +mytimer:connect_signal("timeout", function () update_volume(volume_widget, volume_icon) end) +mytimer:start() \ No newline at end of file