diff --git a/.config/awesome/awesome-wm-widgets/demomode-widget/demomode.lua b/.config/awesome/awesome-wm-widgets/demomode-widget/demomode.lua
index 3641acc..7f5ff5e 100644
--- a/.config/awesome/awesome-wm-widgets/demomode-widget/demomode.lua
+++ b/.config/awesome/awesome-wm-widgets/demomode-widget/demomode.lua
@@ -15,7 +15,7 @@ local gears = require("gears")
local XSCREENSAVER_DEACTIVATE_COMMAND = "xscreensaver-command -deactivate"
local XSCREENSAVER_TIMER = 61
-local iconpath = "/home/josiah/.config/awesome/demomode.png"
+local iconpath = "/home/josiah/.config/awesome/themes/jlj/icons/demomode.png"
local demoMode_widget = wibox.widget {
wibox.widget {
diff --git a/.config/awesome/awesome-wm-widgets/gamemode-widget/gamemode.lua b/.config/awesome/awesome-wm-widgets/gamemode-widget/gamemode.lua
index 78b48cf..3a9bd88 100644
--- a/.config/awesome/awesome-wm-widgets/gamemode-widget/gamemode.lua
+++ b/.config/awesome/awesome-wm-widgets/gamemode-widget/gamemode.lua
@@ -18,7 +18,7 @@ local XRANDR_GAME_RESOLUTION_COMMAND = "xrandr --output HDMI-0 --mode 1920x1080
local XRANDR_NORMAL_RESOLUTION_COMMAND = "xrandr --output HDMI-0 --mode 2560x1440 --pos 0x0 --rotate normal --primary --output DP-2 --mode 1920x1080 --right-of HDMI-0 --rotate left --output DP-4 --mode 1920x1080 --left-of HDMI-0 --rotate right --output DP-0 --off"
-local iconpath = "/home/josiah/.config/awesome/gamemode.png"
+local iconpath = "/home/josiah/.config/awesome/themes/jlj/icons/gamemode.png"
local toggle = 0
diff --git a/.config/awesome/rc.lua b/.config/awesome/rc.lua
index 735bc04..422e81c 100644
--- a/.config/awesome/rc.lua
+++ b/.config/awesome/rc.lua
@@ -28,7 +28,6 @@ require("awful.hotkeys_popup.keys")
-- Shit to enable the use of lain themes and templates
local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
-
local theme = {}
theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/copland"
theme.wallpaper = theme.dir .. "/wall.png"
@@ -191,7 +190,7 @@ end
-- {{{ Variable definitions
-- Themes define colours, icons, font and wallpapers.
-- beautiful.init(gears.filesystem.get_themes_dir() .. "default/theme.lua") -- this is the OG theme
-beautiful.init(gears.filesystem.get_configuration_dir() .. "jlj-theme.lua") -- this is my shitty test theme
+beautiful.init(gears.filesystem.get_configuration_dir() .. "themes/jlj/jlj-theme.lua") -- this is my shitty test theme
-- This is used later as the default terminal and editor to run.
terminal = "konsole"
diff --git a/.config/awesome/themes/blackburn/icons/awesome.png b/.config/awesome/themes/blackburn/icons/awesome.png
new file mode 100755
index 0000000..947a06d
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/awesome.png differ
diff --git a/.config/awesome/themes/blackburn/icons/dwindle.png b/.config/awesome/themes/blackburn/icons/dwindle.png
new file mode 100755
index 0000000..2f4b4ac
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/dwindle.png differ
diff --git a/.config/awesome/themes/blackburn/icons/fairh.png b/.config/awesome/themes/blackburn/icons/fairh.png
new file mode 100755
index 0000000..b0030e7
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/fairh.png differ
diff --git a/.config/awesome/themes/blackburn/icons/fairv.png b/.config/awesome/themes/blackburn/icons/fairv.png
new file mode 100755
index 0000000..2c0e157
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/fairv.png differ
diff --git a/.config/awesome/themes/blackburn/icons/floating.png b/.config/awesome/themes/blackburn/icons/floating.png
new file mode 100755
index 0000000..e0bdd4b
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/floating.png differ
diff --git a/.config/awesome/themes/blackburn/icons/magnifier.png b/.config/awesome/themes/blackburn/icons/magnifier.png
new file mode 100755
index 0000000..3713108
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/magnifier.png differ
diff --git a/.config/awesome/themes/blackburn/icons/max.png b/.config/awesome/themes/blackburn/icons/max.png
new file mode 100755
index 0000000..8828d12
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/max.png differ
diff --git a/.config/awesome/themes/blackburn/icons/spiral.png b/.config/awesome/themes/blackburn/icons/spiral.png
new file mode 100755
index 0000000..54c2c5e
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/spiral.png differ
diff --git a/.config/awesome/themes/blackburn/icons/square_sel.png b/.config/awesome/themes/blackburn/icons/square_sel.png
new file mode 100755
index 0000000..6938cca
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/square_sel.png differ
diff --git a/.config/awesome/themes/blackburn/icons/square_unsel.png b/.config/awesome/themes/blackburn/icons/square_unsel.png
new file mode 100755
index 0000000..dd8064d
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/blackburn/icons/submenu.png b/.config/awesome/themes/blackburn/icons/submenu.png
new file mode 100755
index 0000000..10ca014
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/submenu.png differ
diff --git a/.config/awesome/themes/blackburn/icons/tile.png b/.config/awesome/themes/blackburn/icons/tile.png
new file mode 100755
index 0000000..409141f
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/tile.png differ
diff --git a/.config/awesome/themes/blackburn/icons/tilebottom.png b/.config/awesome/themes/blackburn/icons/tilebottom.png
new file mode 100755
index 0000000..de68e9c
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/blackburn/icons/tileleft.png b/.config/awesome/themes/blackburn/icons/tileleft.png
new file mode 100755
index 0000000..c47e4ee
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/tileleft.png differ
diff --git a/.config/awesome/themes/blackburn/icons/tiletop.png b/.config/awesome/themes/blackburn/icons/tiletop.png
new file mode 100755
index 0000000..c50abdf
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/tiletop.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/close_focus.png b/.config/awesome/themes/blackburn/icons/titlebar/close_focus.png
new file mode 100755
index 0000000..d0bc2e8
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/close_focus.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/close_normal.png b/.config/awesome/themes/blackburn/icons/titlebar/close_normal.png
new file mode 100755
index 0000000..f99db1a
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/close_normal.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/floating_focus_active.png b/.config/awesome/themes/blackburn/icons/titlebar/floating_focus_active.png
new file mode 100755
index 0000000..1a0649f
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/floating_focus_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/floating_focus_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/floating_focus_inactive.png
new file mode 100755
index 0000000..47f19f6
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/floating_focus_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/floating_normal_active.png b/.config/awesome/themes/blackburn/icons/titlebar/floating_normal_active.png
new file mode 100755
index 0000000..44b8dac
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/floating_normal_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/floating_normal_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/floating_normal_inactive.png
new file mode 100755
index 0000000..98f7f1d
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/floating_normal_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/maximized_focus_active.png b/.config/awesome/themes/blackburn/icons/titlebar/maximized_focus_active.png
new file mode 100755
index 0000000..eab9b37
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/maximized_focus_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/maximized_focus_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/maximized_focus_inactive.png
new file mode 100755
index 0000000..bce1d00
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/maximized_focus_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/maximized_normal_active.png b/.config/awesome/themes/blackburn/icons/titlebar/maximized_normal_active.png
new file mode 100755
index 0000000..4f03984
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/maximized_normal_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/maximized_normal_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/maximized_normal_inactive.png
new file mode 100755
index 0000000..2e56d32
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/maximized_normal_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/minimize_focus.png b/.config/awesome/themes/blackburn/icons/titlebar/minimize_focus.png
new file mode 100755
index 0000000..5a968c3
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/minimize_focus.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/minimize_normal.png b/.config/awesome/themes/blackburn/icons/titlebar/minimize_normal.png
new file mode 100755
index 0000000..0574ae5
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/minimize_normal.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/ontop_focus_active.png b/.config/awesome/themes/blackburn/icons/titlebar/ontop_focus_active.png
new file mode 100755
index 0000000..42a9770
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/ontop_focus_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/ontop_focus_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/ontop_focus_inactive.png
new file mode 100755
index 0000000..2f3a2be
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/ontop_focus_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/ontop_normal_active.png b/.config/awesome/themes/blackburn/icons/titlebar/ontop_normal_active.png
new file mode 100755
index 0000000..499dfbf
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/ontop_normal_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/ontop_normal_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/ontop_normal_inactive.png
new file mode 100755
index 0000000..a9a3206
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/ontop_normal_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/sticky_focus_active.png b/.config/awesome/themes/blackburn/icons/titlebar/sticky_focus_active.png
new file mode 100755
index 0000000..72864ac
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/sticky_focus_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/sticky_focus_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/sticky_focus_inactive.png
new file mode 100755
index 0000000..5493d8e
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/sticky_focus_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/sticky_normal_active.png b/.config/awesome/themes/blackburn/icons/titlebar/sticky_normal_active.png
new file mode 100755
index 0000000..a150154
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/sticky_normal_active.png differ
diff --git a/.config/awesome/themes/blackburn/icons/titlebar/sticky_normal_inactive.png b/.config/awesome/themes/blackburn/icons/titlebar/sticky_normal_inactive.png
new file mode 100755
index 0000000..7e6c99b
Binary files /dev/null and b/.config/awesome/themes/blackburn/icons/titlebar/sticky_normal_inactive.png differ
diff --git a/.config/awesome/themes/blackburn/theme.lua b/.config/awesome/themes/blackburn/theme.lua
new file mode 100644
index 0000000..d777d9b
--- /dev/null
+++ b/.config/awesome/themes/blackburn/theme.lua
@@ -0,0 +1,280 @@
+--[[
+
+ Blackburn Awesome WM theme 3.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local os = os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/blackburn"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 10.5"
+theme.taglist_font = "Icons 10"
+theme.fg_normal = "#D7D7D7"
+theme.fg_focus = "#F6784F"
+theme.bg_normal = "#060606"
+theme.bg_focus = "#060606"
+theme.fg_urgent = "#CC9393"
+theme.bg_urgent = "#2A1F1E"
+theme.border_width = dpi(1)
+theme.border_normal = "#0E0E0E"
+theme.border_focus = "#F79372"
+theme.taglist_fg_focus = "#F6784F"
+theme.taglist_bg_focus = "#060606"
+theme.tasklist_fg_focus = "#F6784F"
+theme.tasklist_bg_focus = "#060606"
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(130)
+theme.menu_submenu_icon = theme.dir .. "/icons/submenu.png"
+theme.awesome_icon = theme.dir .."/icons/awesome.png"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_sel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.layout_tile = theme.dir .. "/icons/tile.png"
+theme.layout_tileleft = theme.dir .. "/icons/tileleft.png"
+theme.layout_tilebottom = theme.dir .. "/icons/tilebottom.png"
+theme.layout_tiletop = theme.dir .. "/icons/tiletop.png"
+theme.layout_fairv = theme.dir .. "/icons/fairv.png"
+theme.layout_fairh = theme.dir .. "/icons/fairh.png"
+theme.layout_spiral = theme.dir .. "/icons/spiral.png"
+theme.layout_dwindle = theme.dir .. "/icons/dwindle.png"
+theme.layout_max = theme.dir .. "/icons/max.png"
+theme.layout_fullscreen = theme.dir .. "/icons/fullscreen.png"
+theme.layout_magnifier = theme.dir .. "/icons/magnifier.png"
+theme.layout_floating = theme.dir .. "/icons/floating.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = 0
+theme.titlebar_close_button_focus = theme.dir .. "/icons/titlebar/close_focus.png"
+theme.titlebar_close_button_normal = theme.dir .. "/icons/titlebar/close_normal.png"
+theme.titlebar_ontop_button_focus_active = theme.dir .. "/icons/titlebar/ontop_focus_active.png"
+theme.titlebar_ontop_button_normal_active = theme.dir .. "/icons/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_inactive = theme.dir .. "/icons/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_inactive = theme.dir .. "/icons/titlebar/ontop_normal_inactive.png"
+theme.titlebar_sticky_button_focus_active = theme.dir .. "/icons/titlebar/sticky_focus_active.png"
+theme.titlebar_sticky_button_normal_active = theme.dir .. "/icons/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_inactive = theme.dir .. "/icons/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_inactive = theme.dir .. "/icons/titlebar/sticky_normal_inactive.png"
+theme.titlebar_floating_button_focus_active = theme.dir .. "/icons/titlebar/floating_focus_active.png"
+theme.titlebar_floating_button_normal_active = theme.dir .. "/icons/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_inactive = theme.dir .. "/icons/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_inactive = theme.dir .. "/icons/titlebar/floating_normal_inactive.png"
+theme.titlebar_maximized_button_focus_active = theme.dir .. "/icons/titlebar/maximized_focus_active.png"
+theme.titlebar_maximized_button_normal_active = theme.dir .. "/icons/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_inactive = theme.dir .. "/icons/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_inactive = theme.dir .. "/icons/titlebar/maximized_normal_inactive.png"
+theme.titlebar_minimize_button_focus = theme.dir .. "/icons/titlebar/minimize_focus.png"
+theme.titlebar_minimize_button_normal = theme.dir .. "/icons/titlebar/minimize_normal.png"
+
+awful.util.tagnames = { "ƀ", "Ƅ", "Ɗ", "ƈ", "ƙ" }
+
+local markup = lain.util.markup
+local separators = lain.util.separators
+local gray = "#9E9C9A"
+
+-- Textclock
+local mytextclock = wibox.widget.textclock(" %H:%M ")
+mytextclock.font = theme.font
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ font = "Terminus 11",
+ fg = theme.fg_normal,
+ bg = theme.bg_normal
+ }
+})
+
+-- Mail IMAP check
+--[[ to be set before use
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ notification_preset = { fg = white }
+ settings = function()
+ mail = ""
+ count = ""
+
+ if mailcount > 0 then
+ mail = "Mail "
+ count = mailcount .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, mail) .. count))
+ end
+})
+--]]
+
+-- MPD
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ mpd_notification_preset.fg = white
+ artist = mpd_now.artist .. " "
+ title = mpd_now.title .. " "
+
+ if mpd_now.state == "pause" then
+ artist = "mpd "
+ title = "paused "
+ elseif mpd_now.state == "stop" then
+ artist = ""
+ title = ""
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, artist) .. title .. " "))
+ end
+})
+
+-- /home fs
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ notification_preset = { fg = white, bg = theme.bg_normal, font = "Terminus 10.5" },
+ settings = function()
+ fs_header = ""
+ fs_p = ""
+
+ if fs_now["/home"].percentage >= 90 then
+ fs_header = " Hdd "
+ fs_p = fs_now["/home"].percentage
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, fs_header) .. fs_p))
+ end
+})
+--]]
+
+-- Battery
+local bat = lain.widget.bat({
+ settings = function()
+ bat_header = " Bat "
+ bat_p = bat_now.perc .. " "
+ widget:set_markup(markup.font(theme.font, markup(gray, bat_header) .. bat_p))
+ end
+})
+
+-- ALSA volume
+theme.volume = lain.widget.alsa({
+ --togglechannel = "IEC958,3",
+ settings = function()
+ header = " Vol "
+ vlevel = volume_now.level
+
+ if volume_now.status == "off" then
+ vlevel = vlevel .. "M "
+ else
+ vlevel = vlevel .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, header) .. vlevel))
+ end
+})
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ --APPID =
+ city_id = 2643743, -- placeholder (London)
+ settings = function()
+ units = math.floor(weather_now["main"]["temp"])
+ widget:set_markup(" " .. units .. " ")
+ end
+})
+--]]
+
+-- Separators
+local first = wibox.widget.textbox(' ')
+local arrl_pre = separators.arrow_right("alpha", "#1A1A1A")
+local arrl_post = separators.arrow_right("#1A1A1A", "alpha")
+
+local barheight = dpi(18)
+local barcolor = gears.color({
+ type = "linear",
+ from = { barheight, 0 },
+ to = { barheight, barheight },
+ stops = { {0, theme.bg_focus }, {0.8, theme.border_normal}, {1, "#1A1A1A"} }
+})
+theme.titlebar_bg = barcolor
+
+theme.titlebar_bg_focus = gears.color({
+ type = "linear",
+ from = { barheight, 0 },
+ to = { barheight, barheight },
+ stops = { {0, theme.bg_normal}, {0.5, theme.border_normal}, {1, "#492417"} }
+})
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons, { bg_normal = barcolor, bg_focus = barcolor })
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(18), bg = barcolor })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ first,
+ s.mytaglist,
+ arrl_pre,
+ s.mylayoutbox,
+ arrl_post,
+ s.mypromptbox,
+ first,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ first,
+ theme.mpd.widget,
+ --theme.mail.widget,
+ --theme.weather.icon,
+ --theme.weather.widget,
+ --theme.fs.widget,
+ bat,
+ theme.volume.widget,
+ mytextclock,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/blackburn/wall.png b/.config/awesome/themes/blackburn/wall.png
new file mode 100755
index 0000000..6774d91
Binary files /dev/null and b/.config/awesome/themes/blackburn/wall.png differ
diff --git a/.config/awesome/themes/copland/icons/ac.png b/.config/awesome/themes/copland/icons/ac.png
new file mode 100755
index 0000000..4b00cd1
Binary files /dev/null and b/.config/awesome/themes/copland/icons/ac.png differ
diff --git a/.config/awesome/themes/copland/icons/awesome.png b/.config/awesome/themes/copland/icons/awesome.png
new file mode 100755
index 0000000..b24e00d
Binary files /dev/null and b/.config/awesome/themes/copland/icons/awesome.png differ
diff --git a/.config/awesome/themes/copland/icons/bat.png b/.config/awesome/themes/copland/icons/bat.png
new file mode 100755
index 0000000..4ea9b2b
Binary files /dev/null and b/.config/awesome/themes/copland/icons/bat.png differ
diff --git a/.config/awesome/themes/copland/icons/bat_low.png b/.config/awesome/themes/copland/icons/bat_low.png
new file mode 100755
index 0000000..c198675
Binary files /dev/null and b/.config/awesome/themes/copland/icons/bat_low.png differ
diff --git a/.config/awesome/themes/copland/icons/bat_no.png b/.config/awesome/themes/copland/icons/bat_no.png
new file mode 100755
index 0000000..5cf536f
Binary files /dev/null and b/.config/awesome/themes/copland/icons/bat_no.png differ
diff --git a/.config/awesome/themes/copland/icons/centerfair.png b/.config/awesome/themes/copland/icons/centerfair.png
new file mode 100755
index 0000000..185d5e1
Binary files /dev/null and b/.config/awesome/themes/copland/icons/centerfair.png differ
diff --git a/.config/awesome/themes/copland/icons/centerwork.png b/.config/awesome/themes/copland/icons/centerwork.png
new file mode 100755
index 0000000..49d5a11
Binary files /dev/null and b/.config/awesome/themes/copland/icons/centerwork.png differ
diff --git a/.config/awesome/themes/copland/icons/disk.png b/.config/awesome/themes/copland/icons/disk.png
new file mode 100755
index 0000000..3ccd728
Binary files /dev/null and b/.config/awesome/themes/copland/icons/disk.png differ
diff --git a/.config/awesome/themes/copland/icons/dwindle.png b/.config/awesome/themes/copland/icons/dwindle.png
new file mode 100755
index 0000000..55b61b0
Binary files /dev/null and b/.config/awesome/themes/copland/icons/dwindle.png differ
diff --git a/.config/awesome/themes/copland/icons/fairh.png b/.config/awesome/themes/copland/icons/fairh.png
new file mode 100755
index 0000000..848f5a8
Binary files /dev/null and b/.config/awesome/themes/copland/icons/fairh.png differ
diff --git a/.config/awesome/themes/copland/icons/fairv.png b/.config/awesome/themes/copland/icons/fairv.png
new file mode 100755
index 0000000..610eb7b
Binary files /dev/null and b/.config/awesome/themes/copland/icons/fairv.png differ
diff --git a/.config/awesome/themes/copland/icons/floating.png b/.config/awesome/themes/copland/icons/floating.png
new file mode 100755
index 0000000..d8ce00a
Binary files /dev/null and b/.config/awesome/themes/copland/icons/floating.png differ
diff --git a/.config/awesome/themes/copland/icons/fullscreen.png b/.config/awesome/themes/copland/icons/fullscreen.png
new file mode 100755
index 0000000..feb44d1
Binary files /dev/null and b/.config/awesome/themes/copland/icons/fullscreen.png differ
diff --git a/.config/awesome/themes/copland/icons/magnifier.png b/.config/awesome/themes/copland/icons/magnifier.png
new file mode 100755
index 0000000..49616bc
Binary files /dev/null and b/.config/awesome/themes/copland/icons/magnifier.png differ
diff --git a/.config/awesome/themes/copland/icons/max.png b/.config/awesome/themes/copland/icons/max.png
new file mode 100755
index 0000000..3f4bdec
Binary files /dev/null and b/.config/awesome/themes/copland/icons/max.png differ
diff --git a/.config/awesome/themes/copland/icons/pause.png b/.config/awesome/themes/copland/icons/pause.png
new file mode 100755
index 0000000..381e532
Binary files /dev/null and b/.config/awesome/themes/copland/icons/pause.png differ
diff --git a/.config/awesome/themes/copland/icons/play.png b/.config/awesome/themes/copland/icons/play.png
new file mode 100755
index 0000000..05ad253
Binary files /dev/null and b/.config/awesome/themes/copland/icons/play.png differ
diff --git a/.config/awesome/themes/copland/icons/spiral.png b/.config/awesome/themes/copland/icons/spiral.png
new file mode 100755
index 0000000..664afb4
Binary files /dev/null and b/.config/awesome/themes/copland/icons/spiral.png differ
diff --git a/.config/awesome/themes/copland/icons/square_sel.png b/.config/awesome/themes/copland/icons/square_sel.png
new file mode 100755
index 0000000..58b58f2
Binary files /dev/null and b/.config/awesome/themes/copland/icons/square_sel.png differ
diff --git a/.config/awesome/themes/copland/icons/square_unsel.png b/.config/awesome/themes/copland/icons/square_unsel.png
new file mode 100755
index 0000000..40411f4
Binary files /dev/null and b/.config/awesome/themes/copland/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/copland/icons/stop.png b/.config/awesome/themes/copland/icons/stop.png
new file mode 100755
index 0000000..b01b75e
Binary files /dev/null and b/.config/awesome/themes/copland/icons/stop.png differ
diff --git a/.config/awesome/themes/copland/icons/submenu.png b/.config/awesome/themes/copland/icons/submenu.png
new file mode 100755
index 0000000..10ed739
Binary files /dev/null and b/.config/awesome/themes/copland/icons/submenu.png differ
diff --git a/.config/awesome/themes/copland/icons/termfair.png b/.config/awesome/themes/copland/icons/termfair.png
new file mode 100755
index 0000000..9cfb636
Binary files /dev/null and b/.config/awesome/themes/copland/icons/termfair.png differ
diff --git a/.config/awesome/themes/copland/icons/tile.png b/.config/awesome/themes/copland/icons/tile.png
new file mode 100755
index 0000000..890e354
Binary files /dev/null and b/.config/awesome/themes/copland/icons/tile.png differ
diff --git a/.config/awesome/themes/copland/icons/tilebottom.png b/.config/awesome/themes/copland/icons/tilebottom.png
new file mode 100755
index 0000000..aac4302
Binary files /dev/null and b/.config/awesome/themes/copland/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/copland/icons/tileleft.png b/.config/awesome/themes/copland/icons/tileleft.png
new file mode 100755
index 0000000..c87a32f
Binary files /dev/null and b/.config/awesome/themes/copland/icons/tileleft.png differ
diff --git a/.config/awesome/themes/copland/icons/tiletop.png b/.config/awesome/themes/copland/icons/tiletop.png
new file mode 100755
index 0000000..89f7f8d
Binary files /dev/null and b/.config/awesome/themes/copland/icons/tiletop.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/close_focus.png b/.config/awesome/themes/copland/icons/titlebar/close_focus.png
new file mode 100755
index 0000000..c1fa3ad
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/close_focus.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/close_normal.png b/.config/awesome/themes/copland/icons/titlebar/close_normal.png
new file mode 100755
index 0000000..77cd8eb
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/close_normal.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/floating_focus_active.png b/.config/awesome/themes/copland/icons/titlebar/floating_focus_active.png
new file mode 100755
index 0000000..8fcf336
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/floating_focus_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/floating_focus_inactive.png b/.config/awesome/themes/copland/icons/titlebar/floating_focus_inactive.png
new file mode 100755
index 0000000..47f19f6
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/floating_focus_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/floating_normal_active.png b/.config/awesome/themes/copland/icons/titlebar/floating_normal_active.png
new file mode 100755
index 0000000..df17970
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/floating_normal_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/floating_normal_inactive.png b/.config/awesome/themes/copland/icons/titlebar/floating_normal_inactive.png
new file mode 100755
index 0000000..98f7f1d
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/floating_normal_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/maximized_focus_active.png b/.config/awesome/themes/copland/icons/titlebar/maximized_focus_active.png
new file mode 100755
index 0000000..96e8937
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/maximized_focus_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/maximized_focus_inactive.png b/.config/awesome/themes/copland/icons/titlebar/maximized_focus_inactive.png
new file mode 100755
index 0000000..bce1d00
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/maximized_focus_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/maximized_normal_active.png b/.config/awesome/themes/copland/icons/titlebar/maximized_normal_active.png
new file mode 100755
index 0000000..6ce0b10
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/maximized_normal_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/maximized_normal_inactive.png b/.config/awesome/themes/copland/icons/titlebar/maximized_normal_inactive.png
new file mode 100755
index 0000000..2e56d32
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/maximized_normal_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/ontop_focus_active.png b/.config/awesome/themes/copland/icons/titlebar/ontop_focus_active.png
new file mode 100755
index 0000000..d206ea4
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/ontop_focus_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/ontop_focus_inactive.png b/.config/awesome/themes/copland/icons/titlebar/ontop_focus_inactive.png
new file mode 100755
index 0000000..2f3a2be
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/ontop_focus_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/ontop_normal_active.png b/.config/awesome/themes/copland/icons/titlebar/ontop_normal_active.png
new file mode 100755
index 0000000..9a26d34
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/ontop_normal_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/ontop_normal_inactive.png b/.config/awesome/themes/copland/icons/titlebar/ontop_normal_inactive.png
new file mode 100755
index 0000000..a9a3206
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/ontop_normal_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/sticky_focus_active.png b/.config/awesome/themes/copland/icons/titlebar/sticky_focus_active.png
new file mode 100755
index 0000000..7e360db
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/sticky_focus_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/sticky_focus_inactive.png b/.config/awesome/themes/copland/icons/titlebar/sticky_focus_inactive.png
new file mode 100755
index 0000000..5493d8e
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/sticky_focus_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/sticky_normal_active.png b/.config/awesome/themes/copland/icons/titlebar/sticky_normal_active.png
new file mode 100755
index 0000000..a06138d
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/sticky_normal_active.png differ
diff --git a/.config/awesome/themes/copland/icons/titlebar/sticky_normal_inactive.png b/.config/awesome/themes/copland/icons/titlebar/sticky_normal_inactive.png
new file mode 100755
index 0000000..7e6c99b
Binary files /dev/null and b/.config/awesome/themes/copland/icons/titlebar/sticky_normal_inactive.png differ
diff --git a/.config/awesome/themes/copland/icons/vol.png b/.config/awesome/themes/copland/icons/vol.png
new file mode 100755
index 0000000..847d575
Binary files /dev/null and b/.config/awesome/themes/copland/icons/vol.png differ
diff --git a/.config/awesome/themes/copland/icons/vol_low.png b/.config/awesome/themes/copland/icons/vol_low.png
new file mode 100755
index 0000000..54d653e
Binary files /dev/null and b/.config/awesome/themes/copland/icons/vol_low.png differ
diff --git a/.config/awesome/themes/copland/icons/vol_mute.png b/.config/awesome/themes/copland/icons/vol_mute.png
new file mode 100755
index 0000000..361412d
Binary files /dev/null and b/.config/awesome/themes/copland/icons/vol_mute.png differ
diff --git a/.config/awesome/themes/copland/icons/vol_no.png b/.config/awesome/themes/copland/icons/vol_no.png
new file mode 100755
index 0000000..06d1a97
Binary files /dev/null and b/.config/awesome/themes/copland/icons/vol_no.png differ
diff --git a/.config/awesome/themes/copland/theme.lua b/.config/awesome/themes/copland/theme.lua
new file mode 100644
index 0000000..56a25d6
--- /dev/null
+++ b/.config/awesome/themes/copland/theme.lua
@@ -0,0 +1,375 @@
+--[[
+
+ Copland Awesome WM theme 2.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local awesome, client, os = awesome, client, os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/copland"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 10.5"
+theme.fg_normal = "#BBBBBB"
+theme.fg_focus = "#78A4FF"
+theme.bg_normal = "#111111"
+theme.bg_focus = "#111111"
+theme.fg_urgent = "#000000"
+theme.bg_urgent = "#FFFFFF"
+theme.border_width = dpi(1)
+theme.border_normal = "#141414"
+theme.border_focus = "#93B6FF"
+theme.taglist_fg_focus = "#FFFFFF"
+theme.taglist_bg_focus = "#111111"
+theme.taglist_bg_normal = "#111111"
+theme.titlebar_bg_normal = "#191919"
+theme.titlebar_bg_focus = "#262626"
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(130)
+theme.tasklist_disable_icon = true
+theme.awesome_icon = theme.dir .."/icons/awesome.png"
+theme.menu_submenu_icon = theme.dir .. "/icons/submenu.png"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_unsel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.vol = theme.dir .. "/icons/vol.png"
+theme.vol_low = theme.dir .. "/icons/vol_low.png"
+theme.vol_no = theme.dir .. "/icons/vol_no.png"
+theme.vol_mute = theme.dir .. "/icons/vol_mute.png"
+theme.disk = theme.dir .. "/icons/disk.png"
+theme.ac = theme.dir .. "/icons/ac.png"
+theme.bat = theme.dir .. "/icons/bat.png"
+theme.bat_low = theme.dir .. "/icons/bat_low.png"
+theme.bat_no = theme.dir .. "/icons/bat_no.png"
+theme.play = theme.dir .. "/icons/play.png"
+theme.pause = theme.dir .. "/icons/pause.png"
+theme.stop = theme.dir .. "/icons/stop.png"
+theme.layout_tile = theme.dir .. "/icons/tile.png"
+theme.layout_tileleft = theme.dir .. "/icons/tileleft.png"
+theme.layout_tilebottom = theme.dir .. "/icons/tilebottom.png"
+theme.layout_tiletop = theme.dir .. "/icons/tiletop.png"
+theme.layout_fairv = theme.dir .. "/icons/fairv.png"
+theme.layout_fairh = theme.dir .. "/icons/fairh.png"
+theme.layout_spiral = theme.dir .. "/icons/spiral.png"
+theme.layout_dwindle = theme.dir .. "/icons/dwindle.png"
+theme.layout_max = theme.dir .. "/icons/max.png"
+theme.layout_fullscreen = theme.dir .. "/icons/fullscreen.png"
+theme.layout_magnifier = theme.dir .. "/icons/magnifier.png"
+theme.layout_floating = theme.dir .. "/icons/floating.png"
+theme.useless_gap = 0
+theme.titlebar_close_button_focus = theme.dir .. "/icons/titlebar/close_focus.png"
+theme.titlebar_close_button_normal = theme.dir .. "/icons/titlebar/close_normal.png"
+theme.titlebar_ontop_button_focus_active = theme.dir .. "/icons/titlebar/ontop_focus_active.png"
+theme.titlebar_ontop_button_normal_active = theme.dir .. "/icons/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_inactive = theme.dir .. "/icons/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_inactive = theme.dir .. "/icons/titlebar/ontop_normal_inactive.png"
+theme.titlebar_sticky_button_focus_active = theme.dir .. "/icons/titlebar/sticky_focus_active.png"
+theme.titlebar_sticky_button_normal_active = theme.dir .. "/icons/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_inactive = theme.dir .. "/icons/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_inactive = theme.dir .. "/icons/titlebar/sticky_normal_inactive.png"
+theme.titlebar_floating_button_focus_active = theme.dir .. "/icons/titlebar/floating_focus_active.png"
+theme.titlebar_floating_button_normal_active = theme.dir .. "/icons/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_inactive = theme.dir .. "/icons/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_inactive = theme.dir .. "/icons/titlebar/floating_normal_inactive.png"
+theme.titlebar_maximized_button_focus_active = theme.dir .. "/icons/titlebar/maximized_focus_active.png"
+theme.titlebar_maximized_button_normal_active = theme.dir .. "/icons/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_inactive = theme.dir .. "/icons/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_inactive = theme.dir .. "/icons/titlebar/maximized_normal_inactive.png"
+
+-- lain related
+theme.layout_centerfair = theme.dir .. "/icons/centerfair.png"
+theme.layout_termfair = theme.dir .. "/icons/termfair.png"
+theme.layout_centerwork = theme.dir .. "/icons/centerwork.png"
+
+local markup = lain.util.markup
+local blue = theme.fg_focus
+local red = "#EB8F8F"
+local green = "#8FEB8F"
+
+-- Textclock
+--os.setlocale(os.getenv("LANG")) -- to localize the clock
+local mytextclock = wibox.widget.textclock(" %H:%M ")
+mytextclock.font = theme.font
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ font = "Terminus 11",
+ fg = theme.fg_normal,
+ bg = theme.bg_normal
+ }
+})
+
+-- Mail IMAP check
+--[[ to be set before use
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ mail = ""
+ count = ""
+
+ if mailcount > 0 then
+ mail = " Mail "
+ count = mailcount .. " "
+ end
+
+ widget:set_markup(markup(blue, mail) .. count)
+ end
+})
+--]]
+
+-- MPD
+local mpdicon = wibox.widget.imagebox()
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ if mpd_now.state == "play" then
+ title = mpd_now.title
+ artist = " " .. mpd_now.artist .. markup("#777777", " | ")
+ mpdicon:set_image(theme.play)
+ elseif mpd_now.state == "pause" then
+ title = "mpd "
+ artist = "paused" .. markup("#777777", " | ")
+ mpdicon:set_image(theme.pause)
+ else
+ title = ""
+ artist = ""
+ mpdicon._private.image = nil
+ mpdicon:emit_signal("widget::redraw_needed")
+ mpdicon:emit_signal("widget::layout_changed")
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(blue, title) .. artist))
+ end
+})
+
+-- Battery
+local baticon = wibox.widget.imagebox(theme.bat)
+local batbar = wibox.widget {
+ forced_height = dpi(1),
+ forced_width = dpi(59),
+ color = theme.fg_normal,
+ background_color = theme.bg_normal,
+ margins = 1,
+ paddings = 1,
+ ticks = true,
+ ticks_size = dpi(6),
+ widget = wibox.widget.progressbar,
+}
+local batupd = lain.widget.bat({
+ settings = function()
+ if (not bat_now.status) or bat_now.status == "N/A" or type(bat_now.perc) ~= "number" then return end
+
+ if bat_now.status == "Charging" then
+ baticon:set_image(theme.ac)
+ if bat_now.perc >= 98 then
+ batbar:set_color(green)
+ elseif bat_now.perc > 50 then
+ batbar:set_color(theme.fg_normal)
+ elseif bat_now.perc > 15 then
+ batbar:set_color(theme.fg_normal)
+ else
+ batbar:set_color(red)
+ end
+ else
+ if bat_now.perc >= 98 then
+ batbar:set_color(green)
+ elseif bat_now.perc > 50 then
+ batbar:set_color(theme.fg_normal)
+ baticon:set_image(theme.bat)
+ elseif bat_now.perc > 15 then
+ batbar:set_color(theme.fg_normal)
+ baticon:set_image(theme.bat_low)
+ else
+ batbar:set_color(red)
+ baticon:set_image(theme.bat_no)
+ end
+ end
+ batbar:set_value(bat_now.perc / 100)
+ end
+})
+local batbg = wibox.container.background(batbar, "#474747", gears.shape.rectangle)
+local batwidget = wibox.container.margin(batbg, dpi(2), dpi(7), dpi(4), dpi(4))
+
+-- /home fs
+--[[ commented because it needs Gio/Glib >= 2.54
+local fsicon = wibox.widget.imagebox(theme.disk)
+local fsbar = wibox.widget {
+ forced_height = dpi(1),
+ forced_width = dpi(59),
+ color = theme.fg_normal,
+ background_color = theme.bg_normal,
+ margins = 1,
+ paddings = 1,
+ ticks = true,
+ ticks_size = dpi(6),
+ widget = wibox.widget.progressbar,
+}
+theme.fs = lain.widget.fs {
+ notification_preset = { fg = theme.fg_normal, bg = theme.bg_normal, font = "Terminus 10.5" },
+ settings = function()
+ if fs_now["/home"].percentage < 90 then
+ fsbar:set_color(theme.fg_normal)
+ else
+ fsbar:set_color("#EB8F8F")
+ end
+ fsbar:set_value(fs_now["/home"].percentage / 100)
+ end
+}
+local fsbg = wibox.container.background(fsbar, "#474747", gears.shape.rectangle)
+local fswidget = wibox.container.margin(fsbg, dpi(2), dpi(7), dpi(4), dpi(4))
+--]]
+
+-- ALSA volume bar
+local volicon = wibox.widget.imagebox(theme.vol)
+theme.volume = lain.widget.alsabar {
+ width = dpi(59), border_width = 0, ticks = true, ticks_size = dpi(6),
+ notification_preset = { font = theme.font },
+ --togglechannel = "IEC958,3",
+ settings = function()
+ if volume_now.status == "off" then
+ volicon:set_image(theme.vol_mute)
+ elseif volume_now.level == 0 then
+ volicon:set_image(theme.vol_no)
+ elseif volume_now.level <= 50 then
+ volicon:set_image(theme.vol_low)
+ else
+ volicon:set_image(theme.vol)
+ end
+ end,
+ colors = {
+ background = theme.bg_normal,
+ mute = red,
+ unmute = theme.fg_normal
+ }
+}
+theme.volume.tooltip.wibox.fg = theme.fg_focus
+theme.volume.bar:buttons(my_table.join (
+ awful.button({}, 1, function()
+ awful.spawn(string.format("%s -e alsamixer", awful.util.terminal))
+ end),
+ awful.button({}, 2, function()
+ os.execute(string.format("%s set %s 100%%", theme.volume.cmd, theme.volume.channel))
+ theme.volume.update()
+ end),
+ awful.button({}, 3, function()
+ os.execute(string.format("%s set %s toggle", theme.volume.cmd, theme.volume.togglechannel or theme.volume.channel))
+ theme.volume.update()
+ end),
+ awful.button({}, 4, function()
+ os.execute(string.format("%s set %s 1%%+", theme.volume.cmd, theme.volume.channel))
+ theme.volume.update()
+ end),
+ awful.button({}, 5, function()
+ os.execute(string.format("%s set %s 1%%-", theme.volume.cmd, theme.volume.channel))
+ theme.volume.update()
+ end)
+))
+local volumebg = wibox.container.background(theme.volume.bar, "#474747", gears.shape.rectangle)
+local volumewidget = wibox.container.margin(volumebg, dpi(2), dpi(7), dpi(4), dpi(4))
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ --APPID =
+ city_id = 2643743, -- placeholder (London)
+})
+--]]
+
+-- Separators
+local first = wibox.widget.textbox(markup.font("Terminus 3", " "))
+local spr = wibox.widget.textbox(' ')
+local small_spr = wibox.widget.textbox(markup.font("Terminus 4", " "))
+local bar_spr = wibox.widget.textbox(markup.font("Terminus 3", " ") .. markup.fontfg(theme.font, "#777777", "|") .. markup.font("Terminus 5", " "))
+
+-- Eminent-like task filtering
+local orig_filter = awful.widget.taglist.filter.all
+
+-- Taglist label functions
+awful.widget.taglist.filter.all = function (t, args)
+ if t.selected or #t:clients() > 0 then
+ return orig_filter(t, args)
+ end
+end
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(18), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ small_spr,
+ s.mylayoutbox,
+ first,
+ bar_spr,
+ s.mytaglist,
+ first,
+ s.mypromptbox,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ small_spr,
+ --theme.mail.widget,
+ mpdicon,
+ theme.mpd.widget,
+ baticon,
+ batwidget,
+ bar_spr,
+ --fsicon,
+ --fswidget,
+ bar_spr,
+ volicon,
+ volumewidget,
+ bar_spr,
+ mytextclock,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/copland/wall.png b/.config/awesome/themes/copland/wall.png
new file mode 100644
index 0000000..ea9e4cc
Binary files /dev/null and b/.config/awesome/themes/copland/wall.png differ
diff --git a/.config/awesome/themes/dremora/icons/awesome.png b/.config/awesome/themes/dremora/icons/awesome.png
new file mode 100755
index 0000000..ffb105e
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/awesome.png differ
diff --git a/.config/awesome/themes/dremora/icons/dwindle.png b/.config/awesome/themes/dremora/icons/dwindle.png
new file mode 100755
index 0000000..04f3918
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/dwindle.png differ
diff --git a/.config/awesome/themes/dremora/icons/fairh.png b/.config/awesome/themes/dremora/icons/fairh.png
new file mode 100755
index 0000000..0bb6dab
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/fairh.png differ
diff --git a/.config/awesome/themes/dremora/icons/fairv.png b/.config/awesome/themes/dremora/icons/fairv.png
new file mode 100755
index 0000000..aff6c26
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/fairv.png differ
diff --git a/.config/awesome/themes/dremora/icons/floating.png b/.config/awesome/themes/dremora/icons/floating.png
new file mode 100755
index 0000000..5d021b1
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/floating.png differ
diff --git a/.config/awesome/themes/dremora/icons/magnifier.png b/.config/awesome/themes/dremora/icons/magnifier.png
new file mode 100755
index 0000000..dd4dec3
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/magnifier.png differ
diff --git a/.config/awesome/themes/dremora/icons/max.png b/.config/awesome/themes/dremora/icons/max.png
new file mode 100755
index 0000000..7334f8b
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/max.png differ
diff --git a/.config/awesome/themes/dremora/icons/spiral.png b/.config/awesome/themes/dremora/icons/spiral.png
new file mode 100755
index 0000000..31cbbd0
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/spiral.png differ
diff --git a/.config/awesome/themes/dremora/icons/square_sel.png b/.config/awesome/themes/dremora/icons/square_sel.png
new file mode 100755
index 0000000..85cc605
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/square_sel.png differ
diff --git a/.config/awesome/themes/dremora/icons/square_unsel.png b/.config/awesome/themes/dremora/icons/square_unsel.png
new file mode 100755
index 0000000..1c58e4b
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/dremora/icons/submenu.png b/.config/awesome/themes/dremora/icons/submenu.png
new file mode 100755
index 0000000..988ef9e
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/submenu.png differ
diff --git a/.config/awesome/themes/dremora/icons/tile.png b/.config/awesome/themes/dremora/icons/tile.png
new file mode 100755
index 0000000..72cbd6c
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/tile.png differ
diff --git a/.config/awesome/themes/dremora/icons/tilebottom.png b/.config/awesome/themes/dremora/icons/tilebottom.png
new file mode 100755
index 0000000..a927128
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/dremora/icons/tileleft.png b/.config/awesome/themes/dremora/icons/tileleft.png
new file mode 100755
index 0000000..c54d1f5
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/tileleft.png differ
diff --git a/.config/awesome/themes/dremora/icons/tiletop.png b/.config/awesome/themes/dremora/icons/tiletop.png
new file mode 100755
index 0000000..db74cf3
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/tiletop.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/close_focus.png b/.config/awesome/themes/dremora/icons/titlebar/close_focus.png
new file mode 100755
index 0000000..221bca0
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/close_focus.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/close_normal.png b/.config/awesome/themes/dremora/icons/titlebar/close_normal.png
new file mode 100755
index 0000000..f923983
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/close_normal.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/floating_focus_active.png b/.config/awesome/themes/dremora/icons/titlebar/floating_focus_active.png
new file mode 100755
index 0000000..d83bd00
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/floating_focus_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/floating_focus_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/floating_focus_inactive.png
new file mode 100755
index 0000000..47f19f6
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/floating_focus_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/floating_normal_active.png b/.config/awesome/themes/dremora/icons/titlebar/floating_normal_active.png
new file mode 100755
index 0000000..b788552
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/floating_normal_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/floating_normal_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/floating_normal_inactive.png
new file mode 100755
index 0000000..4adc5e9
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/floating_normal_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/maximized_focus_active.png b/.config/awesome/themes/dremora/icons/titlebar/maximized_focus_active.png
new file mode 100755
index 0000000..2599cd5
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/maximized_focus_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/maximized_focus_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/maximized_focus_inactive.png
new file mode 100755
index 0000000..bce1d00
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/maximized_focus_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/maximized_normal_active.png b/.config/awesome/themes/dremora/icons/titlebar/maximized_normal_active.png
new file mode 100755
index 0000000..a5b1d76
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/maximized_normal_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/maximized_normal_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/maximized_normal_inactive.png
new file mode 100755
index 0000000..2e56d32
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/maximized_normal_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/ontop_focus_active.png b/.config/awesome/themes/dremora/icons/titlebar/ontop_focus_active.png
new file mode 100755
index 0000000..ade12fe
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/ontop_focus_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/ontop_focus_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/ontop_focus_inactive.png
new file mode 100755
index 0000000..2f3a2be
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/ontop_focus_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/ontop_normal_active.png b/.config/awesome/themes/dremora/icons/titlebar/ontop_normal_active.png
new file mode 100755
index 0000000..02facc4
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/ontop_normal_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/ontop_normal_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/ontop_normal_inactive.png
new file mode 100755
index 0000000..a9a3206
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/ontop_normal_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/sticky_focus_active.png b/.config/awesome/themes/dremora/icons/titlebar/sticky_focus_active.png
new file mode 100755
index 0000000..ebd45a1
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/sticky_focus_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/sticky_focus_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/sticky_focus_inactive.png
new file mode 100755
index 0000000..5493d8e
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/sticky_focus_inactive.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/sticky_normal_active.png b/.config/awesome/themes/dremora/icons/titlebar/sticky_normal_active.png
new file mode 100755
index 0000000..15f0bc4
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/sticky_normal_active.png differ
diff --git a/.config/awesome/themes/dremora/icons/titlebar/sticky_normal_inactive.png b/.config/awesome/themes/dremora/icons/titlebar/sticky_normal_inactive.png
new file mode 100755
index 0000000..7e6c99b
Binary files /dev/null and b/.config/awesome/themes/dremora/icons/titlebar/sticky_normal_inactive.png differ
diff --git a/.config/awesome/themes/dremora/theme.lua b/.config/awesome/themes/dremora/theme.lua
new file mode 100644
index 0000000..5b84554
--- /dev/null
+++ b/.config/awesome/themes/dremora/theme.lua
@@ -0,0 +1,256 @@
+--[[
+
+ Dremora Awesome WM theme 2.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local os = os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/dremora"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 10.5"
+theme.taglist_font = "Icons 10"
+theme.fg_normal = "#747474"
+theme.fg_focus = "#DDDCFF"
+theme.bg_normal = "#121212"
+theme.bg_focus = "#121212"
+theme.fg_urgent = "#CC9393"
+theme.bg_urgent = "#2A1F1E"
+theme.border_width = dpi(0)
+theme.border_normal = "#121212"
+theme.border_focus = "#292929"
+theme.titlebar_bg_focus = "#292929"
+theme.taglist_fg_focus = "#dddcff"
+theme.taglist_bg_focus = "#121212"
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(130)
+theme.menu_submenu_icon = theme.dir .. "/icons/submenu.png"
+theme.awesome_icon = theme.dir .."/icons/awesome.png"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_sel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.layout_tile = theme.dir .. "/icons/tile.png"
+theme.layout_tileleft = theme.dir .. "/icons/tileleft.png"
+theme.layout_tilebottom = theme.dir .. "/icons/tilebottom.png"
+theme.layout_tiletop = theme.dir .. "/icons/tiletop.png"
+theme.layout_fairv = theme.dir .. "/icons/fairv.png"
+theme.layout_fairh = theme.dir .. "/icons/fairh.png"
+theme.layout_spiral = theme.dir .. "/icons/spiral.png"
+theme.layout_dwindle = theme.dir .. "/icons/dwindle.png"
+theme.layout_max = theme.dir .. "/icons/max.png"
+theme.layout_fullscreen = theme.dir .. "/icons/fullscreen.png"
+theme.layout_magnifier = theme.dir .. "/icons/magnifier.png"
+theme.layout_floating = theme.dir .. "/icons/floating.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = dpi(10)
+theme.titlebar_close_button_focus = theme.dir .. "/icons/titlebar/close_focus.png"
+theme.titlebar_close_button_normal = theme.dir .. "/icons/titlebar/close_normal.png"
+theme.titlebar_ontop_button_focus_active = theme.dir .. "/icons/titlebar/ontop_focus_active.png"
+theme.titlebar_ontop_button_normal_active = theme.dir .. "/icons/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_inactive = theme.dir .. "/icons/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_inactive = theme.dir .. "/icons/titlebar/ontop_normal_inactive.png"
+theme.titlebar_sticky_button_focus_active = theme.dir .. "/icons/titlebar/sticky_focus_active.png"
+theme.titlebar_sticky_button_normal_active = theme.dir .. "/icons/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_inactive = theme.dir .. "/icons/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_inactive = theme.dir .. "/icons/titlebar/sticky_normal_inactive.png"
+theme.titlebar_floating_button_focus_active = theme.dir .. "/icons/titlebar/floating_focus_active.png"
+theme.titlebar_floating_button_normal_active = theme.dir .. "/icons/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_inactive = theme.dir .. "/icons/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_inactive = theme.dir .. "/icons/titlebar/floating_normal_inactive.png"
+theme.titlebar_maximized_button_focus_active = theme.dir .. "/icons/titlebar/maximized_focus_active.png"
+theme.titlebar_maximized_button_normal_active = theme.dir .. "/icons/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_inactive = theme.dir .. "/icons/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_inactive = theme.dir .. "/icons/titlebar/maximized_normal_inactive.png"
+
+awful.util.tagnames = { "ƀ", "Ƅ", "Ɗ", "ƈ", "ƙ" }
+
+local markup = lain.util.markup
+local separators = lain.util.separators
+local white = theme.fg_focus
+local gray = "#858585"
+
+-- Textclock
+local mytextclock = wibox.widget.textclock(markup(gray, " %a")
+.. markup(white, " %d ") .. markup(gray, "%b ") .. markup(white, "%H:%M "))
+mytextclock.font = theme.font
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ font = "Terminus 11",
+ fg = white,
+ bg = theme.bg_normal
+}})
+
+-- Mail IMAP check
+--[[ to be set before use
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ notification_preset = { fg = white }
+ settings = function()
+ mail = ""
+ count = ""
+
+ if mailcount > 0 then
+ mail = "Mail "
+ count = mailcount .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, mail) .. markup(white, count)))
+ end
+})
+--]]
+
+-- MPD
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ mpd_notification_preset.fg = white
+ artist = mpd_now.artist .. " "
+ title = mpd_now.title .. " "
+
+ if mpd_now.state == "pause" then
+ artist = "mpd "
+ title = "paused "
+ elseif mpd_now.state == "stop" then
+ artist = ""
+ title = ""
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, artist) .. markup(white, title)))
+ end
+})
+
+-- /home fs
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ notification_preset = { fg = white, bg = theme.bg_normal, font = "Terminus 10.5" },
+ settings = function()
+ fs_header = ""
+ fs_p = ""
+
+ if fs_now["/home"].percentage >= 90 then
+ fs_header = " Hdd "
+ fs_p = fs_now["/home"].percentage
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, fs_header) .. markup(white, fs_p)))
+ end
+})
+--]]
+
+-- Battery
+local bat = lain.widget.bat({
+ settings = function()
+ bat_header = " Bat "
+ bat_p = bat_now.perc .. " "
+ widget:set_markup(markup.font(theme.font, markup(gray, bat_header) .. markup(white, bat_p)))
+ end
+})
+
+-- ALSA volume
+theme.volume = lain.widget.alsa({
+ --togglechannel = "IEC958,3",
+ settings = function()
+ header = " Vol "
+ vlevel = volume_now.level
+
+ if volume_now.status == "off" then
+ vlevel = vlevel .. "M "
+ else
+ vlevel = vlevel .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, header) .. markup(white, vlevel)))
+ end
+})
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ --APPID =
+ city_id = 2643743, -- placeholder (London)
+ notification_preset = { fg = white }
+})
+--]]
+
+-- Separators
+local first = wibox.widget.textbox(' ')
+local arrl_pre = separators.arrow_right("alpha", "#1A1A1A")
+local arrl_post = separators.arrow_right("#1A1A1A", "alpha")
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(18), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ first,
+ s.mytaglist,
+ arrl_pre,
+ s.mylayoutbox,
+ arrl_post,
+ s.mypromptbox,
+ first,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ first,
+ theme.mpd.widget,
+ --theme.mail.widget,
+ --theme.fs.widget,
+ bat.widget,
+ theme.volume.widget,
+ mytextclock,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/dremora/wall.png b/.config/awesome/themes/dremora/wall.png
new file mode 100755
index 0000000..4501b60
Binary files /dev/null and b/.config/awesome/themes/dremora/wall.png differ
diff --git a/.config/awesome/themes/holo/icons/awesome_icon.png b/.config/awesome/themes/holo/icons/awesome_icon.png
new file mode 100755
index 0000000..ae13162
Binary files /dev/null and b/.config/awesome/themes/holo/icons/awesome_icon.png differ
diff --git a/.config/awesome/themes/holo/icons/awesome_icon_white.png b/.config/awesome/themes/holo/icons/awesome_icon_white.png
new file mode 100755
index 0000000..1b0de6e
Binary files /dev/null and b/.config/awesome/themes/holo/icons/awesome_icon_white.png differ
diff --git a/.config/awesome/themes/holo/icons/bar.png b/.config/awesome/themes/holo/icons/bar.png
new file mode 100755
index 0000000..767885c
Binary files /dev/null and b/.config/awesome/themes/holo/icons/bar.png differ
diff --git a/.config/awesome/themes/holo/icons/bottom_bar.png b/.config/awesome/themes/holo/icons/bottom_bar.png
new file mode 100755
index 0000000..076ad3b
Binary files /dev/null and b/.config/awesome/themes/holo/icons/bottom_bar.png differ
diff --git a/.config/awesome/themes/holo/icons/cal.png b/.config/awesome/themes/holo/icons/cal.png
new file mode 100755
index 0000000..1b023ec
Binary files /dev/null and b/.config/awesome/themes/holo/icons/cal.png differ
diff --git a/.config/awesome/themes/holo/icons/clock.png b/.config/awesome/themes/holo/icons/clock.png
new file mode 100755
index 0000000..6b2c4e5
Binary files /dev/null and b/.config/awesome/themes/holo/icons/clock.png differ
diff --git a/.config/awesome/themes/holo/icons/cpu.png b/.config/awesome/themes/holo/icons/cpu.png
new file mode 100755
index 0000000..1ce87eb
Binary files /dev/null and b/.config/awesome/themes/holo/icons/cpu.png differ
diff --git a/.config/awesome/themes/holo/icons/dwindle.png b/.config/awesome/themes/holo/icons/dwindle.png
new file mode 100755
index 0000000..f68b484
Binary files /dev/null and b/.config/awesome/themes/holo/icons/dwindle.png differ
diff --git a/.config/awesome/themes/holo/icons/fairh.png b/.config/awesome/themes/holo/icons/fairh.png
new file mode 100755
index 0000000..c7e5e6d
Binary files /dev/null and b/.config/awesome/themes/holo/icons/fairh.png differ
diff --git a/.config/awesome/themes/holo/icons/fairv.png b/.config/awesome/themes/holo/icons/fairv.png
new file mode 100755
index 0000000..d416b9d
Binary files /dev/null and b/.config/awesome/themes/holo/icons/fairv.png differ
diff --git a/.config/awesome/themes/holo/icons/floating.png b/.config/awesome/themes/holo/icons/floating.png
new file mode 100755
index 0000000..b91cd07
Binary files /dev/null and b/.config/awesome/themes/holo/icons/floating.png differ
diff --git a/.config/awesome/themes/holo/icons/magnifier.png b/.config/awesome/themes/holo/icons/magnifier.png
new file mode 100755
index 0000000..e1f744e
Binary files /dev/null and b/.config/awesome/themes/holo/icons/magnifier.png differ
diff --git a/.config/awesome/themes/holo/icons/max.png b/.config/awesome/themes/holo/icons/max.png
new file mode 100755
index 0000000..50d3994
Binary files /dev/null and b/.config/awesome/themes/holo/icons/max.png differ
diff --git a/.config/awesome/themes/holo/icons/mpd.png b/.config/awesome/themes/holo/icons/mpd.png
new file mode 100755
index 0000000..efa8ec3
Binary files /dev/null and b/.config/awesome/themes/holo/icons/mpd.png differ
diff --git a/.config/awesome/themes/holo/icons/net_down.png b/.config/awesome/themes/holo/icons/net_down.png
new file mode 100755
index 0000000..d5075a1
Binary files /dev/null and b/.config/awesome/themes/holo/icons/net_down.png differ
diff --git a/.config/awesome/themes/holo/icons/net_up.png b/.config/awesome/themes/holo/icons/net_up.png
new file mode 100755
index 0000000..66dfb54
Binary files /dev/null and b/.config/awesome/themes/holo/icons/net_up.png differ
diff --git a/.config/awesome/themes/holo/icons/next.png b/.config/awesome/themes/holo/icons/next.png
new file mode 100755
index 0000000..148ce90
Binary files /dev/null and b/.config/awesome/themes/holo/icons/next.png differ
diff --git a/.config/awesome/themes/holo/icons/pause.png b/.config/awesome/themes/holo/icons/pause.png
new file mode 100755
index 0000000..9e9bc3f
Binary files /dev/null and b/.config/awesome/themes/holo/icons/pause.png differ
diff --git a/.config/awesome/themes/holo/icons/play.png b/.config/awesome/themes/holo/icons/play.png
new file mode 100755
index 0000000..1949983
Binary files /dev/null and b/.config/awesome/themes/holo/icons/play.png differ
diff --git a/.config/awesome/themes/holo/icons/prev.png b/.config/awesome/themes/holo/icons/prev.png
new file mode 100755
index 0000000..d913bba
Binary files /dev/null and b/.config/awesome/themes/holo/icons/prev.png differ
diff --git a/.config/awesome/themes/holo/icons/spiral.png b/.config/awesome/themes/holo/icons/spiral.png
new file mode 100755
index 0000000..ebb7bb3
Binary files /dev/null and b/.config/awesome/themes/holo/icons/spiral.png differ
diff --git a/.config/awesome/themes/holo/icons/spr_bottom_right.png b/.config/awesome/themes/holo/icons/spr_bottom_right.png
new file mode 100755
index 0000000..d702f98
Binary files /dev/null and b/.config/awesome/themes/holo/icons/spr_bottom_right.png differ
diff --git a/.config/awesome/themes/holo/icons/spr_left.png b/.config/awesome/themes/holo/icons/spr_left.png
new file mode 100755
index 0000000..44822ed
Binary files /dev/null and b/.config/awesome/themes/holo/icons/spr_left.png differ
diff --git a/.config/awesome/themes/holo/icons/spr_right.png b/.config/awesome/themes/holo/icons/spr_right.png
new file mode 100755
index 0000000..5cca795
Binary files /dev/null and b/.config/awesome/themes/holo/icons/spr_right.png differ
diff --git a/.config/awesome/themes/holo/icons/spr_small.png b/.config/awesome/themes/holo/icons/spr_small.png
new file mode 100755
index 0000000..16492a8
Binary files /dev/null and b/.config/awesome/themes/holo/icons/spr_small.png differ
diff --git a/.config/awesome/themes/holo/icons/spr_very_small.png b/.config/awesome/themes/holo/icons/spr_very_small.png
new file mode 100755
index 0000000..8b9a227
Binary files /dev/null and b/.config/awesome/themes/holo/icons/spr_very_small.png differ
diff --git a/.config/awesome/themes/holo/icons/square_sel.png b/.config/awesome/themes/holo/icons/square_sel.png
new file mode 100755
index 0000000..73fb845
Binary files /dev/null and b/.config/awesome/themes/holo/icons/square_sel.png differ
diff --git a/.config/awesome/themes/holo/icons/square_unsel.png b/.config/awesome/themes/holo/icons/square_unsel.png
new file mode 100755
index 0000000..07dd9f0
Binary files /dev/null and b/.config/awesome/themes/holo/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/holo/icons/stop.png b/.config/awesome/themes/holo/icons/stop.png
new file mode 100755
index 0000000..bfc819c
Binary files /dev/null and b/.config/awesome/themes/holo/icons/stop.png differ
diff --git a/.config/awesome/themes/holo/icons/tile.png b/.config/awesome/themes/holo/icons/tile.png
new file mode 100755
index 0000000..e2e52bb
Binary files /dev/null and b/.config/awesome/themes/holo/icons/tile.png differ
diff --git a/.config/awesome/themes/holo/icons/tilebottom.png b/.config/awesome/themes/holo/icons/tilebottom.png
new file mode 100755
index 0000000..439f528
Binary files /dev/null and b/.config/awesome/themes/holo/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/holo/icons/tileleft.png b/.config/awesome/themes/holo/icons/tileleft.png
new file mode 100755
index 0000000..827e0d1
Binary files /dev/null and b/.config/awesome/themes/holo/icons/tileleft.png differ
diff --git a/.config/awesome/themes/holo/icons/tiletop.png b/.config/awesome/themes/holo/icons/tiletop.png
new file mode 100755
index 0000000..7139846
Binary files /dev/null and b/.config/awesome/themes/holo/icons/tiletop.png differ
diff --git a/.config/awesome/themes/holo/theme.lua b/.config/awesome/themes/holo/theme.lua
new file mode 100644
index 0000000..75a7b48
--- /dev/null
+++ b/.config/awesome/themes/holo/theme.lua
@@ -0,0 +1,393 @@
+--[[
+
+ Holo Awesome WM theme 3.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local string, os = string, os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.default_dir = require("awful.util").get_themes_dir() .. "default"
+theme.icon_dir = os.getenv("HOME") .. "/.config/awesome/themes/holo/icons"
+theme.wallpaper = os.getenv("HOME") .. "/.config/awesome/themes/holo/wall.png"
+theme.font = "Roboto Bold 10"
+theme.taglist_font = "Roboto Condensed Regular 8"
+theme.fg_normal = "#FFFFFF"
+theme.fg_focus = "#0099CC"
+theme.bg_focus = "#303030"
+theme.bg_normal = "#242424"
+theme.fg_urgent = "#CC9393"
+theme.bg_urgent = "#006B8E"
+theme.border_width = dpi(3)
+theme.border_normal = "#252525"
+theme.border_focus = "#0099CC"
+theme.taglist_fg_focus = "#FFFFFF"
+theme.tasklist_bg_normal = "#222222"
+theme.tasklist_fg_focus = "#4CB7DB"
+theme.menu_height = dpi(20)
+theme.menu_width = dpi(160)
+theme.menu_icon_size = dpi(32)
+theme.awesome_icon = theme.icon_dir .. "/awesome_icon_white.png"
+theme.awesome_icon_launcher = theme.icon_dir .. "/awesome_icon.png"
+theme.taglist_squares_sel = theme.icon_dir .. "/square_sel.png"
+theme.taglist_squares_unsel = theme.icon_dir .. "/square_unsel.png"
+theme.spr_small = theme.icon_dir .. "/spr_small.png"
+theme.spr_very_small = theme.icon_dir .. "/spr_very_small.png"
+theme.spr_right = theme.icon_dir .. "/spr_right.png"
+theme.spr_bottom_right = theme.icon_dir .. "/spr_bottom_right.png"
+theme.spr_left = theme.icon_dir .. "/spr_left.png"
+theme.bar = theme.icon_dir .. "/bar.png"
+theme.bottom_bar = theme.icon_dir .. "/bottom_bar.png"
+theme.mpdl = theme.icon_dir .. "/mpd.png"
+theme.mpd_on = theme.icon_dir .. "/mpd_on.png"
+theme.prev = theme.icon_dir .. "/prev.png"
+theme.nex = theme.icon_dir .. "/next.png"
+theme.stop = theme.icon_dir .. "/stop.png"
+theme.pause = theme.icon_dir .. "/pause.png"
+theme.play = theme.icon_dir .. "/play.png"
+theme.clock = theme.icon_dir .. "/clock.png"
+theme.calendar = theme.icon_dir .. "/cal.png"
+theme.cpu = theme.icon_dir .. "/cpu.png"
+theme.net_up = theme.icon_dir .. "/net_up.png"
+theme.net_down = theme.icon_dir .. "/net_down.png"
+theme.layout_tile = theme.icon_dir .. "/tile.png"
+theme.layout_tileleft = theme.icon_dir .. "/tileleft.png"
+theme.layout_tilebottom = theme.icon_dir .. "/tilebottom.png"
+theme.layout_tiletop = theme.icon_dir .. "/tiletop.png"
+theme.layout_fairv = theme.icon_dir .. "/fairv.png"
+theme.layout_fairh = theme.icon_dir .. "/fairh.png"
+theme.layout_spiral = theme.icon_dir .. "/spiral.png"
+theme.layout_dwindle = theme.icon_dir .. "/dwindle.png"
+theme.layout_max = theme.icon_dir .. "/max.png"
+theme.layout_fullscreen = theme.icon_dir .. "/fullscreen.png"
+theme.layout_magnifier = theme.icon_dir .. "/magnifier.png"
+theme.layout_floating = theme.icon_dir .. "/floating.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = dpi(4)
+theme.titlebar_close_button_normal = theme.default_dir.."/titlebar/close_normal.png"
+theme.titlebar_close_button_focus = theme.default_dir.."/titlebar/close_focus.png"
+theme.titlebar_minimize_button_normal = theme.default_dir.."/titlebar/minimize_normal.png"
+theme.titlebar_minimize_button_focus = theme.default_dir.."/titlebar/minimize_focus.png"
+theme.titlebar_ontop_button_normal_inactive = theme.default_dir.."/titlebar/ontop_normal_inactive.png"
+theme.titlebar_ontop_button_focus_inactive = theme.default_dir.."/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_active = theme.default_dir.."/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_active = theme.default_dir.."/titlebar/ontop_focus_active.png"
+theme.titlebar_sticky_button_normal_inactive = theme.default_dir.."/titlebar/sticky_normal_inactive.png"
+theme.titlebar_sticky_button_focus_inactive = theme.default_dir.."/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_active = theme.default_dir.."/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_active = theme.default_dir.."/titlebar/sticky_focus_active.png"
+theme.titlebar_floating_button_normal_inactive = theme.default_dir.."/titlebar/floating_normal_inactive.png"
+theme.titlebar_floating_button_focus_inactive = theme.default_dir.."/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_active = theme.default_dir.."/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_active = theme.default_dir.."/titlebar/floating_focus_active.png"
+theme.titlebar_maximized_button_normal_inactive = theme.default_dir.."/titlebar/maximized_normal_inactive.png"
+theme.titlebar_maximized_button_focus_inactive = theme.default_dir.."/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_active = theme.default_dir.."/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_active = theme.default_dir.."/titlebar/maximized_focus_active.png"
+
+theme.musicplr = string.format("%s -e ncmpcpp", awful.util.terminal)
+
+local markup = lain.util.markup
+local blue = "#80CCE6"
+local space3 = markup.font("Roboto 3", " ")
+
+-- Clock
+local mytextclock = wibox.widget.textclock(markup("#FFFFFF", space3 .. "%H:%M " .. markup.font("Roboto 4", " ")))
+mytextclock.font = theme.font
+local clock_icon = wibox.widget.imagebox(theme.clock)
+local clockbg = wibox.container.background(mytextclock, theme.bg_focus, gears.shape.rectangle)
+local clockwidget = wibox.container.margin(clockbg, dpi(0), dpi(3), dpi(5), dpi(5))
+
+-- Calendar
+local mytextcalendar = wibox.widget.textclock(markup.fontfg(theme.font, "#FFFFFF", space3 .. "%d %b " .. markup.font("Roboto 5", " ")))
+local calendar_icon = wibox.widget.imagebox(theme.calendar)
+local calbg = wibox.container.background(mytextcalendar, theme.bg_focus, gears.shape.rectangle)
+local calendarwidget = wibox.container.margin(calbg, dpi(0), dpi(0), dpi(5), dpi(5))
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock, mytextcalendar },
+ notification_preset = {
+ fg = "#FFFFFF",
+ bg = theme.bg_normal,
+ position = "bottom_right",
+ font = "Monospace 10"
+ }
+})
+
+-- Mail IMAP check
+--[[ to be set before use
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ mail_notification_preset.fg = "#FFFFFF"
+ mail = ""
+ count = ""
+
+ if mailcount > 0 then
+ mail = "Mail "
+ count = mailcount .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(blue, mail) .. markup("#FFFFFF", count)))
+ end
+})
+--]]
+
+-- MPD
+local mpd_icon = awful.widget.launcher({ image = theme.mpdl, command = theme.musicplr })
+local prev_icon = wibox.widget.imagebox(theme.prev)
+local next_icon = wibox.widget.imagebox(theme.nex)
+local stop_icon = wibox.widget.imagebox(theme.stop)
+local pause_icon = wibox.widget.imagebox(theme.pause)
+local play_pause_icon = wibox.widget.imagebox(theme.play)
+theme.mpd = lain.widget.mpd({
+ settings = function ()
+ if mpd_now.state == "play" then
+ mpd_now.artist = mpd_now.artist:upper():gsub("&.-;", string.lower)
+ mpd_now.title = mpd_now.title:upper():gsub("&.-;", string.lower)
+ widget:set_markup(markup.font("Roboto 4", " ")
+ .. markup.font(theme.taglist_font,
+ " " .. mpd_now.artist
+ .. " - " ..
+ mpd_now.title .. " ") .. markup.font("Roboto 5", " "))
+ play_pause_icon:set_image(theme.pause)
+ elseif mpd_now.state == "pause" then
+ widget:set_markup(markup.font("Roboto 4", " ") ..
+ markup.font(theme.taglist_font, " MPD PAUSED ") ..
+ markup.font("Roboto 5", " "))
+ play_pause_icon:set_image(theme.play)
+ else
+ widget:set_markup("")
+ play_pause_icon:set_image(theme.play)
+ end
+ end
+})
+local musicbg = wibox.container.background(theme.mpd.widget, theme.bg_focus, gears.shape.rectangle)
+local musicwidget = wibox.container.margin(musicbg, dpi(0), dpi(0), dpi(5), dpi(5))
+
+musicwidget:buttons(my_table.join(awful.button({ }, 1,
+function () awful.spawn(theme.musicplr) end)))
+prev_icon:buttons(my_table.join(awful.button({}, 1,
+function ()
+ os.execute("mpc prev")
+ theme.mpd.update()
+end)))
+next_icon:buttons(my_table.join(awful.button({}, 1,
+function ()
+ os.execute("mpc next")
+ theme.mpd.update()
+end)))
+stop_icon:buttons(my_table.join(awful.button({}, 1,
+function ()
+ play_pause_icon:set_image(theme.play)
+ os.execute("mpc stop")
+ theme.mpd.update()
+end)))
+play_pause_icon:buttons(my_table.join(awful.button({}, 1,
+function ()
+ os.execute("mpc toggle")
+ theme.mpd.update()
+end)))
+
+-- Battery
+local bat = lain.widget.bat({
+ settings = function()
+ bat_header = " Bat "
+ bat_p = bat_now.perc .. " "
+ if bat_now.ac_status == 1 then
+ bat_p = bat_p .. "Plugged "
+ end
+ widget:set_markup(markup.font(theme.font, markup(blue, bat_header) .. bat_p))
+ end
+})
+
+-- / fs
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ notification_preset = { bg = theme.bg_normal, font = "Monospace 9" },
+})
+--]]
+
+-- ALSA volume bar
+theme.volume = lain.widget.alsabar({
+ notification_preset = { font = "Monospace 9"},
+ --togglechannel = "IEC958,3",
+ width = dpi(80), height = dpi(10), border_width = dpi(0),
+ colors = {
+ background = "#383838",
+ unmute = "#80CCE6",
+ mute = "#FF9F9F"
+ },
+})
+theme.volume.bar.paddings = dpi(0)
+theme.volume.bar.margins = dpi(5)
+local volumewidget = wibox.container.background(theme.volume.bar, theme.bg_focus, gears.shape.rectangle)
+volumewidget = wibox.container.margin(volumewidget, dpi(0), dpi(0), dpi(5), dpi(5))
+
+-- CPU
+local cpu_icon = wibox.widget.imagebox(theme.cpu)
+local cpu = lain.widget.cpu({
+ settings = function()
+ widget:set_markup(space3 .. markup.font(theme.font, "CPU " .. cpu_now.usage
+ .. "% ") .. markup.font("Roboto 5", " "))
+ end
+})
+local cpubg = wibox.container.background(cpu.widget, theme.bg_focus, gears.shape.rectangle)
+local cpuwidget = wibox.container.margin(cpubg, dpi(0), dpi(0), dpi(5), dpi(5))
+
+-- Net
+local netdown_icon = wibox.widget.imagebox(theme.net_down)
+local netup_icon = wibox.widget.imagebox(theme.net_up)
+local net = lain.widget.net({
+ settings = function()
+ widget:set_markup(markup.font("Roboto 1", " ") .. markup.font(theme.font, net_now.received .. " - "
+ .. net_now.sent) .. markup.font("Roboto 2", " "))
+ end
+})
+local netbg = wibox.container.background(net.widget, theme.bg_focus, gears.shape.rectangle)
+local networkwidget = wibox.container.margin(netbg, dpi(0), dpi(0), dpi(5), dpi(5))
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ --APPID =
+ city_id = 2643743, -- placeholder (London)
+ notification_preset = { font = "Monospace 9", position = "bottom_right" },
+})
+--]]
+
+-- Launcher
+local mylauncher = awful.widget.button({ image = theme.awesome_icon_launcher })
+mylauncher:connect_signal("button::press", function() awful.util.mymainmenu:toggle() end)
+
+-- Separators
+local first = wibox.widget.textbox(' ')
+local spr_small = wibox.widget.imagebox(theme.spr_small)
+local spr_very_small = wibox.widget.imagebox(theme.spr_very_small)
+local spr_right = wibox.widget.imagebox(theme.spr_right)
+local spr_bottom_right = wibox.widget.imagebox(theme.spr_bottom_right)
+local spr_left = wibox.widget.imagebox(theme.spr_left)
+local bar = wibox.widget.imagebox(theme.bar)
+local bottom_bar = wibox.widget.imagebox(theme.bottom_bar)
+
+local barcolor = gears.color({
+ type = "linear",
+ from = { dpi(32), 0 },
+ to = { dpi(32), dpi(32) },
+ stops = { {0, theme.bg_focus}, {0.25, "#505050"}, {1, theme.bg_focus} }
+})
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons, { bg_focus = barcolor })
+
+ mytaglistcont = wibox.container.background(s.mytaglist, theme.bg_focus, gears.shape.rectangle)
+ s.mytag = wibox.container.margin(mytaglistcont, dpi(0), dpi(0), dpi(5), dpi(5))
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons, { bg_focus = theme.bg_focus, shape = gears.shape.rectangle, shape_border_width = 5, shape_border_color = theme.tasklist_bg_normal, align = "center" })
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(32) })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ first,
+ s.mytag,
+ spr_small,
+ s.mylayoutbox,
+ spr_small,
+ s.mypromptbox,
+ },
+ nil, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ --theme.mail.widget,
+ --bat.widget,
+ spr_right,
+ musicwidget,
+ bar,
+ prev_icon,
+ next_icon,
+ stop_icon,
+ play_pause_icon,
+ bar,
+ mpd_icon,
+ bar,
+ spr_very_small,
+ volumewidget,
+ spr_left,
+ },
+ }
+
+ -- Create the bottom wibox
+ s.mybottomwibox = awful.wibar({ position = "bottom", screen = s, border_width = dpi(0), height = dpi(32) })
+ s.borderwibox = awful.wibar({ position = "bottom", screen = s, height = dpi(1), bg = theme.fg_focus, x = dpi(0), y = dpi(33)})
+
+ -- Add widgets to the bottom wibox
+ s.mybottomwibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ mylauncher,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ spr_bottom_right,
+ netdown_icon,
+ networkwidget,
+ netup_icon,
+ bottom_bar,
+ cpu_icon,
+ cpuwidget,
+ bottom_bar,
+ calendar_icon,
+ calendarwidget,
+ bottom_bar,
+ clock_icon,
+ clockwidget,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/holo/wall.png b/.config/awesome/themes/holo/wall.png
new file mode 100755
index 0000000..7ec8009
Binary files /dev/null and b/.config/awesome/themes/holo/wall.png differ
diff --git a/.config/awesome/Hi_Fi_Girl_Remix_by_cycloidbeta.jpg b/.config/awesome/themes/jlj/backgrounds/Hi_Fi_Girl_Remix_by_cycloidbeta.jpg
similarity index 100%
rename from .config/awesome/Hi_Fi_Girl_Remix_by_cycloidbeta.jpg
rename to .config/awesome/themes/jlj/backgrounds/Hi_Fi_Girl_Remix_by_cycloidbeta.jpg
diff --git a/.config/awesome/weeb-shit-2.jpg b/.config/awesome/themes/jlj/backgrounds/weeb-shit-2.jpg
similarity index 100%
rename from .config/awesome/weeb-shit-2.jpg
rename to .config/awesome/themes/jlj/backgrounds/weeb-shit-2.jpg
diff --git a/.config/awesome/demomode.png b/.config/awesome/themes/jlj/icons/demomode.png
similarity index 100%
rename from .config/awesome/demomode.png
rename to .config/awesome/themes/jlj/icons/demomode.png
diff --git a/.config/awesome/gamemode.png b/.config/awesome/themes/jlj/icons/gamemode.png
similarity index 100%
rename from .config/awesome/gamemode.png
rename to .config/awesome/themes/jlj/icons/gamemode.png
diff --git a/.config/awesome/tiny-purple-bat.png b/.config/awesome/themes/jlj/icons/tiny-purple-bat.png
similarity index 100%
rename from .config/awesome/tiny-purple-bat.png
rename to .config/awesome/themes/jlj/icons/tiny-purple-bat.png
diff --git a/.config/awesome/jlj-theme.lua b/.config/awesome/themes/jlj/jlj-theme.lua
similarity index 98%
rename from .config/awesome/jlj-theme.lua
rename to .config/awesome/themes/jlj/jlj-theme.lua
index 8be9889..bab29fe 100644
--- a/.config/awesome/jlj-theme.lua
+++ b/.config/awesome/themes/jlj/jlj-theme.lua
@@ -107,7 +107,7 @@ theme.titlebar_maximized_button_focus_active = themes_path.."default/titlebar/m
-- i edited this thing
theme.wallpaper = "~/network-share/sainthood/homes/josiah/Photos/backgrounds/convenience store [3840x2160].png"
-theme.awesome_icon = "~/.config/awesome/tiny-purple-bat.png"
+theme.awesome_icon = "~/.config/awesome/themes/jlj/icons/tiny-purple-bat.png"
-- You can use your own layout icons like this:
theme.layout_fairh = themes_path.."default/layouts/fairhw.png"
diff --git a/.config/awesome/themes/multicolor/icons/ac.png b/.config/awesome/themes/multicolor/icons/ac.png
new file mode 100755
index 0000000..272b832
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/ac.png differ
diff --git a/.config/awesome/themes/multicolor/icons/bat.png b/.config/awesome/themes/multicolor/icons/bat.png
new file mode 100755
index 0000000..bd63927
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/bat.png differ
diff --git a/.config/awesome/themes/multicolor/icons/clock.png b/.config/awesome/themes/multicolor/icons/clock.png
new file mode 100755
index 0000000..22aef71
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/clock.png differ
diff --git a/.config/awesome/themes/multicolor/icons/cpu.png b/.config/awesome/themes/multicolor/icons/cpu.png
new file mode 100755
index 0000000..e3794ca
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/cpu.png differ
diff --git a/.config/awesome/themes/multicolor/icons/dish.png b/.config/awesome/themes/multicolor/icons/dish.png
new file mode 100755
index 0000000..c71499b
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/dish.png differ
diff --git a/.config/awesome/themes/multicolor/icons/dwindle.png b/.config/awesome/themes/multicolor/icons/dwindle.png
new file mode 100755
index 0000000..94d8382
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/dwindle.png differ
diff --git a/.config/awesome/themes/multicolor/icons/fairh.png b/.config/awesome/themes/multicolor/icons/fairh.png
new file mode 100755
index 0000000..4468efc
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/fairh.png differ
diff --git a/.config/awesome/themes/multicolor/icons/fairv.png b/.config/awesome/themes/multicolor/icons/fairv.png
new file mode 100755
index 0000000..7c8728e
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/fairv.png differ
diff --git a/.config/awesome/themes/multicolor/icons/floating.png b/.config/awesome/themes/multicolor/icons/floating.png
new file mode 100755
index 0000000..7593a2a
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/floating.png differ
diff --git a/.config/awesome/themes/multicolor/icons/fs.png b/.config/awesome/themes/multicolor/icons/fs.png
new file mode 100755
index 0000000..1c1b13e
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/fs.png differ
diff --git a/.config/awesome/themes/multicolor/icons/fullscreen.png b/.config/awesome/themes/multicolor/icons/fullscreen.png
new file mode 100755
index 0000000..f63a69c
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/fullscreen.png differ
diff --git a/.config/awesome/themes/multicolor/icons/magnifier.png b/.config/awesome/themes/multicolor/icons/magnifier.png
new file mode 100755
index 0000000..8819554
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/magnifier.png differ
diff --git a/.config/awesome/themes/multicolor/icons/mail.png b/.config/awesome/themes/multicolor/icons/mail.png
new file mode 100755
index 0000000..25021f5
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/mail.png differ
diff --git a/.config/awesome/themes/multicolor/icons/max.png b/.config/awesome/themes/multicolor/icons/max.png
new file mode 100755
index 0000000..4b6a8c3
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/max.png differ
diff --git a/.config/awesome/themes/multicolor/icons/mem.png b/.config/awesome/themes/multicolor/icons/mem.png
new file mode 100755
index 0000000..d04ee11
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/mem.png differ
diff --git a/.config/awesome/themes/multicolor/icons/net_down.png b/.config/awesome/themes/multicolor/icons/net_down.png
new file mode 100755
index 0000000..09433b1
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/net_down.png differ
diff --git a/.config/awesome/themes/multicolor/icons/net_up.png b/.config/awesome/themes/multicolor/icons/net_up.png
new file mode 100755
index 0000000..395d014
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/net_up.png differ
diff --git a/.config/awesome/themes/multicolor/icons/note.png b/.config/awesome/themes/multicolor/icons/note.png
new file mode 100755
index 0000000..2f41eb3
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/note.png differ
diff --git a/.config/awesome/themes/multicolor/icons/note_on.png b/.config/awesome/themes/multicolor/icons/note_on.png
new file mode 100755
index 0000000..264d2c8
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/note_on.png differ
diff --git a/.config/awesome/themes/multicolor/icons/spiral.png b/.config/awesome/themes/multicolor/icons/spiral.png
new file mode 100755
index 0000000..6a1ebf1
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/spiral.png differ
diff --git a/.config/awesome/themes/multicolor/icons/spkr.png b/.config/awesome/themes/multicolor/icons/spkr.png
new file mode 100755
index 0000000..80c20b0
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/spkr.png differ
diff --git a/.config/awesome/themes/multicolor/icons/square_a.png b/.config/awesome/themes/multicolor/icons/square_a.png
new file mode 100755
index 0000000..1774d95
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/square_a.png differ
diff --git a/.config/awesome/themes/multicolor/icons/square_b.png b/.config/awesome/themes/multicolor/icons/square_b.png
new file mode 100755
index 0000000..b47e9f3
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/square_b.png differ
diff --git a/.config/awesome/themes/multicolor/icons/submenu.png b/.config/awesome/themes/multicolor/icons/submenu.png
new file mode 100755
index 0000000..7c81cab
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/submenu.png differ
diff --git a/.config/awesome/themes/multicolor/icons/temp.png b/.config/awesome/themes/multicolor/icons/temp.png
new file mode 100755
index 0000000..6c8f8bd
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/temp.png differ
diff --git a/.config/awesome/themes/multicolor/icons/tile.png b/.config/awesome/themes/multicolor/icons/tile.png
new file mode 100755
index 0000000..64103d9
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/tile.png differ
diff --git a/.config/awesome/themes/multicolor/icons/tilebottom.png b/.config/awesome/themes/multicolor/icons/tilebottom.png
new file mode 100755
index 0000000..9363636
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/multicolor/icons/tileleft.png b/.config/awesome/themes/multicolor/icons/tileleft.png
new file mode 100755
index 0000000..9331898
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/tileleft.png differ
diff --git a/.config/awesome/themes/multicolor/icons/tiletop.png b/.config/awesome/themes/multicolor/icons/tiletop.png
new file mode 100755
index 0000000..1cef886
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/tiletop.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/close_focus.png b/.config/awesome/themes/multicolor/icons/titlebar/close_focus.png
new file mode 100755
index 0000000..cd297db
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/close_focus.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/close_normal.png b/.config/awesome/themes/multicolor/icons/titlebar/close_normal.png
new file mode 100755
index 0000000..5448ed8
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/close_normal.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/floating_focus_active.png b/.config/awesome/themes/multicolor/icons/titlebar/floating_focus_active.png
new file mode 100755
index 0000000..ae5a8e2
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/floating_focus_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/floating_focus_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/floating_focus_inactive.png
new file mode 100755
index 0000000..c54eb0c
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/floating_focus_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/floating_normal_active.png b/.config/awesome/themes/multicolor/icons/titlebar/floating_normal_active.png
new file mode 100755
index 0000000..62342d1
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/floating_normal_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/floating_normal_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/floating_normal_inactive.png
new file mode 100755
index 0000000..e2bbdfa
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/floating_normal_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/maximized_focus_active.png b/.config/awesome/themes/multicolor/icons/titlebar/maximized_focus_active.png
new file mode 100755
index 0000000..957298b
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/maximized_focus_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/maximized_focus_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/maximized_focus_inactive.png
new file mode 100755
index 0000000..1187229
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/maximized_focus_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/maximized_normal_active.png b/.config/awesome/themes/multicolor/icons/titlebar/maximized_normal_active.png
new file mode 100755
index 0000000..a705f81
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/maximized_normal_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/maximized_normal_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/maximized_normal_inactive.png
new file mode 100755
index 0000000..4c1ab1f
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/maximized_normal_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/minimize_focus.png b/.config/awesome/themes/multicolor/icons/titlebar/minimize_focus.png
new file mode 100755
index 0000000..bbe8cff
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/minimize_focus.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/minimize_normal.png b/.config/awesome/themes/multicolor/icons/titlebar/minimize_normal.png
new file mode 100755
index 0000000..36621d0
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/minimize_normal.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/ontop_focus_active.png b/.config/awesome/themes/multicolor/icons/titlebar/ontop_focus_active.png
new file mode 100755
index 0000000..25a3080
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/ontop_focus_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/ontop_focus_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/ontop_focus_inactive.png
new file mode 100755
index 0000000..d3c077a
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/ontop_focus_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/ontop_normal_active.png b/.config/awesome/themes/multicolor/icons/titlebar/ontop_normal_active.png
new file mode 100755
index 0000000..117a203
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/ontop_normal_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/ontop_normal_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/ontop_normal_inactive.png
new file mode 100755
index 0000000..d3a10c8
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/ontop_normal_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/sticky_focus_active.png b/.config/awesome/themes/multicolor/icons/titlebar/sticky_focus_active.png
new file mode 100755
index 0000000..147ce6a
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/sticky_focus_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/sticky_focus_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/sticky_focus_inactive.png
new file mode 100755
index 0000000..396628a
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/sticky_focus_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/sticky_normal_active.png b/.config/awesome/themes/multicolor/icons/titlebar/sticky_normal_active.png
new file mode 100755
index 0000000..bdb5595
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/sticky_normal_active.png differ
diff --git a/.config/awesome/themes/multicolor/icons/titlebar/sticky_normal_inactive.png b/.config/awesome/themes/multicolor/icons/titlebar/sticky_normal_inactive.png
new file mode 100755
index 0000000..a96b9b1
Binary files /dev/null and b/.config/awesome/themes/multicolor/icons/titlebar/sticky_normal_inactive.png differ
diff --git a/.config/awesome/themes/multicolor/theme.lua b/.config/awesome/themes/multicolor/theme.lua
new file mode 100644
index 0000000..f7d62b5
--- /dev/null
+++ b/.config/awesome/themes/multicolor/theme.lua
@@ -0,0 +1,350 @@
+--[[
+
+ Multicolor Awesome WM theme 2.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local os = os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.confdir = os.getenv("HOME") .. "/.config/awesome/themes/multicolor"
+theme.wallpaper = theme.confdir .. "/wall.png"
+theme.font = "Terminus 8"
+theme.menu_bg_normal = "#000000"
+theme.menu_bg_focus = "#000000"
+theme.bg_normal = "#000000"
+theme.bg_focus = "#000000"
+theme.bg_urgent = "#000000"
+theme.fg_normal = "#aaaaaa"
+theme.fg_focus = "#ff8c00"
+theme.fg_urgent = "#af1d18"
+theme.fg_minimize = "#ffffff"
+theme.border_width = dpi(1)
+theme.border_normal = "#1c2022"
+theme.border_focus = "#606060"
+theme.border_marked = "#3ca4d8"
+theme.menu_border_width = 0
+theme.menu_width = dpi(130)
+theme.menu_submenu_icon = theme.confdir .. "/icons/submenu.png"
+theme.menu_fg_normal = "#aaaaaa"
+theme.menu_fg_focus = "#ff8c00"
+theme.menu_bg_normal = "#050505dd"
+theme.menu_bg_focus = "#050505dd"
+theme.widget_temp = theme.confdir .. "/icons/temp.png"
+theme.widget_uptime = theme.confdir .. "/icons/ac.png"
+theme.widget_cpu = theme.confdir .. "/icons/cpu.png"
+theme.widget_weather = theme.confdir .. "/icons/dish.png"
+theme.widget_fs = theme.confdir .. "/icons/fs.png"
+theme.widget_mem = theme.confdir .. "/icons/mem.png"
+theme.widget_note = theme.confdir .. "/icons/note.png"
+theme.widget_note_on = theme.confdir .. "/icons/note_on.png"
+theme.widget_netdown = theme.confdir .. "/icons/net_down.png"
+theme.widget_netup = theme.confdir .. "/icons/net_up.png"
+theme.widget_mail = theme.confdir .. "/icons/mail.png"
+theme.widget_batt = theme.confdir .. "/icons/bat.png"
+theme.widget_clock = theme.confdir .. "/icons/clock.png"
+theme.widget_vol = theme.confdir .. "/icons/spkr.png"
+theme.taglist_squares_sel = theme.confdir .. "/icons/square_a.png"
+theme.taglist_squares_unsel = theme.confdir .. "/icons/square_b.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = 0
+theme.layout_tile = theme.confdir .. "/icons/tile.png"
+theme.layout_tilegaps = theme.confdir .. "/icons/tilegaps.png"
+theme.layout_tileleft = theme.confdir .. "/icons/tileleft.png"
+theme.layout_tilebottom = theme.confdir .. "/icons/tilebottom.png"
+theme.layout_tiletop = theme.confdir .. "/icons/tiletop.png"
+theme.layout_fairv = theme.confdir .. "/icons/fairv.png"
+theme.layout_fairh = theme.confdir .. "/icons/fairh.png"
+theme.layout_spiral = theme.confdir .. "/icons/spiral.png"
+theme.layout_dwindle = theme.confdir .. "/icons/dwindle.png"
+theme.layout_max = theme.confdir .. "/icons/max.png"
+theme.layout_fullscreen = theme.confdir .. "/icons/fullscreen.png"
+theme.layout_magnifier = theme.confdir .. "/icons/magnifier.png"
+theme.layout_floating = theme.confdir .. "/icons/floating.png"
+theme.titlebar_close_button_normal = theme.confdir .. "/icons/titlebar/close_normal.png"
+theme.titlebar_close_button_focus = theme.confdir .. "/icons/titlebar/close_focus.png"
+theme.titlebar_minimize_button_normal = theme.confdir .. "/icons/titlebar/minimize_normal.png"
+theme.titlebar_minimize_button_focus = theme.confdir .. "/icons/titlebar/minimize_focus.png"
+theme.titlebar_ontop_button_normal_inactive = theme.confdir .. "/icons/titlebar/ontop_normal_inactive.png"
+theme.titlebar_ontop_button_focus_inactive = theme.confdir .. "/icons/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_active = theme.confdir .. "/icons/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_active = theme.confdir .. "/icons/titlebar/ontop_focus_active.png"
+theme.titlebar_sticky_button_normal_inactive = theme.confdir .. "/icons/titlebar/sticky_normal_inactive.png"
+theme.titlebar_sticky_button_focus_inactive = theme.confdir .. "/icons/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_active = theme.confdir .. "/icons/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_active = theme.confdir .. "/icons/titlebar/sticky_focus_active.png"
+theme.titlebar_floating_button_normal_inactive = theme.confdir .. "/icons/titlebar/floating_normal_inactive.png"
+theme.titlebar_floating_button_focus_inactive = theme.confdir .. "/icons/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_active = theme.confdir .. "/icons/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_active = theme.confdir .. "/icons/titlebar/floating_focus_active.png"
+theme.titlebar_maximized_button_normal_inactive = theme.confdir .. "/icons/titlebar/maximized_normal_inactive.png"
+theme.titlebar_maximized_button_focus_inactive = theme.confdir .. "/icons/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_active = theme.confdir .. "/icons/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_active = theme.confdir .. "/icons/titlebar/maximized_focus_active.png"
+
+local markup = lain.util.markup
+
+-- Textclock
+os.setlocale(os.getenv("LANG")) -- to localize the clock
+local clockicon = wibox.widget.imagebox(theme.widget_clock)
+local mytextclock = wibox.widget.textclock(markup("#7788af", "%A %d %B ") .. markup("#ab7367", ">") .. markup("#de5e1e", " %H:%M "))
+mytextclock.font = theme.font
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ font = "Terminus 10",
+ fg = theme.fg_normal,
+ bg = theme.bg_normal
+ }
+})
+
+-- Weather
+--[[ to be set before use
+local weathericon = wibox.widget.imagebox(theme.widget_weather)
+theme.weather = lain.widget.weather({
+ city_id = 2643743, -- placeholder (London)
+ notification_preset = { font = "Terminus 10", fg = theme.fg_normal },
+ weather_na_markup = markup.fontfg(theme.font, "#eca4c4", "N/A "),
+ settings = function()
+ descr = weather_now["weather"][1]["description"]:lower()
+ units = math.floor(weather_now["main"]["temp"])
+ widget:set_markup(markup.fontfg(theme.font, "#eca4c4", descr .. " @ " .. units .. "°C "))
+ end
+})
+--]]
+
+-- / fs
+--[[ commented because it needs Gio/Glib >= 2.54
+local fsicon = wibox.widget.imagebox(theme.widget_fs)
+theme.fs = lain.widget.fs({
+ notification_preset = { font = "Terminus 10", fg = theme.fg_normal },
+ settings = function()
+ widget:set_markup(markup.fontfg(theme.font, "#80d9d8", string.format("%.1f", fs_now["/"].percentage) .. "% "))
+ end
+})
+--]]
+
+-- Mail IMAP check
+--[[ to be set before use
+local mailicon = wibox.widget.imagebox()
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ if mailcount > 0 then
+ mailicon:set_image(theme.widget_mail)
+ widget:set_markup(markup.fontfg(theme.font, "#cccccc", mailcount .. " "))
+ else
+ widget:set_text("")
+ --mailicon:set_image() -- not working in 4.0
+ mailicon._private.image = nil
+ mailicon:emit_signal("widget::redraw_needed")
+ mailicon:emit_signal("widget::layout_changed")
+ end
+ end
+})
+--]]
+
+-- CPU
+local cpuicon = wibox.widget.imagebox(theme.widget_cpu)
+local cpu = lain.widget.cpu({
+ settings = function()
+ widget:set_markup(markup.fontfg(theme.font, "#e33a6e", cpu_now.usage .. "% "))
+ end
+})
+
+-- Coretemp
+local tempicon = wibox.widget.imagebox(theme.widget_temp)
+local temp = lain.widget.temp({
+ settings = function()
+ widget:set_markup(markup.fontfg(theme.font, "#f1af5f", coretemp_now .. "°C "))
+ end
+})
+
+-- Battery
+local baticon = wibox.widget.imagebox(theme.widget_batt)
+local bat = lain.widget.bat({
+ settings = function()
+ local perc = bat_now.perc ~= "N/A" and bat_now.perc .. "%" or bat_now.perc
+
+ if bat_now.ac_status == 1 then
+ perc = perc .. " plug"
+ end
+
+ widget:set_markup(markup.fontfg(theme.font, theme.fg_normal, perc .. " "))
+ end
+})
+
+-- ALSA volume
+local volicon = wibox.widget.imagebox(theme.widget_vol)
+theme.volume = lain.widget.alsa({
+ settings = function()
+ if volume_now.status == "off" then
+ volume_now.level = volume_now.level .. "M"
+ end
+
+ widget:set_markup(markup.fontfg(theme.font, "#7493d2", volume_now.level .. "% "))
+ end
+})
+
+-- Net
+local netdownicon = wibox.widget.imagebox(theme.widget_netdown)
+local netdowninfo = wibox.widget.textbox()
+local netupicon = wibox.widget.imagebox(theme.widget_netup)
+local netupinfo = lain.widget.net({
+ settings = function()
+ --[[ uncomment if using the weather widget
+ if iface ~= "network off" and
+ string.match(theme.weather.widget.text, "N/A")
+ then
+ theme.weather.update()
+ end
+ --]]
+
+ widget:set_markup(markup.fontfg(theme.font, "#e54c62", net_now.sent .. " "))
+ netdowninfo:set_markup(markup.fontfg(theme.font, "#87af5f", net_now.received .. " "))
+ end
+})
+
+-- MEM
+local memicon = wibox.widget.imagebox(theme.widget_mem)
+local memory = lain.widget.mem({
+ settings = function()
+ widget:set_markup(markup.fontfg(theme.font, "#e0da37", mem_now.used .. "M "))
+ end
+})
+
+-- MPD
+local mpdicon = wibox.widget.imagebox()
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ mpd_notification_preset = {
+ text = string.format("%s [%s] - %s\n%s", mpd_now.artist,
+ mpd_now.album, mpd_now.date, mpd_now.title)
+ }
+
+ if mpd_now.state == "play" then
+ artist = mpd_now.artist .. " > "
+ title = mpd_now.title .. " "
+ mpdicon:set_image(theme.widget_note_on)
+ elseif mpd_now.state == "pause" then
+ artist = "mpd "
+ title = "paused "
+ else
+ artist = ""
+ title = ""
+ --mpdicon:set_image() -- not working in 4.0
+ mpdicon._private.image = nil
+ mpdicon:emit_signal("widget::redraw_needed")
+ mpdicon:emit_signal("widget::layout_changed")
+ end
+ widget:set_markup(markup.fontfg(theme.font, "#e54c62", artist) .. markup.fontfg(theme.font, "#b2b2b2", title))
+ end
+})
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(19), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ --s.mylayoutbox,
+ s.mytaglist,
+ s.mypromptbox,
+ mpdicon,
+ theme.mpd.widget,
+ },
+ --s.mytasklist, -- Middle widget
+ nil,
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ --mailicon,
+ --theme.mail.widget,
+ netdownicon,
+ netdowninfo,
+ netupicon,
+ netupinfo.widget,
+ volicon,
+ theme.volume.widget,
+ memicon,
+ memory.widget,
+ cpuicon,
+ cpu.widget,
+ --fsicon,
+ --theme.fs.widget,
+ --weathericon,
+ --theme.weather.widget,
+ tempicon,
+ temp.widget,
+ baticon,
+ bat.widget,
+ clockicon,
+ mytextclock,
+ },
+ }
+
+ -- Create the bottom wibox
+ s.mybottomwibox = awful.wibar({ position = "bottom", screen = s, border_width = 0, height = dpi(20), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the bottom wibox
+ s.mybottomwibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ s.mylayoutbox,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/multicolor/wall.png b/.config/awesome/themes/multicolor/wall.png
new file mode 100755
index 0000000..a3188d0
Binary files /dev/null and b/.config/awesome/themes/multicolor/wall.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/ac.png b/.config/awesome/themes/powerarrow-dark/icons/ac.png
new file mode 100755
index 0000000..96efcb4
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/ac.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/battery.png b/.config/awesome/themes/powerarrow-dark/icons/battery.png
new file mode 100755
index 0000000..8c85596
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/battery.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/battery_empty.png b/.config/awesome/themes/powerarrow-dark/icons/battery_empty.png
new file mode 100755
index 0000000..00821c9
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/battery_empty.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/battery_low.png b/.config/awesome/themes/powerarrow-dark/icons/battery_low.png
new file mode 100755
index 0000000..29f3fc5
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/battery_low.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/centerfair.png b/.config/awesome/themes/powerarrow-dark/icons/centerfair.png
new file mode 100755
index 0000000..c4f64b0
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/centerfair.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/centerwork.png b/.config/awesome/themes/powerarrow-dark/icons/centerwork.png
new file mode 100755
index 0000000..9071516
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/centerwork.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/centerworkh.png b/.config/awesome/themes/powerarrow-dark/icons/centerworkh.png
new file mode 100755
index 0000000..b1d1379
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/centerworkh.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/cpu.png b/.config/awesome/themes/powerarrow-dark/icons/cpu.png
new file mode 100755
index 0000000..35af1c3
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/cpu.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/dwindle.png b/.config/awesome/themes/powerarrow-dark/icons/dwindle.png
new file mode 100755
index 0000000..649ea99
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/dwindle.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/fairh.png b/.config/awesome/themes/powerarrow-dark/icons/fairh.png
new file mode 100755
index 0000000..62d3d99
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/fairh.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/fairv.png b/.config/awesome/themes/powerarrow-dark/icons/fairv.png
new file mode 100755
index 0000000..131dd0f
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/fairv.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/floating.png b/.config/awesome/themes/powerarrow-dark/icons/floating.png
new file mode 100755
index 0000000..d25c47b
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/floating.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/hdd.png b/.config/awesome/themes/powerarrow-dark/icons/hdd.png
new file mode 100755
index 0000000..0fb6833
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/hdd.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/magnifier.png b/.config/awesome/themes/powerarrow-dark/icons/magnifier.png
new file mode 100755
index 0000000..60d3e0d
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/magnifier.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/mail.png b/.config/awesome/themes/powerarrow-dark/icons/mail.png
new file mode 100755
index 0000000..474e602
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/mail.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/mail_on.png b/.config/awesome/themes/powerarrow-dark/icons/mail_on.png
new file mode 100755
index 0000000..19106d7
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/mail_on.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/max.png b/.config/awesome/themes/powerarrow-dark/icons/max.png
new file mode 100755
index 0000000..5b0a5b7
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/max.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/mem.png b/.config/awesome/themes/powerarrow-dark/icons/mem.png
new file mode 100755
index 0000000..7860a1a
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/mem.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/net.png b/.config/awesome/themes/powerarrow-dark/icons/net.png
new file mode 100755
index 0000000..bc42fdc
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/net.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/net_wired.png b/.config/awesome/themes/powerarrow-dark/icons/net_wired.png
new file mode 100755
index 0000000..e8cc2bd
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/net_wired.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/note.png b/.config/awesome/themes/powerarrow-dark/icons/note.png
new file mode 100755
index 0000000..baa29c3
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/note.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/note_on.png b/.config/awesome/themes/powerarrow-dark/icons/note_on.png
new file mode 100755
index 0000000..1a7ab94
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/note_on.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/scissors.png b/.config/awesome/themes/powerarrow-dark/icons/scissors.png
new file mode 100755
index 0000000..f8c700d
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/scissors.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/spiral.png b/.config/awesome/themes/powerarrow-dark/icons/spiral.png
new file mode 100755
index 0000000..d9ee0f6
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/spiral.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/square_sel.png b/.config/awesome/themes/powerarrow-dark/icons/square_sel.png
new file mode 100755
index 0000000..1102a9f
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/square_sel.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/square_unsel.png b/.config/awesome/themes/powerarrow-dark/icons/square_unsel.png
new file mode 100755
index 0000000..7386b85
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/submenu.png b/.config/awesome/themes/powerarrow-dark/icons/submenu.png
new file mode 100755
index 0000000..b55ebce
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/submenu.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/task.png b/.config/awesome/themes/powerarrow-dark/icons/task.png
new file mode 100755
index 0000000..9701b68
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/task.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/temp.png b/.config/awesome/themes/powerarrow-dark/icons/temp.png
new file mode 100755
index 0000000..6793a9f
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/temp.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/termfair.png b/.config/awesome/themes/powerarrow-dark/icons/termfair.png
new file mode 100755
index 0000000..3e06023
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/termfair.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/tile.png b/.config/awesome/themes/powerarrow-dark/icons/tile.png
new file mode 100755
index 0000000..922c05c
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/tile.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/tilebottom.png b/.config/awesome/themes/powerarrow-dark/icons/tilebottom.png
new file mode 100755
index 0000000..6ec9cb8
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/tileleft.png b/.config/awesome/themes/powerarrow-dark/icons/tileleft.png
new file mode 100755
index 0000000..8e3d2d6
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/tileleft.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/tiletop.png b/.config/awesome/themes/powerarrow-dark/icons/tiletop.png
new file mode 100755
index 0000000..3da75a1
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/tiletop.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/close_focus.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/close_focus.png
new file mode 100755
index 0000000..b2051b0
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/close_focus.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/close_normal.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/close_normal.png
new file mode 100755
index 0000000..da6028c
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/close_normal.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_focus_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_focus_active.png
new file mode 100755
index 0000000..5fe84c0
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_focus_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_focus_inactive.png
new file mode 100755
index 0000000..47f19f6
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_normal_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_normal_active.png
new file mode 100755
index 0000000..576fa36
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_normal_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_normal_inactive.png
new file mode 100755
index 0000000..4adc5e9
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/floating_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_focus_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_focus_active.png
new file mode 100755
index 0000000..7d9a11a
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_focus_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_focus_inactive.png
new file mode 100755
index 0000000..bce1d00
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_normal_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_normal_active.png
new file mode 100755
index 0000000..9f24945
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_normal_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_normal_inactive.png
new file mode 100755
index 0000000..2e56d32
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/maximized_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_focus_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_focus_active.png
new file mode 100755
index 0000000..41a69e2
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_focus_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_focus_inactive.png
new file mode 100755
index 0000000..2f3a2be
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_normal_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_normal_active.png
new file mode 100755
index 0000000..0f937b7
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_normal_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_normal_inactive.png
new file mode 100755
index 0000000..a9a3206
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/ontop_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_focus_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_focus_active.png
new file mode 100755
index 0000000..a9bc8a2
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_focus_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_focus_inactive.png
new file mode 100755
index 0000000..5493d8e
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_normal_active.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_normal_active.png
new file mode 100755
index 0000000..1e150f5
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_normal_inactive.png b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_normal_inactive.png
new file mode 100755
index 0000000..7e6c99b
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/titlebar/sticky_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/vol.png b/.config/awesome/themes/powerarrow-dark/icons/vol.png
new file mode 100755
index 0000000..bbf33d4
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/vol.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/vol_low.png b/.config/awesome/themes/powerarrow-dark/icons/vol_low.png
new file mode 100755
index 0000000..aa3ce4d
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/vol_low.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/vol_mute.png b/.config/awesome/themes/powerarrow-dark/icons/vol_mute.png
new file mode 100755
index 0000000..e855fd2
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/vol_mute.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/icons/vol_no.png b/.config/awesome/themes/powerarrow-dark/icons/vol_no.png
new file mode 100755
index 0000000..bbe917b
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/icons/vol_no.png differ
diff --git a/.config/awesome/themes/powerarrow-dark/theme.lua b/.config/awesome/themes/powerarrow-dark/theme.lua
new file mode 100644
index 0000000..f72b3c9
--- /dev/null
+++ b/.config/awesome/themes/powerarrow-dark/theme.lua
@@ -0,0 +1,359 @@
+--[[
+
+ Powerarrow Dark Awesome WM theme
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local os = os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/powerarrow-dark"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 9"
+theme.fg_normal = "#DDDDFF"
+theme.fg_focus = "#EA6F81"
+theme.fg_urgent = "#CC9393"
+theme.bg_normal = "#1A1A1A"
+theme.bg_focus = "#313131"
+theme.bg_urgent = "#1A1A1A"
+theme.border_width = dpi(1)
+theme.border_normal = "#3F3F3F"
+theme.border_focus = "#7F7F7F"
+theme.border_marked = "#CC9393"
+theme.tasklist_bg_focus = "#1A1A1A"
+theme.titlebar_bg_focus = theme.bg_focus
+theme.titlebar_bg_normal = theme.bg_normal
+theme.titlebar_fg_focus = theme.fg_focus
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(140)
+theme.menu_submenu_icon = theme.dir .. "/icons/submenu.png"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_sel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.layout_tile = theme.dir .. "/icons/tile.png"
+theme.layout_tileleft = theme.dir .. "/icons/tileleft.png"
+theme.layout_tilebottom = theme.dir .. "/icons/tilebottom.png"
+theme.layout_tiletop = theme.dir .. "/icons/tiletop.png"
+theme.layout_fairv = theme.dir .. "/icons/fairv.png"
+theme.layout_fairh = theme.dir .. "/icons/fairh.png"
+theme.layout_spiral = theme.dir .. "/icons/spiral.png"
+theme.layout_dwindle = theme.dir .. "/icons/dwindle.png"
+theme.layout_max = theme.dir .. "/icons/max.png"
+theme.layout_fullscreen = theme.dir .. "/icons/fullscreen.png"
+theme.layout_magnifier = theme.dir .. "/icons/magnifier.png"
+theme.layout_floating = theme.dir .. "/icons/floating.png"
+theme.widget_ac = theme.dir .. "/icons/ac.png"
+theme.widget_battery = theme.dir .. "/icons/battery.png"
+theme.widget_battery_low = theme.dir .. "/icons/battery_low.png"
+theme.widget_battery_empty = theme.dir .. "/icons/battery_empty.png"
+theme.widget_mem = theme.dir .. "/icons/mem.png"
+theme.widget_cpu = theme.dir .. "/icons/cpu.png"
+theme.widget_temp = theme.dir .. "/icons/temp.png"
+theme.widget_net = theme.dir .. "/icons/net.png"
+theme.widget_hdd = theme.dir .. "/icons/hdd.png"
+theme.widget_music = theme.dir .. "/icons/note.png"
+theme.widget_music_on = theme.dir .. "/icons/note_on.png"
+theme.widget_vol = theme.dir .. "/icons/vol.png"
+theme.widget_vol_low = theme.dir .. "/icons/vol_low.png"
+theme.widget_vol_no = theme.dir .. "/icons/vol_no.png"
+theme.widget_vol_mute = theme.dir .. "/icons/vol_mute.png"
+theme.widget_mail = theme.dir .. "/icons/mail.png"
+theme.widget_mail_on = theme.dir .. "/icons/mail_on.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = dpi(0)
+theme.titlebar_close_button_focus = theme.dir .. "/icons/titlebar/close_focus.png"
+theme.titlebar_close_button_normal = theme.dir .. "/icons/titlebar/close_normal.png"
+theme.titlebar_ontop_button_focus_active = theme.dir .. "/icons/titlebar/ontop_focus_active.png"
+theme.titlebar_ontop_button_normal_active = theme.dir .. "/icons/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_inactive = theme.dir .. "/icons/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_inactive = theme.dir .. "/icons/titlebar/ontop_normal_inactive.png"
+theme.titlebar_sticky_button_focus_active = theme.dir .. "/icons/titlebar/sticky_focus_active.png"
+theme.titlebar_sticky_button_normal_active = theme.dir .. "/icons/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_inactive = theme.dir .. "/icons/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_inactive = theme.dir .. "/icons/titlebar/sticky_normal_inactive.png"
+theme.titlebar_floating_button_focus_active = theme.dir .. "/icons/titlebar/floating_focus_active.png"
+theme.titlebar_floating_button_normal_active = theme.dir .. "/icons/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_inactive = theme.dir .. "/icons/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_inactive = theme.dir .. "/icons/titlebar/floating_normal_inactive.png"
+theme.titlebar_maximized_button_focus_active = theme.dir .. "/icons/titlebar/maximized_focus_active.png"
+theme.titlebar_maximized_button_normal_active = theme.dir .. "/icons/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_inactive = theme.dir .. "/icons/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_inactive = theme.dir .. "/icons/titlebar/maximized_normal_inactive.png"
+
+local markup = lain.util.markup
+local separators = lain.util.separators
+
+local keyboardlayout = awful.widget.keyboardlayout:new()
+
+-- Textclock
+local clockicon = wibox.widget.imagebox(theme.widget_clock)
+local clock = awful.widget.watch(
+ "date +'%a %d %b %R'", 60,
+ function(widget, stdout)
+ widget:set_markup(" " .. markup.font(theme.font, stdout))
+ end
+)
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { clock },
+ notification_preset = {
+ font = "Terminus 10",
+ fg = theme.fg_normal,
+ bg = theme.bg_normal
+ }
+})
+
+-- Mail IMAP check
+local mailicon = wibox.widget.imagebox(theme.widget_mail)
+--[[ commented because it needs to be set before use
+mailicon:buttons(my_table.join(awful.button({ }, 1, function () awful.spawn(mail) end)))
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ if mailcount > 0 then
+ widget:set_markup(markup.font(theme.font, " " .. mailcount .. " "))
+ mailicon:set_image(theme.widget_mail_on)
+ else
+ widget:set_text("")
+ mailicon:set_image(theme.widget_mail)
+ end
+ end
+})
+--]]
+
+-- MPD
+local musicplr = awful.util.terminal .. " -title Music -e ncmpcpp"
+local mpdicon = wibox.widget.imagebox(theme.widget_music)
+mpdicon:buttons(my_table.join(
+ awful.button({ "Mod4" }, 1, function () awful.spawn(musicplr) end),
+ awful.button({ }, 1, function ()
+ os.execute("mpc prev")
+ theme.mpd.update()
+ end),
+ awful.button({ }, 2, function ()
+ os.execute("mpc toggle")
+ theme.mpd.update()
+ end),
+ awful.button({ }, 3, function ()
+ os.execute("mpc next")
+ theme.mpd.update()
+ end)))
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ if mpd_now.state == "play" then
+ artist = " " .. mpd_now.artist .. " "
+ title = mpd_now.title .. " "
+ mpdicon:set_image(theme.widget_music_on)
+ elseif mpd_now.state == "pause" then
+ artist = " mpd "
+ title = "paused "
+ else
+ artist = ""
+ title = ""
+ mpdicon:set_image(theme.widget_music)
+ end
+
+ widget:set_markup(markup.font(theme.font, markup("#EA6F81", artist) .. title))
+ end
+})
+
+-- MEM
+local memicon = wibox.widget.imagebox(theme.widget_mem)
+local mem = lain.widget.mem({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. mem_now.used .. "MB "))
+ end
+})
+
+-- CPU
+local cpuicon = wibox.widget.imagebox(theme.widget_cpu)
+local cpu = lain.widget.cpu({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. cpu_now.usage .. "% "))
+ end
+})
+
+-- Coretemp
+local tempicon = wibox.widget.imagebox(theme.widget_temp)
+local temp = lain.widget.temp({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. coretemp_now .. "°C "))
+ end
+})
+
+-- / fs
+local fsicon = wibox.widget.imagebox(theme.widget_hdd)
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ notification_preset = { fg = theme.fg_normal, bg = theme.bg_normal, font = "Terminus 10" },
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. fs_now["/"].percentage .. "% "))
+ end
+})
+--]]
+
+-- Battery
+local baticon = wibox.widget.imagebox(theme.widget_battery)
+local bat = lain.widget.bat({
+ settings = function()
+ if bat_now.status and bat_now.status ~= "N/A" then
+ if bat_now.ac_status == 1 then
+ baticon:set_image(theme.widget_ac)
+ elseif not bat_now.perc and tonumber(bat_now.perc) <= 5 then
+ baticon:set_image(theme.widget_battery_empty)
+ elseif not bat_now.perc and tonumber(bat_now.perc) <= 15 then
+ baticon:set_image(theme.widget_battery_low)
+ else
+ baticon:set_image(theme.widget_battery)
+ end
+ widget:set_markup(markup.font(theme.font, " " .. bat_now.perc .. "% "))
+ else
+ widget:set_markup(markup.font(theme.font, " AC "))
+ baticon:set_image(theme.widget_ac)
+ end
+ end
+})
+
+-- ALSA volume
+local volicon = wibox.widget.imagebox(theme.widget_vol)
+theme.volume = lain.widget.alsa({
+ settings = function()
+ if volume_now.status == "off" then
+ volicon:set_image(theme.widget_vol_mute)
+ elseif tonumber(volume_now.level) == 0 then
+ volicon:set_image(theme.widget_vol_no)
+ elseif tonumber(volume_now.level) <= 50 then
+ volicon:set_image(theme.widget_vol_low)
+ else
+ volicon:set_image(theme.widget_vol)
+ end
+
+ widget:set_markup(markup.font(theme.font, " " .. volume_now.level .. "% "))
+ end
+})
+theme.volume.widget:buttons(awful.util.table.join(
+ awful.button({}, 4, function ()
+ awful.util.spawn("amixer set Master 1%+")
+ theme.volume.update()
+ end),
+ awful.button({}, 5, function ()
+ awful.util.spawn("amixer set Master 1%-")
+ theme.volume.update()
+ end)
+))
+
+-- Net
+local neticon = wibox.widget.imagebox(theme.widget_net)
+local net = lain.widget.net({
+ settings = function()
+ widget:set_markup(markup.font(theme.font,
+ markup("#7AC82E", " " .. string.format("%06.1f", net_now.received))
+ .. " " ..
+ markup("#46A8C3", " " .. string.format("%06.1f", net_now.sent) .. " ")))
+ end
+})
+
+-- Separators
+local spr = wibox.widget.textbox(' ')
+local arrl_dl = separators.arrow_left(theme.bg_focus, "alpha")
+local arrl_ld = separators.arrow_left("alpha", theme.bg_focus)
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(18), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ --spr,
+ s.mytaglist,
+ s.mypromptbox,
+ spr,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ keyboardlayout,
+ spr,
+ arrl_ld,
+ wibox.container.background(mpdicon, theme.bg_focus),
+ wibox.container.background(theme.mpd.widget, theme.bg_focus),
+ arrl_dl,
+ volicon,
+ theme.volume.widget,
+ arrl_ld,
+ wibox.container.background(mailicon, theme.bg_focus),
+ --wibox.container.background(theme.mail.widget, theme.bg_focus),
+ arrl_dl,
+ memicon,
+ mem.widget,
+ arrl_ld,
+ wibox.container.background(cpuicon, theme.bg_focus),
+ wibox.container.background(cpu.widget, theme.bg_focus),
+ arrl_dl,
+ tempicon,
+ temp.widget,
+ arrl_ld,
+ wibox.container.background(fsicon, theme.bg_focus),
+ --wibox.container.background(theme.fs.widget, theme.bg_focus),
+ arrl_dl,
+ baticon,
+ bat.widget,
+ arrl_ld,
+ wibox.container.background(neticon, theme.bg_focus),
+ wibox.container.background(net.widget, theme.bg_focus),
+ arrl_dl,
+ clock,
+ spr,
+ arrl_ld,
+ wibox.container.background(s.mylayoutbox, theme.bg_focus),
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/powerarrow-dark/wall.png b/.config/awesome/themes/powerarrow-dark/wall.png
new file mode 100755
index 0000000..9d1118b
Binary files /dev/null and b/.config/awesome/themes/powerarrow-dark/wall.png differ
diff --git a/.config/awesome/themes/powerarrow/binclock.lua b/.config/awesome/themes/powerarrow/binclock.lua
new file mode 100644
index 0000000..68668ea
--- /dev/null
+++ b/.config/awesome/themes/powerarrow/binclock.lua
@@ -0,0 +1,96 @@
+--[[
+
+ Licensed under GNU General Public License v2
+ * (c) 2017, Luca CPZ
+ * (c) 2013, romockee
+
+--]]
+
+local gears = require("gears")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+local date = os.date
+local ipairs = ipairs
+local math = math
+local select = select
+local string = string
+
+local binclock = {}
+
+function binclock.dec2bin(num, bits)
+ local bits, t = bits or select(2, math.frexp(num)), {}
+ for b = bits, 1, -1 do
+ t[b] = math.fmod(num, 2)
+ num = (num - t[b]) / 2
+ end
+ return t
+end
+
+function binclock.paintdot(cr, val, shift)
+ local height = 0
+ for _, bit in ipairs(binclock.dec2bin(val, 4)) do
+ if bit >= 1 then
+ cr:set_source(gears.color(binclock.color_active))
+ else
+ cr:set_source(gears.color(binclock.color_inactive))
+ end
+ cr:rectangle(shift, height, binclock.dotsize, binclock.dotsize)
+ cr:fill()
+ height = height + binclock.dotsize + binclock.step
+ end
+end
+
+local function factory(args)
+ local args = args or {}
+
+ binclock.width = args.width or dpi(42)
+ binclock.height = args.height or dpi(18)
+ binclock.show_seconds = args.show_seconds or false
+ binclock.color_active = args.color_active or "#CCCCCC"
+ binclock.color_inactive = args.color_inactive or "#444444"
+ binclock.dotsize = math.floor(binclock.height / 5)
+ binclock.step = math.floor(binclock.dotsize / 3)
+
+ binclock.widget = wibox.widget {
+ fit = function(self, context, width, height)
+ return binclock.width, binclock.height
+ end,
+ draw = function(self, context, cr, width, height)
+ local t = date("*t")
+
+ local hour = string.format("%02d", t.hour)
+ local min = string.format("%02d", t.min)
+ local sec = string.format("%02d", t.sec)
+
+ local col_count = 4
+ if binclock.show_seconds then
+ col_count = 6
+ end
+ local step = math.floor((binclock.width - col_count * binclock.dotsize) / 8)
+
+ binclock.paintdot(cr, string.sub(hour, 1, 1), step, 2)
+ binclock.paintdot(cr, string.sub(hour, 2, 2), binclock.dotsize + 2 * step)
+
+ binclock.paintdot(cr, string.sub(min, 1, 1), binclock.dotsize * 2 + 4 * step)
+ binclock.paintdot(cr, string.sub(min, 2, 2), binclock.dotsize * 3 + 5 * step)
+
+ if binclock.show_seconds then
+ binclock.paintdot(cr, string.sub(sec, 1, 1), binclock.dotsize * 4 + 7 * step)
+ binclock.paintdot(cr, string.sub(sec, 2, 2), binclock.dotsize * 5 + 8 * step)
+ end
+ end,
+ layout = wibox.widget.base.make_widget
+ }
+
+ binclock.timer = gears.timer {
+ autostart = true,
+ timeout = binclock.show_seconds and 1 or 60,
+ callback = function()
+ binclock.widget:emit_signal("widget::redraw_needed")
+ end
+ }
+
+ return binclock
+end
+
+return factory
diff --git a/.config/awesome/themes/powerarrow/icons/ac.png b/.config/awesome/themes/powerarrow/icons/ac.png
new file mode 100755
index 0000000..453af4e
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/ac.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/awesome.png b/.config/awesome/themes/powerarrow/icons/awesome.png
new file mode 100755
index 0000000..4cabb6c
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/awesome.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/battery.png b/.config/awesome/themes/powerarrow/icons/battery.png
new file mode 100755
index 0000000..7dd78a5
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/battery.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/battery_empty.png b/.config/awesome/themes/powerarrow/icons/battery_empty.png
new file mode 100755
index 0000000..763aa93
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/battery_empty.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/battery_low.png b/.config/awesome/themes/powerarrow/icons/battery_low.png
new file mode 100755
index 0000000..626222f
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/battery_low.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/brightness.png b/.config/awesome/themes/powerarrow/icons/brightness.png
new file mode 100755
index 0000000..030d524
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/brightness.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/cpu.png b/.config/awesome/themes/powerarrow/icons/cpu.png
new file mode 100755
index 0000000..c28a787
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/cpu.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/floating.png b/.config/awesome/themes/powerarrow/icons/floating.png
new file mode 100755
index 0000000..079fea4
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/floating.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/fwd.png b/.config/awesome/themes/powerarrow/icons/fwd.png
new file mode 100755
index 0000000..e9b875e
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/fwd.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/hdd.png b/.config/awesome/themes/powerarrow/icons/hdd.png
new file mode 100755
index 0000000..8922eaa
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/hdd.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/mail.png b/.config/awesome/themes/powerarrow/icons/mail.png
new file mode 100755
index 0000000..be656ed
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/mail.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/mail_on.png b/.config/awesome/themes/powerarrow/icons/mail_on.png
new file mode 100755
index 0000000..ce8984f
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/mail_on.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/mem.png b/.config/awesome/themes/powerarrow/icons/mem.png
new file mode 100755
index 0000000..ee6d480
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/mem.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/net.png b/.config/awesome/themes/powerarrow/icons/net.png
new file mode 100755
index 0000000..769bfec
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/net.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/next.png b/.config/awesome/themes/powerarrow/icons/next.png
new file mode 100755
index 0000000..9a62593
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/next.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/note.png b/.config/awesome/themes/powerarrow/icons/note.png
new file mode 100755
index 0000000..19866aa
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/note.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/note_on.png b/.config/awesome/themes/powerarrow/icons/note_on.png
new file mode 100755
index 0000000..aae5ca3
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/note_on.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/pacman.png b/.config/awesome/themes/powerarrow/icons/pacman.png
new file mode 100755
index 0000000..575144a
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/pacman.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/pause.png b/.config/awesome/themes/powerarrow/icons/pause.png
new file mode 100755
index 0000000..d4546e6
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/pause.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/phones.png b/.config/awesome/themes/powerarrow/icons/phones.png
new file mode 100755
index 0000000..bec0e57
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/phones.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/play.png b/.config/awesome/themes/powerarrow/icons/play.png
new file mode 100755
index 0000000..b228f74
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/play.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/prev.png b/.config/awesome/themes/powerarrow/icons/prev.png
new file mode 100755
index 0000000..4c4ca40
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/prev.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/rwd.png b/.config/awesome/themes/powerarrow/icons/rwd.png
new file mode 100755
index 0000000..ac3d6f4
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/rwd.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/scissors.png b/.config/awesome/themes/powerarrow/icons/scissors.png
new file mode 100755
index 0000000..30f867d
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/scissors.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/square_sel.png b/.config/awesome/themes/powerarrow/icons/square_sel.png
new file mode 100755
index 0000000..874a3a5
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/square_sel.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/square_unsel.png b/.config/awesome/themes/powerarrow/icons/square_unsel.png
new file mode 100755
index 0000000..979642f
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/stop.png b/.config/awesome/themes/powerarrow/icons/stop.png
new file mode 100755
index 0000000..207915b
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/stop.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/submenu.png b/.config/awesome/themes/powerarrow/icons/submenu.png
new file mode 100755
index 0000000..e9a6b7c
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/submenu.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/task.png b/.config/awesome/themes/powerarrow/icons/task.png
new file mode 100755
index 0000000..962b51a
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/task.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/temp.png b/.config/awesome/themes/powerarrow/icons/temp.png
new file mode 100755
index 0000000..7952de8
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/temp.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/tile.png b/.config/awesome/themes/powerarrow/icons/tile.png
new file mode 100755
index 0000000..01fd1b5
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/tile.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/tilebottom.png b/.config/awesome/themes/powerarrow/icons/tilebottom.png
new file mode 100755
index 0000000..bff1f42
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/tilebottom.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/tileleft.png b/.config/awesome/themes/powerarrow/icons/tileleft.png
new file mode 100755
index 0000000..205140a
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/tileleft.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/tiletop.png b/.config/awesome/themes/powerarrow/icons/tiletop.png
new file mode 100755
index 0000000..148cb9b
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/tiletop.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/close_focus.png b/.config/awesome/themes/powerarrow/icons/titlebar/close_focus.png
new file mode 100755
index 0000000..cccbadc
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/close_focus.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/close_normal.png b/.config/awesome/themes/powerarrow/icons/titlebar/close_normal.png
new file mode 100755
index 0000000..cb0c3fa
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/close_normal.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/floating_focus_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/floating_focus_active.png
new file mode 100755
index 0000000..77ea127
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/floating_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/floating_focus_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/floating_focus_inactive.png
new file mode 100755
index 0000000..d254a73
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/floating_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/floating_normal_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/floating_normal_active.png
new file mode 100755
index 0000000..c5ce3de
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/floating_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/floating_normal_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/floating_normal_inactive.png
new file mode 100755
index 0000000..850b602
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/floating_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/maximized_focus_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_focus_active.png
new file mode 100755
index 0000000..9fc0483
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/maximized_focus_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_focus_inactive.png
new file mode 100755
index 0000000..f684470
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/maximized_normal_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_normal_active.png
new file mode 100755
index 0000000..4aa4196
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/maximized_normal_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_normal_inactive.png
new file mode 100755
index 0000000..bfe01a3
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/maximized_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/ontop_focus_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_focus_active.png
new file mode 100755
index 0000000..86e61b7
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/ontop_focus_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_focus_inactive.png
new file mode 100755
index 0000000..286d439
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/ontop_normal_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_normal_active.png
new file mode 100755
index 0000000..fcee772
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/ontop_normal_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_normal_inactive.png
new file mode 100755
index 0000000..a628626
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/ontop_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/sticky_focus_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_focus_active.png
new file mode 100755
index 0000000..5af45c1
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_focus_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/sticky_focus_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_focus_inactive.png
new file mode 100755
index 0000000..22d7453
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_focus_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/sticky_normal_active.png b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_normal_active.png
new file mode 100755
index 0000000..aad079e
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_normal_active.png differ
diff --git a/.config/awesome/themes/powerarrow/icons/titlebar/sticky_normal_inactive.png b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_normal_inactive.png
new file mode 100755
index 0000000..5f3e655
Binary files /dev/null and b/.config/awesome/themes/powerarrow/icons/titlebar/sticky_normal_inactive.png differ
diff --git a/.config/awesome/themes/powerarrow/theme.lua b/.config/awesome/themes/powerarrow/theme.lua
new file mode 100644
index 0000000..984c9a8
--- /dev/null
+++ b/.config/awesome/themes/powerarrow/theme.lua
@@ -0,0 +1,400 @@
+--[[
+
+ Powerarrow Awesome WM theme
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local math, string, os = math, string, os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/powerarrow"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 9"
+theme.fg_normal = "#FEFEFE"
+theme.fg_focus = "#32D6FF"
+theme.fg_urgent = "#C83F11"
+theme.bg_normal = "#222222"
+theme.bg_focus = "#1E2320"
+theme.bg_urgent = "#3F3F3F"
+theme.taglist_fg_focus = "#00CCFF"
+theme.tasklist_bg_focus = "#222222"
+theme.tasklist_fg_focus = "#00CCFF"
+theme.border_width = dpi(2)
+theme.border_normal = "#3F3F3F"
+theme.border_focus = "#6F6F6F"
+theme.border_marked = "#CC9393"
+theme.titlebar_bg_focus = "#3F3F3F"
+theme.titlebar_bg_normal = "#3F3F3F"
+theme.titlebar_bg_focus = theme.bg_focus
+theme.titlebar_bg_normal = theme.bg_normal
+theme.titlebar_fg_focus = theme.fg_focus
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(140)
+theme.menu_submenu_icon = theme.dir .. "/icons/submenu.png"
+theme.awesome_icon = theme.dir .. "/icons/awesome.png"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_sel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.layout_tile = theme.dir .. "/icons/tile.png"
+theme.layout_tileleft = theme.dir .. "/icons/tileleft.png"
+theme.layout_tilebottom = theme.dir .. "/icons/tilebottom.png"
+theme.layout_tiletop = theme.dir .. "/icons/tiletop.png"
+theme.layout_fairv = theme.dir .. "/icons/fairv.png"
+theme.layout_fairh = theme.dir .. "/icons/fairh.png"
+theme.layout_spiral = theme.dir .. "/icons/spiral.png"
+theme.layout_dwindle = theme.dir .. "/icons/dwindle.png"
+theme.layout_max = theme.dir .. "/icons/max.png"
+theme.layout_fullscreen = theme.dir .. "/icons/fullscreen.png"
+theme.layout_magnifier = theme.dir .. "/icons/magnifier.png"
+theme.layout_floating = theme.dir .. "/icons/floating.png"
+theme.widget_ac = theme.dir .. "/icons/ac.png"
+theme.widget_battery = theme.dir .. "/icons/battery.png"
+theme.widget_battery_low = theme.dir .. "/icons/battery_low.png"
+theme.widget_battery_empty = theme.dir .. "/icons/battery_empty.png"
+theme.widget_brightness = theme.dir .. "/icons/brightness.png"
+theme.widget_mem = theme.dir .. "/icons/mem.png"
+theme.widget_cpu = theme.dir .. "/icons/cpu.png"
+theme.widget_temp = theme.dir .. "/icons/temp.png"
+theme.widget_net = theme.dir .. "/icons/net.png"
+theme.widget_hdd = theme.dir .. "/icons/hdd.png"
+theme.widget_music = theme.dir .. "/icons/note.png"
+theme.widget_music_on = theme.dir .. "/icons/note_on.png"
+theme.widget_music_pause = theme.dir .. "/icons/pause.png"
+theme.widget_music_stop = theme.dir .. "/icons/stop.png"
+theme.widget_vol = theme.dir .. "/icons/vol.png"
+theme.widget_vol_low = theme.dir .. "/icons/vol_low.png"
+theme.widget_vol_no = theme.dir .. "/icons/vol_no.png"
+theme.widget_vol_mute = theme.dir .. "/icons/vol_mute.png"
+theme.widget_mail = theme.dir .. "/icons/mail.png"
+theme.widget_mail_on = theme.dir .. "/icons/mail_on.png"
+theme.widget_task = theme.dir .. "/icons/task.png"
+theme.widget_scissors = theme.dir .. "/icons/scissors.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = 0
+theme.titlebar_close_button_focus = theme.dir .. "/icons/titlebar/close_focus.png"
+theme.titlebar_close_button_normal = theme.dir .. "/icons/titlebar/close_normal.png"
+theme.titlebar_ontop_button_focus_active = theme.dir .. "/icons/titlebar/ontop_focus_active.png"
+theme.titlebar_ontop_button_normal_active = theme.dir .. "/icons/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_inactive = theme.dir .. "/icons/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_inactive = theme.dir .. "/icons/titlebar/ontop_normal_inactive.png"
+theme.titlebar_sticky_button_focus_active = theme.dir .. "/icons/titlebar/sticky_focus_active.png"
+theme.titlebar_sticky_button_normal_active = theme.dir .. "/icons/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_inactive = theme.dir .. "/icons/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_inactive = theme.dir .. "/icons/titlebar/sticky_normal_inactive.png"
+theme.titlebar_floating_button_focus_active = theme.dir .. "/icons/titlebar/floating_focus_active.png"
+theme.titlebar_floating_button_normal_active = theme.dir .. "/icons/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_inactive = theme.dir .. "/icons/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_inactive = theme.dir .. "/icons/titlebar/floating_normal_inactive.png"
+theme.titlebar_maximized_button_focus_active = theme.dir .. "/icons/titlebar/maximized_focus_active.png"
+theme.titlebar_maximized_button_normal_active = theme.dir .. "/icons/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_inactive = theme.dir .. "/icons/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_inactive = theme.dir .. "/icons/titlebar/maximized_normal_inactive.png"
+
+local markup = lain.util.markup
+local separators = lain.util.separators
+
+-- Binary clock
+local binclock = require("themes.powerarrow.binclock"){
+ height = dpi(32),
+ show_seconds = true,
+ color_active = theme.fg_normal,
+ color_inactive = theme.bg_focus
+}
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ --cal = "cal --color=always",
+ attach_to = { binclock.widget },
+ notification_preset = {
+ font = "Terminus 10",
+ fg = theme.fg_normal,
+ bg = theme.bg_normal
+ }
+})
+
+-- Taskwarrior
+local task = wibox.widget.imagebox(theme.widget_task)
+lain.widget.contrib.task.attach(task, {
+ -- do not colorize output
+ show_cmd = "task | sed -r 's/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[mGK]//g'"
+})
+task:buttons(my_table.join(awful.button({}, 1, lain.widget.contrib.task.prompt)))
+
+-- Scissors (xsel copy and paste)
+local scissors = wibox.widget.imagebox(theme.widget_scissors)
+scissors:buttons(my_table.join(awful.button({}, 1, function() awful.spawn.with_shell("xsel | xsel -i -b") end)))
+
+-- Mail IMAP check
+--[[ commented because it needs to be set before use
+local mailicon = wibox.widget.imagebox(theme.widget_mail)
+mailicon:buttons(my_table.join(awful.button({ }, 1, function () awful.spawn(mail) end)))
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ if mailcount > 0 then
+ widget:set_text(" " .. mailcount .. " ")
+ mailicon:set_image(theme.widget_mail_on)
+ else
+ widget:set_text("")
+ mailicon:set_image(theme.widget_mail)
+ end
+ end
+})
+--]]
+
+-- ALSA volume
+theme.volume = lain.widget.alsabar({
+ --togglechannel = "IEC958,3",
+ notification_preset = { font = "Terminus 10", fg = theme.fg_normal },
+})
+
+-- MPD
+local musicplr = awful.util.terminal .. " -title Music -g 130x34-320+16 -e ncmpcpp"
+local mpdicon = wibox.widget.imagebox(theme.widget_music)
+mpdicon:buttons(my_table.join(
+ awful.button({ modkey }, 1, function () awful.spawn.with_shell(musicplr) end),
+ awful.button({ }, 1, function ()
+ os.execute("mpc prev")
+ theme.mpd.update()
+ end),
+ awful.button({ }, 2, function ()
+ os.execute("mpc toggle")
+ theme.mpd.update()
+ end),
+ awful.button({ }, 3, function ()
+ os.execute("mpc next")
+ theme.mpd.update()
+ end)))
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ if mpd_now.state == "play" then
+ artist = " " .. mpd_now.artist .. " "
+ title = mpd_now.title .. " "
+ mpdicon:set_image(theme.widget_music_on)
+ widget:set_markup(markup.font(theme.font, markup("#FF8466", artist) .. " " .. title))
+ elseif mpd_now.state == "pause" then
+ widget:set_markup(markup.font(theme.font, " mpd paused "))
+ mpdicon:set_image(theme.widget_music_pause)
+ else
+ widget:set_text("")
+ mpdicon:set_image(theme.widget_music)
+ end
+ end
+})
+
+-- MEM
+local memicon = wibox.widget.imagebox(theme.widget_mem)
+local mem = lain.widget.mem({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. mem_now.used .. "MB "))
+ end
+})
+
+-- CPU
+local cpuicon = wibox.widget.imagebox(theme.widget_cpu)
+local cpu = lain.widget.cpu({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. cpu_now.usage .. "% "))
+ end
+})
+
+--[[ Coretemp (lm_sensors, per core)
+local tempwidget = awful.widget.watch({awful.util.shell, '-c', 'sensors | grep Core'}, 30,
+function(widget, stdout)
+ local temps = ""
+ for line in stdout:gmatch("[^\r\n]+") do
+ temps = temps .. line:match("+(%d+).*°C") .. "° " -- in Celsius
+ end
+ widget:set_markup(markup.font(theme.font, " " .. temps))
+end)
+--]]
+-- Coretemp (lain, average)
+local temp = lain.widget.temp({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, " " .. coretemp_now .. "°C "))
+ end
+})
+--]]
+local tempicon = wibox.widget.imagebox(theme.widget_temp)
+
+-- / fs
+local fsicon = wibox.widget.imagebox(theme.widget_hdd)
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ notification_preset = { fg = theme.fg_normal, bg = theme.bg_normal, font = "Terminus 10" },
+ settings = function()
+ local fsp = string.format(" %3.2f %s ", fs_now["/"].free, fs_now["/"].units)
+ widget:set_markup(markup.font(theme.font, fsp))
+ end
+})
+--]]
+
+-- Battery
+local baticon = wibox.widget.imagebox(theme.widget_battery)
+local bat = lain.widget.bat({
+ settings = function()
+ if bat_now.status and bat_now.status ~= "N/A" then
+ if bat_now.ac_status == 1 then
+ widget:set_markup(markup.font(theme.font, " AC "))
+ baticon:set_image(theme.widget_ac)
+ return
+ elseif not bat_now.perc and tonumber(bat_now.perc) <= 5 then
+ baticon:set_image(theme.widget_battery_empty)
+ elseif not bat_now.perc and tonumber(bat_now.perc) <= 15 then
+ baticon:set_image(theme.widget_battery_low)
+ else
+ baticon:set_image(theme.widget_battery)
+ end
+ widget:set_markup(markup.font(theme.font, " " .. bat_now.perc .. "% "))
+ else
+ widget:set_markup()
+ baticon:set_image(theme.widget_ac)
+ end
+ end
+})
+
+-- Net
+local neticon = wibox.widget.imagebox(theme.widget_net)
+local net = lain.widget.net({
+ settings = function()
+ widget:set_markup(markup.fontfg(theme.font, "#FEFEFE", " " .. net_now.received .. " ↓↑ " .. net_now.sent .. " "))
+ end
+})
+
+-- Brigtness
+local brighticon = wibox.widget.imagebox(theme.widget_brightness)
+-- If you use xbacklight, comment the line with "light -G" and uncomment the line bellow
+-- local brightwidget = awful.widget.watch('xbacklight -get', 0.1,
+local brightwidget = awful.widget.watch('light -G', 0.1,
+ function(widget, stdout, stderr, exitreason, exitcode)
+ local brightness_level = tonumber(string.format("%.0f", stdout))
+ widget:set_markup(markup.font(theme.font, " " .. brightness_level .. "%"))
+end)
+
+-- Separators
+local arrow = separators.arrow_left
+
+function theme.powerline_rl(cr, width, height)
+ local arrow_depth, offset = height/2, 0
+
+ -- Avoid going out of the (potential) clip area
+ if arrow_depth < 0 then
+ width = width + 2*arrow_depth
+ offset = -arrow_depth
+ end
+
+ cr:move_to(offset + arrow_depth , 0 )
+ cr:line_to(offset + width , 0 )
+ cr:line_to(offset + width - arrow_depth , height/2 )
+ cr:line_to(offset + width , height )
+ cr:line_to(offset + arrow_depth , height )
+ cr:line_to(offset , height/2 )
+
+ cr:close_path()
+end
+
+local function pl(widget, bgcolor, padding)
+ return wibox.container.background(wibox.container.margin(widget, dpi(16), dpi(16)), bgcolor, theme.powerline_rl)
+end
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(16), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ --spr,
+ s.mytaglist,
+ s.mypromptbox,
+ spr,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ wibox.container.margin(scissors, dpi(4), dpi(8)),
+ --[[ using shapes
+ pl(wibox.widget { mpdicon, theme.mpd.widget, layout = wibox.layout.align.horizontal }, "#343434"),
+ pl(task, "#343434"),
+ --pl(wibox.widget { mailicon, mail and theme.mail.widget, layout = wibox.layout.align.horizontal }, "#343434"),
+ pl(wibox.widget { memicon, mem.widget, layout = wibox.layout.align.horizontal }, "#777E76"),
+ pl(wibox.widget { cpuicon, cpu.widget, layout = wibox.layout.align.horizontal }, "#4B696D"),
+ pl(wibox.widget { tempicon, temp.widget, layout = wibox.layout.align.horizontal }, "#4B3B51"),
+ --pl(wibox.widget { fsicon, theme.fs and theme.fs.widget, layout = wibox.layout.align.horizontal }, "#CB755B"),
+ pl(wibox.widget { baticon, bat.widget, layout = wibox.layout.align.horizontal }, "#8DAA9A"),
+ pl(wibox.widget { neticon, net.widget, layout = wibox.layout.align.horizontal }, "#C0C0A2"),
+ pl(binclock.widget, "#777E76"),
+ --]]
+ -- using separators
+ arrow(theme.bg_normal, "#343434"),
+ wibox.container.background(wibox.container.margin(wibox.widget { mailicon, theme.mail and theme.mail.widget, layout = wibox.layout.align.horizontal }, dpi(4), dpi(7)), "#343434"),
+ arrow("#343434", theme.bg_normal),
+ wibox.container.background(wibox.container.margin(wibox.widget { mpdicon, theme.mpd.widget, layout = wibox.layout.align.horizontal }, dpi(3), dpi(6)), theme.bg_focus),
+ arrow(theme.bg_normal, "#343434"),
+ wibox.container.background(wibox.container.margin(task, dpi(3), dpi(7)), "#343434"),
+ arrow("#343434", "#777E76"),
+ wibox.container.background(wibox.container.margin(wibox.widget { memicon, mem.widget, layout = wibox.layout.align.horizontal }, dpi(2), dpi(3)), "#777E76"),
+ arrow("#777E76", "#4B696D"),
+ wibox.container.background(wibox.container.margin(wibox.widget { cpuicon, cpu.widget, layout = wibox.layout.align.horizontal }, dpi(3), dpi(4)), "#4B696D"),
+ arrow("#4B696D", "#4B3B51"),
+ wibox.container.background(wibox.container.margin(wibox.widget { tempicon, temp.widget, layout = wibox.layout.align.horizontal }, dpi(4), dpi(4)), "#4B3B51"),
+ arrow("#4B3B51", "#CB755B"),
+ wibox.container.background(wibox.container.margin(wibox.widget { fsicon, theme.fs and theme.fs.widget, layout = wibox.layout.align.horizontal }, dpi(3), dpi(3)), "#CB755B"),
+ arrow("#CB755B", "#8DAA9A"),
+ wibox.container.background(wibox.container.margin(wibox.widget { baticon, bat.widget, layout = wibox.layout.align.horizontal }, dpi(3), dpi(3)), "#8DAA9A"),
+ arrow("#8DAA9A", "#C0C0A2"),
+ wibox.container.background(wibox.container.margin(wibox.widget { nil, neticon, net.widget, layout = wibox.layout.align.horizontal }, dpi(3), dpi(3)), "#C0C0A2"),
+ arrow("#C0C0A2", "#777E76"),
+ wibox.container.background(wibox.container.margin(binclock.widget, dpi(4), dpi(8)), "#777E76"),
+ arrow("#777E76", "alpha"),
+ --]]
+ s.mylayoutbox,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/powerarrow/wall.png b/.config/awesome/themes/powerarrow/wall.png
new file mode 100755
index 0000000..0989db9
Binary files /dev/null and b/.config/awesome/themes/powerarrow/wall.png differ
diff --git a/.config/awesome/themes/rainbow/icons/awesome.png b/.config/awesome/themes/rainbow/icons/awesome.png
new file mode 100755
index 0000000..d99fd37
Binary files /dev/null and b/.config/awesome/themes/rainbow/icons/awesome.png differ
diff --git a/.config/awesome/themes/rainbow/icons/square_sel.png b/.config/awesome/themes/rainbow/icons/square_sel.png
new file mode 100755
index 0000000..532719f
Binary files /dev/null and b/.config/awesome/themes/rainbow/icons/square_sel.png differ
diff --git a/.config/awesome/themes/rainbow/icons/square_unsel.png b/.config/awesome/themes/rainbow/icons/square_unsel.png
new file mode 100755
index 0000000..72dea5b
Binary files /dev/null and b/.config/awesome/themes/rainbow/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/rainbow/icons/submenu.png b/.config/awesome/themes/rainbow/icons/submenu.png
new file mode 100755
index 0000000..26ab82a
Binary files /dev/null and b/.config/awesome/themes/rainbow/icons/submenu.png differ
diff --git a/.config/awesome/themes/rainbow/theme.lua b/.config/awesome/themes/rainbow/theme.lua
new file mode 100644
index 0000000..7837b93
--- /dev/null
+++ b/.config/awesome/themes/rainbow/theme.lua
@@ -0,0 +1,279 @@
+--[[
+
+ Rainbow Awesome WM theme 2.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local os = os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.default_dir = require("awful.util").get_themes_dir() .. "default"
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/rainbow"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 10.5"
+theme.fg_normal = "#9E9E9E"
+theme.fg_focus = "#EBEBFF"
+theme.bg_normal = "#242424"
+theme.bg_focus = "#242424"
+theme.fg_urgent = "#000000"
+theme.bg_urgent = "#FFFFFF"
+theme.border_width = dpi(1)
+theme.border_normal = "#242424"
+theme.border_focus = "#EBEBFF"
+theme.taglist_fg_focus = "#EDEFFF"
+theme.taglist_bg_focus = "#242424"
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(140)
+theme.ocol = ""
+theme.tasklist_sticky = theme.ocol .. "[S]"
+theme.tasklist_ontop = theme.ocol .. "[T]"
+theme.tasklist_floating = theme.ocol .. "[F]"
+theme.tasklist_maximized_horizontal = theme.ocol .. "[M] "
+theme.tasklist_maximized_vertical = ""
+theme.tasklist_disable_icon = true
+theme.awesome_icon = theme.dir .."/icons/awesome.png"
+theme.menu_submenu_icon = theme.dir .."/icons/submenu.png"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_sel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.useless_gap = dpi(8)
+theme.layout_txt_tile = "[t]"
+theme.layout_txt_tileleft = "[l]"
+theme.layout_txt_tilebottom = "[b]"
+theme.layout_txt_tiletop = "[tt]"
+theme.layout_txt_fairv = "[fv]"
+theme.layout_txt_fairh = "[fh]"
+theme.layout_txt_spiral = "[s]"
+theme.layout_txt_dwindle = "[d]"
+theme.layout_txt_max = "[m]"
+theme.layout_txt_fullscreen = "[F]"
+theme.layout_txt_magnifier = "[M]"
+theme.layout_txt_floating = "[*]"
+theme.titlebar_close_button_normal = theme.default_dir.."/titlebar/close_normal.png"
+theme.titlebar_close_button_focus = theme.default_dir.."/titlebar/close_focus.png"
+theme.titlebar_minimize_button_normal = theme.default_dir.."/titlebar/minimize_normal.png"
+theme.titlebar_minimize_button_focus = theme.default_dir.."/titlebar/minimize_focus.png"
+theme.titlebar_ontop_button_normal_inactive = theme.default_dir.."/titlebar/ontop_normal_inactive.png"
+theme.titlebar_ontop_button_focus_inactive = theme.default_dir.."/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_active = theme.default_dir.."/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_active = theme.default_dir.."/titlebar/ontop_focus_active.png"
+theme.titlebar_sticky_button_normal_inactive = theme.default_dir.."/titlebar/sticky_normal_inactive.png"
+theme.titlebar_sticky_button_focus_inactive = theme.default_dir.."/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_active = theme.default_dir.."/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_active = theme.default_dir.."/titlebar/sticky_focus_active.png"
+theme.titlebar_floating_button_normal_inactive = theme.default_dir.."/titlebar/floating_normal_inactive.png"
+theme.titlebar_floating_button_focus_inactive = theme.default_dir.."/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_active = theme.default_dir.."/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_active = theme.default_dir.."/titlebar/floating_focus_active.png"
+theme.titlebar_maximized_button_normal_inactive = theme.default_dir.."/titlebar/maximized_normal_inactive.png"
+theme.titlebar_maximized_button_focus_inactive = theme.default_dir.."/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_active = theme.default_dir.."/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_active = theme.default_dir.."/titlebar/maximized_focus_active.png"
+
+-- lain related
+theme.layout_txt_cascade = "[cascade]"
+theme.layout_txt_cascadetile = "[cascadetile]"
+theme.layout_txt_centerwork = "[centerwork]"
+theme.layout_txt_termfair = "[termfair]"
+theme.layout_txt_centerfair = "[centerfair]"
+
+local markup = lain.util.markup
+local white = theme.fg_focus
+local gray = theme.fg_normal
+
+-- Textclock
+local mytextclock = wibox.widget.textclock(markup(white, " %H:%M "))
+mytextclock.font = theme.font
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ font = "Terminus 11",
+ fg = white,
+ bg = theme.bg_normal
+ }
+})
+
+-- Mail IMAP check
+--[[ commented because it needs to be set before use
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ mail_notification_preset.fg = white
+
+ mail = ""
+ count = ""
+
+ if mailcount > 0 then
+ mail = "Mail "
+ count = mailcount .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, mail) .. markup(white, count)))
+ end
+})
+--]]
+
+-- MPD
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ mpd_notification_preset.fg = white
+
+ artist = mpd_now.artist .. " "
+ title = mpd_now.title .. " "
+
+ if mpd_now.state == "pause" then
+ artist = "mpd "
+ title = "paused "
+ elseif mpd_now.state == "stop" then
+ artist = ""
+ title = ""
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, artist) .. markup(white, title)))
+ end
+})
+
+-- /home fs
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ notification_preset = { fg = white, bg = theme.bg_normal, font = "Terminus 10.5" },
+ settings = function()
+ local fs_header, fs_p = "", ""
+
+ if fs_now["/home"].percentage >= 90 then
+ fs_header = " Hdd "
+ fs_p = fs_now["/home"].percentage
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, fs_header) .. markup(white, fs_p)))
+ end
+})
+--]]
+
+-- ALSA volume bar
+theme.volume = lain.widget.alsabar({
+ ticks = true, width = dpi(67),
+ notification_preset = { font = theme.font }
+})
+theme.volume.tooltip.wibox.fg = theme.fg_focus
+theme.volume.tooltip.wibox.font = theme.font
+theme.volume.bar:buttons(my_table.join (
+ awful.button({}, 1, function()
+ awful.spawn(string.format("%s -e alsamixer", terminal))
+ end),
+ awful.button({}, 2, function()
+ os.execute(string.format("%s set %s 100%%", theme.volume.cmd, theme.volume.channel))
+ theme.volume.update()
+ end),
+ awful.button({}, 3, function()
+ os.execute(string.format("%s set %s toggle", theme.volume.cmd, theme.volume.togglechannel or theme.volume.channel))
+ theme.volume.update()
+ end),
+ awful.button({}, 4, function()
+ os.execute(string.format("%s set %s 1%%+", theme.volume.cmd, theme.volume.channel))
+ theme.volume.update()
+ end),
+ awful.button({}, 5, function()
+ os.execute(string.format("%s set %s 1%%-", theme.volume.cmd, theme.volume.channel))
+ theme.volume.update()
+ end)
+))
+local volumebg = wibox.container.background(theme.volume.bar, "#585858", gears.shape.rectangle)
+local volumewidget = wibox.container.margin(volumebg, dpi(7), dpi(7), dpi(5), dpi(5))
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ --APPID =
+ city_id = 2643743, -- placeholder (London)
+ notification_preset = { font = theme.font, fg = white }
+})
+--]]
+
+-- Separators
+local first = wibox.widget.textbox(markup.font("Terminus 4", " "))
+local spr = wibox.widget.textbox(' ')
+
+local function update_txt_layoutbox(s)
+ -- Writes a string representation of the current layout in a textbox widget
+ local txt_l = theme["layout_txt_" .. awful.layout.getname(awful.layout.get(s))] or ""
+ s.mytxtlayoutbox:set_text(txt_l)
+end
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+
+ -- Textual layoutbox
+ s.mytxtlayoutbox = wibox.widget.textbox(theme["layout_txt_" .. awful.layout.getname(awful.layout.get(s))])
+ awful.tag.attached_connect_signal(s, "property::selected", function () update_txt_layoutbox(s) end)
+ awful.tag.attached_connect_signal(s, "property::layout", function () update_txt_layoutbox(s) end)
+ s.mytxtlayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function() awful.layout.inc(1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function() awful.layout.inc(-1) end),
+ awful.button({}, 4, function() awful.layout.inc(1) end),
+ awful.button({}, 5, function() awful.layout.inc(-1) end)))
+
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(18), bg = theme.bg_normal, fg = theme.fg_normal })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ first,
+ s.mytaglist,
+ spr,
+ s.mytxtlayoutbox,
+ --spr,
+ s.mypromptbox,
+ spr,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ spr,
+ theme.mpd.widget,
+ --theme.mail.widget,
+ --theme.fs.widget,
+ volumewidget,
+ mytextclock,
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/rainbow/wall.png b/.config/awesome/themes/rainbow/wall.png
new file mode 100755
index 0000000..6bed238
Binary files /dev/null and b/.config/awesome/themes/rainbow/wall.png differ
diff --git a/.config/awesome/themes/steamburn/icons/awesome.png b/.config/awesome/themes/steamburn/icons/awesome.png
new file mode 100755
index 0000000..0306bdf
Binary files /dev/null and b/.config/awesome/themes/steamburn/icons/awesome.png differ
diff --git a/.config/awesome/themes/steamburn/icons/square_sel.png b/.config/awesome/themes/steamburn/icons/square_sel.png
new file mode 100755
index 0000000..2bcabb8
Binary files /dev/null and b/.config/awesome/themes/steamburn/icons/square_sel.png differ
diff --git a/.config/awesome/themes/steamburn/icons/square_unsel.png b/.config/awesome/themes/steamburn/icons/square_unsel.png
new file mode 100755
index 0000000..14c4fe4
Binary files /dev/null and b/.config/awesome/themes/steamburn/icons/square_unsel.png differ
diff --git a/.config/awesome/themes/steamburn/icons/submenu.png b/.config/awesome/themes/steamburn/icons/submenu.png
new file mode 100755
index 0000000..12b97c6
Binary files /dev/null and b/.config/awesome/themes/steamburn/icons/submenu.png differ
diff --git a/.config/awesome/themes/steamburn/theme.lua b/.config/awesome/themes/steamburn/theme.lua
new file mode 100644
index 0000000..a6631a3
--- /dev/null
+++ b/.config/awesome/themes/steamburn/theme.lua
@@ -0,0 +1,278 @@
+--[[
+
+ Steamburn Awesome WM theme 3.0
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local os = os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.zenburn_dir = require("awful.util").get_themes_dir() .. "zenburn"
+theme.dir = os.getenv("HOME") .. "/.config/awesome/themes/steamburn"
+theme.wallpaper = theme.dir .. "/wall.png"
+theme.font = "Terminus 10.5"
+theme.fg_normal = "#e2ccb0"
+theme.fg_focus = "#d88166"
+theme.fg_urgent = "#CC9393"
+theme.bg_normal = "#140c0b"
+theme.bg_focus = "#140c0b"
+theme.bg_urgent = "#2a1f1e"
+theme.border_width = dpi(1)
+theme.border_normal = "#302627"
+theme.border_focus = "#c2745b"
+theme.border_marked = "#CC9393"
+theme.taglist_fg_focus = "#d88166"
+theme.tasklist_bg_focus = "#140c0b"
+theme.tasklist_fg_focus = "#d88166"
+theme.taglist_squares_sel = theme.dir .. "/icons/square_sel.png"
+theme.taglist_squares_unsel = theme.dir .. "/icons/square_unsel.png"
+theme.menu_height = dpi(16)
+theme.menu_width = dpi(140)
+theme.awesome_icon = theme.dir .."/icons/awesome.png"
+theme.menu_submenu_icon = theme.dir .. "/icons/submenu.png"
+theme.layout_txt_tile = "[t]"
+theme.layout_txt_tileleft = "[l]"
+theme.layout_txt_tilebottom = "[b]"
+theme.layout_txt_tiletop = "[tt]"
+theme.layout_txt_fairv = "[fv]"
+theme.layout_txt_fairh = "[fh]"
+theme.layout_txt_spiral = "[s]"
+theme.layout_txt_dwindle = "[d]"
+theme.layout_txt_max = "[m]"
+theme.layout_txt_fullscreen = "[F]"
+theme.layout_txt_magnifier = "[M]"
+theme.layout_txt_floating = "[|]"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = dpi(0)
+theme.titlebar_close_button_normal = theme.zenburn_dir.."/titlebar/close_normal.png"
+theme.titlebar_close_button_focus = theme.zenburn_dir.."/titlebar/close_focus.png"
+theme.titlebar_minimize_button_normal = theme.zenburn_dir.."/titlebar/minimize_normal.png"
+theme.titlebar_minimize_button_focus = theme.zenburn_dir.."/titlebar/minimize_focus.png"
+theme.titlebar_ontop_button_normal_inactive = theme.zenburn_dir.."/titlebar/ontop_normal_inactive.png"
+theme.titlebar_ontop_button_focus_inactive = theme.zenburn_dir.."/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_active = theme.zenburn_dir.."/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_active = theme.zenburn_dir.."/titlebar/ontop_focus_active.png"
+theme.titlebar_sticky_button_normal_inactive = theme.zenburn_dir.."/titlebar/sticky_normal_inactive.png"
+theme.titlebar_sticky_button_focus_inactive = theme.zenburn_dir.."/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_active = theme.zenburn_dir.."/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_active = theme.zenburn_dir.."/titlebar/sticky_focus_active.png"
+theme.titlebar_floating_button_normal_inactive = theme.zenburn_dir.."/titlebar/floating_normal_inactive.png"
+theme.titlebar_floating_button_focus_inactive = theme.zenburn_dir.."/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_active = theme.zenburn_dir.."/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_active = theme.zenburn_dir.."/titlebar/floating_focus_active.png"
+theme.titlebar_maximized_button_normal_inactive = theme.zenburn_dir.."/titlebar/maximized_normal_inactive.png"
+theme.titlebar_maximized_button_focus_inactive = theme.zenburn_dir.."/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_active = theme.zenburn_dir.."/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_active = theme.zenburn_dir.."/titlebar/maximized_focus_active.png"
+
+-- lain related
+theme.layout_txt_termfair = "[termfair]"
+theme.layout_txt_centerfair = "[centerfair]"
+
+local markup = lain.util.markup
+local gray = "#94928F"
+
+-- Textclock
+local mytextclock = wibox.widget.textclock(" %H:%M ")
+mytextclock.font = theme.font
+
+-- Calendar
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ font = "Terminus 11",
+ fg = theme.fg_normal,
+ bg = theme.bg_normal
+ }
+})
+
+-- Mail IMAP check
+--[[ to be set before use
+theme.mail = lain.widget.imap({
+ timeout = 180,
+ server = "server",
+ mail = "mail",
+ password = "keyring get mail",
+ settings = function()
+ mail = ""
+ count = ""
+
+ if mailcount > 0 then
+ mail = "Mail "
+ count = mailcount .. " "
+ end
+
+ widget:set_markup(markup(gray, mail) .. count)
+ end
+})
+--]]
+
+-- MPD
+theme.mpd = lain.widget.mpd({
+ settings = function()
+ artist = mpd_now.artist .. " "
+ title = mpd_now.title .. " "
+
+ if mpd_now.state == "pause" then
+ artist = "mpd "
+ title = "paused "
+ elseif mpd_now.state == "stop" then
+ artist = ""
+ title = ""
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, artist) .. title))
+ end
+})
+
+-- CPU
+local cpu = lain.widget.sysload({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, markup(gray, " Cpu ") .. load_1 .. " "))
+ end
+})
+
+-- MEM
+local mem = lain.widget.mem({
+ settings = function()
+ widget:set_markup(markup.font(theme.font, markup(gray, " Mem ") .. mem_now.used .. " "))
+ end
+})
+
+-- /home fs
+--[[ commented because it needs Gio/Glib >= 2.54
+theme.fs = lain.widget.fs({
+ partition = "/home",
+ notification_preset = { fg = theme.fg_normal, bg = theme.bg_normal, font = "Terminus 10.5" },
+})
+--]]
+
+-- Battery
+local bat = lain.widget.bat({
+ settings = function()
+ local perc = bat_now.perc
+ if bat_now.ac_status == 1 then perc = perc .. " Plug" end
+ widget:set_markup(markup.font(theme.font, markup(gray, " Bat ") .. perc .. " "))
+ end
+})
+
+-- Net checker
+local net = lain.widget.net({
+ settings = function()
+ if net_now.state == "up" then net_state = "On"
+ else net_state = "Off" end
+ widget:set_markup(markup.font(theme.font, markup(gray, " Net ") .. net_state .. " "))
+ end
+})
+
+-- ALSA volume
+theme.volume = lain.widget.alsa({
+ settings = function()
+ header = " Vol "
+ vlevel = volume_now.level
+
+ if volume_now.status == "off" then
+ vlevel = vlevel .. "M "
+ else
+ vlevel = vlevel .. " "
+ end
+
+ widget:set_markup(markup.font(theme.font, markup(gray, header) .. vlevel))
+ end
+})
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ --APPID =
+ city_id = 2643743, -- placeholder (London)
+})
+--]]
+
+-- Separators
+local first = wibox.widget.textbox(markup.font("Terminus 4", " "))
+local spr = wibox.widget.textbox(' ')
+
+local function update_txt_layoutbox(s)
+ -- Writes a string representation of the current layout in a textbox widget
+ local txt_l = theme["layout_txt_" .. awful.layout.getname(awful.layout.get(s))] or ""
+ s.mytxtlayoutbox:set_text(txt_l)
+end
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+
+ -- Textual layoutbox
+ s.mytxtlayoutbox = wibox.widget.textbox(theme["layout_txt_" .. awful.layout.getname(awful.layout.get(s))])
+ awful.tag.attached_connect_signal(s, "property::selected", function () update_txt_layoutbox(s) end)
+ awful.tag.attached_connect_signal(s, "property::layout", function () update_txt_layoutbox(s) end)
+ s.mytxtlayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function() awful.layout.inc(1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function() awful.layout.inc(-1) end),
+ awful.button({}, 4, function() awful.layout.inc(1) end),
+ awful.button({}, 5, function() awful.layout.inc(-1) end)))
+
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons)
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, awful.util.tasklist_buttons)
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(18) })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ first,
+ s.mytaglist,
+ spr,
+ s.mytxtlayoutbox,
+ --spr,
+ s.mypromptbox,
+ spr,
+ },
+ s.mytasklist, -- Middle widget
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget.systray(),
+ spr,
+ theme.mpd.widget,
+ --theme.mail.widget,
+ cpu.widget,
+ mem.widget,
+ bat.widget,
+ net.widget,
+ theme.volume.widget,
+ mytextclock
+ },
+ }
+end
+
+return theme
diff --git a/.config/awesome/themes/steamburn/wall.png b/.config/awesome/themes/steamburn/wall.png
new file mode 100755
index 0000000..57359d1
Binary files /dev/null and b/.config/awesome/themes/steamburn/wall.png differ
diff --git a/.config/awesome/themes/vertex/icons/awesome.png b/.config/awesome/themes/vertex/icons/awesome.png
new file mode 100755
index 0000000..cbded64
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/awesome.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-000-charging.png b/.config/awesome/themes/vertex/icons/bat-000-charging.png
new file mode 100755
index 0000000..cc2abdd
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-000-charging.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-000.png b/.config/awesome/themes/vertex/icons/bat-000.png
new file mode 100755
index 0000000..550d8f0
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-000.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-020-charging.png b/.config/awesome/themes/vertex/icons/bat-020-charging.png
new file mode 100755
index 0000000..bd5e788
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-020-charging.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-020.png b/.config/awesome/themes/vertex/icons/bat-020.png
new file mode 100755
index 0000000..c8525eb
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-020.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-040-charging.png b/.config/awesome/themes/vertex/icons/bat-040-charging.png
new file mode 100755
index 0000000..5d20c11
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-040-charging.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-040.png b/.config/awesome/themes/vertex/icons/bat-040.png
new file mode 100755
index 0000000..ad378bf
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-040.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-060-charging.png b/.config/awesome/themes/vertex/icons/bat-060-charging.png
new file mode 100755
index 0000000..ea7c293
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-060-charging.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-060.png b/.config/awesome/themes/vertex/icons/bat-060.png
new file mode 100755
index 0000000..5883885
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-060.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-080-charging.png b/.config/awesome/themes/vertex/icons/bat-080-charging.png
new file mode 100755
index 0000000..b633044
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-080-charging.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-080.png b/.config/awesome/themes/vertex/icons/bat-080.png
new file mode 100755
index 0000000..d3fb971
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-080.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-100-charging.png b/.config/awesome/themes/vertex/icons/bat-100-charging.png
new file mode 100755
index 0000000..f2d7419
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-100-charging.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-100.png b/.config/awesome/themes/vertex/icons/bat-100.png
new file mode 100755
index 0000000..5852e69
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-100.png differ
diff --git a/.config/awesome/themes/vertex/icons/bat-charged.png b/.config/awesome/themes/vertex/icons/bat-charged.png
new file mode 100755
index 0000000..bb6b657
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/bat-charged.png differ
diff --git a/.config/awesome/themes/vertex/icons/ethernet-connected.png b/.config/awesome/themes/vertex/icons/ethernet-connected.png
new file mode 100755
index 0000000..6894931
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/ethernet-connected.png differ
diff --git a/.config/awesome/themes/vertex/icons/ethernet-disconnected.png b/.config/awesome/themes/vertex/icons/ethernet-disconnected.png
new file mode 100755
index 0000000..cfd73bb
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/ethernet-disconnected.png differ
diff --git a/.config/awesome/themes/vertex/icons/panel.png b/.config/awesome/themes/vertex/icons/panel.png
new file mode 100755
index 0000000..2f429e5
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/panel.png differ
diff --git a/.config/awesome/themes/vertex/icons/volume-high.png b/.config/awesome/themes/vertex/icons/volume-high.png
new file mode 100755
index 0000000..8fc8279
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/volume-high.png differ
diff --git a/.config/awesome/themes/vertex/icons/volume-low.png b/.config/awesome/themes/vertex/icons/volume-low.png
new file mode 100755
index 0000000..7a0682f
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/volume-low.png differ
diff --git a/.config/awesome/themes/vertex/icons/volume-medium.png b/.config/awesome/themes/vertex/icons/volume-medium.png
new file mode 100755
index 0000000..2b5c888
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/volume-medium.png differ
diff --git a/.config/awesome/themes/vertex/icons/volume-muted-blocked.png b/.config/awesome/themes/vertex/icons/volume-muted-blocked.png
new file mode 100755
index 0000000..6dea15b
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/volume-muted-blocked.png differ
diff --git a/.config/awesome/themes/vertex/icons/volume-muted.png b/.config/awesome/themes/vertex/icons/volume-muted.png
new file mode 100755
index 0000000..7d08ac9
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/volume-muted.png differ
diff --git a/.config/awesome/themes/vertex/icons/volume-off.png b/.config/awesome/themes/vertex/icons/volume-off.png
new file mode 100755
index 0000000..8a6d8c5
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/volume-off.png differ
diff --git a/.config/awesome/themes/vertex/icons/wireless-disconnected.png b/.config/awesome/themes/vertex/icons/wireless-disconnected.png
new file mode 100755
index 0000000..f98d8b4
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/wireless-disconnected.png differ
diff --git a/.config/awesome/themes/vertex/icons/wireless-full.png b/.config/awesome/themes/vertex/icons/wireless-full.png
new file mode 100755
index 0000000..3f83dec
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/wireless-full.png differ
diff --git a/.config/awesome/themes/vertex/icons/wireless-high.png b/.config/awesome/themes/vertex/icons/wireless-high.png
new file mode 100755
index 0000000..b3622ec
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/wireless-high.png differ
diff --git a/.config/awesome/themes/vertex/icons/wireless-low.png b/.config/awesome/themes/vertex/icons/wireless-low.png
new file mode 100755
index 0000000..3f1e740
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/wireless-low.png differ
diff --git a/.config/awesome/themes/vertex/icons/wireless-medium.png b/.config/awesome/themes/vertex/icons/wireless-medium.png
new file mode 100755
index 0000000..6bd0ec5
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/wireless-medium.png differ
diff --git a/.config/awesome/themes/vertex/icons/wireless-none.png b/.config/awesome/themes/vertex/icons/wireless-none.png
new file mode 100755
index 0000000..e47b478
Binary files /dev/null and b/.config/awesome/themes/vertex/icons/wireless-none.png differ
diff --git a/.config/awesome/themes/vertex/theme.lua b/.config/awesome/themes/vertex/theme.lua
new file mode 100644
index 0000000..14190bd
--- /dev/null
+++ b/.config/awesome/themes/vertex/theme.lua
@@ -0,0 +1,470 @@
+--[[
+
+ Vertex Awesome WM theme
+ github.com/lcpz
+
+--]]
+
+local gears = require("gears")
+local lain = require("lain")
+local awful = require("awful")
+local wibox = require("wibox")
+local dpi = require("beautiful.xresources").apply_dpi
+
+local math, string, tag, tonumber, type, os = math, string, tag, tonumber, type, os
+local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
+
+local theme = {}
+theme.default_dir = require("awful.util").get_themes_dir() .. "default"
+theme.icon_dir = os.getenv("HOME") .. "/.config/awesome/themes/vertex/icons"
+theme.wallpaper = os.getenv("HOME") .. "/.config/awesome/themes/vertex/wall.png"
+theme.font = "Roboto Bold 10"
+theme.taglist_font = "FontAwesome 17"
+theme.fg_normal = "#FFFFFF"
+theme.fg_focus = "#6A95EB"
+theme.bg_focus = "#303030"
+theme.bg_focus2 = "#3762B8"
+theme.bg_normal = "#242424"
+theme.fg_urgent = "#CC9393"
+theme.bg_urgent = "#006B8E"
+theme.border_width = dpi(4)
+theme.border_normal = "#252525"
+theme.border_focus = "#7CA2EE"
+theme.tooltip_border_color = theme.fg_focus
+theme.tooltip_border_width = theme.border_width
+theme.menu_height = dpi(24)
+theme.menu_width = dpi(140)
+theme.awesome_icon = theme.icon_dir .. "/awesome.png"
+theme.taglist_squares_sel = gears.surface.load_from_shape(dpi(3), dpi(30), gears.shape.rectangle, theme.fg_focus)
+theme.taglist_squares_unsel = gears.surface.load_from_shape(dpi(3), dpi(30), gears.shape.rectangle, theme.bg_focus2)
+theme.panelbg = theme.icon_dir .. "/panel.png"
+theme.bat000charging = theme.icon_dir .. "/bat-000-charging.png"
+theme.bat000 = theme.icon_dir .. "/bat-000.png"
+theme.bat020charging = theme.icon_dir .. "/bat-020-charging.png"
+theme.bat020 = theme.icon_dir .. "/bat-020.png"
+theme.bat040charging = theme.icon_dir .. "/bat-040-charging.png"
+theme.bat040 = theme.icon_dir .. "/bat-040.png"
+theme.bat060charging = theme.icon_dir .. "/bat-060-charging.png"
+theme.bat060 = theme.icon_dir .. "/bat-060.png"
+theme.bat080charging = theme.icon_dir .. "/bat-080-charging.png"
+theme.bat080 = theme.icon_dir .. "/bat-080.png"
+theme.bat100charging = theme.icon_dir .. "/bat-100-charging.png"
+theme.bat100 = theme.icon_dir .. "/bat-100.png"
+theme.batcharged = theme.icon_dir .. "/bat-charged.png"
+theme.ethon = theme.icon_dir .. "/ethernet-connected.png"
+theme.ethoff = theme.icon_dir .. "/ethernet-disconnected.png"
+theme.volhigh = theme.icon_dir .. "/volume-high.png"
+theme.vollow = theme.icon_dir .. "/volume-low.png"
+theme.volmed = theme.icon_dir .. "/volume-medium.png"
+theme.volmutedblocked = theme.icon_dir .. "/volume-muted-blocked.png"
+theme.volmuted = theme.icon_dir .. "/volume-muted.png"
+theme.voloff = theme.icon_dir .. "/volume-off.png"
+theme.wifidisc = theme.icon_dir .. "/wireless-disconnected.png"
+theme.wififull = theme.icon_dir .. "/wireless-full.png"
+theme.wifihigh = theme.icon_dir .. "/wireless-high.png"
+theme.wifilow = theme.icon_dir .. "/wireless-low.png"
+theme.wifimed = theme.icon_dir .. "/wireless-medium.png"
+theme.wifinone = theme.icon_dir .. "/wireless-none.png"
+theme.layout_fairh = theme.default_dir.."/layouts/fairhw.png"
+theme.layout_fairv = theme.default_dir.."/layouts/fairvw.png"
+theme.layout_floating = theme.default_dir.."/layouts/floatingw.png"
+theme.layout_magnifier = theme.default_dir.."/layouts/magnifierw.png"
+theme.layout_max = theme.default_dir.."/layouts/maxw.png"
+theme.layout_fullscreen = theme.default_dir.."/layouts/fullscreenw.png"
+theme.layout_tilebottom = theme.default_dir.."/layouts/tilebottomw.png"
+theme.layout_tileleft = theme.default_dir.."/layouts/tileleftw.png"
+theme.layout_tile = theme.default_dir.."/layouts/tilew.png"
+theme.layout_tiletop = theme.default_dir.."/layouts/tiletopw.png"
+theme.layout_spiral = theme.default_dir.."/layouts/spiralw.png"
+theme.layout_dwindle = theme.default_dir.."/layouts/dwindlew.png"
+theme.layout_cornernw = theme.default_dir.."/layouts/cornernww.png"
+theme.layout_cornerne = theme.default_dir.."/layouts/cornernew.png"
+theme.layout_cornersw = theme.default_dir.."/layouts/cornersww.png"
+theme.layout_cornerse = theme.default_dir.."/layouts/cornersew.png"
+theme.tasklist_plain_task_name = true
+theme.tasklist_disable_icon = true
+theme.useless_gap = dpi(10)
+theme.titlebar_close_button_normal = theme.default_dir.."/titlebar/close_normal.png"
+theme.titlebar_close_button_focus = theme.default_dir.."/titlebar/close_focus.png"
+theme.titlebar_minimize_button_normal = theme.default_dir.."/titlebar/minimize_normal.png"
+theme.titlebar_minimize_button_focus = theme.default_dir.."/titlebar/minimize_focus.png"
+theme.titlebar_ontop_button_normal_inactive = theme.default_dir.."/titlebar/ontop_normal_inactive.png"
+theme.titlebar_ontop_button_focus_inactive = theme.default_dir.."/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_active = theme.default_dir.."/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_active = theme.default_dir.."/titlebar/ontop_focus_active.png"
+theme.titlebar_sticky_button_normal_inactive = theme.default_dir.."/titlebar/sticky_normal_inactive.png"
+theme.titlebar_sticky_button_focus_inactive = theme.default_dir.."/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_active = theme.default_dir.."/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_active = theme.default_dir.."/titlebar/sticky_focus_active.png"
+theme.titlebar_floating_button_normal_inactive = theme.default_dir.."/titlebar/floating_normal_inactive.png"
+theme.titlebar_floating_button_focus_inactive = theme.default_dir.."/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_active = theme.default_dir.."/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_active = theme.default_dir.."/titlebar/floating_focus_active.png"
+theme.titlebar_maximized_button_normal_inactive = theme.default_dir.."/titlebar/maximized_normal_inactive.png"
+theme.titlebar_maximized_button_focus_inactive = theme.default_dir.."/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_active = theme.default_dir.."/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_active = theme.default_dir.."/titlebar/maximized_focus_active.png"
+
+-- http://fontawesome.io/cheatsheet
+awful.util.tagnames = { "", "", "", "", "", "", "", "" }
+
+local markup = lain.util.markup
+
+-- Clock
+--os.setlocale(os.getenv("LANG")) -- to localize the clock
+local mytextclock = wibox.widget.textclock(markup("#FFFFFF", "%a %d %b, %H:%M"))
+mytextclock.font = theme.font
+theme.cal = lain.widget.cal({
+ attach_to = { mytextclock },
+ notification_preset = {
+ fg = "#FFFFFF",
+ bg = theme.bg_normal,
+ position = "top_middle",
+ font = "Monospace 10"
+ }
+})
+
+-- Battery
+local baticon = wibox.widget.imagebox(theme.bat000)
+local battooltip = awful.tooltip({
+ objects = { baticon },
+ margin_leftright = dpi(15),
+ margin_topbottom = dpi(12)
+})
+battooltip.wibox.fg = theme.fg_normal
+battooltip.textbox.font = theme.font
+battooltip.timeout = 0
+battooltip:set_shape(function(cr, width, height)
+ gears.shape.infobubble(cr, width, height, corner_radius, arrow_size, width - dpi(35))
+end)
+local bat = lain.widget.bat({
+ settings = function()
+ local index, perc = "bat", tonumber(bat_now.perc) or 0
+
+ if perc <= 7 then
+ index = index .. "000"
+ elseif perc <= 20 then
+ index = index .. "020"
+ elseif perc <= 40 then
+ index = index .. "040"
+ elseif perc <= 60 then
+ index = index .. "060"
+ elseif perc <= 80 then
+ index = index .. "080"
+ elseif perc <= 100 then
+ index = index .. "100"
+ end
+
+ if bat_now.ac_status == 1 then
+ index = index .. "charging"
+ end
+
+ baticon:set_image(theme[index])
+ battooltip:set_markup(string.format("\n%s%%, %s", perc, bat_now.time))
+ end
+})
+
+-- MPD
+theme.mpd = lain.widget.mpd({
+ music_dir = "/mnt/storage/Downloads/Music",
+ settings = function()
+ if mpd_now.state == "play" then
+ title = mpd_now.title
+ artist = " " .. mpd_now.artist .. " "
+ elseif mpd_now.state == "pause" then
+ title = "mpd "
+ artist = "paused "
+ else
+ title = ""
+ artist = ""
+ end
+
+ widget:set_markup(markup.font(theme.font, title .. markup(theme.fg_focus, artist)))
+ end
+})
+
+-- ALSA volume
+local volicon = wibox.widget.imagebox()
+theme.volume = lain.widget.alsabar({
+ --togglechannel = "IEC958,3",
+ notification_preset = { font = "Monospace 12", fg = theme.fg_normal },
+ settings = function()
+ local index, perc = "", tonumber(volume_now.level) or 0
+
+ if volume_now.status == "off" then
+ index = "volmutedblocked"
+ else
+ if perc <= 5 then
+ index = "volmuted"
+ elseif perc <= 25 then
+ index = "vollow"
+ elseif perc <= 75 then
+ index = "volmed"
+ else
+ index = "volhigh"
+ end
+ end
+
+ volicon:set_image(theme[index])
+ end
+})
+volicon:buttons(my_table.join (
+ awful.button({}, 1, function()
+ awful.spawn(string.format("%s -e alsamixer", awful.util.terminal))
+ end),
+ awful.button({}, 2, function()
+ os.execute(string.format("%s set %s 100%%", theme.volume.cmd, theme.volume.channel))
+ theme.volume.notify()
+ end),
+ awful.button({}, 3, function()
+ os.execute(string.format("%s set %s toggle", theme.volume.cmd, theme.volume.togglechannel or theme.volume.channel))
+ theme.volume.notify()
+ end),
+ awful.button({}, 4, function()
+ os.execute(string.format("%s set %s 1%%+", theme.volume.cmd, theme.volume.channel))
+ theme.volume.notify()
+ end),
+ awful.button({}, 5, function()
+ os.execute(string.format("%s set %s 1%%-", theme.volume.cmd, theme.volume.channel))
+ theme.volume.notify()
+ end)
+))
+
+-- Wifi carrier and signal strength
+local wificon = wibox.widget.imagebox(theme.wifidisc)
+local wifitooltip = awful.tooltip({
+ objects = { wificon },
+ margin_leftright = dpi(15),
+ margin_topbottom = dpi(15)
+})
+wifitooltip.wibox.fg = theme.fg_normal
+wifitooltip.textbox.font = theme.font
+wifitooltip.timeout = 0
+wifitooltip:set_shape(function(cr, width, height)
+ gears.shape.infobubble(cr, width, height, corner_radius, arrow_size, width - dpi(120))
+end)
+local mywifisig = awful.widget.watch(
+ { awful.util.shell, "-c", "awk 'NR==3 {printf(\"%d-%.0f\\n\",$2, $3*10/7)}' /proc/net/wireless; iw dev wlan0 link" },
+ 2,
+ function(widget, stdout)
+ local carrier, perc = stdout:match("(%d)-(%d+)")
+ local tiptext = stdout:gsub("(%d)-(%d+)", ""):gsub("%s+$", "")
+ perc = tonumber(perc)
+
+ if carrier == "1" or not perc then
+ wificon:set_image(theme.wifidisc)
+ wifitooltip:set_markup("No carrier")
+ else
+ if perc <= 5 then
+ wificon:set_image(theme.wifinone)
+ elseif perc <= 25 then
+ wificon:set_image(theme.wifilow)
+ elseif perc <= 50 then
+ wificon:set_image(theme.wifimed)
+ elseif perc <= 75 then
+ wificon:set_image(theme.wifihigh)
+ else
+ wificon:set_image(theme.wififull)
+ end
+ wifitooltip:set_markup(tiptext)
+ end
+ end
+)
+wificon:connect_signal("button::press", function() awful.spawn(string.format("%s -e wavemon", awful.util.terminal)) end)
+
+-- Weather
+--[[ to be set before use
+theme.weather = lain.widget.weather({
+ city_id = 2643743, -- placeholder (London)
+ notification_preset = { font = "Monospace 10" },
+ settings = function()
+ units = math.floor(weather_now["main"]["temp"])
+ widget:set_markup(" " .. markup.font(theme.font, units .. "°C") .. " ")
+ end
+})
+--]]
+
+-- Launcher
+local mylauncher = awful.widget.button({image = theme.awesome_icon})
+mylauncher:connect_signal("button::press", function() awful.util.mymainmenu:toggle() end)
+
+-- Separators
+local space = wibox.widget.textbox(" ")
+local rspace1 = wibox.widget.textbox()
+local rspace0 = wibox.widget.textbox()
+local rspace2 = wibox.widget.textbox()
+local rspace3 = wibox.widget.textbox()
+local tspace1 = wibox.widget.textbox()
+tspace1.forced_width = dpi(18)
+rspace1.forced_width = dpi(16)
+rspace0.forced_width = dpi(18)
+rspace2.forced_width = dpi(19)
+rspace3.forced_width = dpi(21)
+
+local lspace1 = wibox.widget.textbox()
+local lspace2 = wibox.widget.textbox()
+local lspace3 = wibox.widget.textbox()
+lspace1.forced_height = dpi(18)
+lspace2.forced_height = dpi(10)
+lspace3.forced_height = dpi(16)
+
+local barcolor = gears.color({
+ type = "linear",
+ from = { 0, dpi(46) },
+ to = { dpi(46), dpi(46) },
+ stops = { {0, theme.bg_focus}, {0.9, theme.bg_focus2} }
+})
+
+local barcolor2 = gears.color({
+ type = "linear",
+ from = { 0, dpi(46) },
+ to = { dpi(46), dpi(46) },
+ stops = { {0, "#323232"}, {1, theme.bg_normal} }
+})
+
+local dockshape = function(cr, width, height)
+ gears.shape.partially_rounded_rect(cr, width, height, false, true, true, false, 6)
+end
+
+function theme.vertical_wibox(s)
+ -- Create the vertical wibox
+ s.dockheight = (35 * s.workarea.height)/100
+
+ s.myleftwibox = wibox({ screen = s, x=0, y=s.workarea.height/2 - s.dockheight/2, width = dpi(6), height = s.dockheight, fg = theme.fg_normal, bg = barcolor2, ontop = true, visible = true, type = "dock" })
+
+ if s.index > 1 and s.myleftwibox.y == 0 then
+ s.myleftwibox.y = screen[1].myleftwibox.y
+ end
+
+ -- Add widgets to the vertical wibox
+ s.myleftwibox:setup {
+ layout = wibox.layout.align.vertical,
+ {
+ layout = wibox.layout.fixed.vertical,
+ lspace1,
+ s.mytaglist,
+ lspace2,
+ s.layoutb,
+ wibox.container.margin(mylauncher, dpi(5), dpi(8), dpi(13), dpi(0)),
+ },
+ }
+
+ -- Add toggling functionalities
+ s.docktimer = gears.timer{ timeout = 2 }
+ s.docktimer:connect_signal("timeout", function()
+ local s = awful.screen.focused()
+ s.myleftwibox.width = dpi(9)
+ s.layoutb.visible = false
+ mylauncher.visible = false
+ if s.docktimer.started then
+ s.docktimer:stop()
+ end
+ end)
+ tag.connect_signal("property::selected", function(t)
+ local s = t.screen or awful.screen.focused()
+ s.myleftwibox.width = dpi(38)
+ s.layoutb.visible = true
+ mylauncher.visible = true
+ gears.surface.apply_shape_bounding(s.myleftwibox, dockshape)
+ if not s.docktimer.started then
+ s.docktimer:start()
+ end
+ end)
+
+ s.myleftwibox:connect_signal("mouse::leave", function()
+ local s = awful.screen.focused()
+ s.myleftwibox.width = dpi(9)
+ s.layoutb.visible = false
+ mylauncher.visible = false
+ end)
+
+ s.myleftwibox:connect_signal("mouse::enter", function()
+ local s = awful.screen.focused()
+ s.myleftwibox.width = dpi(38)
+ s.layoutb.visible = true
+ mylauncher.visible = true
+ gears.surface.apply_shape_bounding(s.myleftwibox, dockshape)
+ end)
+end
+
+
+function theme.at_screen_connect(s)
+ -- Quake application
+ s.quake = lain.util.quake({ app = awful.util.terminal, border = theme.border_width })
+
+ -- If wallpaper is a function, call it with the screen
+ local wallpaper = theme.wallpaper
+ if type(wallpaper) == "function" then
+ wallpaper = wallpaper(s)
+ end
+ gears.wallpaper.maximized(wallpaper, s, true)
+
+ -- Tags
+ awful.tag(awful.util.tagnames, s, awful.layout.layouts[1])
+
+ -- Create a promptbox for each screen
+ s.mypromptbox = awful.widget.prompt()
+ s.mypromptbox.bg = "#00000000"
+
+ -- Create an imagebox widget which will contains an icon indicating which layout we're using.
+ -- We need one layoutbox per screen.
+ s.mylayoutbox = awful.widget.layoutbox(s)
+ s.mylayoutbox:buttons(my_table.join(
+ awful.button({}, 1, function () awful.layout.inc( 1) end),
+ awful.button({}, 2, function () awful.layout.set( awful.layout.layouts[1] ) end),
+ awful.button({}, 3, function () awful.layout.inc(-1) end),
+ awful.button({}, 4, function () awful.layout.inc( 1) end),
+ awful.button({}, 5, function () awful.layout.inc(-1) end)))
+ s.layoutb = wibox.container.margin(s.mylayoutbox, dpi(8), dpi(11), dpi(3), dpi(3))
+
+ -- Create a taglist widget
+ s.mytaglist = awful.widget.taglist(s, awful.widget.taglist.filter.all, awful.util.taglist_buttons, {
+ font = theme.taglist_font,
+ shape = gears.shape.rectangle,
+ spacing = dpi(10),
+ square_unsel = theme.square_unsel,
+ bg_focus = barcolor
+ }, nil, wibox.layout.fixed.vertical())
+
+ -- Create a tasklist widget
+ s.mytasklist = awful.widget.tasklist(s, awful.widget.tasklist.filter.focused, awful.util.tasklist_buttons, { bg_focus = "#00000000" })
+
+ -- Create the wibox
+ s.mywibox = awful.wibar({ position = "top", screen = s, height = dpi(25), bg = gears.color.create_png_pattern(theme.panelbg) })
+
+ -- Add widgets to the wibox
+ s.mywibox:setup {
+ layout = wibox.layout.align.horizontal,
+ expand = "none",
+ { -- Left widgets
+ layout = wibox.layout.fixed.horizontal,
+ s.mypromptbox,
+ tspace1,
+ s.mytasklist,
+ },
+ { -- Middle widgets
+ layout = wibox.layout.flex.horizontal,
+ max_widget_size = 1500,
+ mytextclock
+ },
+ { -- Right widgets
+ layout = wibox.layout.fixed.horizontal,
+ wibox.widget { nil, nil, theme.mpd.widget, layout = wibox.layout.align.horizontal },
+ rspace0,
+ --theme.weather.icon,
+ --theme.weather.widget,
+ rspace1,
+ wificon,
+ rspace0,
+ volicon,
+ rspace2,
+ baticon,
+ rspace3,
+ wibox.widget.systray(),
+ },
+ }
+
+ gears.timer.delayed_call(theme.vertical_wibox, s)
+end
+
+return theme
diff --git a/.config/awesome/themes/vertex/wall.png b/.config/awesome/themes/vertex/wall.png
new file mode 100755
index 0000000..863b1bf
Binary files /dev/null and b/.config/awesome/themes/vertex/wall.png differ