diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..a663bbe --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "src/modules/revelation"] + path = src/modules/revelation + url = https://github.com/thiru/awesome-revelation.git diff --git a/bin/gpufanspeed.sh b/bin/gpufanspeed.sh new file mode 100755 index 0000000..35a53fe --- /dev/null +++ b/bin/gpufanspeed.sh @@ -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}%" diff --git a/crylia_bar/init.lua b/crylia_bar/init.lua index 17cc083..8d8cdc1 100644 --- a/crylia_bar/init.lua +++ b/crylia_bar/init.lua @@ -9,59 +9,63 @@ awful.screen.connect_for_each_screen( -- If you want to change the modules per screen use the indices -- e.g. 1 would be the primary screen and 2 the secondary screen. function(s) - -- Create 9 tags - awful.layout.layouts = user_vars.layouts - awful.tag( - { "1", "2", "3", "4", "5", "6", "7", "8", "9" }, - s, - user_vars.layouts[1] - ) + -- Create 9 tags + awful.layout.layouts = user_vars.layouts + awful.tag( + { "1", "2", "3", "4", "5", "6", "7", "8", "9" }, + s, + user_vars.layouts[1] + ) - require("src.modules.powermenu")(s) - -- TODO: rewrite calendar osd, maybe write an own inplementation - -- require("src.modules.calendar_osd")(s) - require("src.modules.volume_osd")(s) - require("src.modules.brightness_osd")(s) - -- require("src.modules.titlebar") - require("src.modules.volume_controller")(s) + require("src.modules.powermenu")(s) + -- TODO: rewrite calendar osd, maybe write an own inplementation + -- require("src.modules.calendar_osd")(s) + require("src.modules.volume_osd")(s) + require("src.modules.brightness_osd")(s) + -- require("src.modules.titlebar") + require("src.modules.volume_controller")(s) - -- Widgets - --s.battery = require("src.widgets.battery")() - s.audio = require("src.widgets.audio")(s) - s.date = require("src.widgets.date")() - s.clock = require("src.widgets.clock")() - s.bluetooth = require("src.widgets.bluetooth")() - s.layoutlist = require("src.widgets.layout_list")(s) - s.powerbutton = require("src.widgets.power")() - s.kblayout = require("src.widgets.kblayout")(s) - s.taglist = require("src.widgets.taglist")(s) - s.tasklist = require("src.widgets.tasklist")(s) - s.mpris = require("src.widgets.mpris")() - --s.cpu_freq = require("src.widgets.cpu_info")("freq", "average") + -- Widgets + --s.battery = require("src.widgets.battery")() + s.audio = require("src.widgets.audio")(s) + s.date = require("src.widgets.date")() + s.clock = require("src.widgets.clock")() + s.bluetooth = require("src.widgets.bluetooth")() + s.layoutlist = require("src.widgets.layout_list")(s) + s.powerbutton = require("src.widgets.power")() + s.kblayout = require("src.widgets.kblayout")(s) + s.taglist = require("src.widgets.taglist")(s) + s.tasklist = require("src.widgets.tasklist")(s) + s.mpris = require("src.widgets.mpris")() + --s.cpu_freq = require("src.widgets.cpu_info")("freq", "average") - -- Add more of these if statements if you want to change - -- the modules/widgets per screen. - if s.index == 1 then - s.systray = require("src.widgets.systray")(s) + -- Add more of these if statements if you want to change + -- the modules/widgets per screen. + if s.index == 1 then + 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.center_bar")(s, { s.tasklist }) - require("crylia_bar.right_bar")(s, { s.audio, s.date, s.clock, s.powerbutton }) - --require("crylia_bar.dock")(s, user_vars.dock_programs) + require("crylia_bar.left_bar")(s, { s.layoutlist, s.systray, s.taglist }) + require("crylia_bar.center_bar")(s, { s.tasklist }) + 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) + end + + if s.index == 2 then + s.network = require("src.widgets.network")() + s.ram_info = require("src.widgets.ram_info")() + s.cpu_temp = require("src.widgets.cpu_info")("temp") + s.gpu_temp = require("src.widgets.gpu_info")("temp") + s.gpu_fan = require("src.widgets.gpu_info")("fan") + + require("crylia_bar.left_bar")(s, { s.layoutlist, s.taglist }) + require("crylia_bar.center_bar")(s, { s.tasklist }) + 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 }) + end end - - if s.index == 2 then - s.network = require("src.widgets.network")() - s.ram_info = require("src.widgets.ram_info")() - s.cpu_temp = require("src.widgets.cpu_info")("temp") - s.gpu_temp = require("src.widgets.gpu_info")("temp") - -- 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.taglist }) - 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.bottom_left_bar")(s, { s.mpris }) - end -end ) diff --git a/src/modules/revelation b/src/modules/revelation new file mode 160000 index 0000000..852f95f --- /dev/null +++ b/src/modules/revelation @@ -0,0 +1 @@ +Subproject commit 852f95f38247aedb3e4b0ca8167380bb0016c57e diff --git a/src/theme/theme_variables.lua b/src/theme/theme_variables.lua index 8191b44..eeabe9e 100644 --- a/src/theme/theme_variables.lua +++ b/src/theme/theme_variables.lua @@ -21,13 +21,13 @@ Theme.bg_urgent = cat["Maroon"] Theme.bg_minimize = cat["Text"] Theme.bg_systray = cat["Text"] -Theme.fg_normal = cat["Text"] -Theme.fg_focus = cat["Text"] -Theme.fg_urgent = cat["Text"] +Theme.fg_normal = cat["Text"] +Theme.fg_focus = cat["Text"] +Theme.fg_urgent = cat["Text"] Theme.fg_minimize = cat["Text"] 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_focus = color["Red"] -- Doesnt work, no idea why; workaround is in signals.lua Theme.border_marked = cat["Maroon"] diff --git a/src/theme/user_variables.lua b/src/theme/user_variables.lua index 506aa63..659ff98 100644 --- a/src/theme/user_variables.lua +++ b/src/theme/user_variables.lua @@ -34,7 +34,7 @@ user_vars = { autostart = { "killall -9 gwe", "gwe --hide-window &", --- "nautilus --gapplication-service &", + -- "nautilus --gapplication-service &", "setxkbmap -option compose:ralt", "setxkbmap -option caps:escape", "emacs --daemon=instance1", @@ -42,12 +42,12 @@ user_vars = { "bash -c \"[[ ! $(pgrep picom) ]] && picom &\"", "bash -c \"[[ ! -s ~/.config/mpd/pid ]] && mpd &\"", "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 \"[ ! $(pgrep mpDris2) ] && mpDris2 &\"", --- "bash -c \"[[ ! $(pgrep redshift) ]] && redshift &\"", --- "plank &", --- "bash -c \"[ ! `pidof xfce-polkit` ] && /usr/lib/xfce-polkit/xfce-polkit &\"", + -- "bash -c \"[[ ! $(pgrep redshift) ]] && redshift &\"", + -- "plank &", + -- "bash -c \"[ ! `pidof xfce-polkit` ] && /usr/lib/xfce-polkit/xfce-polkit &\"", }, -- Type 'ip a' and check your wlan and ethernet name @@ -80,7 +80,7 @@ user_vars = { kblayout = { "us", "fr" }, -- 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 = "flameshot gui", @@ -96,13 +96,16 @@ user_vars = { -- Use xprop | grep WM_CLASS and use the *SECOND* string -- { WM_CLASS, program, name, user_icon, isSteam } 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" }, - -- { "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" }, - { "Thorium-browser-unstable", "thorium-browser", "thorium-browser-unstable", "/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"}, + -- { "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" }, + { "Thorium-browser-unstable", "thorium-browser", "thorium-browser-unstable", + "/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" } } } diff --git a/src/widgets/gpu_info.lua b/src/widgets/gpu_info.lua index 51b0f66..10fd52a 100644 --- a/src/widgets/gpu_info.lua +++ b/src/widgets/gpu_info.lua @@ -98,6 +98,47 @@ return function(widget) 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 watch( [[ bash -c "nvidia-smi -q -d UTILIZATION | grep Gpu | awk '{print $3}'"]], @@ -144,9 +185,23 @@ return function(widget) 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 return gpu_usage_widget elseif widget == "temp" then return gpu_temp_widget + elseif widget == "fan" then + return gpu_fan_widget end end