31 |
32 | 
33 |
34 | Some more screenshots in this reddit [post](https://www.reddit.com/r/unixporn/comments/8qijmx/awesomewm_dark_theme/)
35 |
36 | # Installation
37 |
38 | Clone the repo under **~/.config/awesome/**, then follow an Installation section of widget's readme file.
39 |
40 | # Stargazers
41 |
42 | [](https://starchart.cc/streetturtle/awesome-wm-widgets)
43 |
44 | # Troubleshooting
45 |
46 | In case of any doubts/questions/problems:
47 | - create an [issue](https://github.com/streetturtle/awesome-wm-widgets/issues/new/choose)
48 | - raise a question on [Discussions](https://github.com/streetturtle/awesome-wm-widgets/discussions)!
49 | - ping me on AwesomeWM's discord, here's an [invite](https://discord.gg/BPat4F87dg)
50 |
51 | # Support
52 |
53 | If you find anything useful here, you can:
54 | - star a repo - this really motivates me to work on this project
55 | - or
56 | - or even become a [sponsor](https://github.com/sponsors/streetturtle)
57 |
58 | # Contributors
59 |
60 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/Screenshot from 2019-03-01 14-28-18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/Screenshot from 2019-03-01 14-28-18.png
--------------------------------------------------------------------------------
/apt-widget/README.md:
--------------------------------------------------------------------------------
1 | # APT widget
2 |
3 | Widget which shows a list of APT packages to be updated:
4 |
5 | 
6 |
7 | Features:
8 | - scrollable list !!! (thanks to this [post](https://www.reddit.com/r/awesomewm/comments/isx89x/scrolling_a_layout_fixed_flexed_layout_widget/) of reddit)
9 | - update single package
10 | - update multiple packages
11 |
12 | ## Customizations
13 |
14 | It is possible to customize widget by providing a table with the following config parameters:
15 |
16 | | Name | Default | Description |
17 | |---|---|---|
18 | | `icon_control` | `false` | Set or unset whether _any_ click on the screen closes the dropdown after it has been opened. |
19 |
20 |
21 | ## Installation
22 |
23 | Clone the repo under ~/.config/awesome/ folder, then in rc.lua add the following:
24 |
25 | ```lua
26 | local apt_widget = require("awesome-wm-widgets.apt-widget.apt-widget")
27 |
28 | ...
29 | s.mytasklist, -- Middle widget
30 | { -- Right widgets
31 | layout = wibox.layout.fixed.horizontal,
32 | ...
33 | apt_widget(),
34 | ...
35 | ```
36 |
37 | Or use the following.
38 |
39 | ```lua
40 | ...
41 | apt_widget({icon_control=true}),
42 | ...
43 | ```
44 |
45 |
--------------------------------------------------------------------------------
/apt-widget/icons/black.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
26 |
--------------------------------------------------------------------------------
/apt-widget/icons/help-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apt-widget/icons/orange.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
26 |
--------------------------------------------------------------------------------
/apt-widget/icons/refresh-cw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apt-widget/icons/watch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apt-widget/icons/white-black.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
26 |
--------------------------------------------------------------------------------
/apt-widget/icons/white-orange.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
26 |
--------------------------------------------------------------------------------
/apt-widget/screenshots/screenshot.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/apt-widget/screenshots/screenshot.gif
--------------------------------------------------------------------------------
/awesome-o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/awesome-o.png
--------------------------------------------------------------------------------
/awesome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/awesome.png
--------------------------------------------------------------------------------
/battery-widget/README.md:
--------------------------------------------------------------------------------
1 | # Battery widget
2 |
3 | Simple and easy-to-install widget for Awesome Window Manager.
4 |
5 | This widget consists of:
6 |
7 | - an icon which shows the battery level:
8 | 
9 | - a pop-up window, which shows up when you hover over an icon:
10 | 
11 | Alternatively you can use a tooltip (check the code):
12 | 
13 | - a pop-up warning message which appears on bottom right corner when battery level is less that 15% (you can get the image [here](https://vk.com/images/stickers/1933/512.png)):
14 | 
15 |
16 | Note that widget uses the Arc icon theme, so it should be [installed](https://github.com/horst3180/arc-icon-theme#installation) first under **/usr/share/icons/Arc/** folder.
17 |
18 | ## Customization
19 |
20 | It is possible to customize widget by providing a table with all or some of the following config parameters:
21 |
22 | | Name | Default | Description |
23 | |---|---|---|
24 | | `font` | `Play 8` | Font |
25 | | `path_to_icons` | `/usr/share/icons/Arc/status/symbolic/` | Path to the folder with icons* |
26 | | `show_current_level`| false | Show current charge level |
27 | | `margin_right`|0| The right margin of the widget|
28 | | `margin_left`|0| The left margin of the widget|
29 | | `display_notification` | false | Display a notification on mouseover |
30 | | `notification_position` | `top_right` | The notification position |
31 | | `timeout` | 10 | How often in seconds the widget refreshes |
32 | | `warning_msg_title` | `Huston, we have a problem` | Title of the warning popup |
33 | | `warning_msg_text` | `Battery is dying` | Text of the warning popup |
34 | | `warning_msg_position` | `bottom_right` | Position of the warning popup |
35 | | `warning_msg_icon` | `~/.config/awesome/awesome-wm-widgets/battery-widget/spaceman.jpg` | Icon of the warning popup |
36 | | `enable_battery_warning` | true | Display low battery warning |
37 |
38 | *Note: the widget expects following icons to be present in the folder:
39 |
40 | - battery-caution-charging-symbolic.svg
41 | - battery-empty-charging-symbolic.svg
42 | - battery-full-charged-symbolic.svg
43 | - battery-full-symbolic.svg
44 | - battery-good-symbolic.svg
45 | - battery-low-symbolic.svg
46 | - battery-caution-symbolic.svg
47 | - battery-empty-symbolic.svg
48 | - battery-full-charging-symbolic.svg
49 | - battery-good-charging-symbolic.svg
50 | - battery-low-charging-symbolic.svg
51 | - battery-missing-symbolic.svg
52 |
53 | ## Installation
54 |
55 | This widget reads the output of acpi tool.
56 |
57 | - install `acpi` and check the output:
58 |
59 | ```bash
60 | $ sudo apt-get install acpi
61 | $ acpi
62 | Battery 0: Discharging, 66%, 02:34:06 remaining
63 | ```
64 |
65 | ```lua
66 | local battery_widget = require("awesome-wm-widgets.battery-widget.battery")
67 |
68 | ...
69 | s.mytasklist, -- Middle widget
70 | { -- Right widgets
71 | layout = wibox.layout.fixed.horizontal,
72 | ...
73 | battery_widget(),
74 | ...
75 | ```
76 |
--------------------------------------------------------------------------------
/battery-widget/bat-wid-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/battery-widget/bat-wid-1.png
--------------------------------------------------------------------------------
/battery-widget/bat-wid-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/battery-widget/bat-wid-2.png
--------------------------------------------------------------------------------
/battery-widget/bat-wid-22.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/battery-widget/bat-wid-22.png
--------------------------------------------------------------------------------
/battery-widget/bat-wid-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/battery-widget/bat-wid-3.png
--------------------------------------------------------------------------------
/battery-widget/spaceman.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/battery-widget/spaceman.jpg
--------------------------------------------------------------------------------
/batteryarc-widget/10_c.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/10_c.png
--------------------------------------------------------------------------------
/batteryarc-widget/10_d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/10_d.png
--------------------------------------------------------------------------------
/batteryarc-widget/20_c.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/20_c.png
--------------------------------------------------------------------------------
/batteryarc-widget/20_d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/20_d.png
--------------------------------------------------------------------------------
/batteryarc-widget/80_c.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/80_c.png
--------------------------------------------------------------------------------
/batteryarc-widget/80_d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/80_d.png
--------------------------------------------------------------------------------
/batteryarc-widget/spaceman.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/spaceman.jpg
--------------------------------------------------------------------------------
/batteryarc-widget/warning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/batteryarc-widget/warning.png
--------------------------------------------------------------------------------
/bitbucket-widget/README.md:
--------------------------------------------------------------------------------
1 | # Bitbucket widget
2 |
3 | The widget shows the number of pull requests assigned to the user and when clicked shows them in the list with some additional information. When item in the list is clicked - it opens the pull request in the browser.
4 |
5 | ## How it works
6 |
7 | Widget uses cURL to query Bitbucket's [REST API](https://developer.atlassian.com/bitbucket/api/2/reference/). In order to be authenticated, widget uses a [netrc](https://ec.haxx.se/usingcurl/usingcurl-netrc) feature of the cURL, which is basically allows storing basic auth credentials in a **.netrc** file in home folder.
8 |
9 | Bitbucket allows using [App Passwords](https://confluence.atlassian.com/bitbucket/app-passwords-828781300.html) (available in the account settings) - simply generate one for the widget and use it as password in **.netrc** file.
10 |
11 | ## Customization
12 |
13 | It is possible to customize widget by providing a table with all or some of the following config parameters:
14 |
15 | | Name | Default | Description |
16 | |---|---|---|
17 | | `icon` | `~/.config/awesome/awesome-wm-widgets/bitbucket-widget/bitbucket-icon-gradient-blue.svg` | Path to the icon |
18 | | `host` | Required | e.g. _http://api.bitbucket.org_ |
19 | | `uuid` | Required | e.g. _{123e4567-e89b-12d3-a456-426614174000}_ |
20 | | `workspace` | Required | Workspace ID|
21 | | `repo_slug` | Required | Repository slug |
22 | | `timeout` | 60 | How often in seconds the widget refreshes |
23 |
24 | Note:
25 | - host most likely should start with _api._
26 | - to get your UUID you may call `curl -s -n 'https://api.bitbucket.org/2.0/user'`
27 |
28 | ## Installation
29 |
30 | Create a **.netrc** file in you home directory with following content:
31 |
32 | ```bash
33 | machine api.bitbucket.org
34 | login mikey@tmnt.com
35 | password cowabunga
36 | ```
37 |
38 | Then change file's permissions to 600 (so only you can read/write it):
39 |
40 | ```bash
41 | chmod 600 ~/.netrc
42 | ```
43 | And test if it works by calling the API:
44 |
45 | ```bash
46 | curl -s -n 'https://api.bitbucket.org/2.0/repositories/'
47 | ```
48 |
49 | Also, to properly setup required parameters you can use `test_bitbucket_api.sh` script - it uses the same curl call as widget.
50 |
51 | Then clone/download repo and use widget in **rc.lua**:
52 |
53 | ```lua
54 | local bitbucket_widget = require("awesome-wm-widgets.bitbucket-widget.bitbucket")
55 | ...
56 | s.mytasklist, -- Middle widget
57 | { -- Right widgets
58 | layout = wibox.layout.fixed.horizontal,
59 | ...
60 | -- default
61 | bitbucket_widget({
62 | host = 'https://api.bitbucket.org',
63 | uuid = '{123e4567-e89b-12d3-a456-426614174000}',
64 | workspace = 'workspace',
65 | repo_slug = 'slug'
66 |
67 | }}),
68 | ...
69 | ```
70 |
--------------------------------------------------------------------------------
/bitbucket-widget/bitbucket-icon-gradient-blue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bitbucket-widget/check.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bitbucket-widget/clipboard.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bitbucket-widget/copy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bitbucket-widget/git-pull-request.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bitbucket-widget/message-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bitbucket-widget/test_bitbucket_api.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | HOST='https://api.bitbucket.org'
4 | ACCOUNT_ID=''
5 | WORKSPACE=''
6 | REPO_SLUG=''
7 |
8 | curl -s -n "${HOST}/2.0/repositories/${WORKSPACE}/${REPO_SLUG}/pullrequests?fields=values.title,values.links.html,values.author.display_name,values.author.links.avatar&q=reviewers.account_id+%3D+%22${ACCOUNT_ID}%22"
--------------------------------------------------------------------------------
/bitbucket-widget/user.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bluelight-widget/README.md:
--------------------------------------------------------------------------------
1 |
2 | # Blue Light Filter Widget
3 |
4 | This widget provides a simple way to toggle a blue light filter using [Redshift](https://github.com/jonls/redshift). It offers an easy mechanism to switch between day and night modes, reducing eye strain during late-night computer use.
5 |
6 | | Day Mode | Night Mode |
7 | |----------|------------|
8 | | |  |
9 |
10 | (I couldn't capture the effect itself)
11 |
12 | I usually use every widget with my custom (kinda janky) [wrapper widget](https://github.com/VMatt013/MySetup/blob/Debian/.config/awesome/widgets/margin.lua) to make them look cleaner and more unified.
13 |
14 |
15 | **With wrapper**
16 |
17 | 
18 |
19 |
20 | ## Installation
21 |
22 | Clone this repository then add the widget to your wibar:
23 |
24 | ```lua
25 | local bluelight_widget = require("awesome-wm-widgets.bluelight-widget")
26 | local margin = require("awesome-wm-widgets.margin") -- In case you use my wrapper
27 |
28 | s.mytasklist, -- Middle widget
29 | { -- Right widgets
30 | layout = wibox.layout.fixed.horizontal,
31 | ...
32 | bluelight_widget, -- Add the widget here
33 | margin(bluelight, true), -- Add the widget with my wrapper
34 | ...
35 | }
36 | ```
37 |
38 | ## Usage
39 |
40 | - Click the widget to toggle between **Day Mode** and **Night Mode**.
41 | - **Day Mode:** Disables the blue light filter.
42 | - **Night Mode:** Activates the blue light filter with a warm color temperature.
43 |
44 | ## Customization
45 |
46 | You can customize the widget by modifying the following parameters in the widget's source file:
47 |
48 | | Name | Default | Description |
49 | |------------|----------------------------------------|------------------------------------------------------------|
50 | | `ICON_DIR` | ```awesome-wm-widgets/bluelight-widget/``` | Directory where the widget icons (sun.svg and moon.svg) are stored. |
51 | | `CMD` | ```redshift``` | Command to run Redshift. |
52 | | `NIGHT_CMD`| ```-O 2500 -g 0.75``` | Command options for activating Night Mode. |
53 | | `DAY_CMD` | ```-x``` | Command options for activating Day Mode. |
54 |
55 | ## Dependencies
56 |
57 | - [Redshift](https://github.com/jonls/redshift): Make sure Redshift is installed on your system.
58 |
--------------------------------------------------------------------------------
/bluelight-widget/day.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/bluelight-widget/day.png
--------------------------------------------------------------------------------
/bluelight-widget/init.lua:
--------------------------------------------------------------------------------
1 | -------------------------------------------------
2 | -- Blue Light Filter Widget for Awesome Window Manager
3 | -- More details could be found here:
4 | -- https://github.com/streetturtle/awesome-wm-widgets/tree/master/bluelight-widget
5 |
6 | -- @author VMatt
7 | -- @copyright 2025 VMatt
8 | -------------------------------------------------
9 |
10 | local awful = require("awful")
11 | local wibox = require("wibox")
12 | local gfs = require("gears.filesystem")
13 |
14 | local ICON_DIR = gfs.get_configuration_dir() .. "awesome-wm-widgets/bluelight-widget/"
15 | local DAY_ICON = ICON_DIR .. "sun.svg"
16 | local NIGHT_ICON = ICON_DIR .. "moon.svg"
17 |
18 | local CMD = "redshift"
19 | local NIGHT_CMD = "-O 2500 -g 0.75"
20 | local DAY_CMD = "-x"
21 | local day = true
22 |
23 | local widget = wibox.widget({
24 | {
25 |
26 | {
27 | id = "icon",
28 | image = DAY_ICON,
29 | resize = true,
30 | widget = wibox.widget.imagebox,
31 | },
32 | layout = wibox.layout.fixed.horizontal,
33 | widget = wibox.container.margin,
34 | },
35 | border_width = 5,
36 | widget = wibox.container.background,
37 | layout = wibox.layout.fixed.horizontal,
38 | })
39 |
40 | function widget:update()
41 | local icon = self:get_children_by_id("icon")[1]
42 | if day then
43 | icon:set_image(DAY_ICON)
44 | else
45 | icon:set_image(NIGHT_ICON)
46 | end
47 | end
48 |
49 | local function on_day()
50 | awful.spawn(CMD .. " " .. DAY_CMD)
51 | widget:update()
52 | end
53 |
54 | local function on_night()
55 | awful.spawn(CMD .. " " .. NIGHT_CMD)
56 | widget:update()
57 | end
58 |
59 | local function toggle()
60 | day = not day
61 | if day then
62 | on_day()
63 | else
64 | on_night()
65 | end
66 | end
67 |
68 | widget:buttons(awful.util.table.join(awful.button({}, 1, function()
69 | toggle()
70 | end)))
71 |
72 | return widget
73 |
--------------------------------------------------------------------------------
/bluelight-widget/moon.svg:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/bluelight-widget/night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/bluelight-widget/night.png
--------------------------------------------------------------------------------
/bluelight-widget/sun.svg:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/bluelight-widget/with_wrapper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/bluelight-widget/with_wrapper.png
--------------------------------------------------------------------------------
/brightness-widget/br-wid-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/brightness-widget/br-wid-1.png
--------------------------------------------------------------------------------
/calendar-widget/calendar_bottom_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/calendar_bottom_right.png
--------------------------------------------------------------------------------
/calendar-widget/calendar_start_sunday.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/calendar_start_sunday.png
--------------------------------------------------------------------------------
/calendar-widget/calendar_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/calendar_top.png
--------------------------------------------------------------------------------
/calendar-widget/calendar_top_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/calendar_top_right.png
--------------------------------------------------------------------------------
/calendar-widget/dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/dark.png
--------------------------------------------------------------------------------
/calendar-widget/light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/light.png
--------------------------------------------------------------------------------
/calendar-widget/nord.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/nord.png
--------------------------------------------------------------------------------
/calendar-widget/outrun.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/calendar-widget/outrun.png
--------------------------------------------------------------------------------
/cmus-widget/README.md:
--------------------------------------------------------------------------------
1 | # Cmus widget
2 |
3 | Cmus widget that shows the current playing track.
4 |
5 | 
6 |
7 | Left click toggles playback.
8 |
9 | ## Installation
10 |
11 | Clone the repo under **~/.config/awesome/** and add widget in **rc.lua**:
12 |
13 | ```lua
14 | local cmus_widget = require('awesome-wm-widgets.cmus-widget.cmus')
15 | ...
16 | s.mytasklist, -- Middle widget
17 | { -- Right widgets
18 | layout = wibox.layout.fixed.horizontal,
19 | ...
20 | -- default
21 | cmus_widget(),
22 | -- customized
23 | cmus_widget{
24 | space = 5,
25 | timeout = 5
26 | },
27 | ```
28 |
29 | ### Shortcuts
30 |
31 | To improve responsiveness of the widget when playback is changed by a shortcut use corresponding methods of the widget:
32 |
33 | ```lua
34 | awful.key({ modkey, "Shift" }, "p", function () cmus_widget:play_pause() end, {description = "toggle track", group = "cmus"}),
35 | awful.key({ }, "XF86AudioPlay", function () cmus_widget:play() end, {description = "play track", group = "cmus"}),
36 | awful.key({ }, "XF86AudioPause", function () cmus_widget:play() end, {description = "pause track", group = "cmus"}),
37 | awful.key({ }, "XF86AudioNext", function () cmus_widget:next_track() end, {description = "next track", group = "cmus"}),
38 | awful.key({ }, "XF86AudioPrev", function () cmus_widget:prev_track() end, {description = "previous track", group = "cmus"}),
39 | awful.key({ }, "XF86AudioStop", function () cmus_widget:stop() end, {description = "stop track", group = "cmus"}),
40 | ```
41 |
42 | ## Customization
43 |
44 | It is possible to customize the widget by providing a table with all or some of the following config parameters:
45 |
46 | ### Generic parameter
47 |
48 | | Name | Default | Description |
49 | |---|---|---|
50 | | `font` | `beautiful.font` | Font name and size, like `Play 12` |
51 | | `path_to_icons` | `/usr/share/icons/Arc/actions/symbolic/` | Alternative path for the icons |
52 | | `timeout`| 10 | Refresh cooldown |
53 | | `max_length` | 30 | Maximum lentgh of title. Text will be ellipsized if longer. |
54 | | `space` | 3 | Space between icon and track title |
55 |
--------------------------------------------------------------------------------
/cmus-widget/screenshots/cmus-widget.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/cmus-widget/screenshots/cmus-widget.png
--------------------------------------------------------------------------------
/cpu-widget/README.md:
--------------------------------------------------------------------------------
1 | # CPU widget
2 |
3 | [](https://github.com/streetturtle/awesome-wm-widgets/labels/cpu)
4 |
5 | This widget shows the average CPU load among all cores of the machine:
6 |
7 | 
8 |
9 | ## How it works
10 |
11 | To measure the load I took Paul Colby's bash [script](http://colby.id.au/calculating-cpu-usage-from-proc-stat/) and rewrote it in Lua, which was quite simple.
12 | So awesome simply reads the first line of /proc/stat:
13 |
14 | ```bash
15 | $ cat /proc/stat | grep '^cpu '
16 | cpu 197294 718 50102 2002182 3844 0 2724 0 0 0
17 | ```
18 |
19 | and calculates the percentage.
20 |
21 | ## Customization
22 |
23 | It is possible to customize widget by providing a table with all or some of the following config parameters:
24 |
25 | | Name | Default | Description |
26 | |---|---|---|
27 | | `width` | 50 | Width of the widget |
28 | | `step_width` | 2 | Width of the step |
29 | | `step_spacing` | 1 | Space size between steps |
30 | | `color` | `beautiful.fg_normal` | Color of the graph |
31 | | `enable_kill_button` | false | Show button which kills the process |
32 | | `process_info_max_length` | -1 | Truncate the process information. Some processes may have a very long list of parameters which won't fit in the screen, this options allows to truncate it to the given length. |
33 | | `timeout` | 1 | How often in seconds the widget refreshes |
34 |
35 | ### Example
36 |
37 | ```lua
38 | cpu_widget({
39 | width = 70,
40 | step_width = 2,
41 | step_spacing = 0,
42 | color = '#434c5e'
43 | })
44 | ```
45 |
46 | The config above results in the following widget:
47 |
48 | 
49 |
50 | ## Installation
51 |
52 | Clone/download repo and use widget in **rc.lua**:
53 |
54 | ```lua
55 | local cpu_widget = require("awesome-wm-widgets.cpu-widget.cpu-widget")
56 | ...
57 | s.mytasklist, -- Middle widget
58 | { -- Right widgets
59 | layout = wibox.layout.fixed.horizontal,
60 | ...
61 | -- default
62 | cpu_widget(),
63 | -- or custom
64 | cpu_widget({
65 | width = 70,
66 | step_width = 2,
67 | step_spacing = 0,
68 | color = '#434c5e'
69 | })
70 | ...
71 | ```
72 |
--------------------------------------------------------------------------------
/cpu-widget/cpu.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/cpu-widget/cpu.gif
--------------------------------------------------------------------------------
/cpu-widget/cpu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/cpu-widget/cpu.png
--------------------------------------------------------------------------------
/cpu-widget/custom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/cpu-widget/custom.png
--------------------------------------------------------------------------------
/docker-widget/README.md:
--------------------------------------------------------------------------------
1 | # Docker / Podman Widget
2 |
3 | [](https://github.com/streetturtle/awesome-wm-widgets/labels/docker)
4 | 
5 |
6 | The widget allows to manage docker and podman containers, namely start/stop/pause/unpause:
7 |
8 |
9 |
10 |
11 |
12 | ## Customization
13 |
14 | It is possible to customize widget by providing a table with all or some of the following config parameters:
15 |
16 | | Name | Default | Description |
17 | |---|---|---|
18 | | `icon` | `./docker-widget/icons/docker.svg` | Path to the icon |
19 | | `number_of_containers` | -1 | Number of last created containers to show |
20 | | `executable_name` | `docker` | Name of the executable to use, defaults to `docker` |
21 | | `max_widget_width` | 270 | Maximum width of the widget before the text breaks |
22 |
23 | The `executable_name` allows you to use `Podman` instead of docker. This works since `Podman` is compatible to `docker` in the sense that the syntax and command outputs are identical.
24 |
25 | ## Installation
26 |
27 | Clone the repo under **~/.config/awesome/** and add widget in **rc.lua**:
28 |
29 | ```lua
30 | local docker_widget = require("awesome-wm-widgets.docker-widget.docker")
31 | ...
32 | s.mytasklist, -- Middle widget
33 | { -- Right widgets
34 | layout = wibox.layout.fixed.horizontal,
35 | ...
36 | -- default
37 | docker_widget(),
38 | -- customized
39 | docker_widget{
40 | number_of_containers = 5
41 | },
42 | ```
43 |
--------------------------------------------------------------------------------
/docker-widget/docker.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/docker-widget/docker.gif
--------------------------------------------------------------------------------
/docker-widget/icons/docker.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/docker-widget/icons/pause-btn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/pause.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/play-btn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/play-btn.svg-:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/play.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/stop-btn.svg:
--------------------------------------------------------------------------------
1 |
2 |
11 |
--------------------------------------------------------------------------------
/docker-widget/icons/trash-btn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docker-widget/icons/unpause-btn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/email-widget/.env.example:
--------------------------------------------------------------------------------
1 | EMAIL=
2 | PASSWORD=
3 | MAX_MSG_COUNT=
4 | MAX_BODY_LENGTH=
5 |
6 |
--------------------------------------------------------------------------------
/email-widget/.gitignore:
--------------------------------------------------------------------------------
1 | .venv
2 | .env
3 |
--------------------------------------------------------------------------------
/email-widget/README.md:
--------------------------------------------------------------------------------
1 | # Email widget
2 |
3 | This widget consists of an icon with counter which shows number of unread emails: 
4 | and a popup message which appears when mouse hovers over an icon: 
5 |
6 | ## Installation
7 | 1. Clone this repository to your awesome config folder:
8 |
9 | ```bash
10 | git clone https://github.com/streetturtle/awesome-wm-widgets/email-widget ~/.config/awesome/email-widget
11 | ```
12 | 2. Make virtual environment and install dependencies:
13 |
14 | ```bash
15 | cd ~/.config/awesome/email-widget
16 | python3 -m venv venv
17 | source venv/bin/activate
18 | pip install -r requirements.txt
19 | ```
20 | 3. Fill .env file with your credentials:
21 |
22 | ```bash
23 | cp .env.example .env
24 | ```
25 | 4. Add widget to awesome:
26 |
27 | ```lua
28 | local email_widget = require("email-widget.email")
29 | ...
30 | s.mytasklist, -- Middle widget
31 | { -- Right widgets
32 | layout = wibox.layout.fixed.horizontal,
33 | ...
34 | email_widget,
35 | ...
36 | ```
37 |
38 | If you want to reduce time of getting emails, you can change maximum number of emails to be fetched in .env file. Default is 10.
39 | If you want to configure width of popup window, you can change this line in email.lua file:
40 |
41 | ```lua
42 | width = 800,
43 | ```
44 | After this you can change MAX_BODY_LENGTH variable in .env file to change number of characters to be displayed in popup window. Default is 100.
45 | Next step is restarting awesome. You can do this by pressing Mod+Ctrl+r.
46 |
47 | ## How it works
48 |
49 | This widget uses the output of two python scripts, first is called every 20 seconds - it returns number of unread emails and second is called when mouse hovers over an icon and displays content of those emails. For both of them you'll need to provide your credentials and imap server. For testing, they can simply be called from console:
50 |
51 | ``` bash
52 | python ~/.config/awesome/email-widget/count_unread_emails.py
53 | python ~/.config/awesome/email-widget/read_emails.py
54 | ```
55 |
--------------------------------------------------------------------------------
/email-widget/count_unread_emails.py:
--------------------------------------------------------------------------------
1 | import imaplib
2 | import re
3 | from dotenv import load_dotenv
4 | from pathlib import Path
5 | import os
6 | path_to_env = Path(__file__).parent / '.env'
7 | load_dotenv(path_to_env)
8 | EMAIL = os.getenv("EMAIL")
9 | PASSWORD = os.getenv("PASSWORD")
10 | if not EMAIL or not PASSWORD:
11 | print("ERROR:Email or password not set in .env file.")
12 | exit(0)
13 |
14 |
15 | M = imaplib.IMAP4_SSL("imap.gmail.com", 993)
16 | M.login(EMAIL, PASSWORD)
17 |
18 | status, counts = M.status("INBOX", "(MESSAGES UNSEEN)")
19 |
20 | if status == "OK":
21 | unread = re.search(r"UNSEEN\s(\d+)", counts[0].decode("utf-8")).group(1)
22 | else:
23 | unread = "N/A"
24 |
25 | print(unread)
26 |
--------------------------------------------------------------------------------
/email-widget/em-wid-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/email-widget/em-wid-1.png
--------------------------------------------------------------------------------
/email-widget/em-wid-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/email-widget/em-wid-2.png
--------------------------------------------------------------------------------
/email-widget/email.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 | local awful = require("awful")
3 | local naughty = require("naughty")
4 | local watch = require("awful.widget.watch")
5 |
6 | local currentPath = debug.getinfo(1, "S").source:sub(2):match("(.*/)")
7 |
8 | local email_widget = wibox.widget.textbox()
9 | email_widget:set_font('Play 9')
10 | email_widget:set_text("Loading...")
11 |
12 |
13 | local path_to_python_in_venv = currentPath .. "/.venv/bin/python"
14 |
15 | watch(
16 | path_to_python_in_venv.." "..currentPath.."count_unread_emails.py", 20, function(_, stdout)
17 | local is_error = (stdout:match("ERROR") ~= nil)
18 | email_widget:set_text("status: "..tostring(is_error))
19 | if is_error then
20 | email_widget:set_text(stdout)
21 | return
22 | end
23 | local unread_emails_num = tonumber(stdout) or 0
24 | if (unread_emails_num > 0) then
25 | email_widget:set_text(unread_emails_num)
26 | elseif (unread_emails_num == 0) then
27 | email_widget:set_text("")
28 | end
29 | end
30 | )
31 | local function show_emails()
32 | awful.spawn.easy_async(
33 | path_to_python_in_venv.." "..currentPath.."read_unread_emails.py",
34 | function(stdout)
35 | naughty.notify{
36 | text = stdout,
37 | title = "Unread Emails",
38 | timeout = 10, hover_timeout = 0.5,
39 | width = 800,
40 | parse = true,
41 | }
42 | end
43 | )
44 | end
45 |
46 | email_widget:connect_signal("mouse::enter", function() show_emails() end)
47 |
48 | -- show_emails()
49 | return email_widget
--------------------------------------------------------------------------------
/email-widget/requirements.txt:
--------------------------------------------------------------------------------
1 | html2text==2020.1.16
2 | python-dotenv==1.0.0
3 |
--------------------------------------------------------------------------------
/experiments/spotify-player/README.md:
--------------------------------------------------------------------------------
1 | # Spotify Player
2 |
3 | In progress
4 |
5 | 
--------------------------------------------------------------------------------
/experiments/spotify-player/spotify-indicator.svg:
--------------------------------------------------------------------------------
1 |
9 |
--------------------------------------------------------------------------------
/experiments/spotify-player/spotify-player.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/experiments/spotify-player/spotify-player.png
--------------------------------------------------------------------------------
/fs-widget/README.md:
--------------------------------------------------------------------------------
1 | # Filesystem Widget
2 |
3 | This widget shows file system disk space usage which is based on the `df` output. When clicked another widget appears with more detailed information. By default, it monitors the "/" mount. It can be configured with a list of mounts to monitor though only the first will show in the wibar. To have multiple mounts displayed on the wibar simply define multiple `fs_widgets` with different mounts as arguments.
4 |
5 | 
6 |
7 | ## Customizations
8 |
9 | It is possible to customize widget by providing a table with all or some of the following config parameters:
10 |
11 | | Name | Default | Description |
12 | |---|---|---|
13 | | `mounts` | `{ '/' }` | Table with mounts to monitor, check the output from a `df` command for available options (column `Mounted on`) |
14 | | `timeout` | 60 | How often in seconds the widget refreshes |
15 |
16 | ## Installation
17 |
18 | Clone/download repo and use the widget in **rc.lua**:
19 |
20 | ```lua
21 | local fs_widget = require("awesome-wm-widgets.fs-widget.fs-widget")
22 | ...
23 | s.mywibox:setup {
24 | s.mytasklist, -- Middle widget
25 | { -- Right widgets
26 | fs_widget(), --default
27 | fs_widget({ mounts = { '/', '/mnt/music' } }), -- multiple mounts
28 | ...
29 | ```
30 |
--------------------------------------------------------------------------------
/fs-widget/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/fs-widget/screenshot.png
--------------------------------------------------------------------------------
/gerrit-widget/gerrit_icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/gerrit-widget/gerrit_widget.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/gerrit-widget/gerrit_widget.png
--------------------------------------------------------------------------------
/gerrit-widget/new_review.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/gerrit-widget/new_review.png
--------------------------------------------------------------------------------
/gerrit-widget/popup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/gerrit-widget/popup.png
--------------------------------------------------------------------------------
/github-activity-widget/icons/alert-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-activity-widget/icons/git-branch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-activity-widget/icons/git-pull-request.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-activity-widget/icons/github.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-activity-widget/icons/github.png
--------------------------------------------------------------------------------
/github-activity-widget/icons/message-square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-activity-widget/icons/repo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-activity-widget/icons/star.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-activity-widget/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-activity-widget/screenshot.png
--------------------------------------------------------------------------------
/github-contributions-widget/README.md:
--------------------------------------------------------------------------------
1 | # Github Contributions Widget
2 |
3 | The widget is inspired by the https://github-contributions.now.sh/ and relies on it's API.
4 |
5 | It shows the contribution graph, similar to the one on the github profile page: 
6 |
7 | You might wonder what could be the reason to have your github's contributions in front of you all day long? The more you contribute, the nicer widget looks! Check out [Thomashighbaugh](https://github.com/Thomashighbaugh)'s graph:
8 |
9 | 
10 |
11 | ## Customization
12 |
13 | It is possible to customize the widget by providing a table with all or some of the following config parameters:
14 |
15 | | Name | Default | Description |
16 | |---|---|---|
17 | | `username` | `streetturtle` | GitHub username |
18 | | `days` | 365 | Number of days in the past, more days - wider the widget |
19 | | `color_of_empty_cells` | Theme's default | Color of the days with no contributions |
20 | | `with_border` | true | Should the graph contains border or not |
21 | | `margin_top` | 1 | Top margin |
22 | | `theme` | `standard` | Color theme of the graph, see below |
23 |
24 | _Note:_ widget height is 21px (7 rows of 3x3 cells). So it would look nice on the wibar of 22-24px height.
25 |
26 | ### Themes
27 |
28 | Following themes are available:
29 |
30 | | Theme name | Preview |
31 | |---|---|
32 | | standard |  |
33 | | classic |  |
34 | | teal |  |
35 | | leftpad |  |
36 | | dracula |  |
37 | | pink |  |
38 |
39 | To add a new theme, simply add a new entry in `themes` table (themes.lua) with the colors of your theme.
40 |
41 | ### Screenshots
42 |
43 | 1000 days, with border:
44 | 
45 |
46 | 365 days, no border:
47 | 
48 |
49 | ## Installation
50 |
51 | Clone/download repo under **~/.config/awesome** and use widget in **rc.lua**:
52 |
53 | ```lua
54 | local github_contributions_widget = require("awesome-wm-widgets.github-contributions-widget.github-contributions-widget")
55 | ...
56 | s.mytasklist, -- Middle widget
57 | { -- Right widgets
58 | layout = wibox.layout.fixed.horizontal,
59 | ...
60 | -- default
61 | github_contributions_widget({username = ''}),
62 | ...
63 | ```
64 |
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/Thomashighbaugh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/Thomashighbaugh.png
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/classic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/classic.png
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/dracula.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/dracula.png
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/leftpad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/leftpad.png
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/pink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/pink.png
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/screenshot.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/screenshot.jpg
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/screenshot1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/screenshot1.jpg
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/screenshot2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/screenshot2.jpg
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/standard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/standard.png
--------------------------------------------------------------------------------
/github-contributions-widget/screenshots/teal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-contributions-widget/screenshots/teal.png
--------------------------------------------------------------------------------
/github-contributions-widget/themes.lua:
--------------------------------------------------------------------------------
1 | local themes = {
2 | standard = {
3 | [4] = '#216e39',
4 | [3] = '#30a14e',
5 | [2] = '#40c463',
6 | [1] = '#9be9a8',
7 | [0] = '#ebedf0'
8 | },
9 | classic = {
10 | [4] = '#196127',
11 | [3] = '#239a3b',
12 | [2] = '#7bc96f',
13 | [1] = '#c6e48b',
14 | [0] = '#ebedf0',
15 | },
16 | teal = {
17 | [4] = '#458B74',
18 | [3] = '#66CDAA',
19 | [2] = '#76EEC6',
20 | [1] = '#7FFFD4',
21 | [0] = '#ebedf0',
22 | },
23 | leftpad = {
24 | [4] = '#F6F6F6',
25 | [3] = '#DDDDDD',
26 | [2] = '#A5A5A5',
27 | [1] = '#646464',
28 | [0] = '#2F2F2F',
29 | },
30 | dracula = {
31 | [4] = '#ff79c6',
32 | [3] = '#bd93f9',
33 | [2] = '#6272a4',
34 | [1] = '#44475a',
35 | [0] = '#282a36'
36 | },
37 | pink = {
38 | [4] = '#61185f',
39 | [3] = '#a74aa8',
40 | [2] = '#ca5bcc',
41 | [1] = '#e48bdc',
42 | [0] = '#ebedf0',
43 | }
44 | }
45 |
46 | return themes
--------------------------------------------------------------------------------
/github-prs-widget/README.md:
--------------------------------------------------------------------------------
1 | # GitHub PRs Widget
2 |
3 |
4 |
5 |
6 |
7 | The widget shows the number of pull requests assigned to the user and when clicked shows additional information, such as
8 | - author's name and avatar (opens user profile page when clicked);
9 | - PR name (opens MR when clicked);
10 | - name of the repository;
11 | - when was created;
12 | - number of comments;
13 |
14 |
15 |
16 |
17 |
18 | ## Customization
19 |
20 | It is possible to customize widget by providing a table with all or some of the following config parameters:
21 |
22 | | Name | Default | Description |
23 | |---|---|---|
24 | | `reviewer` | Required | GitHub username |
25 |
26 | ## Installation
27 |
28 | Install and setup [GitHub CLI](https://cli.github.com/)
29 | Clone/download repo and use widget in **rc.lua**:
30 |
31 | ```lua
32 | local github_prs_widget = require("awesome-wm-widgets.github-prs-widget")
33 | ...
34 | s.mytasklist, -- Middle widget
35 | { -- Right widgets
36 | layout = wibox.layout.fixed.horizontal,
37 | ...
38 | github_prs_widget {
39 | reviewer = 'streetturtle'
40 | },
41 | }
42 | ...
43 | ```
44 |
--------------------------------------------------------------------------------
/github-prs-widget/icons/book.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-prs-widget/icons/calendar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-prs-widget/icons/git-pull-request.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-prs-widget/icons/message-square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-prs-widget/icons/user.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/github-prs-widget/screenshots/screenshot1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/github-prs-widget/screenshots/screenshot1.png
--------------------------------------------------------------------------------
/gitlab-widget/README.md:
--------------------------------------------------------------------------------
1 | # Gitlab widget
2 |
3 |
4 |
5 |
6 |
7 | The widget shows the number of merge requests assigned to the user and when clicked shows additional information, such as
8 | - author's name and avatar (opens user profile page when clicked);
9 | - MR name (opens MR when clicked);
10 | - source and target branches;
11 | - when was created;
12 | - number of comments;
13 | - number of approvals.
14 |
15 | 
16 |
17 | ## Customization
18 |
19 | It is possible to customize widget by providing a table with all or some of the following config parameters:
20 |
21 | | Name | Default | Description |
22 | |---|---|---|
23 | | `icon` | `./icons/gitlab-icon.svg` | Path to the icon |
24 | | `host` | Required | e.g. `https://gitlab.yourcompany.com` |
25 | | `access_token` | Required | e.g. `h2v531iYASDz6McxYk4A` |
26 | | `timeout` | 60 | How often in seconds the widget should be refreshed |
27 |
28 | _Note:_
29 | - to get the access token, go to **User Settings** -> **Access Tokens** and generate a token with **api** scope
30 |
31 | ## Installation
32 |
33 | Clone/download repo and use widget in **rc.lua**:
34 |
35 | ```lua
36 | local gitlab_widget = require("awesome-wm-widgets.gitlab-widget.gitlab")
37 | ...
38 | s.mytasklist, -- Middle widget
39 | { -- Right widgets
40 | layout = wibox.layout.fixed.horizontal,
41 | ...
42 | -- default
43 | gitlab_widget{
44 | host = 'https://gitlab.yourcompany.com',
45 | access_token = 'h2v531iYASDz6McxYk4A'
46 | },
47 | ...
48 | ```
49 |
--------------------------------------------------------------------------------
/gitlab-widget/icons/check.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/gitlab-widget/icons/gitlab-icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/gitlab-widget/icons/message-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/gitlab-widget/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/gitlab-widget/screenshot.png
--------------------------------------------------------------------------------
/jira-widget/README.md:
--------------------------------------------------------------------------------
1 | # Jira widget
2 |
3 | The widget shows the number of tickets assigned to the user (or any other result of a JQL query, see customization section) and when clicked shows them in the list, grouped by the ticket status. Left-click on the item opens the issue in the default browser:
4 |
5 |
6 |
7 |
8 |
9 | ## How it works
10 |
11 | Widget uses cURL to query Jira's [REST API](https://developer.atlassian.com/server/jira/platform/rest-apis/). In order to be authenticated, widget uses a [netrc](https://ec.haxx.se/usingcurl/usingcurl-netrc) feature of the cURL, which is basically to store basic auth credentials in a .netrc file in home folder.
12 |
13 | If you are on Atlassian Cloud, then instead of providing a password in netrc file you can set an [API token](https://confluence.atlassian.com/cloud/api-tokens-938839638.html) which is a safer option, as you can revoke/change the token at any time.
14 |
15 | ## Customization
16 |
17 | It is possible to customize widget by providing a table with all or some of the following config parameters:
18 |
19 | | Name | Default | Description |
20 | |---|---|---|
21 | | `host` | Required | e.g. `http://jira.tmnt.com` |
22 | | `query` | `jql=assignee=currentuser() AND resolution=Unresolved` | JQL query |
23 | | `icon` | `~/.config/awesome/awesome-wm-widgets/jira-widget/jira-mark-gradient-blue.svg` | Path to the icon |
24 | | `timeout` | 600 | How often in seconds the widget refreshes |
25 |
26 | ## Installation
27 |
28 | Create a .netrc file in your home directory with following content:
29 |
30 | ```bash
31 | machine turtlejira.com
32 | login mikey@tmnt.com
33 | password cowabunga
34 | ```
35 |
36 | Then change file's permissions to 600 (so only you can read/write it):
37 |
38 | ```bash
39 | chmod 600 ~/.netrc
40 | ```
41 | And test if it works by calling the API (`-n` option is to use the .netrc file for authentication):
42 |
43 | ```bash
44 | curl -n 'https://turtleninja.com/rest/api/2/search?jql=assignee=currentuser()+AND+resolution=Unresolved'
45 | ```
46 |
47 | Clone/download repo and use the widget in **rc.lua**:
48 |
49 | ```lua
50 | local jira_widget = require("awesome-wm-widgets.jira-widget.jira")
51 | ...
52 | s.mytasklist, -- Middle widget
53 | { -- Right widgets
54 | layout = wibox.layout.fixed.horizontal,
55 | ...
56 | -- default
57 | jira_widget({host = 'http://jira.tmnt.com'}),
58 | ...
59 | ```
60 |
--------------------------------------------------------------------------------
/jira-widget/icon/jira-mark-gradient-blue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/jira-widget/screenshot/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/jira-widget/screenshot/screenshot.png
--------------------------------------------------------------------------------
/logout-menu-widget/README.md:
--------------------------------------------------------------------------------
1 | # Logout Menu Widget
2 |
3 | This widget shows a menu with options to log out from the current session, lock, reboot, suspend and power off the computer, similar to [logout-popup-widget](https://github.com/streetturtle/awesome-wm-widgets/tree/master/logout-popup-widget):
4 |
5 | 
6 |
7 | ## Installation
8 |
9 | Clone this repo (if not cloned yet) under **./.config/awesome/**
10 |
11 | ```bash
12 | cd ./.config/awesome/
13 | git clone https://github.com/streetturtle/awesome-wm-widgets
14 | ```
15 | Then add the widget to the wibar:
16 |
17 | ```lua
18 | local logout_menu_widget = require("awesome-wm-widgets.logout-menu-widget.logout-menu")
19 |
20 | s.mytasklist, -- Middle widget
21 | { -- Right widgets
22 | layout = wibox.layout.fixed.horizontal,
23 | ...
24 | -- default
25 | logout_menu_widget(),
26 | -- custom
27 | logout_menu_widget{
28 | font = 'Play 14',
29 | onlock = function() awful.spawn.with_shell('i3lock-fancy') end
30 | }
31 | ...
32 | ```
33 |
34 | ## Customization
35 |
36 | It is possible to customize the widget by providing a table with all or some of the following config parameters:
37 |
38 | | Name | Default | Description |
39 | |---|---|---|
40 | | `font` | `beautiful.font` | Font of the menu items |
41 | | `onlogout` | `function() awesome.quit() end` | Function which is called when the logout item is clicked |
42 | | `onlock` | `function() awful.spawn.with_shell("i3lock") end` | Function which is called when the lock item is clicked |
43 | | `onreboot` | `function() awful.spawn.with_shell("reboot") end` | Function which is called when the reboot item is clicked |
44 | | `onsuspend` | `function() awful.spawn.with_shell("systemctl suspend") end` | Function which is called when the suspend item is clicked |
45 | | `onpoweroff` | `function() awful.spawn.with_shell("shutdown now") end` | Function which is called when the poweroff item is clicked |
46 |
--------------------------------------------------------------------------------
/logout-menu-widget/icons/lock.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-menu-widget/icons/log-out.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-menu-widget/icons/moon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-menu-widget/icons/power.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-menu-widget/icons/power_w.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-menu-widget/icons/refresh-cw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-menu-widget/logout-menu.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-menu-widget/logout-menu.gif
--------------------------------------------------------------------------------
/logout-popup-widget/logout-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-popup-widget/logout-dark.png
--------------------------------------------------------------------------------
/logout-popup-widget/logout-dracula.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-popup-widget/logout-dracula.png
--------------------------------------------------------------------------------
/logout-popup-widget/logout-nord.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-popup-widget/logout-nord.png
--------------------------------------------------------------------------------
/logout-popup-widget/logout-outrun.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-popup-widget/logout-outrun.png
--------------------------------------------------------------------------------
/logout-popup-widget/power.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/logout-popup-widget/screenshot.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-popup-widget/screenshot.gif
--------------------------------------------------------------------------------
/logout-popup-widget/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/logout-popup-widget/screenshot.png
--------------------------------------------------------------------------------
/mpdarc-widget/README.md:
--------------------------------------------------------------------------------
1 | # MPD Widget
2 |
3 | Music Player Daemon widget by @raphaelfournier.
4 |
5 | # Prerequisite
6 |
7 | Install `mpd` (Music Player Daemon itself) and `mpc` (Music Player Client - program for controlling mpd), both should be available in repo, e.g. for Ubuntu:
8 |
9 | ```bash
10 | sudo apt-get install mpd mpc
11 | ```
12 |
13 | ## Installation
14 |
15 | To use this widget clone repo under **~/.config/awesome/** and then add it in **rc.lua**:
16 |
17 | ```lua
18 | local mpdarc_widget = require("awesome-wm-widgets.mpdarc-widget.mpdarc")
19 | ...
20 | s.mytasklist, -- Middle widget
21 | { -- Right widgets
22 | layout = wibox.layout.fixed.horizontal,
23 | ...
24 | mpdarc_widget,
25 | ...
26 | ```
27 |
--------------------------------------------------------------------------------
/mpris-widget/README.md:
--------------------------------------------------------------------------------
1 | # MPRIS Widget (In progress)
2 |
3 | Music Player Info widget cy @mgabs
4 |
5 | # Prerequisite
6 |
7 | Install `playerctl` (mpris implementation), should be available in repo, e.g. for Ubuntu:
8 |
9 | ```bash
10 | sudo apt-get install playerctl
11 | ```
12 |
13 | ## Installation
14 |
15 | To use this widget clone repo under **~/.config/awesome/** and then add it in **rc.lua**:
16 |
17 | ```lua
18 | local mpris_widget = require("awesome-wm-widgets.mpris-widget")
19 | ...
20 | s.mytasklist, -- Middle widget
21 | { -- Right widgets
22 | layout = wibox.layout.fixed.horizontal,
23 | ...
24 | mpris_widget(),
25 | ...
26 | ```
27 |
--------------------------------------------------------------------------------
/net-speed-widget/README.md:
--------------------------------------------------------------------------------
1 | # Net Speed Widget
2 |
3 | The widget and readme is in progress
4 |
5 | ## Installation
6 |
7 | Please refer to the [installation](https://github.com/streetturtle/awesome-wm-widgets#installation) section of the repo.
8 |
9 | Clone repo, include widget and use it in **rc.lua**:
10 |
11 | ```lua
12 | local net_speed_widget = require("awesome-wm-widgets.net-speed-widget.net-speed")
13 | ...
14 | s.mytasklist, -- Middle widget
15 | { -- Right widgets
16 | layout = wibox.layout.fixed.horizontal,
17 | ...
18 | net_speed_widget(),
19 | ...
20 | }
21 | ...
22 | ```
23 |
--------------------------------------------------------------------------------
/net-speed-widget/icons/down.svg:
--------------------------------------------------------------------------------
1 |
11 |
--------------------------------------------------------------------------------
/net-speed-widget/icons/up.svg:
--------------------------------------------------------------------------------
1 |
11 |
--------------------------------------------------------------------------------
/pacman-widget/README.md:
--------------------------------------------------------------------------------
1 | # Pacman widget for AwesomeWM
2 |
3 | This widget displays the number of upgradable Pacman packages. Clicking the icon reveals a scrollable list of available upgrades. A full system upgrade can be performed from the widget via Polkit.
4 |
5 | 
6 |
7 | ## Requirements
8 | `lxpolkit` is the default [Polkit agent](https://wiki.archlinux.org/title/Polkit).
9 |
10 | The widget also uses the `checkupdates` script from the `pacman-contrib` package.
11 |
12 |
13 | ## Installation
14 |
15 | Clone the repo under **~/.config/awesome/** and add the following to **rc.lua**:
16 |
17 | ```lua
18 | local pacman_widget = require('awesome-wm-widgets.pacman-widget.pacman')
19 | ...
20 | s.mytasklist, -- Middle widget
21 | { -- Right widgets
22 | layout = wibox.layout.fixed.horizontal,
23 | ...
24 | -- default
25 | pacman_widget(),
26 | -- custom (shown with defaults)
27 | pacman_widget {
28 | interval = 600, -- Refresh every 10 minutes
29 | popup_bg_color = '#222222',
30 | popup_border_width = 1,
31 | popup_border_color = '#7e7e7e',
32 | popup_height = 10, -- 10 packages shown in scrollable window
33 | popup_width = 300,
34 | polkit_agent_path = '/usr/bin/lxpolkit'
35 | },
36 | ```
37 |
38 |
--------------------------------------------------------------------------------
/pacman-widget/screenshots/pacman.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/pacman-widget/screenshots/pacman.gif
--------------------------------------------------------------------------------
/pacman-widget/upgrade:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | pkexec --disable-internal-agent pacman -Syu --noconfirm
3 |
--------------------------------------------------------------------------------
/pactl-widget/README.md:
--------------------------------------------------------------------------------
1 | # Pactl volume widget
2 |
3 | This is a volume widget that uses `pactl` only for controlling volume and
4 | selecting sinks and sources. Hence, it can be used with PulseAudio or PipeWire
5 | likewise, unlike the original Volume widget.
6 |
7 | Other than that it is heavily based on the original widget, including its
8 | customization and icon options. For screenshots, see the original widget.
9 |
10 | ## Installation
11 |
12 | Clone the repo under **~/.config/awesome/** and add widget in **rc.lua**:
13 |
14 | ```lua
15 | local volume_widget = require('awesome-wm-widgets.pactl-widget.volume')
16 | ...
17 | s.mytasklist, -- Middle widget
18 | { -- Right widgets
19 | layout = wibox.layout.fixed.horizontal,
20 | ...
21 | -- default
22 | volume_widget(),
23 | -- customized
24 | volume_widget{
25 | widget_type = 'arc'
26 | },
27 | ```
28 |
29 | ### Shortcuts
30 |
31 | To improve responsiveness of the widget when volume level is changed by a shortcut use corresponding methods of the widget:
32 |
33 | ```lua
34 | awful.key({}, "XF86AudioRaiseVolume", function () volume_widget:inc(5) end),
35 | awful.key({}, "XF86AudioLowerVolume", function () volume_widget:dec(5) end),
36 | awful.key({}, "XF86AudioMute", function () volume_widget:toggle() end),
37 | ```
38 |
39 | ## Customization
40 |
41 | It is possible to customize the widget by providing a table with all or some of
42 | the following config parameters:
43 |
44 | ### Generic parameter
45 |
46 | | Name | Default | Description |
47 | |---|---|---|
48 | | `mixer_cmd` | `pavucontrol` | command to run on middle click (e.g. a mixer program) |
49 | | `step` | 5 | How much the volume is raised or lowered at once (in %) |
50 | | `widget_type`| `icon_and_text`| Widget type, one of `horizontal_bar`, `vertical_bar`, `icon`, `icon_and_text`, `arc` |
51 | | `device` | `@DEFAULT_SINK@` | Select the device name to control |
52 | | `tooltip` | false | Display volume level in a tooltip when the mouse cursor hovers the widget |
53 |
54 | For more details on parameters depending on the chosen widget type, please
55 | refer to the original Volume widget.
56 |
--------------------------------------------------------------------------------
/pactl-widget/utils.lua:
--------------------------------------------------------------------------------
1 | local utils = {}
2 |
3 |
4 | function utils.trim(str)
5 | return string.match(str, "^%s*(.-)%s*$")
6 | end
7 |
8 | function utils.split(string_to_split, separator)
9 | if separator == nil then separator = "%s" end
10 | local t = {}
11 |
12 | for str in string.gmatch(string_to_split, "([^".. separator .."]+)") do
13 | table.insert(t, str)
14 | end
15 |
16 | return t
17 | end
18 |
19 | function utils.popen_and_return(cmd)
20 | local handle = io.popen(cmd)
21 | local result = handle:read("*a")
22 | handle:close()
23 |
24 | return result
25 | end
26 |
27 |
28 | return utils
29 |
--------------------------------------------------------------------------------
/pomodoroarc-widget/README.md:
--------------------------------------------------------------------------------
1 | # Pomodoro Widget
2 |
3 | :construction: This widget is under construction :construction_worker:
4 |
5 | ## Installation
6 |
7 | This widget is based on [@jsspencer](https://github.com/jsspencer)' [pomo](https://github.com/jsspencer/pomo) - a simple pomodoro timer.
8 | So first install/clone it anywhere you like, then either
9 | - in widget's code provide path to the pomo.sh, or
10 | - add pomo.sh to the PATH, or
11 | - make a soft link in /usr/local/bin/ to it:
12 | ```bash
13 | sudo ln -sf /opt/pomodoro/pomo.sh /usr/local/bin/pomo
14 | ```
15 |
16 | Note that by default widget's code expects third way and calls script by `pomo`.
--------------------------------------------------------------------------------
/ram-widget/README.md:
--------------------------------------------------------------------------------
1 | # Ram widget
2 |
3 | This widget shows the RAM usage. When clicked another widget appears with more detailed information:
4 |
5 | 
6 |
7 | Note: this widget is compatible with Awesome v4.3+, as it is using [awful.popup](https://awesomewm.org/doc/api/classes/awful.popup.html)
8 |
9 | ## Customization
10 |
11 | It is possible to customize widget by providing a table with all or some of the following config parameters:
12 |
13 | | Name | Default | Description |
14 | |---|---|---|
15 | | `color_used` | `beautiful.bg_urgent` | Color for used RAM |
16 | | `color_free` | `beautiful.fg_normal` | Color for free RAM |
17 | | `color_buf` | `beautiful.border_color_active` | Color for buffers/cache |
18 | | `widget_height` | 25 | Height of the widget |
19 | | `widget_width` | 25 | Width of the widget |
20 | | `widget_show_buf` | false | Whether to display buffers/cache separately in the tray widget. If `false`, buffers/cache are considered free RAM. |
21 | | `timeout` | 1 | How often in seconds the widget refreshes |
22 |
23 | ## Installation
24 |
25 | Please refer to the [installation](https://github.com/streetturtle/awesome-wm-widgets#installation) section of the repo.
26 |
27 | Clone repo, include widget and use it in **rc.lua**:
28 |
29 | ```lua
30 | local ram_widget = require("awesome-wm-widgets.ram-widget.ram-widget")
31 | ...
32 | s.mytasklist, -- Middle widget
33 | { -- Right widgets
34 | layout = wibox.layout.fixed.horizontal,
35 | ...
36 | ram_widget(),
37 | ...
38 | }
39 | ...
40 | ```
41 |
42 |
--------------------------------------------------------------------------------
/ram-widget/out.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/ram-widget/out.gif
--------------------------------------------------------------------------------
/run-shell-2/run.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 |
3 | local icon = {
4 | {
5 | markup = 'a',
6 | widget = wibox.widget.textbox,
7 | },
8 | id = 'icon',
9 | top = 2,
10 | left = 10,
11 | layout = wibox.container.margin
12 | }
13 |
14 | local text = 'Run: '
15 |
16 | return {
17 | icon = icon,
18 | text = text,
19 | cursor_color = '#74aeab',
20 | history = '/history'
21 | }
--------------------------------------------------------------------------------
/run-shell-3/README.md:
--------------------------------------------------------------------------------
1 | # Run Shell
2 |
3 | Blurs / pixelates background and shows widget with run prompt:
4 |
5 | 
6 |
7 | 
8 |
9 | ## Installation
10 |
11 | 1. To blur / pixelate the background this widget used [ffmpeg](https://www.ffmpeg.org/) and [frei0r](https://frei0r.dyne.org/) plugins (if you want to pixelate the background), which you need to install. Installation of those depends on your distribution, for ffmpeg just follow the installation section of the site, for frei0r I was able to install it by simply running
12 |
13 | ```
14 | sudo apt-get install frei0r-plugins
15 | ```
16 |
17 | 1. Clone this repo under **~/.config/awesome/**:
18 |
19 | ```bash
20 | git clone https://github.com/streetturtle/awesome-wm-widgets.git ~/.config/awesome/awesome-wm-widgets
21 | ```
22 |
23 | 1. Require widget at the beginning of **rc.lua**:
24 |
25 | ```lua
26 | local run_shell = require("awesome-wm-widgets.run-shell-3.run-shell")
27 | ```
28 |
29 | 1. Use it (don't forget to comment out the default prompt):
30 |
31 | ```lua
32 | awful.key({modkey}, "r", function () run_shell.launch() end),
33 | ```
34 | :warning: I am not 100% sure but it may (memory) leak. If awesome uses lots of RAM just reload config (Ctrl + Mod4 + r).
35 |
--------------------------------------------------------------------------------
/run-shell-3/blur.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/run-shell-3/blur.png
--------------------------------------------------------------------------------
/run-shell-3/pixelate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/run-shell-3/pixelate.png
--------------------------------------------------------------------------------
/run-shell/README.md:
--------------------------------------------------------------------------------
1 | # Run Shell
2 |
3 | Run prompt which is put inside a widget:
4 |
5 | [Demo](https://imgur.com/ohjAuCQ.mp4)
6 |
7 | ## Installation
8 |
9 | 1. Clone this repo under **~/.config/awesome/**:
10 |
11 | ```bash
12 | git clone https://github.com/streetturtle/awesome-wm-widgets.git ~/.config/awesome/awesome-wm-widgets
13 | ```
14 |
15 | 1. Require widget at the beginning of **rc.lua**:
16 |
17 | ```lua
18 | local run_shell = require("awesome-wm-widgets.run-shell.run-shell")
19 | ```
20 |
21 | 1. Use it (don't forget to comment out the default prompt):
22 |
23 | ```lua
24 | awful.key({modkey}, "r", function () run_shell.launch() end),
25 |
26 |
--------------------------------------------------------------------------------
/run-shell/out.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/run-shell/out.mp4
--------------------------------------------------------------------------------
/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/screenshot.png
--------------------------------------------------------------------------------
/screenshot_with_sprtrs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/screenshot_with_sprtrs.png
--------------------------------------------------------------------------------
/scripts/update_site.sh:
--------------------------------------------------------------------------------
1 | mkdir ./_widgets
2 | for D in *; do
3 | if [[ -d "${D}" ]] && [[ ${D} == *"-widget"* ]]; then
4 | echo "${D}"
5 | cp ${D}/README.md ./_widgets/${D}.md
6 | sed -i '1s/^/---\nlayout: page\n---\n/' ./_widgets/${D}.md
7 |
8 | mkdir -p ./assets/img/widgets/screenshots/${D}
9 |
10 | find ${D}/ \( -name '*.jpg' -o -name '*.png' -o -name '*.gif' \) -exec cp '{}' ./assets/img/widgets/screenshots/${D} \;
11 |
12 | sed -i "s/](\.\(\/screenshots\)\{0,1\}/](..\/awesome-wm-widgets\/assets\/img\/widgets\/screenshots\/$D/g" ./_widgets/${D}.md
13 | fi
14 | done
15 |
--------------------------------------------------------------------------------
/spotify-shell/README.md:
--------------------------------------------------------------------------------
1 | # Spotify Shell
2 |
3 |
4 | 
5 |
6 | ## Features
7 |
8 | 1. Supports following commands (same as `sp` client):
9 | - `play`/`pause`/`next`;
10 | - any other string will start a search and play the first result for a given search query;
11 | - feh - shows the current artwork with `feh`;
12 |
13 | 1. Stores history and allows navigating through it;
14 |
15 | 1. Highly customizable
16 |
17 | ## Controls
18 |
19 | Keyboard navigation (copied from [`awful.prompt`](https://awesomewm.org/doc/api/libraries/awful.prompt.html) API documentation page):
20 |
21 | | Name | Usage |
22 | |---|---|
23 | | CTRL+A | beginning-of-line |
24 | | CTRL+B | backward-char |
25 | | CTRL+C | cancel |
26 | | CTRL+D | delete-char |
27 | | CTRL+E | end-of-line |
28 | | CTRL+J | accept-line |
29 | | CTRL+M | accept-line |
30 | | CTRL+F | move-cursor-right |
31 | | CTRL+H | backward-delete-char |
32 | | CTRL+K | kill-line |
33 | | CTRL+U | unix-line-discard |
34 | | CTRL+W | unix-word-rubout |
35 | | CTRL+BACKSPACE | unix-word-rubout |
36 | | SHIFT+INSERT | paste |
37 | | HOME | beginning-of-line |
38 | | END | end-of-line |
39 | | CTRL+R | reverse history search, matches any history entry containing search term. |
40 | | CTRL+S | forward history search, matches any history entry containing search term. |
41 | | CTRL+UP | ZSH up line or search, matches any history entry starting with search term. |
42 | | CTRL+DOWN | ZSH down line or search, matches any history entry starting with search term. |
43 | | CTRL+DELETE | delete the currently visible history entry from history file. This does not delete new commands or history entries under user editing. |
44 |
45 |
46 | ## Installation
47 |
48 | 1. Install [sp](https://gist.github.com/streetturtle/fa6258f3ff7b17747ee3) - CLI client for [Spotify for Linux](https://www.spotify.com/ca-en/download/linux/):
49 |
50 | ```bash
51 | $ sudo git clone https://gist.github.com/fa6258f3ff7b17747ee3.git ~/dev/
52 | $ sudo ln -s ~/dev/sp /usr/local/bin/
53 | ```
54 |
55 | Check if it works by running `sp help`.
56 |
57 | 1. Get an 'id' and 'secret' from [developer.spotify.com](https://beta.developer.spotify.com/documentation/general/guides/app-settings/) and paste it in the header of the `sp` (`SP_ID` and `SP_SECRET`) - this enables search feature.
58 |
59 | 1. Clone this repo under **~/.config/awesome/**
60 |
61 | 1. Require spotify-shell at the beginning of **rc.lua**:
62 |
63 | ```lua
64 | local spotify_shell = require("awesome-wm-widgets.spotify-shell.spotify-shell")
65 | ```
66 |
67 | 1. Add a shortcut which will show Spotify Shell widget:
68 |
69 | ```lua
70 | awful.key({ modkey, }, "d", function () spotify_shell.launch() end, {description = "spotify shell", group = "music"}),
71 | ```
72 |
73 | 1. It uses icon from [Papirus Icon Theme](https://github.com/PapirusDevelopmentTeam/papirus-icon-theme). So you should either install this icon theme, or download an icon you want to use and provide path to it in **spotify-shell.lua**.
74 |
--------------------------------------------------------------------------------
/spotify-shell/demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/spotify-shell/demo.gif
--------------------------------------------------------------------------------
/spotify-shell/spotify-shell.lua:
--------------------------------------------------------------------------------
1 | -------------------------------------------------
2 | -- Spotify Shell for Awesome Window Manager
3 | -- Simplifies interaction with Spotify for Linux
4 | -- More details could be found here:
5 | -- https://github.com/streetturtle/awesome-wm-widgets/tree/master/spotify-shell
6 |
7 | -- @author Pavel Makhov
8 | -- @copyright 2018 Pavel Makhov
9 | -------------------------------------------------
10 |
11 | local awful = require("awful")
12 | local gfs = require("gears.filesystem")
13 | local wibox = require("wibox")
14 | local gears = require("gears")
15 |
16 | local ICON = '/usr/share/icons/Papirus-Light/32x32/apps/spotify-linux-48x48.svg'
17 |
18 | local spotify_shell = awful.widget.prompt()
19 |
20 | local w = wibox {
21 | bg = '#1e252c',
22 | border_width = 1,
23 | border_color = '#84bd00',
24 | max_widget_size = 500,
25 | ontop = true,
26 | height = 50,
27 | width = 250,
28 | shape = function(cr, width, height)
29 | gears.shape.rounded_rect(cr, width, height, 3)
30 | end
31 | }
32 |
33 | w:setup {
34 | {
35 | {
36 | image = ICON,
37 | widget = wibox.widget.imagebox,
38 | resize = false
39 | },
40 | id = 'icon',
41 | top = 9,
42 | left = 10,
43 | layout = wibox.container.margin
44 | },
45 | {
46 | layout = wibox.container.margin,
47 | left = 10,
48 | spotify_shell,
49 | },
50 | id = 'left',
51 | layout = wibox.layout.fixed.horizontal
52 | }
53 |
54 | local function launch()
55 | w.visible = true
56 |
57 | awful.placement.top(w, { margins = {top = 40}, parent = awful.screen.focused()})
58 | awful.prompt.run{
59 | prompt = "Spotify Shell: ",
60 | bg_cursor = '#84bd00',
61 | textbox = spotify_shell.widget,
62 | history_path = gfs.get_dir('cache') .. '/spotify_history',
63 | exe_callback = function(input_text)
64 | if not input_text or #input_text == 0 then return end
65 | awful.spawn("sp " .. input_text)
66 | end,
67 | done_callback = function()
68 | w.visible = false
69 | end
70 | }
71 | end
72 |
73 | return {
74 | launch = launch
75 | }
76 |
--------------------------------------------------------------------------------
/spotify-widget/spo-wid-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/spotify-widget/spo-wid-1.png
--------------------------------------------------------------------------------
/spotify-widget/spotify-widget-custom-paused.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/spotify-widget/spotify-widget-custom-paused.png
--------------------------------------------------------------------------------
/spotify-widget/spotify-widget-custom-playing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/spotify-widget/spotify-widget-custom-playing.png
--------------------------------------------------------------------------------
/stackoverflow-widget/README.md:
--------------------------------------------------------------------------------
1 | # Stackoverflow widget
2 |
3 | When clicked, widget shows latest questions from stackoverflow.com with a given tag(s).
4 |
5 | 
6 |
7 | ## Customization
8 |
9 | It is possible to customize widget by providing a table with all or some of the following config parameters:
10 |
11 | | Name | Default | Description |
12 | |---|---|---|
13 | | `icon`| `/.config/awesome/awesome-wm-widgets/stackoverflow-widget/so-icon.svg` | Path to the icon |
14 | | `limit` | 5 | Number of items to show in the widget |
15 | | `tagged` | `awesome-wm` | Tag, or comma-separated tags |
16 | | `timeout` | 300 | How often in seconds the widget refreshes |
17 |
18 | ## Installation
19 |
20 | 1. Clone this repo (if not cloned yet) under **~/.config/awesome/**:
21 |
22 | ```bash
23 | git clone https://github.com/streetturtle/awesome-wm-widgets.git ~/.config/awesome/
24 | ```
25 |
26 | 1. Require widget at the top of the **rc.lua**:
27 |
28 | ```lua
29 | local stackoverflow_widget = require("awesome-wm-widgets.stackoverflow-widget.stackoverflow")
30 | ```
31 |
32 | 1. Add widget to the tasklist:
33 |
34 | ```lua
35 | s.mytasklist, -- Middle widget
36 | { -- Right widgets
37 | layout = wibox.layout.fixed.horizontal,
38 | ...
39 | --default
40 | stackoverflow_widget(),
41 | --customized
42 | stackoverflow_widget({
43 | limit = 10
44 | })
45 | ...
46 | ```
47 |
48 |
--------------------------------------------------------------------------------
/stackoverflow-widget/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/stackoverflow-widget/screenshot.png
--------------------------------------------------------------------------------
/stackoverflow-widget/so-icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/todo-widget/README.md:
--------------------------------------------------------------------------------
1 | # ToDo Widget
2 |
3 | This widget displays a list of todo items and allows marking item as done/undone, delete an item and create new ones:
4 |
5 | 
6 |
7 | # Installation
8 |
9 | Widget persists todo items as a JSON, so in order to simplify JSON serialisation/deserialisation download a **json.lua** from this repository: https://github.com/rxi/json.lua under `~/.config/awesone` folder. And don't forget to star a repo :)
10 |
11 | Then clone this repository under **~/.config/awesome/** and add the widget in **rc.lua**:
12 |
13 | ```lua
14 | local todo_widget = require("awesome-wm-widgets.todo-widget.todo")
15 | ...
16 | s.mytasklist, -- Middle widget
17 | { -- Right widgets
18 | layout = wibox.layout.fixed.horizontal,
19 | ...
20 | -- default
21 | todo_widget(),
22 | ...
23 | ```
24 | Also note that widget uses [Arc Icons](https://github.com/horst3180/arc-icon-theme) and expects them to be installed under `/usr/share/icons/Arc/`.
25 |
26 | # Theming
27 |
28 | Widget uses your theme's colors. In case you want to have different colors, without changing your theme, please create an issue for it. I'll extract them as widget parameters.
29 |
--------------------------------------------------------------------------------
/todo-widget/chevron-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/todo-widget/chevron-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/todo-widget/todo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/todo-widget/todo.gif
--------------------------------------------------------------------------------
/translate-widget/README.MD:
--------------------------------------------------------------------------------
1 | # Translate Widget
2 |
3 | This widget allows quickly translate words or phrases without opening a browser - just using Awesome. To provide direction of the translation add the 2 letters code of the source and target languages at the end of the phrase, for example _hello enfr_ will translate _hello_ from English to French. This widget is based on [Watson Language Translator](https://www.ibm.com/watson/services/language-translator/) from IBM.
4 |
5 | 
6 |
7 | ## Controls
8 |
9 | - Mod4 + c - opens a translate prompt;
10 | - left click on the popup widget - copies the translation to the clipboard and closes widget;
11 | - right click on the popup widget - copies text to translate to the clipboard and closes widget.
12 |
13 | ## Installation
14 |
15 | 1. Clone repo under **~/.config/awesome/**
16 | 1. Create an IBM Cloud API key at [cloud.ibm.com/iam/apikeys](https://cloud.ibm.com/iam/apikeys)
17 | 1. Copy a service URL by going to [resource list](https://cloud.ibm.com/resources), then under "Services" select "Language Translator" option, and then copy URL from the "Credentials" section
18 | 1. Require widget in **rc.lua**:
19 |
20 | ```lua
21 | local translate = require("awesome-wm-widgets.translate-widget.translate")
22 | ```
23 |
24 | 1. Add a shortcut to run translate prompt:
25 |
26 | ```lua
27 | awful.key({ modkey }, "c", function()
28 | translate.launch{api_key = '', url = 'url'}
29 | end, { description = "run translate prompt", group = "launcher" })
30 | ```
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/translate-widget/demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/translate-widget/demo.gif
--------------------------------------------------------------------------------
/translate-widget/demo1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/translate-widget/demo1.gif
--------------------------------------------------------------------------------
/translate-widget/gnome-translate.svg:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/volume-widget/screenshots/variations.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/volume-widget/screenshots/variations.png
--------------------------------------------------------------------------------
/volume-widget/screenshots/volume-sink-sources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/volume-widget/screenshots/volume-sink-sources.png
--------------------------------------------------------------------------------
/volume-widget/volume-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/volume-widget/widgets/arc-widget.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 | local beautiful = require('beautiful')
3 |
4 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/'
5 |
6 | local widget = {}
7 |
8 | function widget.get_widget(widgets_args)
9 | local args = widgets_args or {}
10 |
11 | local thickness = args.thickness or 2
12 | local main_color = args.main_color or beautiful.fg_color
13 | local bg_color = args.bg_color or '#ffffff11'
14 | local mute_color = args.mute_color or beautiful.fg_urgent
15 | local size = args.size or 18
16 |
17 | return wibox.widget {
18 | {
19 | id = "icon",
20 | image = ICON_DIR .. 'audio-volume-high-symbolic.svg',
21 | resize = true,
22 | widget = wibox.widget.imagebox,
23 | },
24 | max_value = 100,
25 | thickness = thickness,
26 | start_angle = 4.71238898, -- 2pi*3/4
27 | forced_height = size,
28 | forced_width = size,
29 | bg = bg_color,
30 | paddings = 2,
31 | widget = wibox.container.arcchart,
32 | set_volume_level = function(self, new_value)
33 | self.value = new_value
34 | end,
35 | mute = function(self)
36 | self.colors = { mute_color }
37 | end,
38 | unmute = function(self)
39 | self.colors = { main_color }
40 | end
41 | }
42 |
43 | end
44 |
45 |
46 | return widget
--------------------------------------------------------------------------------
/volume-widget/widgets/horizontal-bar-widget.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 | local beautiful = require('beautiful')
3 | local gears = require("gears")
4 |
5 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/'
6 |
7 | local widget = {}
8 |
9 | function widget.get_widget(widgets_args)
10 | local args = widgets_args or {}
11 |
12 | local main_color = args.main_color or beautiful.fg_normal
13 | local mute_color = args.mute_color or beautiful.fg_urgent
14 | local bg_color = args.bg_color or '#ffffff11'
15 | local width = args.width or 50
16 | local margins = args.margins or 10
17 | local shape = args.shape or gears.shape.bar
18 | local with_icon = args.with_icon == true and true or false
19 |
20 | local bar = wibox.widget {
21 | {
22 | {
23 | id = "icon",
24 | image = ICON_DIR .. 'audio-volume-high-symbolic.svg',
25 | resize = false,
26 | widget = wibox.widget.imagebox,
27 | },
28 | valign = 'center',
29 | visible = with_icon,
30 | layout = wibox.container.place,
31 | },
32 | {
33 | id = 'bar',
34 | max_value = 100,
35 | forced_width = width,
36 | color = main_color,
37 | margins = { top = margins, bottom = margins },
38 | background_color = bg_color,
39 | shape = shape,
40 | bar_shape = shape,
41 | widget = wibox.widget.progressbar,
42 | },
43 | spacing = 4,
44 | layout = wibox.layout.fixed.horizontal,
45 | set_volume_level = function(self, new_value)
46 | self:get_children_by_id('bar')[1]:set_value(tonumber(new_value))
47 | end,
48 | mute = function(self)
49 | self:get_children_by_id('bar')[1]:set_color(mute_color)
50 | end,
51 | unmute = function(self)
52 | self:get_children_by_id('bar')[1]:set_color(main_color)
53 | end
54 | }
55 |
56 | return bar
57 | end
58 |
59 | return widget
60 |
--------------------------------------------------------------------------------
/volume-widget/widgets/icon-and-text-widget.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 | local beautiful = require('beautiful')
3 |
4 | local widget = {}
5 |
6 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/'
7 |
8 | function widget.get_widget(widgets_args)
9 | local args = widgets_args or {}
10 |
11 | local font = args.font or beautiful.font
12 | local icon_dir = args.icon_dir or ICON_DIR
13 |
14 | return wibox.widget {
15 | {
16 | {
17 | id = "icon",
18 | resize = false,
19 | widget = wibox.widget.imagebox,
20 | },
21 | valign = 'center',
22 | layout = wibox.container.place
23 | },
24 | {
25 | id = 'txt',
26 | font = font,
27 | widget = wibox.widget.textbox
28 | },
29 | layout = wibox.layout.fixed.horizontal,
30 | set_volume_level = function(self, new_value)
31 | self:get_children_by_id('txt')[1]:set_text(new_value)
32 | local volume_icon_name
33 | if self.is_muted then
34 | volume_icon_name = 'audio-volume-muted-symbolic'
35 | else
36 | local new_value_num = tonumber(new_value)
37 | if (new_value_num >= 0 and new_value_num < 33) then
38 | volume_icon_name="audio-volume-low-symbolic"
39 | elseif (new_value_num < 66) then
40 | volume_icon_name="audio-volume-medium-symbolic"
41 | else
42 | volume_icon_name="audio-volume-high-symbolic"
43 | end
44 | end
45 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. volume_icon_name .. '.svg')
46 | end,
47 | mute = function(self)
48 | self.is_muted = true
49 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. 'audio-volume-muted-symbolic.svg')
50 | end,
51 | unmute = function(self)
52 | self.is_muted = false
53 | end
54 | }
55 |
56 | end
57 |
58 |
59 | return widget
--------------------------------------------------------------------------------
/volume-widget/widgets/icon-widget.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 |
3 | local widget = {}
4 |
5 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/'
6 |
7 | function widget.get_widget(widgets_args)
8 | local args = widgets_args or {}
9 |
10 | local icon_dir = args.icon_dir or ICON_DIR
11 |
12 | return wibox.widget {
13 | {
14 | id = "icon",
15 | resize = false,
16 | widget = wibox.widget.imagebox,
17 | },
18 | valign = 'center',
19 | layout = wibox.container.place,
20 | set_volume_level = function(self, new_value)
21 | local volume_icon_name
22 | if self.is_muted then
23 | volume_icon_name = 'audio-volume-muted-symbolic'
24 | else
25 | local new_value_num = tonumber(new_value)
26 | if (new_value_num >= 0 and new_value_num < 33) then
27 | volume_icon_name="audio-volume-low-symbolic"
28 | elseif (new_value_num < 66) then
29 | volume_icon_name="audio-volume-medium-symbolic"
30 | else
31 | volume_icon_name="audio-volume-high-symbolic"
32 | end
33 | end
34 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. volume_icon_name .. '.svg')
35 | end,
36 | mute = function(self)
37 | self.is_muted = true
38 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. 'audio-volume-muted-symbolic.svg')
39 | end,
40 | unmute = function(self)
41 | self.is_muted = false
42 | end
43 | }
44 | end
45 |
46 | return widget
--------------------------------------------------------------------------------
/volume-widget/widgets/vertical-bar-widget.lua:
--------------------------------------------------------------------------------
1 | local wibox = require("wibox")
2 | local beautiful = require('beautiful')
3 | local gears = require("gears")
4 |
5 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/'
6 |
7 | local widget = {}
8 |
9 | function widget.get_widget(widgets_args)
10 | local args = widgets_args or {}
11 |
12 | local main_color = args.main_color or beautiful.fg_normal
13 | local mute_color = args.mute_color or beautiful.fg_urgent
14 | local bg_color = args.bg_color or '#ffffff11'
15 | local width = args.width or 10
16 | local margins = args.height or 2
17 | local shape = args.shape or gears.shape.bar
18 | local with_icon = args.with_icon == true and true or false
19 |
20 | local bar = wibox.widget {
21 | {
22 | {
23 | id = "icon",
24 | image = ICON_DIR .. 'audio-volume-high-symbolic.svg',
25 | resize = false,
26 | widget = wibox.widget.imagebox,
27 | },
28 | valign = 'center',
29 | visible = with_icon,
30 | layout = wibox.container.place,
31 | },
32 | {
33 | {
34 | id = 'bar',
35 | max_value = 100,
36 | forced_width = width,
37 | forced_height = 5,
38 | margins = { top = margins, bottom = margins },
39 | color = main_color,
40 | background_color = bg_color,
41 | shape = shape,
42 | bar_shape = shape,
43 | widget = wibox.widget.progressbar,
44 | },
45 | forced_width = width,
46 | direction = 'east',
47 | layout = wibox.container.rotate,
48 | },
49 | spacing = 4,
50 | layout = wibox.layout.fixed.horizontal,
51 | set_volume_level = function(self, new_value)
52 | self:get_children_by_id('bar')[1]:set_value(tonumber(new_value))
53 | end,
54 | mute = function(self)
55 | self:get_children_by_id('bar')[1]:set_color(mute_color)
56 | end,
57 | unmute = function(self)
58 | self:get_children_by_id('bar')[1]:set_color(main_color)
59 | end
60 | }
61 |
62 | return bar
63 | end
64 |
65 | return widget
66 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/broken-clouds-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/broken-clouds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/clear-sky.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/few-clouds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/rain-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/rain.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/scattered-clouds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/shower-rain-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/VitalyGorbachev/shower-rain.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/broken-clouds-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/broken-clouds-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/broken-clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/broken-clouds.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/clear-sky-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/clear-sky-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/clear-sky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/clear-sky.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/few-clouds-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/few-clouds-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/few-clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/few-clouds.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/mist-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/mist-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/mist.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/mist.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/rain-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/rain-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/rain.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/scattered-clouds-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/scattered-clouds-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/scattered-clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/scattered-clouds.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/shower-rain-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/shower-rain-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/shower-rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/shower-rain.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/snow-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/snow-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/snow.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/thunderstorm-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/thunderstorm-night.png
--------------------------------------------------------------------------------
/weather-api-widget/icons/weather-underground-icons/thunderstorm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/icons/weather-underground-icons/thunderstorm.png
--------------------------------------------------------------------------------
/weather-api-widget/locale/de.lua:
--------------------------------------------------------------------------------
1 | local de = {
2 | warning_title = "Wetter Widget",
3 | parameter_warning = "Folgende benötigte Parameter fehlen: ",
4 | directions = {
5 | "N", "NNO", "NO", "ONO", "O", "OSO", "SO", "SSO", "S", "SSW", "SW", "WSW", "W", "WNW", "NW", "NNW", "N"
6 | },
7 | feels_like = "Gefühlt: ",
8 | wind = "Wind: ",
9 | humidity = "Luftfeuchtigkeit: ",
10 | uv = "UV-Index: ",
11 | days = {
12 | Mon = "Mo",
13 | Tue = "Di",
14 | Wed = "Mi",
15 | Thu = "Do",
16 | Fri = "Fr",
17 | Sat = "Sa",
18 | Sun = "So",
19 | }
20 | }
21 |
22 | return de
23 |
--------------------------------------------------------------------------------
/weather-api-widget/locale/en.lua:
--------------------------------------------------------------------------------
1 | local en = {
2 | warning_title = "Weather Widget",
3 | parameter_warning = "Required parameters are not set: ",
4 | directions = {
5 | "N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE", "S", "SSW", "SW",
6 | "WSW", "W", "WNW", "NW", "NNW", "N"
7 | },
8 | feels_like = "Feels like ",
9 | wind = "Wind: ",
10 | humidity = "Humidity: ",
11 | uv = "UV: ",
12 | days = {
13 | Mon = "Mon",
14 | Tue = "Tue",
15 | Wed = "Wed",
16 | Thu = "Thu",
17 | Fri = "Fri",
18 | Sat = "Sat",
19 | Sun = "Sun",
20 | },
21 | }
22 |
23 | return en
24 |
--------------------------------------------------------------------------------
/weather-api-widget/locale/fr.lua:
--------------------------------------------------------------------------------
1 | local fr = {
2 | warning_title = "Widget Météo",
3 | parameter_warning = "Les paramètres suivants sont obligatoires : ",
4 | directions = {
5 | "N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE", "S", "SSO", "SO",
6 | "OSO", "O", "ONO", "NO", "NNO", "N"
7 | },
8 | feels_like = "ressentie à ",
9 | wind = "Vent : ",
10 | humidity = "Humidité : ",
11 | uv = "Indice UV : ",
12 | days = {
13 | Mon = "Lu",
14 | Tue = "Ma",
15 | Wed = "Me",
16 | Thu = "Je",
17 | Fri = "Ve",
18 | Sat = "Sa",
19 | Sun = "Di",
20 | },
21 | }
22 |
23 | return fr
24 |
--------------------------------------------------------------------------------
/weather-api-widget/locale/pt.lua:
--------------------------------------------------------------------------------
1 | local pt = {
2 | warning_title = "Widget do tempo",
3 | parameter_warning = "Parâmetros necessários não definidos: ",
4 | directions = {
5 | "N", "NNE", "NE", "ENE", "L", "ESE", "SE", "SSE", "S", "SSO", "SO",
6 | "OSO", "O", "ONO", "NO", "NNO", "N"
7 | },
8 | feels_like = "Sensação de ",
9 | wind = "Vento: ",
10 | humidity = "Umidade: ",
11 | uv = "UV: ",
12 | days = {
13 | Mon = "Mon",
14 | Tue = "Tue",
15 | Wed = "Wed",
16 | Thu = "Thu",
17 | Fri = "Fri",
18 | Sat = "Sat",
19 | Sun = "Sun",
20 | },
21 | }
22 |
23 | return pt
24 |
--------------------------------------------------------------------------------
/weather-api-widget/locale/ru.lua:
--------------------------------------------------------------------------------
1 | local ru = {
2 | warning_title = "Погода",
3 | parameter_warning = "Необходимые параметры не установлены: ",
4 | directions = {
5 | "С", "ССВ", "СВ", "ВСВ", "В", "ВЮВ", "ЮВ", "ЮЮВ", "Ю", "ЮЮЗ", "ЮЗ",
6 | "ЗЮЗ", "З", "ЗСЗ", "СЗ", "ССЗ", "С",
7 | },
8 | feels_like = "Ощущается как ",
9 | wind = "Ветер: ",
10 | humidity = "Влажность: ",
11 | uv = "UV: ",
12 | days = {
13 | Mon = "Пн",
14 | Tue = "Вт",
15 | Wed = "Ср",
16 | Thu = "Чт",
17 | Fri = "Пт",
18 | Sat = "Сб",
19 | Sun = "Вс",
20 | }
21 | }
22 |
23 | return ru
24 |
--------------------------------------------------------------------------------
/weather-api-widget/popup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-api-widget/popup.png
--------------------------------------------------------------------------------
/weather-widget/both.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/both.png
--------------------------------------------------------------------------------
/weather-widget/example1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/example1.png
--------------------------------------------------------------------------------
/weather-widget/example2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/example2.png
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/broken-clouds-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/broken-clouds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/clear-sky.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/few-clouds-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/few-clouds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/rain-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/rain.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/scattered-clouds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/shower-rain-night.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/VitalyGorbachev/shower-rain.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/broken-clouds-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/broken-clouds-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/broken-clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/broken-clouds.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/clear-sky-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/clear-sky-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/clear-sky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/clear-sky.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/few-clouds-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/few-clouds-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/few-clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/few-clouds.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/mist-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/mist-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/mist.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/mist.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/rain-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/rain-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/rain.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/scattered-clouds-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/scattered-clouds-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/scattered-clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/scattered-clouds.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/shower-rain-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/shower-rain-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/shower-rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/shower-rain.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/snow-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/snow-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/snow.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/thunderstorm-night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/thunderstorm-night.png
--------------------------------------------------------------------------------
/weather-widget/icons/weather-underground-icons/thunderstorm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/icons/weather-underground-icons/thunderstorm.png
--------------------------------------------------------------------------------
/weather-widget/locale/de.lua:
--------------------------------------------------------------------------------
1 | local de = {
2 | warning_title = "Wetter Widget",
3 | parameter_warning = "Folgende benötigte Parameter fehlen: ",
4 | directions = {
5 | "N", "NNO", "NO", "ONO", "O", "OSO", "SO", "SSO", "S", "SSW", "SW", "WSW", "W", "WNW", "NW", "NNW", "N"
6 | },
7 | feels_like = "Gefühlt: ",
8 | wind = "Wind: ",
9 | humidity = "Luftfeuchtigkeit: ",
10 | uv = "UV-Index: "
11 | }
12 |
13 | return de
14 |
--------------------------------------------------------------------------------
/weather-widget/locale/en.lua:
--------------------------------------------------------------------------------
1 | local en = {
2 | warning_title = "Weather Widget",
3 | parameter_warning = "Required parameters are not set: ",
4 | directions = {
5 | "N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE", "S", "SSW", "SW",
6 | "WSW", "W", "WNW", "NW", "NNW", "N"
7 | },
8 | feels_like = "Feels like ",
9 | wind = "Wind: ",
10 | humidity = "Humidity: ",
11 | uv = "UV: "
12 | }
13 |
14 | return en
15 |
--------------------------------------------------------------------------------
/weather-widget/locale/fr.lua:
--------------------------------------------------------------------------------
1 | local fr = {
2 | warning_title = "Widget Météo",
3 | parameter_warning = "Les paramètres suivants sont obligatoires : ",
4 | directions = {
5 | "N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE", "S", "SSO", "SO",
6 | "OSO", "O", "ONO", "NO", "NNO", "N"
7 | },
8 | feels_like = "ressentie à ",
9 | wind = "Vent : ",
10 | humidity = "Humidité : ",
11 | uv = "Indice UV : "
12 | }
13 |
14 | return fr
15 |
--------------------------------------------------------------------------------
/weather-widget/locale/pt.lua:
--------------------------------------------------------------------------------
1 | local pt = {
2 | warning_title = "Widget do tempo",
3 | parameter_warning = "Parâmetros necessários não definidos: ",
4 | directions = {
5 | "N", "NNE", "NE", "ENE", "L", "ESE", "SE", "SSE", "S", "SSO", "SO",
6 | "OSO", "O", "ONO", "NO", "NNO", "N"
7 | },
8 | feels_like = "Sensação de ",
9 | wind = "Vento: ",
10 | humidity = "Umidade: ",
11 | uv = "UV: "
12 | }
13 |
14 | return pt
15 |
--------------------------------------------------------------------------------
/weather-widget/negative.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/negative.png
--------------------------------------------------------------------------------
/weather-widget/weather-widget.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/weather-widget/weather-widget.png
--------------------------------------------------------------------------------
/widgets-icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/widgets-icons.png
--------------------------------------------------------------------------------
/word-clock-widget/README.md:
--------------------------------------------------------------------------------
1 | # word clock widget
2 |
3 | Widget displaying current time using words:
4 |
5 | 
6 |
7 | ## Customization
8 |
9 | It is possible to customize widget by providing a table with all or some of the following config parameters:
10 |
11 | | Name | Default | Description |
12 | |---|---|---|
13 | | main_color | `beautiful.fg_normal` | Color of the word on odd position |
14 | | accent_color | `beautiful.fg_urgent` | Color of the word on even position |
15 | | font | `beautiful.font` | Font (`Play 20`) |
16 | | is_human_readable | false | _nine fifteen_ or _fifteen past nine_ |
17 | | military_time | false | 12 or 24 time format |
18 | | with_spaces | false | Separate words with spaces |
19 |
20 | ## Installation
21 |
22 | Clone repo, include widget and use it in **rc.lua**:
23 |
24 | ```lua
25 | local word_clock = require("awesome-wm-widgets.word-clock-widget.word-clock")
26 | ...
27 | s.mytasklist, -- Middle widget
28 | { -- Right widgets
29 | layout = wibox.layout.fixed.horizontal,
30 | ...
31 | word_clock(),
32 | ...
33 | ```
34 |
35 | # Screenshots
36 |
37 | ```lua
38 | word_clock{
39 | font = 'Carter One 12',
40 | accent_color = '#ff79c6',
41 | main_color = '#8be9fd',
42 | is_human_readable = true,
43 | }
44 | ```
45 | 
46 |
47 |
48 | ```lua
49 | word_clock{
50 | font = 'Carter One 12',
51 | is_human_readable = true,
52 | }
53 | ```
54 | 
55 |
56 |
57 | ```lua
58 | word_clock{
59 | font = 'Carter One 12',
60 | is_human_readable = true,
61 | military_time = true
62 | }
63 | ```
64 | 
65 |
66 |
67 | ```lua
68 | word_clock{
69 | font = 'Carter One 12',
70 | accent_color = '#f00',
71 | main_color = '#0f0',
72 | }
73 | ```
74 | 
75 |
--------------------------------------------------------------------------------
/word-clock-widget/screenshots/halfpastthree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/word-clock-widget/screenshots/halfpastthree.png
--------------------------------------------------------------------------------
/word-clock-widget/screenshots/halfpastthree_color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/word-clock-widget/screenshots/halfpastthree_color.png
--------------------------------------------------------------------------------
/word-clock-widget/screenshots/onetwentyseven.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/word-clock-widget/screenshots/onetwentyseven.png
--------------------------------------------------------------------------------
/word-clock-widget/screenshots/testpasttwentyone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/word-clock-widget/screenshots/testpasttwentyone.png
--------------------------------------------------------------------------------
/word-clock-widget/screenshots/twentythreepastnine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/word-clock-widget/screenshots/twentythreepastnine.png
--------------------------------------------------------------------------------
/word-clock-widget/screenshots/twentythreepasttwentyone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/streetturtle/awesome-wm-widgets/60fb36e8f51b0ea68175de4576f011357ffbfc37/word-clock-widget/screenshots/twentythreepasttwentyone.png
--------------------------------------------------------------------------------