Add gpu fan, revelation and change settings

This commit is contained in:
Hydroxycarbamide 2022-11-08 18:56:12 +01:00
parent fe159655c3
commit 2362a56223
7 changed files with 137 additions and 66 deletions

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "src/modules/revelation"]
path = src/modules/revelation
url = https://github.com/thiru/awesome-revelation.git

5
bin/gpufanspeed.sh Executable file
View file

@ -0,0 +1,5 @@
#!/bin/sh
if ! gputemp=$(nvidia-smi --format=nounits,csv,noheader --query-gpu=fan.speed | xargs echo); then
gputemp=0
fi
echo "${gputemp}%"

View file

@ -43,10 +43,12 @@ awful.screen.connect_for_each_screen(
-- the modules/widgets per screen. -- the modules/widgets per screen.
if s.index == 1 then if s.index == 1 then
s.systray = require("src.widgets.systray")(s) s.systray = require("src.widgets.systray")(s)
s.cpu_usage = require("src.widgets.cpu_info")("usage")
s.gpu_usage = require("src.widgets.gpu_info")("usage")
require("crylia_bar.left_bar")(s, { s.layoutlist, s.systray, s.taglist }) require("crylia_bar.left_bar")(s, { s.layoutlist, s.systray, s.taglist })
require("crylia_bar.center_bar")(s, { s.tasklist }) require("crylia_bar.center_bar")(s, { s.tasklist })
require("crylia_bar.right_bar")(s, { s.audio, s.date, s.clock, s.powerbutton }) require("crylia_bar.right_bar")(s, { s.cpu_usage, s.gpu_usage, s.audio, s.date, s.clock, s.powerbutton })
--require("crylia_bar.dock")(s, user_vars.dock_programs) --require("crylia_bar.dock")(s, user_vars.dock_programs)
end end
@ -55,13 +57,15 @@ awful.screen.connect_for_each_screen(
s.ram_info = require("src.widgets.ram_info")() s.ram_info = require("src.widgets.ram_info")()
s.cpu_temp = require("src.widgets.cpu_info")("temp") s.cpu_temp = require("src.widgets.cpu_info")("temp")
s.gpu_temp = require("src.widgets.gpu_info")("temp") s.gpu_temp = require("src.widgets.gpu_info")("temp")
-- s.cpu_usage = require("src.widgets.cpu_info")("usage") s.gpu_fan = require("src.widgets.gpu_info")("fan")
-- s.gpu_usage = require("src.widgets.gpu_info")("usage")
require("crylia_bar.left_bar")(s, { s.layoutlist, s.taglist }) require("crylia_bar.left_bar")(s, { s.layoutlist, s.taglist })
require("crylia_bar.center_bar")(s, { s.tasklist }) require("crylia_bar.center_bar")(s, { s.tasklist })
require("crylia_bar.right_bar")(s, { s.gpu_temp, s.cpu_temp, s.ram_info, s.kblayout, s.bluetooth, s.network, s.clock, s.powerbutton }) require("crylia_bar.right_bar")(s,
{ s.cpu_temp, s.gpu_temp, s.gpu_fan, s.ram_info, s.kblayout, s.bluetooth, s.network,
s.clock,
s.powerbutton })
require("crylia_bar.bottom_left_bar")(s, { s.mpris }) require("crylia_bar.bottom_left_bar")(s, { s.mpris })
end end
end end
) )

@ -0,0 +1 @@
Subproject commit 852f95f38247aedb3e4b0ca8167380bb0016c57e

View file

@ -27,7 +27,7 @@ Theme.fg_urgent = cat["Text"]
Theme.fg_minimize = cat["Text"] Theme.fg_minimize = cat["Text"]
Theme.useless_gap = dpi(5) -- Change this to 0 if you dont like window gaps Theme.useless_gap = dpi(5) -- Change this to 0 if you dont like window gaps
Theme.border_width = dpi(0) -- Change this to 0 if you dont like borders Theme.border_width = dpi(2) -- Change this to 0 if you dont like borders
Theme.border_normal = cat["Base"] Theme.border_normal = cat["Base"]
--Theme.border_focus = color["Red"] -- Doesnt work, no idea why; workaround is in signals.lua --Theme.border_focus = color["Red"] -- Doesnt work, no idea why; workaround is in signals.lua
Theme.border_marked = cat["Maroon"] Theme.border_marked = cat["Maroon"]

View file

