├── README.md ├── awesome-4.3.0.0~git788-g19b8e176-Linux.deb ├── awesome ├── binaries │ ├── capschecker │ └── snap ├── configuration │ ├── apps.lua │ ├── client │ │ ├── buttons.lua │ │ ├── init.lua │ │ ├── keys.lua │ │ └── rules.lua │ ├── init.lua │ ├── keys │ │ ├── global.lua │ │ ├── init.lua │ │ └── mod.lua │ ├── picom.conf │ ├── rofi │ │ ├── appmenu │ │ │ └── rofi.rasi │ │ └── sidebar │ │ │ ├── history.txt │ │ │ ├── icons │ │ │ ├── history.svg │ │ │ └── suggestion.svg │ │ │ ├── rofi-web-search.py │ │ │ └── rofi.rasi │ ├── secrets.lua │ └── tags │ │ ├── init.lua │ │ └── layouts │ │ └── single-maximized.lua ├── layout │ ├── init.lua │ ├── left-panel │ │ ├── action-bar.lua │ │ ├── dashboard │ │ │ ├── hardware-monitor.lua │ │ │ ├── init.lua │ │ │ └── quick-settings.lua │ │ └── init.lua │ └── top-panel.lua ├── module │ ├── auto-start.lua │ ├── backdrop.lua │ ├── battery-notifier.lua │ ├── brightness-osd.lua │ ├── decorate-client.lua │ ├── dynamic-wallpaper.lua │ ├── exit-screen.lua │ ├── lockscreen.lua │ ├── menu.lua │ ├── notifications.lua │ ├── quake-terminal.lua │ ├── test.lua │ ├── titlebar.lua │ └── volume-osd.lua ├── rc.lua ├── theme │ ├── default-theme.lua │ ├── floppy-theme │ │ └── init.lua │ ├── icons │ │ ├── awesome.svg │ │ ├── battery-charge.svg │ │ ├── battery-discharge.svg │ │ ├── brightness-7.svg │ │ ├── chart-areaspline.svg │ │ ├── close.svg │ │ ├── effects.svg │ │ ├── harddisk.svg │ │ ├── init.lua │ │ ├── layouts │ │ │ ├── dwindle.svg │ │ │ ├── floating.svg │ │ │ ├── fullscreen.svg │ │ │ ├── max.svg │ │ │ └── tile.svg │ │ ├── lock.svg │ │ ├── logout.svg │ │ ├── magnify.svg │ │ ├── memory.svg │ │ ├── plus.svg │ │ ├── power-sleep.svg │ │ ├── power.svg │ │ ├── restart.svg │ │ ├── ship-wheel.svg │ │ ├── tag-list │ │ │ ├── close-small.svg │ │ │ ├── development.svg │ │ │ ├── file-manager.svg │ │ │ ├── games.svg │ │ │ ├── graphics.svg │ │ │ ├── menu.svg │ │ │ ├── menu2.svg │ │ │ ├── multimedia.svg │ │ │ ├── sandbox.svg │ │ │ ├── social.svg │ │ │ ├── terminal.svg │ │ │ ├── text-editor.svg │ │ │ └── web-browser.svg │ │ ├── thermometer.svg │ │ ├── titlebar │ │ │ ├── stoplight │ │ │ │ ├── close_focus.svg │ │ │ │ ├── close_focus_hover.svg │ │ │ │ ├── close_normal.svg │ │ │ │ ├── close_normal_hover.svg │ │ │ │ ├── floating_focus_active.svg │ │ │ │ ├── floating_focus_active_hover.svg │ │ │ │ ├── floating_focus_inactive.svg │ │ │ │ ├── floating_focus_inactive_hover.svg │ │ │ │ ├── floating_normal_active.svg │ │ │ │ ├── floating_normal_active_hover.svg │ │ │ │ ├── floating_normal_inactive.svg │ │ │ │ ├── floating_normal_inactive_hover.svg │ │ │ │ ├── maximized_focus_active.svg │ │ │ │ ├── maximized_focus_active_hover.svg │ │ │ │ ├── maximized_focus_inactive.svg │ │ │ │ ├── maximized_focus_inactive_hover.svg │ │ │ │ ├── maximized_normal_active.svg │ │ │ │ ├── maximized_normal_active_hover.svg │ │ │ │ ├── maximized_normal_inactive.svg │ │ │ │ ├── maximized_normal_inactive_hover.svg │ │ │ │ ├── minimize_focus.svg │ │ │ │ ├── minimize_focus_hover.svg │ │ │ │ ├── minimize_normal.svg │ │ │ │ ├── minimize_normal_hover.svg │ │ │ │ ├── ontop_focus_active.svg │ │ │ │ ├── ontop_focus_active_hover.svg │ │ │ │ ├── ontop_focus_inactive.svg │ │ │ │ ├── ontop_focus_inactive_hover.svg │ │ │ │ ├── ontop_normal_active.svg │ │ │ │ ├── ontop_normal_active_hover.svg │ │ │ │ ├── ontop_normal_inactive.svg │ │ │ │ ├── ontop_normal_inactive_hover.svg │ │ │ │ ├── sticky_focus_active.svg │ │ │ │ ├── sticky_focus_active_hover.svg │ │ │ │ ├── sticky_focus_inactive.svg │ │ │ │ ├── sticky_focus_inactive_hover.svg │ │ │ │ ├── sticky_normal_active.svg │ │ │ │ ├── sticky_normal_active_hover.svg │ │ │ │ ├── sticky_normal_inactive.svg │ │ │ │ └── sticky_normal_inactive_hover.svg │ │ │ └── win10 │ │ │ │ ├── close_focus.svg │ │ │ │ ├── close_normal.svg │ │ │ │ ├── close_normal_hover.svg │ │ │ │ ├── floating_focus_active.svg │ │ │ │ ├── floating_focus_active_hover.svg │ │ │ │ ├── floating_focus_inactive.svg │ │ │ │ ├── floating_focus_inactive_hover.svg │ │ │ │ ├── floating_normal_active.svg │ │ │ │ ├── floating_normal_active_hover.svg │ │ │ │ ├── floating_normal_inactive.svg │ │ │ │ ├── floating_normal_inactive_hover.svg │ │ │ │ ├── maximized_focus_active.svg │ │ │ │ ├── maximized_focus_active_hover.svg │ │ │ │ ├── maximized_focus_inactive.svg │ │ │ │ ├── maximized_focus_inactive_hover.svg │ │ │ │ ├── maximized_normal_active.svg │ │ │ │ ├── maximized_normal_active_hover.svg │ │ │ │ ├── maximized_normal_inactive.svg │ │ │ │ ├── maximized_normal_inactive_hover.svg │ │ │ │ ├── minimize_focus.svg │ │ │ │ ├── minimize_focus_hover.svg │ │ │ │ ├── minimize_normal.svg │ │ │ │ └── minimize_normal_hover.svg │ │ ├── toggled-off.svg │ │ ├── toggled-on.svg │ │ └── volume-high.svg │ ├── init.lua │ └── wallpapers │ │ ├── LICENSE │ │ ├── midnight-wallpaper.jpg │ │ ├── morning-wallpaper.jpg │ │ ├── night-wallpaper.jpg │ │ └── noon-wallpaper.jpg └── widget │ ├── battery │ ├── icons │ │ ├── battery-100.svg │ │ ├── battery-20.svg │ │ ├── battery-30.svg │ │ ├── battery-50.svg │ │ ├── battery-60.svg │ │ ├── battery-80.svg │ │ ├── battery-90.svg │ │ ├── battery-alert-red.svg │ │ ├── battery-alert.svg │ │ ├── battery-charging-10.svg │ │ ├── battery-charging-20.svg │ │ ├── battery-charging-30.svg │ │ ├── battery-charging-50.svg │ │ ├── battery-charging-60.svg │ │ ├── battery-charging-80.svg │ │ ├── battery-charging-90.svg │ │ ├── battery-fully-charged.svg │ │ ├── battery-standard.svg │ │ └── battery-unknown.svg │ └── init.lua │ ├── blue-light │ └── init.lua │ ├── bluetooth │ ├── bluetooth-toggle.lua │ ├── clickable-container.lua │ ├── icons │ │ ├── bluetooth-connected.svg │ │ ├── bluetooth-off.svg │ │ ├── bluetooth-scanning.svg │ │ ├── bluetooth.svg │ │ └── loading.svg │ └── init.lua │ ├── brightness │ └── brightness-slider.lua │ ├── calculator │ ├── icons │ │ ├── kb-off.svg │ │ └── kb.svg │ └── init.lua │ ├── clickable-container │ └── init.lua │ ├── cpu │ └── cpu-meter.lua │ ├── email │ ├── icons │ │ ├── email-unread.svg │ │ └── email.svg │ └── init.lua │ ├── harddrive │ └── harddrive-meter.lua │ ├── music │ ├── content │ │ ├── album-cover.lua │ │ ├── init.lua │ │ ├── media-buttons.lua │ │ ├── progress-bar.lua │ │ ├── song-info.lua │ │ ├── track-time.lua │ │ └── volume-slider.lua │ ├── get-margin.lua │ ├── icons │ │ ├── music.svg │ │ ├── next.svg │ │ ├── pause.svg │ │ ├── play.svg │ │ ├── prev.svg │ │ ├── random-off.svg │ │ ├── random-on.svg │ │ ├── repeat-off.svg │ │ ├── repeat-on.svg │ │ └── vinyl.svg │ ├── init.lua │ ├── mpd-music-updater.lua │ ├── music-box.lua │ └── spotify-music-updater.lua │ ├── notif-center │ ├── build-notifbox │ │ ├── empty-notifbox.lua │ │ ├── init.lua │ │ ├── notifbox-builder.lua │ │ └── ui-builder.lua │ ├── clear-all │ │ └── init.lua │ ├── dont-disturb │ │ └── init.lua │ ├── icons │ │ ├── clear_all.svg │ │ ├── delete.svg │ │ ├── dont-disturb-mode.svg │ │ ├── empty-notification.svg │ │ ├── new-notif.svg │ │ └── notify-mode.svg │ └── init.lua │ ├── package-updater │ ├── icons │ │ ├── package-up.svg │ │ └── package.svg │ └── init.lua │ ├── ram │ └── ram-meter.lua │ ├── right-dashboard │ ├── icons │ │ └── notification.svg │ ├── init.lua │ ├── panel-mode-switcher.lua │ └── right-panel.lua │ ├── screen-recorder │ ├── icons │ │ ├── audio.svg │ │ ├── back.svg │ │ ├── close-screen.svg │ │ ├── recorder-countdown.svg │ │ ├── recorder-off.svg │ │ ├── recorder-on.svg │ │ ├── recording-button.svg │ │ ├── settings.svg │ │ └── start-recording-button.svg │ ├── init.lua │ ├── screen-recorder-config.lua │ ├── screen-recorder-scripts.lua │ ├── screen-recorder-ui-backend.lua │ └── screen-recorder-ui.lua │ ├── search-apps │ └── init.lua │ ├── social-media │ ├── icons │ │ ├── facebook.svg │ │ ├── instagram.svg │ │ ├── reddit.svg │ │ └── twitter.svg │ └── init.lua │ ├── tag-list.lua │ ├── task-list.lua │ ├── temperature │ └── temperature-meter.lua │ ├── tray-toggler │ ├── icons │ │ ├── left-arrow.svg │ │ └── right-arrow.svg │ └── init.lua │ ├── user-profile │ ├── icons │ │ └── user.svg │ └── init.lua │ ├── volume │ └── volume-slider.lua │ ├── weather │ ├── icons │ │ ├── cloud_icon.svg │ │ ├── dcloud_icon.svg │ │ ├── mist_icon.svg │ │ ├── moon_icon.svg │ │ ├── ncloud_icon.svg │ │ ├── rain_icon.svg │ │ ├── refresh.svg │ │ ├── snow_icon.svg │ │ ├── storm_icon.svg │ │ ├── sun_icon.svg │ │ ├── sunrise.svg │ │ ├── sunset.svg │ │ └── weather-error.svg │ └── init.lua │ ├── wifi │ ├── clickable-container.lua │ ├── icons │ │ ├── loading.svg │ │ ├── wifi-off.svg │ │ ├── wifi-strength-1-alert.svg │ │ ├── wifi-strength-1-lock.svg │ │ ├── wifi-strength-1.svg │ │ ├── wifi-strength-2-alert.svg │ │ ├── wifi-strength-2-lock.svg │ │ ├── wifi-strength-2.svg │ │ ├── wifi-strength-3-alert.svg │ │ ├── wifi-strength-3-lock.svg │ │ ├── wifi-strength-3.svg │ │ ├── wifi-strength-4-alert.svg │ │ ├── wifi-strength-4-lock.svg │ │ ├── wifi-strength-4.svg │ │ ├── wifi-strength-alert-outline.svg │ │ ├── wifi-strength-alert.svg │ │ ├── wifi-strength-empty.svg │ │ ├── wifi-strength-lock-outline.svg │ │ ├── wifi-strength-off-outline.svg │ │ ├── wifi-strength-off.svg │ │ ├── wifi-strength-outline.svg │ │ └── wifi.svg │ ├── init.lua │ └── wifi-toggle.lua │ ├── window-effects │ ├── blur-strength-slider.lua │ ├── blur-toggle.lua │ └── clickable-container.lua │ └── xdg-folders │ ├── documents.lua │ ├── downloads.lua │ ├── home.lua │ ├── icons │ ├── folder-documents.svg │ ├── folder-download.svg │ ├── folder-pictures.svg │ ├── folder-videos.svg │ ├── no.svg │ ├── open-folder.svg │ ├── user-home.svg │ ├── user-trash-empty.svg │ ├── user-trash-full.svg │ └── yes.svg │ ├── init.lua │ ├── pictures.lua │ ├── trash.lua │ └── videos.lua └── screenshots ├── snap1.png ├── snap2.png └── snap3.png /README.md: -------------------------------------------------------------------------------- 1 | # Glorious Awesome 2 | 3 | AwesomeWM Dot files. 4 | 5 | ## Screenshots 6 | 7 | ![Base Desktop on POP OS](https://github.com/Bearbobs/glorious-awesome-debian/blob/master/screenshots/snap2.png) 8 | 9 | ![Sidebar](https://github.com/Bearbobs/glorious-awesome-debian/blob/master/screenshots/snap1.png) 10 | 11 | ![Base Desktop](https://github.com/Bearbobs/glorious-awesome-debian/blob/master/screenshots/snap3.png) 12 | 13 | ## How to install 14 | 15 | Just follow steps on the gist attached [Link](https://gist.github.com/Bearbobs/2b744adda0a5151d4530ba763de993ef) 16 | 17 | ## Supported OS: 18 | 19 | Debain,Ubuntu and other debian based derivative 20 | 21 | ## Main Developer 22 | 23 | [The-Glorious-Files](https://github.com/manilarome/the-glorious-dotfiles) 24 | -------------------------------------------------------------------------------- /awesome-4.3.0.0~git788-g19b8e176-Linux.deb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/awesome-4.3.0.0~git788-g19b8e176-Linux.deb -------------------------------------------------------------------------------- /awesome/binaries/capschecker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/awesome/binaries/capschecker -------------------------------------------------------------------------------- /awesome/configuration/client/buttons.lua: -------------------------------------------------------------------------------- 1 | local awful = require('awful') 2 | 3 | local modkey = require('configuration.keys.mod').modKey 4 | 5 | return awful.util.table.join( 6 | awful.button( 7 | {}, 8 | 1, 9 | function(c) 10 | _G.client.focus = c 11 | c:raise() 12 | end 13 | ), 14 | awful.button({modkey}, 1, awful.mouse.client.move), 15 | awful.button({modkey}, 3, awful.mouse.client.resize), 16 | awful.button( 17 | {modkey}, 18 | 4, 19 | function() 20 | awful.layout.inc(1) 21 | end 22 | ), 23 | awful.button( 24 | {modkey}, 25 | 5, 26 | function() 27 | awful.layout.inc(-1) 28 | end 29 | ) 30 | ) 31 | -------------------------------------------------------------------------------- /awesome/configuration/client/init.lua: -------------------------------------------------------------------------------- 1 | require('configuration.client.rules') 2 | -------------------------------------------------------------------------------- /awesome/configuration/init.lua: -------------------------------------------------------------------------------- 1 | return { 2 | keys = require('configuration.keys'), 3 | apps = require('configuration.apps') 4 | } 5 | -------------------------------------------------------------------------------- /awesome/configuration/keys/init.lua: -------------------------------------------------------------------------------- 1 | return { 2 | mod = require('configuration.keys.mod'), 3 | global = require('configuration.keys.global') 4 | } 5 | -------------------------------------------------------------------------------- /awesome/configuration/keys/mod.lua: -------------------------------------------------------------------------------- 1 | return { 2 | modKey = 'Mod4', 3 | altKey = 'Mod1' 4 | } 5 | -------------------------------------------------------------------------------- /awesome/configuration/rofi/sidebar/history.txt: -------------------------------------------------------------------------------- 1 | how to delete windows 2 | xnxx.com 3 | helpmm 4 | theeyeiswatchingyou! 5 | banana is a berry? 6 | illuminatigotme.com 7 | how to download minecraft.exe in wine 8 | hentaihaven.org 9 | > Easy right? 10 | how to install wine in windowsxp?! 11 | > example below: 12 | > Just add a shebang(!) at the end 13 | github 14 | > want some suggestions? 15 | > Yes, you! 16 | how to install arch the arch way! 17 | > Hey, you! -------------------------------------------------------------------------------- /awesome/configuration/rofi/sidebar/icons/suggestion.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /awesome/configuration/secrets.lua: -------------------------------------------------------------------------------- 1 | 2 | -- Credentials Manager 3 | 4 | -- How to get a valid credentials for email widget? 5 | -- The widget uses an IMAP. 6 | -- So it means any email service provider that provides an IMAP support is supported by the widget. 7 | -- First, you need an email_address. 8 | -- Second, you must generate an app password for your account. Your account password WILL NOT WORK! 9 | -- Just search in the internet on how to generate for your email service provider. 10 | -- For example `create app password for gmail account` 11 | -- Third, you need an imap_server. 12 | -- Just get your email service provider's imap server. Gmail's imap server is `imap.gmail.com` 13 | -- Fourth, provide the port. 14 | -- Just search it in the internet. Gmail's port is `993` 15 | 16 | 17 | 18 | -- How to get a credentials for weather widget? 19 | -- OpenWeatherMap is our weather provider. So go to `https://home.openweathermap.org/` 20 | -- Register, log-in, and then go to `https://home.openweathermap.org/api_keys` 21 | -- You can create your API keys there. 22 | -- For `units`, you have to choose for yourself. 23 | -- `metric` or 'imperial' 24 | -- metric uses °C, while imperial uses °F 25 | 26 | 27 | -- Lockscreen 28 | -- Set your lockscreen password there 29 | -- Default: `toor` 30 | 31 | 32 | return { 33 | 34 | email = { 35 | 36 | address = '', 37 | app_password = '', 38 | imap_server = 'imap.gmail.com', 39 | port = '993' 40 | 41 | }, 42 | 43 | weather = { 44 | 45 | key = '', 46 | city_id = '', 47 | units = 'metric' 48 | 49 | }, 50 | 51 | lockscreen = { 52 | password = 'toor' 53 | } 54 | 55 | } -------------------------------------------------------------------------------- /awesome/configuration/tags/layouts/single-maximized.lua: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------- 2 | --- Maximized and fullscreen layouts module for awful 3 | -- 4 | -- @author Julien Danjou <julien@danjou.info> 5 | -- @copyright 2008 Julien Danjou 6 | -- @module awful.layout 7 | --------------------------------------------------------------------------- 8 | 9 | -- Grab environment we need 10 | local pairs = pairs 11 | 12 | local max = {} 13 | 14 | --- The max layout layoutbox icon. 15 | -- @beautiful beautiful.layout_max 16 | -- @param surface 17 | -- @see gears.surface 18 | 19 | --- The fullscreen layout layoutbox icon. 20 | -- @beautiful beautiful.layout_fullscreen 21 | -- @param surface 22 | -- @see gears.surface 23 | 24 | local function fmax(p, fs) 25 | -- Fullscreen? 26 | local area 27 | if fs then 28 | area = p.geometry 29 | else 30 | area = p.workarea 31 | end 32 | local focused_client = client.focus 33 | for _, c in pairs(p.clients) do 34 | local g = { 35 | x = area.x, 36 | y = area.y, 37 | width = area.width, 38 | height = area.height 39 | } 40 | p.geometries[c] = g 41 | end 42 | end 43 | 44 | --- Maximized layout. 45 | -- @clientlayout awful.layout.suit.max.name 46 | max.name = 'max' 47 | function max.arrange(p) 48 | return fmax(p, false) 49 | end 50 | function max.skip_gap(nclients, t) -- luacheck: no unused args 51 | return true 52 | end 53 | 54 | return max 55 | 56 | -- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80 57 | -------------------------------------------------------------------------------- /awesome/layout/init.lua: -------------------------------------------------------------------------------- 1 | local awful = require('awful') 2 | local left_panel = require('layout.left-panel') 3 | local top_panel = require('layout.top-panel') 4 | 5 | 6 | -- Create a wibox panel for each screen and add it 7 | screen.connect_signal("request::desktop_decoration", function(s) 8 | 9 | if s.index == 1 then 10 | -- Create the left_panel 11 | s.left_panel = left_panel(s) 12 | -- Create the Top bar 13 | s.top_panel = top_panel(s, true) 14 | 15 | else 16 | 17 | -- Create the Top bar 18 | s.top_panel = top_panel(s, false) 19 | end 20 | 21 | end) 22 | 23 | 24 | -- Hide bars when app go fullscreen 25 | function updateBarsVisibility() 26 | for s in screen do 27 | if s.selected_tag then 28 | local fullscreen = s.selected_tag.fullscreenMode 29 | -- Order matter here for shadow 30 | s.top_panel.visible = not fullscreen 31 | if s.left_panel then 32 | s.left_panel.visible = not fullscreen 33 | end 34 | end 35 | end 36 | end 37 | 38 | tag.connect_signal( 39 | 'property::selected', 40 | function(t) 41 | updateBarsVisibility() 42 | end 43 | ) 44 | 45 | client.connect_signal( 46 | 'property::fullscreen', 47 | function(c) 48 | if c.first_tag then 49 | c.first_tag.fullscreenMode = c.fullscreen 50 | end 51 | updateBarsVisibility() 52 | end 53 | ) 54 | 55 | client.connect_signal( 56 | 'unmanage', 57 | function(c) 58 | if c.fullscreen then 59 | c.screen.selected_tag.fullscreenMode = false 60 | updateBarsVisibility() 61 | end 62 | end 63 | ) 64 | -------------------------------------------------------------------------------- /awesome/layout/left-panel/action-bar.lua: -------------------------------------------------------------------------------- 1 | local awful = require('awful') 2 | local beautiful = require('beautiful') 3 | local wibox = require('wibox') 4 | local gears = require('gears') 5 | 6 | local dpi = beautiful.xresources.apply_dpi 7 | local icons = require('theme.icons') 8 | 9 | local tag_list = require('widget.tag-list') 10 | local clickable_container = require('widget.clickable-container') 11 | 12 | return function(s, panel, action_bar_width) 13 | 14 | local menu_icon = wibox.widget { 15 | { 16 | id = 'menu_btn', 17 | image = icons.menu, 18 | resize = true, 19 | widget = wibox.widget.imagebox 20 | }, 21 | margins = dpi(10), 22 | widget = wibox.container.margin 23 | } 24 | 25 | local home_button = wibox.widget { 26 | { 27 | menu_icon, 28 | widget = clickable_container 29 | }, 30 | bg = beautiful.background .. '66', 31 | widget = wibox.container.background 32 | } 33 | 34 | home_button:buttons( 35 | gears.table.join( 36 | awful.button( 37 | {}, 38 | 1, 39 | nil, 40 | function() 41 | panel:toggle() 42 | end 43 | ) 44 | ) 45 | ) 46 | 47 | panel:connect_signal( 48 | 'opened', 49 | function() 50 | menu_icon.menu_btn:set_image(gears.surface(icons.close_small)) 51 | end 52 | ) 53 | 54 | panel:connect_signal( 55 | 'closed', 56 | function() 57 | menu_icon.menu_btn:set_image(gears.surface(icons.menu)) 58 | end 59 | ) 60 | 61 | return wibox.widget { 62 | id = 'action_bar', 63 | layout = wibox.layout.align.vertical, 64 | forced_width = action_bar_width, 65 | { 66 | home_button, 67 | tag_list(s), 68 | require("widget.xdg-folders"), 69 | layout = wibox.layout.fixed.vertical, 70 | }, 71 | nil, 72 | nil, 73 | } 74 | end 75 | -------------------------------------------------------------------------------- /awesome/module/auto-start.lua: -------------------------------------------------------------------------------- 1 | -- MODULE AUTO-START 2 | -- Run all the apps listed in configuration/apps.lua as run_on_start_up only once when awesome start 3 | 4 | local awful = require('awful') 5 | local apps = require('configuration.apps') 6 | 7 | local function run_once(cmd) 8 | local findme = cmd 9 | local firstspace = cmd:find(' ') 10 | if firstspace then 11 | findme = cmd:sub(0, firstspace - 1) 12 | end 13 | awful.spawn.with_shell( 14 | string.format('pgrep -u $USER -x %s > /dev/null || (%s)', findme, cmd), 15 | false 16 | ) 17 | end 18 | 19 | for _, app in ipairs(apps.run_on_start_up) do 20 | run_once(app) 21 | end 22 | -------------------------------------------------------------------------------- /awesome/module/backdrop.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local gears = require('gears') 3 | local awful = require('awful') 4 | 5 | local function update_backdrop(w, c) 6 | local cairo = require('lgi').cairo 7 | local geo = c.screen.geometry 8 | 9 | w.x = geo.x 10 | w.y = geo.y 11 | w.width = geo.width 12 | w.height = geo.height 13 | 14 | -- Create an image surface that is as large as the wibox 15 | local shape = cairo.ImageSurface.create(cairo.Format.A1, geo.width, geo.height) 16 | local cr = cairo.Context(shape) 17 | 18 | -- Fill with "completely opaque" 19 | cr.operator = 'SOURCE' 20 | cr:set_source_rgba(1, 1, 1, 1) 21 | cr:paint() 22 | 23 | -- Remove the shape of the client 24 | local c_geo = c:geometry() 25 | local c_shape = gears.surface(c.shape_bounding) 26 | cr:set_source_rgba(0, 0, 0, 0) 27 | cr:mask_surface(c_shape, c_geo.x + c.border_width - geo.x, c_geo.y + c.border_width - geo.y) 28 | c_shape:finish() 29 | 30 | w.shape_bounding = shape._native 31 | shape:finish() 32 | w:draw() 33 | end 34 | 35 | local function backdrop(c) 36 | local function update() 37 | update_backdrop(c.backdrop, c) 38 | end 39 | if not c.backdrop then 40 | c.backdrop = wibox {ontop = true, bg = '#00000054', type = 'splash'} 41 | c.backdrop:buttons( 42 | awful.util.table.join( 43 | awful.button( 44 | {}, 45 | 1, 46 | function() 47 | c:kill() 48 | end 49 | ) 50 | ) 51 | ) 52 | c:connect_signal('property::geometry', update) 53 | c:connect_signal( 54 | 'property::shape_client_bounding', 55 | function() 56 | gears.timer.delayed_call(update) 57 | end 58 | ) 59 | c:connect_signal( 60 | 'unmanage', 61 | function() 62 | c.backdrop.visible = false 63 | end 64 | ) 65 | c:connect_signal( 66 | 'property::shape_bounding', 67 | function() 68 | gears.timer.delayed_call(update) 69 | end 70 | ) 71 | end 72 | update() 73 | c.backdrop.visible = true 74 | end 75 | 76 | client.connect_signal( 77 | 'manage', 78 | function(c) 79 | if c.draw_backdrop == true then 80 | backdrop(c) 81 | end 82 | end 83 | ) 84 | -------------------------------------------------------------------------------- /awesome/module/quake-terminal.lua: -------------------------------------------------------------------------------- 1 | local gears = require('gears') 2 | local spawn = require('awful.spawn') 3 | local app = require('configuration.apps').default.quake 4 | -- local awful = require('awful') 5 | 6 | local quake_id = 'notnil' 7 | local quake_client 8 | local opened = false 9 | function create_shell() 10 | quake_id = 11 | spawn( 12 | app, 13 | { 14 | skip_decoration = true 15 | } 16 | ) 17 | end 18 | 19 | function open_quake() 20 | quake_client.hidden = false 21 | quake_client:emit_signal('request::activate') 22 | end 23 | 24 | function close_quake() 25 | quake_client.hidden = true 26 | end 27 | 28 | toggle_quake = function() 29 | opened = not opened 30 | if not quake_client then 31 | create_shell() 32 | else 33 | if opened then 34 | open_quake() 35 | else 36 | close_quake() 37 | end 38 | end 39 | end 40 | 41 | client.connect_signal( 42 | 'manage', 43 | function(c) 44 | if c.pid == quake_id then 45 | quake_client = c 46 | c.opacity = 0.95 47 | c.floating = true 48 | c.skip_taskbar = true 49 | c.ontop = true 50 | c.above = true 51 | c.sticky = true 52 | c.hidden = not opened 53 | c.maximized_horizontal = true 54 | c.hide_titlebars = true 55 | c.skip_center = true 56 | c.round_corners = false 57 | c.shape = function(cr, w, h) 58 | gears.shape.rectangle(cr, w, h) 59 | end 60 | -- awful.placement.top(c) 61 | end 62 | end 63 | ) 64 | 65 | client.connect_signal( 66 | 'unmanage', 67 | function(c) 68 | if c.pid == quake_id then 69 | opened = false 70 | quake_client = nil 71 | end 72 | end 73 | ) -------------------------------------------------------------------------------- /awesome/module/test.lua: -------------------------------------------------------------------------------- 1 | -- Load these libraries (if you haven't already) 2 | local awful = require("awful") 3 | local gears = require("gears") 4 | local wibox = require("wibox") 5 | 6 | -- Create the box 7 | local anti_aliased_wibox = wibox({visible = true, ontop = true, type = "normal", height = 100, width = 100}) 8 | 9 | -- Place it at the center of the screen 10 | awful.placement.centered(anti_aliased_wibox) 11 | 12 | -- Set transparent bg 13 | anti_aliased_wibox.bg = beautiful.transparent 14 | 15 | -- Put its items in a shaped container 16 | anti_aliased_wibox:setup { 17 | -- Container 18 | { 19 | -- Items go here 20 | --wibox.widget.textbox("Hello!"), 21 | awful.spawn('urxvt'), 22 | -- ... 23 | layout = wibox.layout.fixed.vertical 24 | }, 25 | -- The real background color 26 | bg = "#111111", 27 | -- The real, anti-aliased shape 28 | shape = gears.shape.rounded_rect, 29 | widget = wibox.container.background() 30 | } 31 | -------------------------------------------------------------------------------- /awesome/theme/floppy-theme/init.lua: -------------------------------------------------------------------------------- 1 | local filesystem = require('gears.filesystem') 2 | local theme_dir = filesystem.get_configuration_dir() .. '/theme' 3 | 4 | local theme = {} 5 | 6 | theme.icons = theme_dir .. '/icons/' 7 | theme.font = 'SF Pro Text Regular 10' 8 | theme.font_bold = 'SF Pro Text Bold 10' 9 | 10 | 11 | -- Colorscheme 12 | theme.system_black_dark = '#3D4C5F' 13 | theme.system_black_light = '#56687E' 14 | 15 | theme.system_red_dark = '#EE4F84' 16 | theme.system_red_light = '#F48FB1' 17 | 18 | theme.system_green_dark = '#53E2AE' 19 | theme.system_green_light = '#A1EFD3' 20 | 21 | theme.system_yellow_dark = '#F1FF52' 22 | theme.system_yellow_light = '#F1FA8C' 23 | 24 | theme.system_blue_dark = '#6498EF' 25 | theme.system_blue_light = '#92B6F4' 26 | 27 | theme.system_magenta_dark = '#985EFF' 28 | theme.system_magenta_light = '#BD99FF' 29 | 30 | theme.system_cyan_dark = '#24D1E7' 31 | theme.system_cyan_light = '#87DFEB' 32 | 33 | theme.system_white_dark = '#E5E5E5' 34 | theme.system_white_light = '#F8F8F2' 35 | 36 | 37 | -- Accent color 38 | theme.accent = theme.system_blue_dark 39 | 40 | -- Background color 41 | theme.background = '#000000' .. '66' 42 | 43 | -- Transparent 44 | theme.transparent = '#00000000' 45 | 46 | -- Awesome icon 47 | theme.awesome_icon = theme.icons .. 'awesome.svg' 48 | 49 | local awesome_overrides = function(theme) end 50 | 51 | return { 52 | theme = theme, 53 | awesome_overrides = awesome_overrides 54 | } 55 | -------------------------------------------------------------------------------- /awesome/theme/icons/chart-areaspline.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/theme/icons/close.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/theme/icons/init.lua: -------------------------------------------------------------------------------- 1 | -- Icons directory 2 | local dir = os.getenv('HOME') .. '/.config/awesome/theme/icons/' 3 | 4 | 5 | return { 6 | 7 | -- Action Bar 8 | web_browser = dir .. 'tag-list/' .. 'web-browser.svg', 9 | text_editor = dir .. 'tag-list/' .. 'text-editor.svg', 10 | social = dir .. 'tag-list/' .. 'social.svg', 11 | file_manager = dir .. 'tag-list/' .. 'file-manager.svg', 12 | multimedia = dir .. 'tag-list/' .. 'multimedia.svg', 13 | games = dir .. 'tag-list/' .. 'games.svg', 14 | development = dir .. 'tag-list/' .. 'development.svg', 15 | sandbox = dir .. 'tag-list/' .. 'sandbox.svg', 16 | terminal = dir .. 'tag-list/' .. 'terminal.svg', 17 | graphics = dir .. 'tag-list/' .. 'graphics.svg', 18 | menu = dir .. 'tag-list/' .. 'menu.svg', 19 | close_small = dir .. 'tag-list/' .. 'close-small.svg', 20 | 21 | -- Others/System UI 22 | close = dir .. 'close.svg', 23 | logout = dir .. 'logout.svg', 24 | sleep = dir .. 'power-sleep.svg', 25 | power = dir .. 'power.svg', 26 | lock = dir .. 'lock.svg', 27 | restart = dir .. 'restart.svg', 28 | search = dir .. 'magnify.svg', 29 | volume = dir .. 'volume-high.svg', 30 | brightness = dir .. 'brightness-7.svg', 31 | effects = dir .. 'effects.svg', 32 | chart = dir .. 'chart-areaspline.svg', 33 | memory = dir .. 'memory.svg', 34 | harddisk = dir .. 'harddisk.svg', 35 | thermometer = dir .. 'thermometer.svg', 36 | plus = dir .. 'plus.svg', 37 | batt_charging = dir .. 'battery-charge.svg', 38 | batt_discharging = dir .. 'battery-discharge.svg', 39 | toggled_on = dir .. 'toggled-on.svg', 40 | toggled_off = dir .. 'toggled-off.svg' 41 | 42 | } 43 | -------------------------------------------------------------------------------- /awesome/theme/icons/logout.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/theme/icons/plus.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 53 | 58 | 59 | -------------------------------------------------------------------------------- /awesome/theme/icons/tag-list/close-small.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/theme/icons/thermometer.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/close_focus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/close_focus_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/close_normal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/close_normal_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/floating_focus_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/floating_focus_active_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/floating_focus_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/floating_normal_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/floating_normal_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/maximized_normal_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/maximized_normal_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/minimize_focus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/minimize_focus_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/minimize_normal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/minimize_normal_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_focus_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_focus_active_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_focus_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_focus_inactive_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_normal_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_normal_active_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_normal_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/ontop_normal_inactive_hover.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/sticky_focus_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/sticky_focus_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/sticky_normal_active.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/icons/titlebar/stoplight/sticky_normal_inactive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 40 | 42 | 43 | 45 | image/svg+xml 46 | 48 | 49 | 50 | 51 | 52 | 57 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /awesome/theme/init.lua: -------------------------------------------------------------------------------- 1 | local gtable = require('gears.table') 2 | local default_theme = require('theme.default-theme') 3 | -- PICK THEME HERE 4 | local theme = require('theme.floppy-theme') 5 | 6 | local final_theme = {} 7 | gtable.crush(final_theme, default_theme.theme) 8 | gtable.crush(final_theme, theme.theme) 9 | default_theme.awesome_overrides(final_theme) 10 | theme.awesome_overrides(final_theme) 11 | 12 | return final_theme 13 | -------------------------------------------------------------------------------- /awesome/theme/wallpapers/LICENSE: -------------------------------------------------------------------------------- 1 | THESE WALLPAPERS ARE NOT MINE IT IS OWNED BY THEIR RESPECTIVE OWNERS. 2 | CREDITS TO THE OWNERS. 3 | -------------------------------------------------------------------------------- /awesome/theme/wallpapers/midnight-wallpaper.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/awesome/theme/wallpapers/midnight-wallpaper.jpg -------------------------------------------------------------------------------- /awesome/theme/wallpapers/morning-wallpaper.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/awesome/theme/wallpapers/morning-wallpaper.jpg -------------------------------------------------------------------------------- /awesome/theme/wallpapers/night-wallpaper.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/awesome/theme/wallpapers/night-wallpaper.jpg -------------------------------------------------------------------------------- /awesome/theme/wallpapers/noon-wallpaper.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/awesome/theme/wallpapers/noon-wallpaper.jpg -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-100.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-20.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-50.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-60.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-80.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-90.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-alert-red.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-alert.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-charging-20.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-charging-30.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-charging-60.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-charging-80.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-fully-charged.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/battery/icons/battery-standard.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/bluetooth/clickable-container.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | 3 | function build(widget) 4 | local container = 5 | wibox.widget { 6 | widget, 7 | widget = wibox.container.background, 8 | } 9 | local old_cursor, old_wibox 10 | container:connect_signal( 11 | 'mouse::enter', 12 | function() 13 | -- Hm, no idea how to get the wibox from this signal's arguments... 14 | local w = mouse.current_wibox 15 | if w then 16 | old_cursor, old_wibox = w.cursor, w 17 | w.cursor = 'hand1' 18 | end 19 | end 20 | ) 21 | 22 | container:connect_signal( 23 | 'mouse::leave', 24 | function() 25 | if old_wibox then 26 | old_wibox.cursor = old_cursor 27 | old_wibox = nil 28 | end 29 | end 30 | ) 31 | 32 | return container 33 | end 34 | 35 | return build 36 | -------------------------------------------------------------------------------- /awesome/widget/bluetooth/icons/bluetooth-connected.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/bluetooth/icons/bluetooth-off.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/bluetooth/icons/bluetooth.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/calculator/icons/kb-off.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 51 | 55 | 59 | 60 | -------------------------------------------------------------------------------- /awesome/widget/calculator/icons/kb.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 51 | 55 | 59 | 60 | -------------------------------------------------------------------------------- /awesome/widget/clickable-container/init.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local beautiful = require('beautiful') 3 | 4 | function build(widget) 5 | local container = 6 | wibox.widget { 7 | widget, 8 | widget = wibox.container.background 9 | } 10 | local old_cursor, old_wibox 11 | 12 | container:connect_signal( 13 | 'mouse::enter', 14 | function() 15 | container.bg = beautiful.groups_bg 16 | -- Hm, no idea how to get the wibox from this signal's arguments... 17 | local w = mouse.current_wibox 18 | if w then 19 | old_cursor, old_wibox = w.cursor, w 20 | w.cursor = 'hand1' 21 | end 22 | end 23 | ) 24 | 25 | container:connect_signal( 26 | 'mouse::leave', 27 | function() 28 | container.bg = beautiful.transparent 29 | if old_wibox then 30 | old_wibox.cursor = old_cursor 31 | old_wibox = nil 32 | end 33 | end 34 | ) 35 | 36 | container:connect_signal( 37 | 'button::press', 38 | function() 39 | container.bg = beautiful.groups_title_bg 40 | end 41 | ) 42 | 43 | container:connect_signal( 44 | 'button::release', 45 | function() 46 | container.bg = beautiful.groups_bg 47 | end 48 | ) 49 | 50 | return container 51 | end 52 | 53 | return build 54 | -------------------------------------------------------------------------------- /awesome/widget/cpu/cpu-meter.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local gears = require('gears') 3 | local beautiful = require('beautiful') 4 | 5 | local watch = require('awful.widget.watch') 6 | 7 | local icons = require('theme.icons') 8 | local dpi = beautiful.xresources.apply_dpi 9 | 10 | local total_prev = 0 11 | local idle_prev = 0 12 | 13 | local slider = wibox.widget { 14 | nil, 15 | { 16 | id = 'cpu_usage', 17 | max_value = 100, 18 | value = 29, 19 | forced_height = dpi(2), 20 | color = beautiful.fg_normal, 21 | background_color = beautiful.groups_bg, 22 | shape = gears.shape.rounded_rect, 23 | widget = wibox.widget.progressbar 24 | }, 25 | nil, 26 | expand = 'none', 27 | layout = wibox.layout.align.vertical 28 | } 29 | 30 | watch( 31 | [[bash -c "cat /proc/stat | grep '^cpu '"]], 32 | 5, 33 | function(_, stdout) 34 | local user, nice, system, idle, iowait, irq, softirq, steal, guest, guest_nice = 35 | stdout:match('(%d+)%s(%d+)%s(%d+)%s(%d+)%s(%d+)%s(%d+)%s(%d+)%s(%d+)%s(%d+)%s(%d+)%s') 36 | 37 | local total = user + nice + system + idle + iowait + irq + softirq + steal 38 | 39 | local diff_idle = idle - idle_prev 40 | local diff_total = total - total_prev 41 | local diff_usage = (1000 * (diff_total - diff_idle) / diff_total + 5) / 10 42 | 43 | slider.cpu_usage:set_value(diff_usage) 44 | 45 | total_prev = total 46 | idle_prev = idle 47 | collectgarbage('collect') 48 | end 49 | ) 50 | 51 | local cpu_meter = wibox.widget { 52 | { 53 | { 54 | { 55 | image = icons.chart, 56 | resize = true, 57 | widget = wibox.widget.imagebox 58 | }, 59 | top = dpi(12), 60 | bottom = dpi(12), 61 | widget = wibox.container.margin 62 | }, 63 | slider, 64 | spacing = dpi(24), 65 | layout = wibox.layout.fixed.horizontal 66 | 67 | }, 68 | left = dpi(24), 69 | right = dpi(24), 70 | forced_height = dpi(48), 71 | widget = wibox.container.margin 72 | } 73 | 74 | return cpu_meter 75 | -------------------------------------------------------------------------------- /awesome/widget/harddrive/harddrive-meter.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local gears = require('gears') 3 | local beautiful = require('beautiful') 4 | 5 | local watch = require('awful.widget.watch') 6 | local icons = require('theme.icons') 7 | 8 | local dpi = beautiful.xresources.apply_dpi 9 | 10 | local slider = wibox.widget { 11 | nil, 12 | { 13 | id = 'hdd_usage', 14 | max_value = 100, 15 | value = 29, 16 | forced_height = dpi(2), 17 | color = beautiful.fg_normal, 18 | background_color = beautiful.groups_bg, 19 | shape = gears.shape.rounded_rect, 20 | widget = wibox.widget.progressbar 21 | }, 22 | nil, 23 | expand = 'none', 24 | layout = wibox.layout.align.vertical 25 | } 26 | 27 | watch( 28 | [[bash -c "df -h /home|grep '^/' | awk '{print $5}'"]], 29 | 10, 30 | function(_, stdout) 31 | local space_consumed = stdout:match('(%d+)') 32 | slider.hdd_usage:set_value(tonumber(space_consumed)) 33 | collectgarbage('collect') 34 | end 35 | ) 36 | 37 | 38 | local harddrive_meter = wibox.widget { 39 | { 40 | { 41 | { 42 | image = icons.harddisk, 43 | resize = true, 44 | widget = wibox.widget.imagebox 45 | }, 46 | top = dpi(12), 47 | bottom = dpi(12), 48 | widget = wibox.container.margin 49 | }, 50 | slider, 51 | spacing = dpi(24), 52 | layout = wibox.layout.fixed.horizontal 53 | 54 | }, 55 | left = dpi(24), 56 | right = dpi(24), 57 | forced_height = dpi(48), 58 | widget = wibox.container.margin 59 | } 60 | 61 | return harddrive_meter 62 | -------------------------------------------------------------------------------- /awesome/widget/music/content/album-cover.lua: -------------------------------------------------------------------------------- 1 | local gears = require('gears') 2 | local awful = require('awful') 3 | local wibox = require('wibox') 4 | 5 | local dpi = require('beautiful').xresources.apply_dpi 6 | 7 | local config_dir = gears.filesystem.get_configuration_dir() 8 | local widget_icon_dir = config_dir .. 'widget/music/icons/' 9 | 10 | 11 | album_cover_img = wibox.widget { 12 | { 13 | id = 'cover', 14 | image = widget_icon_dir .. 'vinyl' .. '.svg', 15 | resize = true, 16 | clip_shape = gears.shape.rounded_rect, 17 | widget = wibox.widget.imagebox, 18 | }, 19 | layout = wibox.layout.fixed.vertical 20 | } 21 | 22 | 23 | return album_cover_img -------------------------------------------------------------------------------- /awesome/widget/music/content/init.lua: -------------------------------------------------------------------------------- 1 | -- Return UI Table 2 | return { 3 | album_cover = require('widget.music.content.album-cover'), 4 | progress_bar = require('widget.music.content.progress-bar'), 5 | track_time = require('widget.music.content.track-time'), 6 | song_info = require('widget.music.content.song-info'), 7 | media_buttons = require('widget.music.content.media-buttons'), 8 | volume_slider = require('widget.music.content.volume-slider'), 9 | } -------------------------------------------------------------------------------- /awesome/widget/music/content/progress-bar.lua: -------------------------------------------------------------------------------- 1 | local beautiful = require('beautiful') 2 | local gears = require('gears') 3 | local awful = require('awful') 4 | local wibox = require('wibox') 5 | local dpi = require('beautiful').xresources.apply_dpi 6 | 7 | 8 | progressbar = wibox.widget { 9 | { 10 | id = 'music_bar', 11 | max_value = 100, 12 | forced_height = dpi(3), 13 | forced_width = dpi(100), 14 | color = '#ffffff', 15 | background_color = '#ffffff20', 16 | shape = gears.shape.rounded_bar, 17 | widget = wibox.widget.progressbar 18 | }, 19 | layout = wibox.layout.stack 20 | } 21 | 22 | 23 | return progressbar -------------------------------------------------------------------------------- /awesome/widget/music/content/song-info.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local dpi = require('beautiful').xresources.apply_dpi 3 | 4 | 5 | local song_info = {} 6 | 7 | 8 | music_title = wibox.widget { 9 | layout = wibox.layout.align.horizontal, 10 | expand = 'none', 11 | nil, 12 | { 13 | { 14 | id = 'title', 15 | text = 'The song title is here', 16 | font = 'SF Pro Text Bold 12', 17 | align = 'center', 18 | valign = 'center', 19 | ellipsize = 'end', 20 | widget = wibox.widget.textbox 21 | }, 22 | id = 'scroll_container', 23 | max_size = 345, 24 | speed = 75, 25 | expand = true, 26 | direction = 'h', 27 | step_function = wibox.container.scroll.step_functions.waiting_nonlinear_back_and_forth, 28 | layout = wibox.container.scroll.horizontal, 29 | fps = 60 30 | }, 31 | nil 32 | } 33 | 34 | 35 | music_artist = wibox.widget { 36 | layout = wibox.layout.align.horizontal, 37 | expand = 'none', 38 | nil, 39 | { 40 | { 41 | id = 'artist', 42 | text = 'The artist name is here', 43 | font = 'SF Pro Text 9', 44 | align = 'center', 45 | valign = 'center', 46 | widget = wibox.widget.textbox 47 | }, 48 | id = 'scroll_container', 49 | max_size = 345, 50 | speed = 75, 51 | expand = true, 52 | direction = 'h', 53 | step_function = wibox.container.scroll.step_functions.waiting_nonlinear_back_and_forth, 54 | layout = wibox.container.scroll.horizontal, 55 | fps = 60 56 | }, 57 | nil, 58 | } 59 | 60 | 61 | music_info = wibox.widget { 62 | expand = 'none', 63 | layout = wibox.layout.fixed.vertical, 64 | music_title, 65 | music_artist, 66 | } 67 | 68 | 69 | song_info.music_title = music_title 70 | song_info.music_artist = music_artist 71 | song_info.music_info = music_info 72 | 73 | 74 | return song_info -------------------------------------------------------------------------------- /awesome/widget/music/content/track-time.lua: -------------------------------------------------------------------------------- 1 | local beautiful = require('beautiful') 2 | local gears = require('gears') 3 | local awful = require('awful') 4 | local wibox = require('wibox') 5 | local dpi = require('beautiful').xresources.apply_dpi 6 | 7 | 8 | local time_info = {} 9 | 10 | 11 | time_status = wibox.widget { 12 | id = 'statustime', 13 | text = '00:00', 14 | font = 'SF Pro Text 8', 15 | align = 'center', 16 | valign = 'center', 17 | forced_height = dpi(10), 18 | widget = wibox.widget.textbox 19 | } 20 | 21 | 22 | local time_duration = wibox.widget { 23 | id = 'durationtime', 24 | text = '00:00', 25 | font = 'SF Pro Text 8', 26 | align = 'center', 27 | valign = 'center', 28 | forced_height = dpi(10), 29 | widget = wibox.widget.textbox 30 | } 31 | 32 | 33 | time_track = wibox.widget { 34 | expand = 'none', 35 | layout = wibox.layout.align.horizontal, 36 | time_status, 37 | nil, 38 | time_duration, 39 | } 40 | 41 | 42 | time_info.time_status = time_status 43 | time_info.time_duration = time_duration 44 | time_info.time_track = time_track 45 | 46 | return time_info -------------------------------------------------------------------------------- /awesome/widget/music/content/volume-slider.lua: -------------------------------------------------------------------------------- 1 | local beautiful = require('beautiful') 2 | local gears = require('gears') 3 | local awful = require('awful') 4 | local wibox = require('wibox') 5 | local dpi = require('beautiful').xresources.apply_dpi 6 | 7 | 8 | local slider = {} 9 | 10 | 11 | vol_slider = wibox.widget { 12 | bar_shape = gears.shape.rounded_rect, 13 | bar_height = dpi(5), 14 | bar_color = '#ffffff20', 15 | bar_active_color = '#f2f2f2EE', 16 | handle_color = '#ffffff', 17 | handle_shape = gears.shape.circle, 18 | handle_width = dpi(15), 19 | handle_border_color = '#00000012', 20 | handle_border_width = dpi(1), 21 | maximum = 100, 22 | widget = wibox.widget.slider, 23 | } 24 | 25 | 26 | slider.vol_slider = vol_slider 27 | 28 | 29 | return slider 30 | 31 | -------------------------------------------------------------------------------- /awesome/widget/music/icons/next.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/music/icons/pause.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 54 | 59 | 60 | -------------------------------------------------------------------------------- /awesome/widget/music/icons/play.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/music/icons/prev.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/music/icons/repeat-off.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/music/icons/repeat-on.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/music/init.lua: -------------------------------------------------------------------------------- 1 | -- # # 2 | -- ## ## # # #### # #### 3 | -- # # # # # # # # # # 4 | -- # # # # # #### # # 5 | -- # # # # # # # 6 | -- # # # # # # # # # 7 | -- # # #### #### # #### 8 | 9 | local gears = require('gears') 10 | local awful = require('awful') 11 | local wibox = require('wibox') 12 | 13 | local dpi = require('beautiful').xresources.apply_dpi 14 | 15 | local config_dir = gears.filesystem.get_configuration_dir() 16 | local widget_icon_dir = config_dir .. 'widget/music/icons/' 17 | 18 | local clickable_container = require('widget.clickable-container') 19 | 20 | local music_box = require('widget.music.music-box') 21 | local toggle_music_box = music_box.toggle_music_box 22 | 23 | 24 | local return_button = function() 25 | 26 | 27 | local widget = wibox.widget { 28 | { 29 | id = 'icon', 30 | image = widget_icon_dir .. 'music' .. '.svg', 31 | widget = wibox.widget.imagebox, 32 | resize = true 33 | }, 34 | layout = wibox.layout.align.horizontal 35 | } 36 | 37 | local widget_button = wibox.widget { 38 | { 39 | widget, 40 | margins = dpi(7), 41 | widget = wibox.container.margin 42 | }, 43 | widget = clickable_container 44 | } 45 | 46 | 47 | local music_tooltip = awful.tooltip 48 | { 49 | objects = {widget_button}, 50 | text = 'None', 51 | mode = 'outside', 52 | margin_leftright = dpi(8), 53 | margin_topbottom = dpi(8), 54 | align = 'right', 55 | preferred_positions = {'right', 'left', 'top', 'bottom'} 56 | } 57 | 58 | 59 | widget_button:buttons( 60 | gears.table.join( 61 | awful.button( 62 | {}, 63 | 1, 64 | nil, 65 | function() 66 | music_tooltip.visible = false 67 | toggle_music_box() 68 | end 69 | ) 70 | ) 71 | ) 72 | 73 | 74 | widget_button:connect_signal( 75 | "mouse::enter", 76 | function() 77 | awful.spawn.easy_async_with_shell( 78 | 'mpc status', 79 | function(stdout) 80 | music_tooltip.text = string.gsub(stdout, '\n$', '') 81 | end 82 | ) 83 | end 84 | ) 85 | 86 | 87 | return widget_button 88 | 89 | end 90 | 91 | 92 | return return_button -------------------------------------------------------------------------------- /awesome/widget/notif-center/build-notifbox/empty-notifbox.lua: -------------------------------------------------------------------------------- 1 | -- This returns the "Wow, such empty." message. 2 | 3 | local wibox = require('wibox') 4 | 5 | local dpi = require('beautiful').xresources.apply_dpi 6 | 7 | local config_dir = require('gears').filesystem.get_configuration_dir() 8 | local widget_icon_dir = config_dir .. 'widget/notif-center/icons/' 9 | 10 | local empty_notifbox = wibox.widget { 11 | { 12 | layout = wibox.layout.fixed.vertical, 13 | spacing = dpi(5), 14 | { 15 | expand = 'none', 16 | layout = wibox.layout.align.horizontal, 17 | nil, 18 | { 19 | image = widget_icon_dir .. 'empty-notification' .. '.svg', 20 | resize = true, 21 | forced_height = dpi(35), 22 | forced_width = dpi(35), 23 | widget = wibox.widget.imagebox, 24 | }, 25 | nil 26 | }, 27 | { 28 | text = 'Wow, such empty.', 29 | font = 'SF Pro Text Bold 14', 30 | align = 'center', 31 | valign = 'center', 32 | widget = wibox.widget.textbox 33 | }, 34 | { 35 | text = 'Come back later.', 36 | font = 'SF Pro Text Regular 10', 37 | align = 'center', 38 | valign = 'center', 39 | widget = wibox.widget.textbox 40 | }, 41 | }, 42 | margins = dpi(20), 43 | widget = wibox.container.margin 44 | 45 | } 46 | 47 | 48 | local separator_for_empty_msg = wibox.widget 49 | { 50 | orientation = 'vertical', 51 | opacity = 0.0, 52 | widget = wibox.widget.separator 53 | } 54 | 55 | -- Make empty_notifbox center 56 | local centered_empty_notifbox = wibox.widget { 57 | expand = 'none', 58 | layout = wibox.layout.align.vertical, 59 | separator_for_empty_msg, 60 | empty_notifbox, 61 | separator_for_empty_msg 62 | } 63 | 64 | return centered_empty_notifbox 65 | 66 | -------------------------------------------------------------------------------- /awesome/widget/notif-center/clear-all/init.lua: -------------------------------------------------------------------------------- 1 | local awful = require('awful') 2 | local wibox = require('wibox') 3 | local gears = require('gears') 4 | local beautiful = require('beautiful') 5 | 6 | local dpi = require('beautiful').xresources.apply_dpi 7 | local clickable_container = require('widget.clickable-container') 8 | 9 | local config_dir = gears.filesystem.get_configuration_dir() 10 | local widget_icon_dir = config_dir .. 'widget/notif-center/icons/' 11 | 12 | 13 | 14 | -- Delete button imagebox 15 | local delete_imagebox = wibox.widget { 16 | { 17 | image = widget_icon_dir .. 'clear_all' .. '.svg', 18 | resize = true, 19 | forced_height = dpi(20), 20 | forced_width = dpi(20), 21 | widget = wibox.widget.imagebox, 22 | }, 23 | layout = wibox.layout.fixed.horizontal 24 | } 25 | 26 | local delete_button = wibox.widget { 27 | { 28 | delete_imagebox, 29 | margins = dpi(7), 30 | widget = wibox.container.margin 31 | }, 32 | widget = clickable_container 33 | } 34 | 35 | delete_button:buttons( 36 | gears.table.join( 37 | awful.button( 38 | {}, 39 | 1, 40 | nil, 41 | function() 42 | _G.reset_notifbox_layout() 43 | end 44 | ) 45 | ) 46 | ) 47 | 48 | local delete_button_wrapped = wibox.widget { 49 | nil, 50 | { 51 | delete_button, 52 | bg = beautiful.groups_bg, 53 | shape = gears.shape.circle, 54 | widget = wibox.container.background 55 | }, 56 | nil, 57 | expand = 'none', 58 | layout = wibox.layout.align.vertical 59 | } 60 | 61 | return delete_button_wrapped -------------------------------------------------------------------------------- /awesome/widget/notif-center/icons/delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /awesome/widget/notif-center/icons/empty-notification.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /awesome/widget/notif-center/icons/new-notif.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /awesome/widget/notif-center/init.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local dpi = require('beautiful').xresources.apply_dpi 3 | 4 | local notif_header = wibox.widget { 5 | text = 'Notification Center', 6 | font = 'SF Pro Text Bold 16', 7 | align = 'left', 8 | valign = 'bottom', 9 | widget = wibox.widget.textbox 10 | } 11 | 12 | return wibox.widget { 13 | expand = 'none', 14 | layout = wibox.layout.fixed.vertical, 15 | spacing = dpi(10), 16 | { 17 | expand = 'none', 18 | layout = wibox.layout.align.horizontal, 19 | notif_header, 20 | nil, 21 | { 22 | layout = wibox.layout.fixed.horizontal, 23 | spacing = dpi(5), 24 | require('widget.notif-center.dont-disturb'), 25 | require('widget.notif-center.clear-all') 26 | }, 27 | }, 28 | require('widget.notif-center.build-notifbox') 29 | } -------------------------------------------------------------------------------- /awesome/widget/ram/ram-meter.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local gears = require('gears') 3 | local beautiful = require('beautiful') 4 | 5 | local watch = require('awful.widget.watch') 6 | local icons = require('theme.icons') 7 | 8 | local dpi = beautiful.xresources.apply_dpi 9 | 10 | local slider = wibox.widget { 11 | nil, 12 | { 13 | id = 'ram_usage', 14 | max_value = 100, 15 | value = 29, 16 | forced_height = dpi(2), 17 | color = beautiful.fg_normal, 18 | background_color = beautiful.groups_bg, 19 | shape = gears.shape.rounded_rect, 20 | widget = wibox.widget.progressbar 21 | }, 22 | nil, 23 | expand = 'none', 24 | layout = wibox.layout.align.vertical 25 | } 26 | 27 | watch( 28 | 'bash -c "free | grep -z Mem.*Swap.*"', 29 | 5, 30 | function(_, stdout) 31 | local total, used, free, shared, buff_cache, available, total_swap, used_swap, free_swap = 32 | stdout:match('(%d+)%s*(%d+)%s*(%d+)%s*(%d+)%s*(%d+)%s*(%d+)%s*Swap:%s*(%d+)%s*(%d+)%s*(%d+)') 33 | slider.ram_usage:set_value(used / total * 100) 34 | collectgarbage('collect') 35 | end 36 | ) 37 | 38 | local ram_meter = wibox.widget { 39 | { 40 | { 41 | { 42 | image = icons.memory, 43 | resize = true, 44 | widget = wibox.widget.imagebox 45 | }, 46 | top = dpi(12), 47 | bottom = dpi(12), 48 | widget = wibox.container.margin 49 | }, 50 | slider, 51 | spacing = dpi(24), 52 | layout = wibox.layout.fixed.horizontal 53 | 54 | }, 55 | left = dpi(24), 56 | right = dpi(24), 57 | forced_height = dpi(48), 58 | widget = wibox.container.margin 59 | } 60 | 61 | return ram_meter 62 | -------------------------------------------------------------------------------- /awesome/widget/screen-recorder/icons/back.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/screen-recorder/icons/close-screen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /awesome/widget/screen-recorder/icons/start-recording-button.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /awesome/widget/screen-recorder/init.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local awful = require('awful') 3 | local gears = require('gears') 4 | 5 | local clickable_container = require('widget.clickable-container') 6 | local dpi = require('beautiful').xresources.apply_dpi 7 | 8 | local HOME = os.getenv('HOME') 9 | 10 | local recorder_table = require('widget.screen-recorder.screen-recorder-ui') 11 | 12 | require('widget.screen-recorder.screen-recorder-ui-backend') 13 | 14 | local screen_rec_toggle_button = recorder_table.screen_rec_toggle_button 15 | 16 | 17 | local return_button = function() 18 | 19 | return screen_rec_toggle_button 20 | 21 | end 22 | 23 | return return_button -------------------------------------------------------------------------------- /awesome/widget/screen-recorder/screen-recorder-config.lua: -------------------------------------------------------------------------------- 1 | local user_preferences = {} 2 | 3 | 4 | user_resolution = '1366x768' -- Screen WIDTHxHEIGHT 5 | user_offset = '0,0' -- Offset x,y 6 | user_audio = false -- bool true or false 7 | user_save_directory = '$HOME/Videos/Recordings/' -- String $HOME 8 | user_mic_lvl = '20' -- String 9 | user_fps = '30' -- String 10 | 11 | 12 | user_preferences.user_resolution = user_resolution 13 | user_preferences.user_offset = user_offset 14 | user_preferences.user_audio = user_audio 15 | user_preferences.user_save_directory = user_save_directory 16 | user_preferences.user_mic_lvl = user_mic_lvl 17 | user_preferences.user_fps = user_fps 18 | 19 | return user_preferences -------------------------------------------------------------------------------- /awesome/widget/search-apps/init.lua: -------------------------------------------------------------------------------- 1 | ------------------------------------------------- 2 | -- Rofi toggler widget for Awesome Window Manager 3 | -- Shows the application list 4 | -- Use rofi-git master branch 5 | ------------------------------------------------- 6 | 7 | local awful = require('awful') 8 | local wibox = require('wibox') 9 | local gears = require('gears') 10 | 11 | local dpi = require('beautiful').xresources.apply_dpi 12 | local clickable_container = require('widget.clickable-container') 13 | 14 | local apps = require('configuration.apps') 15 | local icons = require('theme.icons') 16 | 17 | local return_button = function() 18 | 19 | local widget = wibox.widget { 20 | { 21 | id = 'icon', 22 | image = icons.search, 23 | widget = wibox.widget.imagebox, 24 | resize = true 25 | }, 26 | layout = wibox.layout.align.horizontal 27 | } 28 | 29 | local widget_button = wibox.widget { 30 | { 31 | widget, 32 | margins = dpi(7), 33 | widget = wibox.container.margin 34 | }, 35 | widget = clickable_container 36 | } 37 | 38 | widget_button:buttons( 39 | gears.table.join( 40 | awful.button( 41 | {}, 42 | 1, 43 | nil, 44 | function() 45 | awful.spawn(apps.default.rofiappmenu, false) 46 | end 47 | ) 48 | ) 49 | ) 50 | 51 | 52 | return widget_button 53 | end 54 | 55 | return return_button -------------------------------------------------------------------------------- /awesome/widget/social-media/icons/facebook.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /awesome/widget/social-media/icons/instagram.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /awesome/widget/social-media/icons/reddit.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /awesome/widget/social-media/icons/twitter.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /awesome/widget/temperature/temperature-meter.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local gears = require('gears') 3 | local beautiful = require('beautiful') 4 | 5 | local watch = require('awful.widget.watch') 6 | local icons = require('theme.icons') 7 | 8 | local dpi = beautiful.xresources.apply_dpi 9 | 10 | local slider = wibox.widget { 11 | nil, 12 | { 13 | id = 'temp_status', 14 | max_value = 100, 15 | value = 29, 16 | forced_height = dpi(2), 17 | color = beautiful.fg_normal, 18 | background_color = beautiful.groups_bg, 19 | shape = gears.shape.rounded_rect, 20 | widget = wibox.widget.progressbar 21 | }, 22 | nil, 23 | expand = 'none', 24 | layout = wibox.layout.align.vertical 25 | } 26 | 27 | local max_temp = 80 28 | 29 | watch( 30 | 'bash -c "cat /sys/class/thermal/thermal_zone0/temp"', 31 | 5, 32 | function(_, stdout) 33 | local temp = stdout:match('(%d+)') 34 | slider.temp_status:set_value((temp / 1000) / max_temp * 100) 35 | collectgarbage('collect') 36 | end 37 | ) 38 | 39 | 40 | local temperature_meter = wibox.widget { 41 | { 42 | { 43 | { 44 | image = icons.thermometer, 45 | resize = true, 46 | widget = wibox.widget.imagebox 47 | }, 48 | top = dpi(12), 49 | bottom = dpi(12), 50 | widget = wibox.container.margin 51 | }, 52 | slider, 53 | spacing = dpi(24), 54 | layout = wibox.layout.fixed.horizontal 55 | 56 | }, 57 | left = dpi(24), 58 | right = dpi(24), 59 | forced_height = dpi(48), 60 | widget = wibox.container.margin 61 | } 62 | 63 | return temperature_meter 64 | -------------------------------------------------------------------------------- /awesome/widget/tray-toggler/icons/left-arrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/tray-toggler/icons/right-arrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/tray-toggler/init.lua: -------------------------------------------------------------------------------- 1 | ------------------------------------------------- 2 | -- Toggle System tray 3 | ------------------------------------------------- 4 | 5 | local awful = require('awful') 6 | local wibox = require('wibox') 7 | local gears = require('gears') 8 | 9 | local dpi = require('beautiful').xresources.apply_dpi 10 | 11 | local clickable_container = require('widget.clickable-container') 12 | 13 | local config_dir = gears.filesystem.get_configuration_dir() 14 | local widget_icon_dir = config_dir .. 'widget/tray-toggler/icons/' 15 | 16 | local widget = wibox.widget { 17 | { 18 | id = 'icon', 19 | image = widget_icon_dir .. 'right-arrow' .. '.svg', 20 | widget = wibox.widget.imagebox, 21 | resize = true 22 | }, 23 | layout = wibox.layout.align.horizontal 24 | } 25 | 26 | local widget_button = wibox.widget { 27 | { 28 | widget, 29 | margins = dpi(7), 30 | widget = wibox.container.margin 31 | }, 32 | widget = clickable_container 33 | } 34 | 35 | widget_button:buttons( 36 | gears.table.join( 37 | awful.button( 38 | {}, 39 | 1, 40 | nil, 41 | function() 42 | awesome.emit_signal("widget::systray:toggle") 43 | end 44 | ) 45 | ) 46 | ) 47 | 48 | 49 | -- Listen to signal 50 | awesome.connect_signal("widget::systray:toggle", function() 51 | 52 | if screen.primary.systray then 53 | 54 | if screen.primary.systray.visible ~= true then 55 | 56 | widget.icon:set_image(gears.surface.load_uncached(widget_icon_dir .. 'left-arrow' .. '.svg')) 57 | else 58 | 59 | widget.icon:set_image(gears.surface.load_uncached(widget_icon_dir .. 'right-arrow' .. '.svg')) 60 | end 61 | 62 | screen.primary.systray.visible = not screen.primary.systray.visible 63 | end 64 | 65 | end) 66 | 67 | -- Update icon on start-up 68 | if screen.primary.systray then 69 | 70 | if screen.primary.systray.visible then 71 | 72 | widget.icon:set_image(widget_icon_dir .. 'right-arrow' .. '.svg') 73 | 74 | end 75 | 76 | end 77 | 78 | -- Show only the tray button in the primary screen 79 | return awful.widget.only_on_screen(widget_button, 'primary') 80 | 81 | -------------------------------------------------------------------------------- /awesome/widget/wifi/clickable-container.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | 3 | function build(widget) 4 | local container = 5 | wibox.widget { 6 | widget, 7 | widget = wibox.container.background, 8 | } 9 | local old_cursor, old_wibox 10 | container:connect_signal( 11 | 'mouse::enter', 12 | function() 13 | -- Hm, no idea how to get the wibox from this signal's arguments... 14 | local w = mouse.current_wibox 15 | if w then 16 | old_cursor, old_wibox = w.cursor, w 17 | w.cursor = 'hand1' 18 | end 19 | end 20 | ) 21 | 22 | container:connect_signal( 23 | 'mouse::leave', 24 | function() 25 | if old_wibox then 26 | old_wibox.cursor = old_cursor 27 | old_wibox = nil 28 | end 29 | end 30 | ) 31 | 32 | return container 33 | end 34 | 35 | return build 36 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-off.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-1.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-3.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 62 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-4-lock.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-4.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-alert-outline.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-alert.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 61 | 65 | 66 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-empty.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 57 | 58 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-lock-outline.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-off-outline.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-off.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | 19 | 20 | 22 | image/svg+xml 23 | 25 | 26 | 27 | 28 | 29 | 31 | 52 | 56 | 57 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi-strength-outline.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/wifi/icons/wifi.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /awesome/widget/window-effects/clickable-container.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | 3 | function build(widget) 4 | local container = 5 | wibox.widget { 6 | widget, 7 | widget = wibox.container.background, 8 | } 9 | local old_cursor, old_wibox 10 | container:connect_signal( 11 | 'mouse::enter', 12 | function() 13 | -- Hm, no idea how to get the wibox from this signal's arguments... 14 | local w = mouse.current_wibox 15 | if w then 16 | old_cursor, old_wibox = w.cursor, w 17 | w.cursor = 'hand1' 18 | end 19 | end 20 | ) 21 | 22 | container:connect_signal( 23 | 'mouse::leave', 24 | function() 25 | if old_wibox then 26 | old_wibox.cursor = old_cursor 27 | old_wibox = nil 28 | end 29 | end 30 | ) 31 | 32 | return container 33 | end 34 | 35 | return build 36 | -------------------------------------------------------------------------------- /awesome/widget/xdg-folders/documents.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local awful = require('awful') 3 | local naughty = require('naughty') 4 | local gears = require('gears') 5 | 6 | local clickable_container = require('widget.clickable-container') 7 | local dpi = require('beautiful').xresources.apply_dpi 8 | 9 | local config_dir = gears.filesystem.get_configuration_dir() 10 | local widget_icon_dir = config_dir .. 'widget/xdg-folders/icons/' 11 | 12 | local docu_widget = wibox.widget { 13 | { 14 | image = widget_icon_dir .. 'folder-documents' .. '.svg', 15 | resize = true, 16 | widget = wibox.widget.imagebox 17 | }, 18 | layout = wibox.layout.align.horizontal 19 | } 20 | 21 | local docu_button = wibox.widget { 22 | { 23 | docu_widget, 24 | margins = dpi(10), 25 | widget = wibox.container.margin 26 | }, 27 | widget = clickable_container 28 | } 29 | 30 | docu_button:buttons( 31 | gears.table.join( 32 | awful.button( 33 | {}, 34 | 1, 35 | nil, 36 | function() 37 | awful.spawn.easy_async_with_shell( 38 | 'xdg-open ${HOME}/Documents', 39 | function() end 40 | ) 41 | end 42 | ) 43 | ) 44 | ) 45 | 46 | awful.tooltip( 47 | { 48 | objects = {docu_button}, 49 | mode = 'outside', 50 | align = 'right', 51 | text = 'Documents', 52 | margin_leftright = dpi(8), 53 | margin_topbottom = dpi(8), 54 | preferred_positions = {'right', 'left', 'top', 'bottom'} 55 | } 56 | ) 57 | 58 | return docu_button 59 | -------------------------------------------------------------------------------- /awesome/widget/xdg-folders/downloads.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local awful = require('awful') 3 | local naughty = require('naughty') 4 | local gears = require('gears') 5 | 6 | local clickable_container = require('widget.clickable-container') 7 | local dpi = require('beautiful').xresources.apply_dpi 8 | 9 | local config_dir = gears.filesystem.get_configuration_dir() 10 | local widget_icon_dir = config_dir .. 'widget/xdg-folders/icons/' 11 | 12 | local dl_widget = wibox.widget { 13 | { 14 | image = widget_icon_dir .. 'folder-download' .. '.svg', 15 | resize = true, 16 | widget = wibox.widget.imagebox 17 | }, 18 | layout = wibox.layout.align.horizontal 19 | } 20 | 21 | local downloads_button = wibox.widget { 22 | { 23 | dl_widget, 24 | margins = dpi(10), 25 | widget = wibox.container.margin 26 | }, 27 | widget = clickable_container 28 | } 29 | 30 | downloads_button:buttons( 31 | gears.table.join( 32 | awful.button( 33 | {}, 34 | 1, 35 | nil, 36 | function() 37 | awful.spawn.easy_async_with_shell( 38 | 'xdg-open ${HOME}/Downloads', 39 | function() end 40 | ) 41 | end 42 | ) 43 | ) 44 | ) 45 | 46 | awful.tooltip( 47 | { 48 | objects = {downloads_button}, 49 | mode = 'outside', 50 | align = 'right', 51 | text = 'Downloads', 52 | margin_leftright = dpi(8), 53 | margin_topbottom = dpi(8), 54 | preferred_positions = {'right', 'left', 'top', 'bottom'} 55 | } 56 | ) 57 | 58 | 59 | return downloads_button 60 | -------------------------------------------------------------------------------- /awesome/widget/xdg-folders/home.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local awful = require('awful') 3 | local naughty = require('naughty') 4 | local gears = require('gears') 5 | 6 | local clickable_container = require('widget.clickable-container') 7 | local dpi = require('beautiful').xresources.apply_dpi 8 | 9 | local config_dir = gears.filesystem.get_configuration_dir() 10 | local widget_icon_dir = config_dir .. 'widget/xdg-folders/icons/' 11 | 12 | local home_widget = wibox.widget { 13 | { 14 | image = widget_icon_dir .. 'user-home' .. '.svg', 15 | resize = true, 16 | widget = wibox.widget.imagebox, 17 | }, 18 | layout = wibox.layout.align.horizontal 19 | } 20 | 21 | local home_button = wibox.widget { 22 | { 23 | home_widget, 24 | margins = dpi(10), 25 | widget = wibox.container.margin 26 | }, 27 | widget = clickable_container 28 | } 29 | home_button:buttons( 30 | gears.table.join( 31 | awful.button( 32 | {}, 33 | 1, 34 | nil, 35 | function() 36 | awful.spawn.easy_async_with_shell( 37 | 'xdg-open ${HOME}', 38 | function() end 39 | ) 40 | end 41 | ) 42 | ) 43 | ) 44 | 45 | awful.tooltip( 46 | { 47 | objects = {home_button}, 48 | mode = 'outside', 49 | align = 'right', 50 | text = 'Home', 51 | margin_leftright = dpi(8), 52 | margin_topbottom = dpi(8), 53 | preferred_positions = {'right', 'left', 'top', 'bottom'} 54 | } 55 | ) 56 | 57 | 58 | return home_button 59 | -------------------------------------------------------------------------------- /awesome/widget/xdg-folders/init.lua: -------------------------------------------------------------------------------- 1 | local awful = require('awful') 2 | local wibox = require('wibox') 3 | local beautiful = require('beautiful') 4 | 5 | local dpi = require('beautiful').xresources.apply_dpi 6 | 7 | local separator = wibox.widget { 8 | orientation = 'horizontal', 9 | forced_height = dpi(1), 10 | span_ratio = 0.55, 11 | widget = wibox.widget.separator 12 | } 13 | 14 | return wibox.widget { 15 | layout = wibox.layout.align.vertical, 16 | { 17 | separator, 18 | require("widget.xdg-folders.home"), 19 | require("widget.xdg-folders.documents"), 20 | require("widget.xdg-folders.downloads"), 21 | -- require("widget.xdg-folders.pictures"), 22 | -- require("widget.xdg-folders.videos"), 23 | separator, 24 | require("widget.xdg-folders.trash"), 25 | layout = wibox.layout.fixed.vertical, 26 | }, 27 | } 28 | -------------------------------------------------------------------------------- /awesome/widget/xdg-folders/pictures.lua: -------------------------------------------------------------------------------- 1 | local wibox = require('wibox') 2 | local awful = require('awful') 3 | local naughty = require('naughty') 4 | local gears = require('gears') 5 | 6 | local clickable_container = require('widget.clickable-container') 7 | local dpi = require('beautiful').xresources.apply_dpi 8 | 9 | local config_dir = gears.filesystem.get_configuration_dir() 10 | local widget_icon_dir = config_dir .. 'widget/xdg-folders/icons/' 11 | 12 | local pic_widget = wibox.widget { 13 | { 14 | image = widget_icon_dir .. 'folder-pictures' .. '.svg', 15 | resize = true, 16 | widget = wibox.widget.imagebox 17 | }, 18 | layout = wibox.layout.align.horizontal 19 | } 20 | 21 | local pic_button = wibox.widget { 22 | { 23 | pic_widget, 24 | margins = dpi(10), 25 | widget = wibox.container.margin 26 | }, 27 | widget = clickable_container 28 | } 29 | 30 | pic_button:buttons( 31 | gears.table.join( 32 | awful.button( 33 | {}, 34 | 1, 35 | nil, 36 | function() 37 | awful.spawn.easy_async_with_shell( 38 | 'xdg-open ${HOME}/Pictures', 39 | function() end 40 | ) 41 | end 42 | ) 43 | ) 44 | ) 45 | 46 | awful.tooltip( 47 | { 48 | objects = {pic_button}, 49 | mode = 'outside', 50 | align = 'right', 51 | text = 'Pictures', 52 | margin_leftright = dpi(8), 53 | margin_topbottom = dpi(8), 54 | preferred_positions = {'right', 'left', 'top', 'bottom'} 55 | } 56 | ) 57 | 58 | 59 | return pic_button 60 | -------------------------------------------------------------------------------- /awesome/widget/xdg-folders/videos.lua: -------------------------------------------------------------------------------- 1 | local awful = require('awful') 2 | local wibox = require('wibox') 3 | local gears = require('gears') 4 | 5 | local clickable_container = require('widget.clickable-container') 6 | local dpi = require('beautiful').xresources.apply_dpi 7 | 8 | local config_dir = gears.filesystem.get_configuration_dir() 9 | local widget_icon_dir = config_dir .. 'widget/xdg-folders/icons/' 10 | 11 | local vid_widget = 12 | wibox.widget { 13 | { 14 | id = 'icon', 15 | widget = wibox.widget.imagebox, 16 | resize = true 17 | }, 18 | layout = wibox.layout.align.horizontal 19 | } 20 | 21 | local videos_button = wibox.widget { 22 | { 23 | vid_widget, 24 | margins = dpi(10), 25 | widget = wibox.container.margin 26 | }, 27 | widget = clickable_container 28 | } 29 | 30 | videos_button:buttons( 31 | gears.table.join( 32 | awful.button( 33 | {}, 34 | 1, 35 | nil, 36 | function() 37 | awful.spawn.easy_async_with_shell( 38 | 'xdg-open ${HOME}/Videos', 39 | function() end 40 | ) 41 | end 42 | ) 43 | ) 44 | ) 45 | 46 | awful.tooltip 47 | { 48 | objects = {videos_button}, 49 | mode = 'outside', 50 | align = 'right', 51 | margin_leftright = dpi(8), 52 | margin_topbottom = dpi(8), 53 | timer_function = function() 54 | return 'Videos' 55 | end, 56 | preferred_positions = {'right', 'left', 'top', 'bottom'} 57 | } 58 | 59 | return videos_button 60 | -------------------------------------------------------------------------------- /screenshots/snap1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/screenshots/snap1.png -------------------------------------------------------------------------------- /screenshots/snap2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/screenshots/snap2.png -------------------------------------------------------------------------------- /screenshots/snap3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Bearbobs/glorious-awesome-debian/e94e1771ec5a7e434bde40507b61215c15c16bd7/screenshots/snap3.png --------------------------------------------------------------------------------