diff --git a/.gitignore b/.gitignore index 46e1560..b2be92b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ -config result diff --git a/hosts/canopus/home.nix b/hosts/canopus/home.nix index 177e377..991e868 100644 --- a/hosts/canopus/home.nix +++ b/hosts/canopus/home.nix @@ -1,5 +1,6 @@ {pkgs, ...}: { imports = [ + ../../modules/home-manager/awesome ../../modules/home-manager/hyprland ../../modules/home-manager/waybar ../../modules/home-manager/picom diff --git a/modules/home-manager/awesome/default.nix b/modules/home-manager/awesome/default.nix new file mode 100644 index 0000000..15d1f22 --- /dev/null +++ b/modules/home-manager/awesome/default.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + home.file = { + ".config/awesome" = { + recursive = true; + source = "${pkgs.tux-awesome-wm-config}"; + }; + }; +} diff --git a/pkgs/awesome/awesome/binds/client/init.lua b/pkgs/awesome/awesome/binds/client/init.lua new file mode 100644 index 0000000..dc8c209 --- /dev/null +++ b/pkgs/awesome/awesome/binds/client/init.lua @@ -0,0 +1,5 @@ +-- Returns all client mouse and keybinds. +return { + keys = require(... .. ".keys"), + mouse = require(... .. ".mouse"), +} diff --git a/pkgs/awesome/awesome/binds/client/keys.lua b/pkgs/awesome/awesome/binds/client/keys.lua new file mode 100644 index 0000000..a3077bf --- /dev/null +++ b/pkgs/awesome/awesome/binds/client/keys.lua @@ -0,0 +1,19 @@ +local awful = require("awful") + +local mod = require("binds.mod") +local modkey = mod.modkey + +--- Client keybindings. +client.connect_signal("request::default_keybindings", function() + awful.keyboard.append_client_keybindings({ + -- Client state management. + awful.key({ modkey }, "f", function(c) + c.fullscreen = not c.fullscreen + c:raise() + end, { description = "toggle fullscreen", group = "client" }), + awful.key({ modkey }, "q", function(c) + c:kill() + end, { description = "close", group = "client" }), + awful.key({ modkey }, "space", awful.client.floating.toggle, { description = "toggle floating", group = "client" }), + }) +end) diff --git a/pkgs/awesome/awesome/binds/client/mouse.lua b/pkgs/awesome/awesome/binds/client/mouse.lua new file mode 100644 index 0000000..0b6adc4 --- /dev/null +++ b/pkgs/awesome/awesome/binds/client/mouse.lua @@ -0,0 +1,19 @@ +local awful = require("awful") + +local mod = require("binds.mod") +local modkey = mod.modkey + +--- Client mouse bindings. +client.connect_signal("request::default_mousebindings", function() + awful.mouse.append_client_mousebindings({ + awful.button(nil, 1, function(c) + c:activate({ context = "mouse_click" }) + end), + awful.button({ modkey }, 1, function(c) + c:activate({ context = "mouse_click", action = "mouse_move" }) + end), + awful.button({ modkey }, 3, function(c) + c:activate({ context = "mouse_click", action = "mouse_resize" }) + end), + }) +end) diff --git a/pkgs/awesome/awesome/binds/global/init.lua b/pkgs/awesome/awesome/binds/global/init.lua new file mode 100644 index 0000000..5357cb5 --- /dev/null +++ b/pkgs/awesome/awesome/binds/global/init.lua @@ -0,0 +1,5 @@ +-- Returns all global WM mouse and keybinds. +return { + keys = require(... .. ".keys"), + mouse = require(... .. ".mouse"), +} diff --git a/pkgs/awesome/awesome/binds/global/keys.lua b/pkgs/awesome/awesome/binds/global/keys.lua new file mode 100644 index 0000000..b0a8d5e --- /dev/null +++ b/pkgs/awesome/awesome/binds/global/keys.lua @@ -0,0 +1,90 @@ +local awful = require("awful") + +local mod = require("binds.mod") +local modkey = mod.modkey + +local apps = require("config.apps") + +--- Global key bindings +awful.keyboard.append_global_keybindings({ + -- General Awesome keys. + awful.key( + { modkey }, + "h", + require("awful.hotkeys_popup").show_help, + { description = "show help", group = "awesome" } + ), + awful.key({ modkey, mod.shift }, "r", awesome.restart, { description = "reload awesome", group = "awesome" }), + awful.key({ modkey, mod.shift }, "q", awesome.quit, { description = "quit awesome", group = "awesome" }), + awful.key({ modkey }, "Return", function() + awful.spawn(apps.terminal) + end, { description = "open a terminal", group = "launcher" }), + awful.key({ modkey }, "a", function() + awful.spawn("rofi -show drun") + end, { description = "run prompt", group = "launcher" }), + + -- Focus related keybindings. + awful.key({ modkey }, "Left", function() + awful.client.focus.bydirection("left") + end, { description = "Focus window to the left", group = "Client" }), + awful.key({ modkey }, "Right", function() + awful.client.focus.bydirection("right") + end, { description = "Focus window to the right", group = "Client" }), + awful.key({ modkey }, "Up", function() + awful.client.focus.bydirection("up") + end, { description = "Focus window above", group = "Client" }), + awful.key({ modkey }, "Down", function() + awful.client.focus.bydirection("down") + end, { description = "Focus window below", group = "Client" }), + awful.key({ modkey }, "Escape", awful.tag.history.restore, { description = "go back", group = "tag" }), + + -- Swap related keybindings. + awful.key({ modkey, mod.shift }, "Left", function() + awful.client.swap.bydirection("left") + end, { description = "Swap window to the left", group = "Client" }), + awful.key({ modkey, mod.shift }, "Right", function() + awful.client.swap.bydirection("right") + end, { description = "Swap window to the right", group = "Client" }), + awful.key({ modkey, mod.shift }, "Up", function() + awful.client.swap.bydirection("up") + end, { description = "Swap window above", group = "Client" }), + awful.key({ modkey, mod.shift }, "Down", function() + awful.client.swap.bydirection("down") + end, { description = "Swap window below", group = "Client" }), + + -- Width related keybindings. + awful.key({ modkey, mod.ctrl }, "Left", function() + awful.tag.incmwfact(-0.05) + end, { description = "decrease master width factor", group = "layout" }), + awful.key({ modkey, mod.ctrl }, "Right", function() + awful.tag.incmwfact(0.05) + end, { description = "increase master width factor", group = "layout" }), + + -- Tag related keybindings. + awful.key({ + modifiers = { modkey }, + keygroup = "numrow", + description = "only view tag", + group = "tag", + on_press = function(index) + local tag = awful.screen.focused().tags[index] + if tag then + tag:view_only() + end + end, + }), + awful.key({ + modifiers = { modkey, mod.shift }, + keygroup = "numrow", + description = "move focused client to tag", + group = "tag", + on_press = function(index) + if client.focus then + local tag = client.focus.screen.tags[index] + if tag then + client.focus:move_to_tag(tag) + end + end + end, + }), +}) diff --git a/pkgs/awesome/awesome/binds/global/mouse.lua b/pkgs/awesome/awesome/binds/global/mouse.lua new file mode 100644 index 0000000..d1078f4 --- /dev/null +++ b/pkgs/awesome/awesome/binds/global/mouse.lua @@ -0,0 +1,12 @@ +local awful = require("awful") + +local widgets = require("ui") + +--- Global mouse bindings +awful.mouse.append_global_mousebindings({ + awful.button(nil, 3, function() + widgets.menu.main:toggle() + end), + awful.button(nil, 4, awful.tag.viewprev), + awful.button(nil, 5, awful.tag.viewnext), +}) diff --git a/pkgs/awesome/awesome/binds/init.lua b/pkgs/awesome/awesome/binds/init.lua new file mode 100644 index 0000000..5de1afd --- /dev/null +++ b/pkgs/awesome/awesome/binds/init.lua @@ -0,0 +1,5 @@ +-- Returns all mouse and keybinds for both clients and the WM. +return { + global = require(... .. ".global"), + client = require(... .. ".client"), +} diff --git a/pkgs/awesome/awesome/binds/mod.lua b/pkgs/awesome/awesome/binds/mod.lua new file mode 100644 index 0000000..bc2b72d --- /dev/null +++ b/pkgs/awesome/awesome/binds/mod.lua @@ -0,0 +1,9 @@ +return { + alt = "Mod1", + super = "Mod4", + shift = "Shift", + ctrl = "Control", + + -- Set Super as default modkey if none is present. + modkey = require("config.user").mod or "Mod4", +} diff --git a/pkgs/awesome/awesome/config/apps.lua b/pkgs/awesome/awesome/config/apps.lua new file mode 100644 index 0000000..c9b21db --- /dev/null +++ b/pkgs/awesome/awesome/config/apps.lua @@ -0,0 +1,10 @@ +-- This is used later as the default terminal and editor to run. +local apps = {} +apps.terminal = "wezterm" +apps.editor = "nvim" +apps.editor_cmd = apps.terminal .. " -e " .. apps.editor + +-- Set the terminal for the menubar. +require("menubar").utils.terminal = apps.terminal + +return apps diff --git a/pkgs/awesome/awesome/config/rules.lua b/pkgs/awesome/awesome/config/rules.lua new file mode 100644 index 0000000..01c6bdd --- /dev/null +++ b/pkgs/awesome/awesome/config/rules.lua @@ -0,0 +1,53 @@ +local awful = require("awful") +local ruled = require("ruled") + +--- Rules. +-- Rules to apply to new clients. +ruled.client.connect_signal("request::rules", function() + -- All clients will match this rule. + ruled.client.append_rule({ + id = "global", + rule = {}, + properties = { + focus = awful.client.focus.filter, + raise = true, + screen = awful.screen.preferred, + placement = awful.placement.no_overlap + awful.placement.no_offscreen, + }, + }) + + -- Floating clients. + ruled.client.append_rule({ + id = "floating", + rule_any = { + instance = { "copyq", "pinentry" }, + class = { + "Arandr", + ".blueman-manager-wrapped", + "Gpick", + }, + -- Note that the name property shown in xprop might be set slightly after creation of the client + -- and the name shown there might not match defined rules here. + name = { + "Event Tester", -- xev. + }, + role = { + "pop-up", -- e.g. Google Chrome's (detached) Developer Tools. + }, + }, + properties = { floating = true }, + }) + + -- Add titlebars to normal clients and dialogs. + -- ruled.client.append_rule({ + -- id = "titlebars", + -- rule_any = { type = { "normal", "dialog" } }, + -- properties = { titlebars_enabled = true }, + -- }) + + -- Set Firefox to always map on the tag named '2' on screen 1. + -- ruled.client.append_rule({ + -- rule = { class = 'Firefox' }, + -- properties = { screen = 1, tag = '2' } + -- }) +end) diff --git a/pkgs/awesome/awesome/config/user.lua b/pkgs/awesome/awesome/config/user.lua new file mode 100644 index 0000000..830285a --- /dev/null +++ b/pkgs/awesome/awesome/config/user.lua @@ -0,0 +1,20 @@ +local awful = require("awful") + +-- Specify user preferences for Awesome's behavior. +return { + -- Default modkey. + -- Usually, Mod4 is the key with a logo between Control and Alt. If you do not like + -- this or do not have such a key, I suggest you to remap Mod4 to another key using + -- xmodmap or other tools. However, you can use another modifier like Mod1, but it + -- may interact with others. + mod = "Mod4", + -- Each screen has its own tag table. You can just define one and append it to all + -- screens (default behavior). + tags = { "1", "2", "3", "4" }, + -- Table of layouts to cover with awful.layout.inc, ORDER MATTERS, the first layout + -- in the table is your DEFAULT LAYOUT. + layouts = { + awful.layout.suit.tile, + awful.layout.suit.floating, + }, +} diff --git a/pkgs/awesome/awesome/rc.lua b/pkgs/awesome/awesome/rc.lua new file mode 100644 index 0000000..b0d51d8 --- /dev/null +++ b/pkgs/awesome/awesome/rc.lua @@ -0,0 +1,40 @@ +-- awesome_mode: api-level=4:screen=on +-- If LuaRocks is installed, make sure that packages installed through it are +-- found (e.g. lgi). If LuaRocks is not installed, do nothing. +pcall(require, "luarocks.loader") + +--- Error handling. +-- Notification library. +local naughty = require("naughty") +-- Check if awesome encountered an error during startup and fell back to +-- another config (This code will only ever execute for the fallback config). +naughty.connect_signal("request::display_error", function(message, startup) + naughty.notification({ + urgency = "critical", + title = "Oops, an error happened" .. (startup and " during startup!" or "!"), + message = message, + }) +end) + +-- Allow Awesome to automatically focus a client upon changing tags or loading. +require("awful.autofocus") +-- Enable hotkeys help widget for VIM and other apps when client with a matching +-- name is opened: +require("awful.hotkeys_popup.keys") + +-- Load the theme. In other words, defines the variables within the `beautiful` +-- table. +require("theme") + +-- Treat all signals. Bear in mind this implies creating all tags, attaching +-- their layouts, setting client behavior and loading UI. +require("signal") + +-- Set all keybinds. +require("binds") + +-- Load all client rules. +require("config.rules") + +-- Start up apps +require("startup") diff --git a/pkgs/awesome/awesome/signal/client.lua b/pkgs/awesome/awesome/signal/client.lua new file mode 100644 index 0000000..2efd756 --- /dev/null +++ b/pkgs/awesome/awesome/signal/client.lua @@ -0,0 +1,15 @@ +-- Add a titlebar if titlebars_enabled is set to true for the client in `config/rules.lua`. +client.connect_signal("request::titlebars", function(c) + -- While this isn't actually in the example configuration, it's the most sane thing to do. + -- If a client expressly says not to draw titlebars on it, just don't. + if c.requests_no_titlebars then + return + end + + require("ui.titlebar").normal(c) +end) + +-- Enable sloppy focus, so that focus follows mouse. +client.connect_signal("mouse::enter", function(c) + c:activate({ context = "mouse_enter", raise = false }) +end) diff --git a/pkgs/awesome/awesome/signal/init.lua b/pkgs/awesome/awesome/signal/init.lua new file mode 100644 index 0000000..7e3350f --- /dev/null +++ b/pkgs/awesome/awesome/signal/init.lua @@ -0,0 +1,9 @@ +-- Allows all signals to be connected and/or emitted. +return { + client = require(... .. ".client"), + -- NOTE: The `tag` file must be loaded before the `screen` one so that + -- the correct layouts defined in `config.user` are appended to the tags + -- upon creation. + tag = require(... .. ".tag"), + screen = require(... .. ".screen"), +} diff --git a/pkgs/awesome/awesome/signal/screen.lua b/pkgs/awesome/awesome/signal/screen.lua new file mode 100644 index 0000000..941fe99 --- /dev/null +++ b/pkgs/awesome/awesome/signal/screen.lua @@ -0,0 +1,40 @@ +local awful = require("awful") +local beautiful = require("beautiful") +local wibox = require("wibox") + +local widgets = require("ui") + +--- Attach tags and widgets to all screens. +screen.connect_signal("request::desktop_decoration", function(s) + -- Create all tags and attach the layouts to each of them. + awful.tag(require("config.user").tags, s, awful.layout.layouts[1]) + -- Attach a wibar to each screen. + widgets.wibar(s) +end) + +--- Wallpaper. +-- NOTE: `awful.wallpaper` is ideal for creating a wallpaper IF YOU +-- BENEFIT FROM IT BEING A WIDGET and not just the root window +-- background. IF YOU JUST WISH TO SET THE ROOT WINDOW BACKGROUND, you +-- may want to use the deprecated `gears.wallpaper` instead. This is +-- the most common case of just wanting to set an image as wallpaper. +screen.connect_signal("request::wallpaper", function(s) + awful.wallpaper({ + screen = s, + widget = { + widget = wibox.container.tile, + valign = "center", + halign = "center", + tiled = false, + { + widget = wibox.widget.imagebox, + image = beautiful.wallpaper, + upscale = true, + downscale = true, + }, + }, + }) +end) +-- An example of what's mentioned above. For more information, see: +-- https://awesomewm.org/apidoc/utility_libraries/gears.wallpaper.html +-- gears.wallpaper.maximized(beautiful.wallpaper) diff --git a/pkgs/awesome/awesome/signal/tag.lua b/pkgs/awesome/awesome/signal/tag.lua new file mode 100644 index 0000000..209ebde --- /dev/null +++ b/pkgs/awesome/awesome/signal/tag.lua @@ -0,0 +1,5 @@ +--- Tag layouts. +-- Appends all layouts defined in `config/user.lua` to all tags. +tag.connect_signal("request::default_layouts", function() + require("awful").layout.append_default_layouts(require("config.user").layouts) +end) diff --git a/pkgs/awesome/awesome/startup.lua b/pkgs/awesome/awesome/startup.lua new file mode 100644 index 0000000..fdff532 --- /dev/null +++ b/pkgs/awesome/awesome/startup.lua @@ -0,0 +1,12 @@ +local awful = require("awful") + +awful.spawn.with_shell([[ + if ! pidof barrierc; then + barrierc -f --debug INFO --display :0 --name esoteric --disable-crypto 192.168.1.2:24800 & + fi +]]) +-- awful.spawn.single_instance("firefox") +-- awful.spawn.single_instance("discord") +-- awful.spawn.single_instance("spotify") +-- awful.spawn.single_instance("copyq") +-- awful.spawn.single_instance("blueman-applet") diff --git a/pkgs/awesome/awesome/theme/default.lua b/pkgs/awesome/awesome/theme/default.lua new file mode 100644 index 0000000..fb4eca3 --- /dev/null +++ b/pkgs/awesome/awesome/theme/default.lua @@ -0,0 +1,126 @@ +local theme_assets = require("beautiful.theme_assets") +local xresources = require("beautiful.xresources") +local rnotification = require("ruled.notification") +local dpi = xresources.apply_dpi + +local gfs = require("gears.filesystem") +local themes_path = gfs.get_themes_dir() + +local theme = {} + +theme.font = "FiraCode 10" + +theme.bg_normal = "#0e0e0e" +theme.bg_focus = "#535d6c" +theme.bg_urgent = "#ff0000" +theme.bg_minimize = "#444444" +theme.bg_systray = "#252525" +theme.systray_icon_spacing = dpi(12) + +theme.fg_normal = "#ffffff" +theme.fg_focus = "#ffffff" +theme.fg_urgent = "#ffffff" +theme.fg_minimize = "#ffffff" + +theme.useless_gap = dpi(6) +theme.border_width = dpi(2) +theme.border_radius = dpi(8) +theme.border_color_normal = "#aae6d9" +theme.border_color_active = "#54CDB3" +theme.border_color_marked = "#91231c" + +-- There are other variable sets +-- overriding the default one when +-- defined, the sets are: +-- taglist_[bg|fg]_[focus|urgent|occupied|empty|volatile] +-- tasklist_[bg|fg]_[focus|urgent] +-- titlebar_[bg|fg]_[normal|focus] +-- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color] +-- prompt_[fg|bg|fg_cursor|bg_cursor|font] +-- hotkeys_[bg|fg|border_width|border_color|shape|opacity|modifiers_fg|label_bg|label_fg|group_margin|font|description_font] +-- Example: +theme.taglist_bg_focus = "#54CDB3" +theme.taglist_fg_focus = "#0f0f0f" +theme.tasklist_bg_focus = "#252525" + +-- Variables set for theming notifications: +-- notification_font +-- notification_[bg|fg] +-- notification_[width|height|margin] +-- notification_[border_color|border_width|shape|opacity] + +-- Variables set for theming the menu: +-- menu_[bg|fg]_[normal|focus] +-- menu_[border_color|border_width] +theme.menu_submenu_icon = themes_path .. "default/submenu.png" +theme.menu_height = dpi(15) +theme.menu_width = dpi(100) + +-- You can add as many variables as +-- you wish and access them by using +-- beautiful.variable in your rc.lua +--theme.bg_widget = "#cc0000" + +-- Define the image to load +theme.titlebar_close_button_normal = themes_path .. "default/titlebar/close_normal.png" +theme.titlebar_close_button_focus = themes_path .. "default/titlebar/close_focus.png" + +theme.titlebar_minimize_button_normal = themes_path .. "default/titlebar/minimize_normal.png" +theme.titlebar_minimize_button_focus = themes_path .. "default/titlebar/minimize_focus.png" + +theme.titlebar_ontop_button_normal_inactive = themes_path .. "default/titlebar/ontop_normal_inactive.png" +theme.titlebar_ontop_button_focus_inactive = themes_path .. "default/titlebar/ontop_focus_inactive.png" +theme.titlebar_ontop_button_normal_active = themes_path .. "default/titlebar/ontop_normal_active.png" +theme.titlebar_ontop_button_focus_active = themes_path .. "default/titlebar/ontop_focus_active.png" + +theme.titlebar_sticky_button_normal_inactive = themes_path .. "default/titlebar/sticky_normal_inactive.png" +theme.titlebar_sticky_button_focus_inactive = themes_path .. "default/titlebar/sticky_focus_inactive.png" +theme.titlebar_sticky_button_normal_active = themes_path .. "default/titlebar/sticky_normal_active.png" +theme.titlebar_sticky_button_focus_active = themes_path .. "default/titlebar/sticky_focus_active.png" + +theme.titlebar_floating_button_normal_inactive = themes_path .. "default/titlebar/floating_normal_inactive.png" +theme.titlebar_floating_button_focus_inactive = themes_path .. "default/titlebar/floating_focus_inactive.png" +theme.titlebar_floating_button_normal_active = themes_path .. "default/titlebar/floating_normal_active.png" +theme.titlebar_floating_button_focus_active = themes_path .. "default/titlebar/floating_focus_active.png" + +theme.titlebar_maximized_button_normal_inactive = themes_path .. "default/titlebar/maximized_normal_inactive.png" +theme.titlebar_maximized_button_focus_inactive = themes_path .. "default/titlebar/maximized_focus_inactive.png" +theme.titlebar_maximized_button_normal_active = themes_path .. "default/titlebar/maximized_normal_active.png" +theme.titlebar_maximized_button_focus_active = themes_path .. "default/titlebar/maximized_focus_active.png" + +theme.wallpaper = "/home/tux/Wallpapers/island-night.png" + +-- You can use your own layout icons like this: +theme.layout_fairh = themes_path .. "default/layouts/fairhw.png" +theme.layout_fairv = themes_path .. "default/layouts/fairvw.png" +theme.layout_floating = themes_path .. "default/layouts/floatingw.png" +theme.layout_magnifier = themes_path .. "default/layouts/magnifierw.png" +theme.layout_max = themes_path .. "default/layouts/maxw.png" +theme.layout_fullscreen = themes_path .. "default/layouts/fullscreenw.png" +theme.layout_tilebottom = themes_path .. "default/layouts/tilebottomw.png" +theme.layout_tileleft = themes_path .. "default/layouts/tileleftw.png" +theme.layout_tile = themes_path .. "default/layouts/tilew.png" +theme.layout_tiletop = themes_path .. "default/layouts/tiletopw.png" +theme.layout_spiral = themes_path .. "default/layouts/spiralw.png" +theme.layout_dwindle = themes_path .. "default/layouts/dwindlew.png" +theme.layout_cornernw = themes_path .. "default/layouts/cornernww.png" +theme.layout_cornerne = themes_path .. "default/layouts/cornernew.png" +theme.layout_cornersw = themes_path .. "default/layouts/cornersww.png" +theme.layout_cornerse = themes_path .. "default/layouts/cornersew.png" + +-- Generate Awesome icon: +theme.awesome_icon = theme_assets.awesome_icon(theme.menu_height, theme.bg_focus, theme.fg_focus) + +-- Define the icon theme for application icons. If not set then the icons +-- from /usr/share/icons and /usr/share/icons/hicolor will be used. +theme.icon_theme = nil + +-- Set different colors for urgent notifications. +rnotification.connect_signal("request::rules", function() + rnotification.append_rule({ + rule = { urgency = "critical" }, + properties = { bg = "#ff0000", fg = "#ffffff" }, + }) +end) + +return theme diff --git a/pkgs/awesome/awesome/theme/icons/_blank.svg b/pkgs/awesome/awesome/theme/icons/_blank.svg new file mode 100644 index 0000000..bc7da76 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/_blank.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/apple-keyboard-command.svg b/pkgs/awesome/awesome/theme/icons/apple-keyboard-command.svg new file mode 100644 index 0000000..a63f1e7 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/apple-keyboard-command.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/application-variable-outline.svg b/pkgs/awesome/awesome/theme/icons/application-variable-outline.svg new file mode 100644 index 0000000..ecafece --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/application-variable-outline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/application-variable.svg b/pkgs/awesome/awesome/theme/icons/application-variable.svg new file mode 100644 index 0000000..b9b8d6f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/application-variable.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/apps.svg b/pkgs/awesome/awesome/theme/icons/apps.svg new file mode 100644 index 0000000..1bc9052 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/apps.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/arrange-bring-forward.svg b/pkgs/awesome/awesome/theme/icons/arrange-bring-forward.svg new file mode 100644 index 0000000..ad81b4c --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/arrange-bring-forward.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/arrow-down-right-bold.svg b/pkgs/awesome/awesome/theme/icons/arrow-down-right-bold.svg new file mode 100644 index 0000000..592a370 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/arrow-down-right-bold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/arrow-u-left-top.svg b/pkgs/awesome/awesome/theme/icons/arrow-u-left-top.svg new file mode 100644 index 0000000..239726d --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/arrow-u-left-top.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/awesomewm.svg b/pkgs/awesome/awesome/theme/icons/awesomewm.svg new file mode 100644 index 0000000..bec2b39 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/awesomewm.svg @@ -0,0 +1,18 @@ + + + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/bluetooth-settings.svg b/pkgs/awesome/awesome/theme/icons/bluetooth-settings.svg new file mode 100644 index 0000000..bf9aa80 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/bluetooth-settings.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/book-clock-outline.svg b/pkgs/awesome/awesome/theme/icons/book-clock-outline.svg new file mode 100644 index 0000000..a4d79b6 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/book-clock-outline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/book-clock.svg b/pkgs/awesome/awesome/theme/icons/book-clock.svg new file mode 100644 index 0000000..9812ef8 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/book-clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/calculator.svg b/pkgs/awesome/awesome/theme/icons/calculator.svg new file mode 100644 index 0000000..e9cbd8b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/calculator.svg @@ -0,0 +1 @@ +calculator \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/calendar-month.svg b/pkgs/awesome/awesome/theme/icons/calendar-month.svg new file mode 100644 index 0000000..3f9f342 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/calendar-month.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/chart-line.svg b/pkgs/awesome/awesome/theme/icons/chart-line.svg new file mode 100644 index 0000000..eeb7259 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chart-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/check-bold.svg b/pkgs/awesome/awesome/theme/icons/check-bold.svg new file mode 100644 index 0000000..14f7869 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/check-bold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/check.svg b/pkgs/awesome/awesome/theme/icons/check.svg new file mode 100644 index 0000000..49cf48b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/checkbox-blank-outline.svg b/pkgs/awesome/awesome/theme/icons/checkbox-blank-outline.svg new file mode 100644 index 0000000..26c7b95 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/checkbox-blank-outline.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/checkbox-blank.svg b/pkgs/awesome/awesome/theme/icons/checkbox-blank.svg new file mode 100644 index 0000000..24ca278 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/checkbox-blank.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/checkbox-marked.svg b/pkgs/awesome/awesome/theme/icons/checkbox-marked.svg new file mode 100644 index 0000000..0226982 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/checkbox-marked.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/chevron-double-up.svg b/pkgs/awesome/awesome/theme/icons/chevron-double-up.svg new file mode 100644 index 0000000..3166c17 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chevron-double-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/chevron-down.svg b/pkgs/awesome/awesome/theme/icons/chevron-down.svg new file mode 100644 index 0000000..f028022 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chevron-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/chevron-left.svg b/pkgs/awesome/awesome/theme/icons/chevron-left.svg new file mode 100644 index 0000000..75dcd62 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chevron-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/chevron-right.svg b/pkgs/awesome/awesome/theme/icons/chevron-right.svg new file mode 100644 index 0000000..a763cfd --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chevron-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/chevron-triple-up.svg b/pkgs/awesome/awesome/theme/icons/chevron-triple-up.svg new file mode 100644 index 0000000..11dcded --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chevron-triple-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/chevron-up.svg b/pkgs/awesome/awesome/theme/icons/chevron-up.svg new file mode 100644 index 0000000..fe14804 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/chevron-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/circle-medium.svg b/pkgs/awesome/awesome/theme/icons/circle-medium.svg new file mode 100644 index 0000000..46547ca --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/circle-medium.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/circle-opacity.svg b/pkgs/awesome/awesome/theme/icons/circle-opacity.svg new file mode 100644 index 0000000..ca26ce1 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/circle-opacity.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-fast.svg b/pkgs/awesome/awesome/theme/icons/clock-fast.svg new file mode 100644 index 0000000..cdfb6fd --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-fast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-1.svg b/pkgs/awesome/awesome/theme/icons/clock-time-1.svg new file mode 100644 index 0000000..1e79532 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-10.svg b/pkgs/awesome/awesome/theme/icons/clock-time-10.svg new file mode 100644 index 0000000..63058c7 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-10.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-11.svg b/pkgs/awesome/awesome/theme/icons/clock-time-11.svg new file mode 100644 index 0000000..500fb64 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-11.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-12.svg b/pkgs/awesome/awesome/theme/icons/clock-time-12.svg new file mode 100644 index 0000000..53971f9 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-12.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-2.svg b/pkgs/awesome/awesome/theme/icons/clock-time-2.svg new file mode 100644 index 0000000..dcd69ca --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-3.svg b/pkgs/awesome/awesome/theme/icons/clock-time-3.svg new file mode 100644 index 0000000..f76422c --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-4.svg b/pkgs/awesome/awesome/theme/icons/clock-time-4.svg new file mode 100644 index 0000000..cf6d59f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-5.svg b/pkgs/awesome/awesome/theme/icons/clock-time-5.svg new file mode 100644 index 0000000..7b8d268 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-5.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-6.svg b/pkgs/awesome/awesome/theme/icons/clock-time-6.svg new file mode 100644 index 0000000..be6e0c2 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-7.svg b/pkgs/awesome/awesome/theme/icons/clock-time-7.svg new file mode 100644 index 0000000..6fcf8a6 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-7.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-8.svg b/pkgs/awesome/awesome/theme/icons/clock-time-8.svg new file mode 100644 index 0000000..d1a0e1f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-8.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/clock-time-9.svg b/pkgs/awesome/awesome/theme/icons/clock-time-9.svg new file mode 100644 index 0000000..372e13b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/clock-time-9.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/close.svg b/pkgs/awesome/awesome/theme/icons/close.svg new file mode 100644 index 0000000..096198c --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/close.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/cogs.svg b/pkgs/awesome/awesome/theme/icons/cogs.svg new file mode 100644 index 0000000..03f7593 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/cogs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/console-line.svg b/pkgs/awesome/awesome/theme/icons/console-line.svg new file mode 100644 index 0000000..81da3c3 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/console-line.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/content-copy.svg b/pkgs/awesome/awesome/theme/icons/content-copy.svg new file mode 100644 index 0000000..7280ce0 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/content-copy.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/delete-clock-outline.svg b/pkgs/awesome/awesome/theme/icons/delete-clock-outline.svg new file mode 100644 index 0000000..8449f51 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/delete-clock-outline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/delete-clock.svg b/pkgs/awesome/awesome/theme/icons/delete-clock.svg new file mode 100644 index 0000000..51e1ddb --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/delete-clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/delete-forever.svg b/pkgs/awesome/awesome/theme/icons/delete-forever.svg new file mode 100644 index 0000000..0f1c963 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/delete-forever.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/dock-left.svg b/pkgs/awesome/awesome/theme/icons/dock-left.svg new file mode 100644 index 0000000..cf4471c --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/dock-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/dock-top.svg b/pkgs/awesome/awesome/theme/icons/dock-top.svg new file mode 100644 index 0000000..538916d --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/dock-top.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/download.svg b/pkgs/awesome/awesome/theme/icons/download.svg new file mode 100644 index 0000000..2cfe720 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/download.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/emoticon-cool.svg b/pkgs/awesome/awesome/theme/icons/emoticon-cool.svg new file mode 100644 index 0000000..4d6659e --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/emoticon-cool.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/exit-run.svg b/pkgs/awesome/awesome/theme/icons/exit-run.svg new file mode 100644 index 0000000..5f0b0cd --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/exit-run.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/eye-off.svg b/pkgs/awesome/awesome/theme/icons/eye-off.svg new file mode 100644 index 0000000..94b85b4 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/eye-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/file-document-edit.svg b/pkgs/awesome/awesome/theme/icons/file-document-edit.svg new file mode 100644 index 0000000..8a47c3e --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/file-document-edit.svg @@ -0,0 +1 @@ +file-document-edit \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/firefox.svg b/pkgs/awesome/awesome/theme/icons/firefox.svg new file mode 100644 index 0000000..b08201e --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/firefox.svg @@ -0,0 +1 @@ +firefox \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/folder-image.svg b/pkgs/awesome/awesome/theme/icons/folder-image.svg new file mode 100644 index 0000000..fe202ae --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/folder-image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/folder.svg b/pkgs/awesome/awesome/theme/icons/folder.svg new file mode 100644 index 0000000..3e7692f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/folder.svg @@ -0,0 +1 @@ +folder \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/fullscreen.svg b/pkgs/awesome/awesome/theme/icons/fullscreen.svg new file mode 100644 index 0000000..cfb6375 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/fullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/help.svg b/pkgs/awesome/awesome/theme/icons/help.svg new file mode 100644 index 0000000..4c7886f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/help.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/home-thermometer.svg b/pkgs/awesome/awesome/theme/icons/home-thermometer.svg new file mode 100644 index 0000000..6f95a29 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/home-thermometer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/identifier.svg b/pkgs/awesome/awesome/theme/icons/identifier.svg new file mode 100644 index 0000000..6d60392 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/identifier.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/image-filter-center-focus.svg b/pkgs/awesome/awesome/theme/icons/image-filter-center-focus.svg new file mode 100644 index 0000000..5d01420 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/image-filter-center-focus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/image-size-select-actual.svg b/pkgs/awesome/awesome/theme/icons/image-size-select-actual.svg new file mode 100644 index 0000000..7945ea9 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/image-size-select-actual.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/keyboard.svg b/pkgs/awesome/awesome/theme/icons/keyboard.svg new file mode 100644 index 0000000..1cef8de --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/keyboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/lan-disconnect.svg b/pkgs/awesome/awesome/theme/icons/lan-disconnect.svg new file mode 100644 index 0000000..5cbdfbd --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/lan-disconnect.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/lan-pending.svg b/pkgs/awesome/awesome/theme/icons/lan-pending.svg new file mode 100644 index 0000000..48946b4 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/lan-pending.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/layers-triple.svg b/pkgs/awesome/awesome/theme/icons/layers-triple.svg new file mode 100644 index 0000000..14fbc90 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/layers-triple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/layouts/floating.svg b/pkgs/awesome/awesome/theme/icons/layouts/floating.svg new file mode 100644 index 0000000..76d97f9 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/layouts/floating.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/pkgs/awesome/awesome/theme/icons/layouts/fullscreen.svg b/pkgs/awesome/awesome/theme/icons/layouts/fullscreen.svg new file mode 100644 index 0000000..19ec292 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/layouts/fullscreen.svg @@ -0,0 +1,8 @@ + + + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/layouts/max.svg b/pkgs/awesome/awesome/theme/icons/layouts/max.svg new file mode 100644 index 0000000..16fa520 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/layouts/max.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/layouts/tiling.center.svg b/pkgs/awesome/awesome/theme/icons/layouts/tiling.center.svg new file mode 100644 index 0000000..aa93dad --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/layouts/tiling.center.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/pkgs/awesome/awesome/theme/icons/layouts/tiling.right.svg b/pkgs/awesome/awesome/theme/icons/layouts/tiling.right.svg new file mode 100644 index 0000000..f4b01c5 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/layouts/tiling.right.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/pkgs/awesome/awesome/theme/icons/lightbulb-on.svg b/pkgs/awesome/awesome/theme/icons/lightbulb-on.svg new file mode 100644 index 0000000..2213415 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/lightbulb-on.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/lock.svg b/pkgs/awesome/awesome/theme/icons/lock.svg new file mode 100644 index 0000000..5c0eb3f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/logout.svg b/pkgs/awesome/awesome/theme/icons/logout.svg new file mode 100644 index 0000000..2a6e682 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/logout.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/menu-right.svg b/pkgs/awesome/awesome/theme/icons/menu-right.svg new file mode 100644 index 0000000..bf1fdae --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/menu-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/menu.svg b/pkgs/awesome/awesome/theme/icons/menu.svg new file mode 100644 index 0000000..cad83c2 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/menu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/minus.svg b/pkgs/awesome/awesome/theme/icons/minus.svg new file mode 100644 index 0000000..4dbbb0b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/minus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/monitor.svg b/pkgs/awesome/awesome/theme/icons/monitor.svg new file mode 100644 index 0000000..024553c --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/monitor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/move-resize.svg b/pkgs/awesome/awesome/theme/icons/move-resize.svg new file mode 100644 index 0000000..87154b3 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/move-resize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/music.svg b/pkgs/awesome/awesome/theme/icons/music.svg new file mode 100644 index 0000000..2509ea8 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/music.svg @@ -0,0 +1 @@ +music \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/open-in-app.svg b/pkgs/awesome/awesome/theme/icons/open-in-app.svg new file mode 100644 index 0000000..ebd9f65 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/open-in-app.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/open-in-new.svg b/pkgs/awesome/awesome/theme/icons/open-in-new.svg new file mode 100644 index 0000000..cd0597f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/open-in-new.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/pause.svg b/pkgs/awesome/awesome/theme/icons/pause.svg new file mode 100644 index 0000000..a95f67f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/pause.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/pin-off.svg b/pkgs/awesome/awesome/theme/icons/pin-off.svg new file mode 100644 index 0000000..a75c0ec --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/pin-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/pin.svg b/pkgs/awesome/awesome/theme/icons/pin.svg new file mode 100644 index 0000000..01524e0 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/pin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/pirate.svg b/pkgs/awesome/awesome/theme/icons/pirate.svg new file mode 100644 index 0000000..e5ebd88 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/pirate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/play.svg b/pkgs/awesome/awesome/theme/icons/play.svg new file mode 100644 index 0000000..bf94bb4 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/play.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/plus.svg b/pkgs/awesome/awesome/theme/icons/plus.svg new file mode 100644 index 0000000..bb280a8 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/power-settings.svg b/pkgs/awesome/awesome/theme/icons/power-settings.svg new file mode 100644 index 0000000..740c428 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/power-settings.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/power.svg b/pkgs/awesome/awesome/theme/icons/power.svg new file mode 100644 index 0000000..b5161d2 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/power.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/radiobox-blank.svg b/pkgs/awesome/awesome/theme/icons/radiobox-blank.svg new file mode 100644 index 0000000..2edf309 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/radiobox-blank.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/radiobox-marked.svg b/pkgs/awesome/awesome/theme/icons/radiobox-marked.svg new file mode 100644 index 0000000..ae433b2 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/radiobox-marked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/refresh.svg b/pkgs/awesome/awesome/theme/icons/refresh.svg new file mode 100644 index 0000000..04b9c88 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/refresh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/rename.svg b/pkgs/awesome/awesome/theme/icons/rename.svg new file mode 100644 index 0000000..14dd500 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/rename.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/restart.svg b/pkgs/awesome/awesome/theme/icons/restart.svg new file mode 100644 index 0000000..a6134ea --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/restart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/shuffle-variant.svg b/pkgs/awesome/awesome/theme/icons/shuffle-variant.svg new file mode 100644 index 0000000..f494617 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/shuffle-variant.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/skip-next.svg b/pkgs/awesome/awesome/theme/icons/skip-next.svg new file mode 100644 index 0000000..8554d03 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/skip-next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/skip-previous.svg b/pkgs/awesome/awesome/theme/icons/skip-previous.svg new file mode 100644 index 0000000..6059135 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/skip-previous.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/sleep.svg b/pkgs/awesome/awesome/theme/icons/sleep.svg new file mode 100644 index 0000000..0d6dbc0 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/sleep.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/speedometer-slow.svg b/pkgs/awesome/awesome/theme/icons/speedometer-slow.svg new file mode 100644 index 0000000..f6f7343 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/speedometer-slow.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/speedometer.svg b/pkgs/awesome/awesome/theme/icons/speedometer.svg new file mode 100644 index 0000000..fd612f3 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/speedometer.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/stop.svg b/pkgs/awesome/awesome/theme/icons/stop.svg new file mode 100644 index 0000000..ce130b5 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/stop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/tag-arrow-down.svg b/pkgs/awesome/awesome/theme/icons/tag-arrow-down.svg new file mode 100644 index 0000000..8467c3e --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/tag-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/tag-multiple.svg b/pkgs/awesome/awesome/theme/icons/tag-multiple.svg new file mode 100644 index 0000000..be69e02 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/tag-multiple.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/tag.svg b/pkgs/awesome/awesome/theme/icons/tag.svg new file mode 100644 index 0000000..45a61f9 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/tag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/target.svg b/pkgs/awesome/awesome/theme/icons/target.svg new file mode 100644 index 0000000..717d5b1 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/target.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/theme-light-dark.svg b/pkgs/awesome/awesome/theme/icons/theme-light-dark.svg new file mode 100644 index 0000000..99e70a9 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/theme-light-dark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/thermometer-lines.svg b/pkgs/awesome/awesome/theme/icons/thermometer-lines.svg new file mode 100644 index 0000000..6779eb0 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/thermometer-lines.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/thermometer.svg b/pkgs/awesome/awesome/theme/icons/thermometer.svg new file mode 100644 index 0000000..c9a5f5a --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/thermometer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/timer-outline.svg b/pkgs/awesome/awesome/theme/icons/timer-outline.svg new file mode 100644 index 0000000..41e58c8 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/timer-outline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/timer-play.svg b/pkgs/awesome/awesome/theme/icons/timer-play.svg new file mode 100644 index 0000000..36873b1 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/timer-play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/timer-sand.svg b/pkgs/awesome/awesome/theme/icons/timer-sand.svg new file mode 100644 index 0000000..35a8847 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/timer-sand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/timer-settings.svg b/pkgs/awesome/awesome/theme/icons/timer-settings.svg new file mode 100644 index 0000000..dc39762 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/timer-settings.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/toggle-switch-off-outline.svg b/pkgs/awesome/awesome/theme/icons/toggle-switch-off-outline.svg new file mode 100644 index 0000000..2dc1f12 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/toggle-switch-off-outline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/toggle-switch-off.svg b/pkgs/awesome/awesome/theme/icons/toggle-switch-off.svg new file mode 100644 index 0000000..2eb827f --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/toggle-switch-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/toggle-switch-outline.svg b/pkgs/awesome/awesome/theme/icons/toggle-switch-outline.svg new file mode 100644 index 0000000..4512245 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/toggle-switch-outline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/toggle-switch.svg b/pkgs/awesome/awesome/theme/icons/toggle-switch.svg new file mode 100644 index 0000000..c930e54 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/toggle-switch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/toolbox.svg b/pkgs/awesome/awesome/theme/icons/toolbox.svg new file mode 100644 index 0000000..44e4bf6 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/toolbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/tortoise.svg b/pkgs/awesome/awesome/theme/icons/tortoise.svg new file mode 100644 index 0000000..56ddcd2 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/tortoise.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/tune.svg b/pkgs/awesome/awesome/theme/icons/tune.svg new file mode 100644 index 0000000..84cab5b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/tune.svg @@ -0,0 +1 @@ + diff --git a/pkgs/awesome/awesome/theme/icons/unfold-less-vertical.svg b/pkgs/awesome/awesome/theme/icons/unfold-less-vertical.svg new file mode 100644 index 0000000..1db3215 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/unfold-less-vertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/upload.svg b/pkgs/awesome/awesome/theme/icons/upload.svg new file mode 100644 index 0000000..f69b8e7 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/video.svg b/pkgs/awesome/awesome/theme/icons/video.svg new file mode 100644 index 0000000..c6516b8 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/video.svg @@ -0,0 +1 @@ +video \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/view-grid.svg b/pkgs/awesome/awesome/theme/icons/view-grid.svg new file mode 100644 index 0000000..fb60860 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/view-grid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/volume.svg b/pkgs/awesome/awesome/theme/icons/volume.svg new file mode 100644 index 0000000..d2f6875 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/volume.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/pkgs/awesome/awesome/theme/icons/water-thermometer.svg b/pkgs/awesome/awesome/theme/icons/water-thermometer.svg new file mode 100644 index 0000000..ca033bd --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/water-thermometer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/weather-pouring.svg b/pkgs/awesome/awesome/theme/icons/weather-pouring.svg new file mode 100644 index 0000000..a555c2b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/weather-pouring.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/weather-rainy.svg b/pkgs/awesome/awesome/theme/icons/weather-rainy.svg new file mode 100644 index 0000000..c4d3a1c --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/weather-rainy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/web.svg b/pkgs/awesome/awesome/theme/icons/web.svg new file mode 100644 index 0000000..46b742b --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/web.svg @@ -0,0 +1 @@ +web \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/window-close.svg b/pkgs/awesome/awesome/theme/icons/window-close.svg new file mode 100644 index 0000000..3d3e98d --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/window-close.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/window-maximize.svg b/pkgs/awesome/awesome/theme/icons/window-maximize.svg new file mode 100644 index 0000000..93512fc --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/window-maximize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/icons/window-minimize.svg b/pkgs/awesome/awesome/theme/icons/window-minimize.svg new file mode 100644 index 0000000..7b3c264 --- /dev/null +++ b/pkgs/awesome/awesome/theme/icons/window-minimize.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkgs/awesome/awesome/theme/init.lua b/pkgs/awesome/awesome/theme/init.lua new file mode 100644 index 0000000..a32f87f --- /dev/null +++ b/pkgs/awesome/awesome/theme/init.lua @@ -0,0 +1,7 @@ +-- Theme handling library +local beautiful = require("beautiful") +-- Standard awesome library +local gears = require("gears") + +-- Themes define colors, icons, font and wallpapers. +beautiful.init(gears.filesystem.get_configuration_dir() .. "theme/default.lua") diff --git a/pkgs/awesome/awesome/ui/init.lua b/pkgs/awesome/awesome/ui/init.lua new file mode 100644 index 0000000..6291117 --- /dev/null +++ b/pkgs/awesome/awesome/ui/init.lua @@ -0,0 +1,7 @@ +-- Returns all widgets, with assigned names, in a table. +return { + menu = require(... .. ".menu"), + notification = require(... .. ".notification"), + titlebar = require(... .. ".titlebar"), + wibar = require(... .. ".wibar"), +} diff --git a/pkgs/awesome/awesome/ui/menu/init.lua b/pkgs/awesome/awesome/ui/menu/init.lua new file mode 100644 index 0000000..6b9ba7b --- /dev/null +++ b/pkgs/awesome/awesome/ui/menu/init.lua @@ -0,0 +1,41 @@ +local awful = require("awful") +local beautiful = require("beautiful") + +--- Menu +local menu = {} +local apps = require("config.apps") +local hkey_popup = require("awful.hotkeys_popup") + +-- Create a main menu. +menu.awesome = { + { + "hotkeys", + function() + hkey_popup.show_help(nil, awful.screen.focused()) + end, + }, + { "manual", apps.terminal .. " -e man awesome" }, + -- Not part of the original config but extremely useful, especially as the example + -- config is meant to serve as an example to build your own environment upon. + { + "docs", + (os.getenv("BROWSER") or "firefox") .. " https://awesomewm.org/apidoc", + }, + { "edit config", apps.editor_cmd .. " " .. awesome.conffile }, + { "restart", awesome.restart }, + { + "quit", + function() + awesome.quit() + end, + }, +} + +menu.main = awful.menu({ + items = { + { "awesome", menu.awesome, beautiful.awesome_icon }, + { "open terminal", apps.terminal }, + }, +}) + +return menu diff --git a/pkgs/awesome/awesome/ui/notification/init.lua b/pkgs/awesome/awesome/ui/notification/init.lua new file mode 100644 index 0000000..5744058 --- /dev/null +++ b/pkgs/awesome/awesome/ui/notification/init.lua @@ -0,0 +1,5 @@ +-- Allows for expanding into notifications for special cases, for example, +-- for music. +return { + normal = require(... .. ".normal"), +} diff --git a/pkgs/awesome/awesome/ui/notification/normal.lua b/pkgs/awesome/awesome/ui/notification/normal.lua new file mode 100644 index 0000000..8a27481 --- /dev/null +++ b/pkgs/awesome/awesome/ui/notification/normal.lua @@ -0,0 +1,20 @@ +local awful = require("awful") +local naughty = require("naughty") +local ruled = require("ruled") + +--- Notifications +ruled.notification.connect_signal("request::rules", function() + -- All notifications will match this rule. + ruled.notification.append_rule({ + rule = nil, + properties = { + screen = awful.screen.preferred, + implicit_timeout = 5, + }, + }) +end) + +-- Defines the default notification layout. +naughty.connect_signal("request::display", function(n) + naughty.layout.box({ notification = n }) +end) diff --git a/pkgs/awesome/awesome/ui/titlebar/init.lua b/pkgs/awesome/awesome/ui/titlebar/init.lua new file mode 100644 index 0000000..f227b31 --- /dev/null +++ b/pkgs/awesome/awesome/ui/titlebar/init.lua @@ -0,0 +1,5 @@ +-- Returns titlebars for normal clients, this structure allows one to +-- easily define special titlebars for particular clients. +return { + normal = require(... .. ".normal"), +} diff --git a/pkgs/awesome/awesome/ui/titlebar/normal.lua b/pkgs/awesome/awesome/ui/titlebar/normal.lua new file mode 100644 index 0000000..7eb98ac --- /dev/null +++ b/pkgs/awesome/awesome/ui/titlebar/normal.lua @@ -0,0 +1,44 @@ +local awful = require("awful") +local wibox = require("wibox") + +--- The titlebar to be used on normal clients. +return function(c) + -- Buttons for the titlebar. + local buttons = { + awful.button(nil, 1, function() + c:activate({ context = "titlebar", action = "mouse_move" }) + end), + awful.button(nil, 3, function() + c:activate({ context = "titlebar", action = "mouse_resize" }) + end), + } + + -- Draws the client titlebar at the default position (top) and size. + awful.titlebar(c).widget = wibox.widget({ + layout = wibox.layout.align.horizontal, + -- Left + { + layout = wibox.layout.fixed.horizontal, + awful.titlebar.widget.iconwidget(c), + buttons = buttons, + }, + -- Middle + { + layout = wibox.layout.flex.horizontal, + { -- Title + widget = awful.titlebar.widget.titlewidget(c), + halign = "center", + }, + buttons = buttons, + }, + -- Right + { + layout = wibox.layout.fixed.horizontal, + awful.titlebar.widget.floatingbutton(c), + awful.titlebar.widget.maximizedbutton(c), + awful.titlebar.widget.stickybutton(c), + awful.titlebar.widget.ontopbutton(c), + awful.titlebar.widget.closebutton(c), + }, + }) +end diff --git a/pkgs/awesome/awesome/ui/wibar/init.lua b/pkgs/awesome/awesome/ui/wibar/init.lua new file mode 100644 index 0000000..54912fa --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/init.lua @@ -0,0 +1,74 @@ +local awful = require("awful") +local wibox = require("wibox") +local gears = require("gears") +local beautiful = require("beautiful") +local dpi = beautiful.xresources.apply_dpi + +local module = require(... .. ".module") + +-- Function to create a capsule widget +local function create_capsule_widget(content_widget) + local capsule = wibox.widget({ + { + { + content_widget, + widget = wibox.container.margin, + margins = { + top = dpi(8), + bottom = dpi(8), + left = dpi(8), + right = dpi(8), + }, + }, + widget = wibox.container.background, + shape_border_color = "#272727", + shape_border_width = 1, + + shape = function(cr, width, height) + gears.shape.rounded_rect(cr, width, height, beautiful.border_radius) + end, + bg = beautiful.bg_systray, + }, + widget = wibox.container.margin, + margins = beautiful.useless_gap, + }) + + return capsule +end + +return function(s) + -- Create the wibox + s.mywibox = awful.wibar({ + position = "top", + height = dpi(45), + screen = s, + bg = beautiful.bg_normal, + widget = { + widget = wibox.container.margin, + left = beautiful.useless_gap, + right = beautiful.useless_gap, + { + layout = wibox.layout.align.horizontal, + expand = "none", + { + layout = wibox.layout.fixed.horizontal, + create_capsule_widget(module.layoutbox()), + module.tasklist(s), + }, + { + layout = wibox.layout.fixed.horizontal, + module.taglist(s), + }, + { + layout = wibox.layout.fixed.horizontal, + create_capsule_widget(module.profile()), + create_capsule_widget(module.gpu()), + create_capsule_widget(module.tailscale()), + create_capsule_widget(module.battery()), + create_capsule_widget(module.systray()), + create_capsule_widget(wibox.widget.textclock()), + }, + }, + }, + }) +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/battery.lua b/pkgs/awesome/awesome/ui/wibar/module/battery.lua new file mode 100644 index 0000000..e56a197 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/battery.lua @@ -0,0 +1,12 @@ +-- Battery widget for Awesome Window Manager +local watch = require("awful.widget.watch") +local wibox = require("wibox") + +local battery = wibox.widget.textbox("Bat: NA") +watch('bash -c "cat /sys/class/power_supply/BAT0/capacity"', 10, function(_, stdout) + battery.text = "Bat:" .. " " .. stdout +end) + +return function() + return battery +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/gpu.lua b/pkgs/awesome/awesome/ui/wibar/module/gpu.lua new file mode 100644 index 0000000..80b72c2 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/gpu.lua @@ -0,0 +1,12 @@ +-- GPU widget for Awesome Window Manager +local watch = require("awful.widget.watch") +local wibox = require("wibox") + +local gpu = wibox.widget.textbox("GPU: NA") +watch('bash -c "supergfxctl -g"', 10, function(_, stdout) + gpu.text = "GPU:" .. " " .. stdout +end) + +return function() + return gpu +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/init.lua b/pkgs/awesome/awesome/ui/wibar/module/init.lua new file mode 100644 index 0000000..bbe44a0 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/init.lua @@ -0,0 +1,13 @@ +-- Return a table containing all bar modules, with a name attached +-- to each. +return { + launcher = require(... .. ".launcher"), + taglist = require(... .. ".taglist"), + tasklist = require(... .. ".tasklist"), + layoutbox = require(... .. ".layoutbox"), + battery = require(... .. ".battery"), + tailscale = require(... .. ".tailscale"), + gpu = require(... .. ".gpu"), + profile = require(... .. ".profile"), + systray = require(... .. ".systray"), +} diff --git a/pkgs/awesome/awesome/ui/wibar/module/launcher.lua b/pkgs/awesome/awesome/ui/wibar/module/launcher.lua new file mode 100644 index 0000000..7f709c8 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/launcher.lua @@ -0,0 +1,10 @@ +local awful = require("awful") +local beautiful = require("beautiful") + +-- Create a launcher widget. Opens the Awesome menu when clicked. +return function() + return awful.widget.launcher({ + image = beautiful.awesome_icon, + menu = require("ui.menu").main, + }) +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/layoutbox.lua b/pkgs/awesome/awesome/ui/wibar/module/layoutbox.lua new file mode 100644 index 0000000..e9db3d4 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/layoutbox.lua @@ -0,0 +1,9 @@ +local awful = require("awful") + +return function(s) + -- Create an imagebox widget which will contain an icon indicating which layout we're using. + -- We need one layoutbox per screen. + return awful.widget.layoutbox({ + screen = s, + }) +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/profile.lua b/pkgs/awesome/awesome/ui/wibar/module/profile.lua new file mode 100644 index 0000000..4cb03ee --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/profile.lua @@ -0,0 +1,12 @@ +-- Profile widget for Awesome Window Manager +local watch = require("awful.widget.watch") +local wibox = require("wibox") + +local profile = wibox.widget.textbox("P: NA") +watch("bash -c \"asusctl profile -p | awk '{print $NF}'\"", 10, function(_, stdout) + profile.text = "P:" .. " " .. stdout +end) + +return function() + return profile +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/systray.lua b/pkgs/awesome/awesome/ui/wibar/module/systray.lua new file mode 100644 index 0000000..653dc98 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/systray.lua @@ -0,0 +1,18 @@ +-- SysTray widget for Awesome Window Manager +local xresources = require("beautiful.xresources") +local dpi = xresources.apply_dpi +local wibox = require("wibox") + +local systray = wibox.widget({ + widget = wibox.container.margin, + enable_overlay = false, + -- margins = { + -- top = dpi(6), + -- bottom = dpi(6), + -- }, + wibox.widget.systray(), +}) + +return function() + return systray +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/taglist.lua b/pkgs/awesome/awesome/ui/wibar/module/taglist.lua new file mode 100644 index 0000000..28e32fb --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/taglist.lua @@ -0,0 +1,39 @@ +local awful = require("awful") +local wibox = require("wibox") +local gears = require("gears") +local beautiful = require("beautiful") +local dpi = beautiful.xresources.apply_dpi + +return function(s) + -- Create a taglist widget + return awful.widget.taglist({ + screen = s, + filter = awful.widget.taglist.filter.all, + style = { + shape = function(cr, width, height) + gears.shape.rounded_rect(cr, width, height, beautiful.border_radius) + end, + shape_border_color = "#27272A", + shape_border_width = dpi(1), + }, + widget_template = { + { + { + { + { + id = "text_role", + widget = wibox.widget.textbox, + }, + layout = wibox.layout.fixed.horizontal, + }, + widget = wibox.container.margin, + margins = { left = dpi(15), right = dpi(15) }, + }, + id = "background_role", + widget = wibox.container.background, + }, + widget = wibox.container.margin, + margins = dpi(6), + }, + }) +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/tailscale.lua b/pkgs/awesome/awesome/ui/wibar/module/tailscale.lua new file mode 100644 index 0000000..45fca96 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/tailscale.lua @@ -0,0 +1,12 @@ +-- Tailscale widget for Awesome Window Manager +local watch = require("awful.widget.watch") +local wibox = require("wibox") + +local tailscale = wibox.widget.textbox("Home: NA") +watch("bash -c \"tailscale ping pi | awk '{print $NF}'\"", 10, function(_, stdout) + tailscale.text = "Home:" .. " " .. stdout +end) + +return function() + return tailscale +end diff --git a/pkgs/awesome/awesome/ui/wibar/module/tasklist.lua b/pkgs/awesome/awesome/ui/wibar/module/tasklist.lua new file mode 100644 index 0000000..b7c1884 --- /dev/null +++ b/pkgs/awesome/awesome/ui/wibar/module/tasklist.lua @@ -0,0 +1,39 @@ +local awful = require("awful") +local wibox = require("wibox") +local gears = require("gears") +local beautiful = require("beautiful") +local dpi = beautiful.xresources.apply_dpi + +return function(s) + -- Create a tasklist widget + return awful.widget.tasklist({ + screen = s, + filter = awful.widget.tasklist.filter.currenttags, + style = { + shape = function(cr, width, height) + gears.shape.rounded_rect(cr, width, height, beautiful.border_radius) + end, + shape_border_color = "#27272A", + shape_border_width = dpi(1), + }, + widget_template = { + { + { + { + { + id = "icon_role", + widget = wibox.widget.imagebox, + }, + layout = wibox.layout.fixed.horizontal, + }, + widget = wibox.container.margin, + margins = dpi(6), + }, + id = "background_role", + widget = wibox.container.background, + }, + widget = wibox.container.margin, + margins = dpi(6), + }, + }) +end diff --git a/pkgs/awesome/default.nix b/pkgs/awesome/default.nix new file mode 100644 index 0000000..324b9f4 --- /dev/null +++ b/pkgs/awesome/default.nix @@ -0,0 +1,22 @@ +{ + stdenv, + lib, +}: let + awesome = ./awesome; +in + stdenv.mkDerivation { + pname = "tux-awesome-wm-config"; + version = "0.1.0"; + + buildCommand = '' + mkdir -p $out + cp -r ${awesome}/* "$out/" + ''; + + meta = with lib; { + description = "tux's awesome-wm config"; + homepage = "https://tux.rs"; + platforms = platforms.all; + license = licenses.gpl3; + }; + } diff --git a/pkgs/default.nix b/pkgs/default.nix index fca8e9b..9ce8cc6 100755 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,4 +1,5 @@ {pkgs, ...}: { + tux-awesome-wm-config = pkgs.callPackage ./awesome {}; nvchad = pkgs.callPackage ./nvchad {}; astronvim = pkgs.callPackage ./astronvim {}; firefox-mod-blur = pkgs.callPackage ./firefox-mod-blur {};