@ -34,7 +34,7 @@ user_vars = {
autostart = { autostart = {
"killall -9 gwe", "killall -9 gwe",
"gwe --hide-window &", "gwe --hide-window &",
-- "nautilus --gapplication-service &", -- "nautilus --gapplication-service &",
"setxkbmap -option compose:ralt", "setxkbmap -option compose:ralt",
"setxkbmap -option caps:escape", "setxkbmap -option caps:escape",
"emacs --daemon=instance1", "emacs --daemon=instance1",
@ -42,12 +42,12 @@ user_vars = {
"bash -c \"[[ ! $(pgrep picom) ]] && picom &\"", "bash -c \"[[ ! $(pgrep picom) ]] && picom &\"",
"bash -c \"[[ ! -s ~/.config/mpd/pid ]] && mpd &\"", "bash -c \"[[ ! -s ~/.config/mpd/pid ]] && mpd &\"",
"bash -c \"[[ ! $(pgrep ulauncher) ]] && ulauncher --hide-window &\"", "bash -c \"[[ ! $(pgrep ulauncher) ]] && ulauncher --hide-window &\"",
-- "bash -c \"[[ ! $(pidof transmission-daemon) ]] && transmission-daemon\"", -- "bash -c \"[[ ! $(pidof transmission-daemon) ]] && transmission-daemon\"",
"bash -c \"[[ ! $(pidof polkit-gnome-authentication-agent-1) ]] && /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &\"", "bash -c \"[[ ! $(pidof polkit-gnome-authentication-agent-1) ]] && /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &\"",
"bash -c \"[ ! $(pgrep mpDris2) ] && mpDris2 &\"", "bash -c \"[ ! $(pgrep mpDris2) ] && mpDris2 &\"",
-- "bash -c \"[[ ! $(pgrep redshift) ]] && redshift &\"", -- "bash -c \"[[ ! $(pgrep redshift) ]] && redshift &\"",
-- "plank &", -- "plank &",
-- "bash -c \"[ ! `pidof xfce-polkit` ] && /usr/lib/xfce-polkit/xfce-polkit &\"", -- "bash -c \"[ ! `pidof xfce-polkit` ] && /usr/lib/xfce-polkit/xfce-polkit &\"",
}, },
-- Type 'ip a' and check your wlan and ethernet name -- Type 'ip a' and check your wlan and ethernet name
@ -80,7 +80,7 @@ user_vars = {
kblayout = { "us", "fr" }, kblayout = { "us", "fr" },
-- Your filemanager that opens with super+e -- Your filemanager that opens with super+e
file_manager = "bash -c \"wmctrl -xa nautilus || nautilus \"", file_manager = "nemo",
-- Screenshot program to make a screenshot when print is hit -- Screenshot program to make a screenshot when print is hit
screenshot_program = "flameshot gui", screenshot_program = "flameshot gui",
@ -96,13 +96,16 @@ user_vars = {
-- Use xprop | grep WM_CLASS and use the *SECOND* string -- Use xprop | grep WM_CLASS and use the *SECOND* string
-- { WM_CLASS, program, name, user_icon, isSteam } -- { WM_CLASS, program, name, user_icon, isSteam }
dock_programs = { dock_programs = {
{ "nautilus", "bash -c \"wmctrl -xa nautilus || nautilus\"", "Files", "/usr/share/icons/Papirus-Dark/128x128/apps/org.gnome.Nautilus.svg" }, { "nautilus", "bash -c \"wmctrl -xa nautilus || nautilus\"", "Files",
"/usr/share/icons/Papirus-Dark/128x128/apps/org.gnome.Nautilus.svg" },
{ "kitty", "kitty", "Kitty" }, { "kitty", "kitty", "Kitty" },
-- { "Firefox Beta", "firefox-beta", "Firefox" }, -- { "Firefox Beta", "firefox-beta", "Firefox" },
{ "firefox", "firefox-developer-edition --class='firefox-developer-edition'", "Firefox", "/usr/share/icons/Papirus-Dark/128x128/apps/firefox-developer-icon.svg" }, { "firefox", "firefox-developer-edition --class='firefox-developer-edition'", "Firefox",
{ "Thorium-browser-unstable", "thorium-browser", "thorium-browser-unstable", "/usr/share/icons/Papirus-Dark/128x128/apps/Thorium-browser-unstable.svg" }, "/usr/share/icons/Papirus-Dark/128x128/apps/firefox-developer-icon.svg" },
{ "osu!.exe", "/home/eric/.wineosu/osu/start.sh", "osu!", "/home/eric/.wineosu/osu/icon.png"}, { "Thorium-browser-unstable", "thorium-browser", "thorium-browser-unstable",
{ "osu!", "osu-lazer", "osu-lazer"}, "/usr/share/icons/Papirus-Dark/128x128/apps/Thorium-browser-unstable.svg" },
{ "osu!.exe", "/home/eric/.wineosu/osu/start.sh", "osu!", "/home/eric/.wineosu/osu/icon.png" },
{ "osu!", "osu-lazer", "osu-lazer" },
{ "discord", "discord", "Discord" } { "discord", "discord", "Discord" }
} }
} }

View file

@ -98,6 +98,47 @@ return function(widget)
widget = wibox.container.background widget = wibox.container.background
} }
local gpu_fan_widget = wibox.widget {
{
{
{
{
{
id = "icon",
widget = wibox.widget.textbox,
text = "",
font = "16",
resize = true
},
id = "icon_layout",
widget = wibox.container.place
},
top = dpi(2),
widget = wibox.container.margin,
id = "icon_margin"
},
spacing = dpi(10),
{
id = "label",
align = "center",
valign = "center",
widget = wibox.widget.textbox
},
id = "gpu_layout",
layout = wibox.layout.fixed.horizontal
},
id = "container",
left = dpi(8),
right = dpi(8),
widget = wibox.container.margin
},
bg = color["Blue200"],
fg = cat["Crust"],
shape = function(cr, width, height)
gears.shape.rounded_rect(cr, width, height, 5)
end,
widget = wibox.container.background
}
-- GPU Utilization -- GPU Utilization
watch( watch(
[[ bash -c "nvidia-smi -q -d UTILIZATION | grep Gpu | awk '{print $3}'"]], [[ bash -c "nvidia-smi -q -d UTILIZATION | grep Gpu | awk '{print $3}'"]],
@ -144,9 +185,23 @@ return function(widget)
end end
) )
-- GPU Fans
watch(
[[ bash -c "/home/eric/.config/awesome/bin/gpufanspeed.sh"]],
3,
function(_, stdout)
gpu_fan_widget.container.gpu_layout.label.text = stdout
awesome.emit_signal("update::gpu_fan_widget", stdout, temp_icon)
end
)
Hover_signal(gpu_fan_widget, cat["Green"], cat["Crust"])
if widget == "usage" then if widget == "usage" then
return gpu_usage_widget return gpu_usage_widget
elseif widget == "temp" then elseif widget == "temp" then
return gpu_temp_widget return gpu_temp_widget
elseif widget == "fan" then
return gpu_fan_widget
end end
end end