From c4826fd21340d34e3592b0c8ca24fc068e52c6ef Mon Sep 17 00:00:00 2001 From: streetturtle Date: Mon, 30 Jan 2017 21:38:50 -0500 Subject: [PATCH] new widgets added --- BatteryWidget/README.md | 26 ---- BatteryWidget/batWid1.png | Bin 1108 -> 0 bytes BatteryWidget/batWid2.png | Bin 4606 -> 0 bytes BatteryWidget/batWid3.png | Bin 8484 -> 0 bytes BatteryWidget/battery-icons/100.png | Bin 1250 -> 0 bytes BatteryWidget/battery-icons/20.png | Bin 1161 -> 0 bytes BatteryWidget/battery-icons/40.png | Bin 1191 -> 0 bytes BatteryWidget/battery-icons/60.png | Bin 1222 -> 0 bytes BatteryWidget/battery-icons/80.png | Bin 1235 -> 0 bytes BatteryWidget/battery.lua | 56 -------- EmailWidget/README.md | 26 ---- EmailWidget/email.lua | 40 ------ EmailWidget/emailWidgetScrnsht.png | Bin 875 -> 0 bytes EmailWidget/emailWidgetScrnsht2.png | Bin 63784 -> 0 bytes EmailWidget/getUnreadEmails.py | 39 ------ EmailWidget/getUnreadEmailsNum.py | 16 --- EmailWidget/mail.png | Bin 7465 -> 0 bytes EmailWidget/mailWathcer.py | 100 -------------- MouseBatteryWidget/mouse-battery.lua | 33 ----- MouseBatteryWidget/mouse-battery.png | Bin 972 -> 0 bytes README.md | 128 +----------------- RatesWidget/currency.png | Bin 19289 -> 0 bytes RatesWidget/rates.lua | 39 ------ RatesWidget/rates.py | 9 -- RatesWidget/ratesPopup.py | 11 -- RatesWidget/readme.md | 8 -- Spotify/screenshot.png | Bin 2231 -> 0 bytes Spotify/spotify.lua | 15 -- VolumeWidget/README.md | 21 --- VolumeWidget/volWid.png | Bin 301 -> 0 bytes VolumeWidget/volume-icons/1.png | Bin 233 -> 0 bytes VolumeWidget/volume-icons/2.png | Bin 242 -> 0 bytes VolumeWidget/volume-icons/3.png | Bin 248 -> 0 bytes VolumeWidget/volume-icons/4.png | Bin 255 -> 0 bytes VolumeWidget/volume-icons/5.png | Bin 260 -> 0 bytes VolumeWidget/volume-icons/6.png | Bin 270 -> 0 bytes VolumeWidget/volume-icons/7.png | Bin 273 -> 0 bytes VolumeWidget/volume-icons/8.png | Bin 282 -> 0 bytes VolumeWidget/volume-icons/9.png | Bin 286 -> 0 bytes VolumeWidget/volume.lua | 34 ----- .../battery.lua | 11 +- brightness-widget/brightness.lua | 17 +++ email-widget/count_unread_emails.py | 16 +++ email-widget/email.lua | 42 ++++++ email-widget/read_unread_emails.py | 42 ++++++ rhythmbox-widget/rhythmbox.lua | 16 +++ .../spotify.lua | 4 +- .../volume.lua | 0 48 files changed, 144 insertions(+), 605 deletions(-) delete mode 100644 BatteryWidget/README.md delete mode 100644 BatteryWidget/batWid1.png delete mode 100644 BatteryWidget/batWid2.png delete mode 100644 BatteryWidget/batWid3.png delete mode 100644 BatteryWidget/battery-icons/100.png delete mode 100644 BatteryWidget/battery-icons/20.png delete mode 100644 BatteryWidget/battery-icons/40.png delete mode 100644 BatteryWidget/battery-icons/60.png delete mode 100644 BatteryWidget/battery-icons/80.png delete mode 100644 BatteryWidget/battery.lua delete mode 100644 EmailWidget/README.md delete mode 100644 EmailWidget/email.lua delete mode 100644 EmailWidget/emailWidgetScrnsht.png delete mode 100644 EmailWidget/emailWidgetScrnsht2.png delete mode 100644 EmailWidget/getUnreadEmails.py delete mode 100644 EmailWidget/getUnreadEmailsNum.py delete mode 100644 EmailWidget/mail.png delete mode 100644 EmailWidget/mailWathcer.py delete mode 100644 MouseBatteryWidget/mouse-battery.lua delete mode 100644 MouseBatteryWidget/mouse-battery.png delete mode 100644 RatesWidget/currency.png delete mode 100644 RatesWidget/rates.lua delete mode 100644 RatesWidget/rates.py delete mode 100644 RatesWidget/ratesPopup.py delete mode 100644 RatesWidget/readme.md delete mode 100644 Spotify/screenshot.png delete mode 100644 Spotify/spotify.lua delete mode 100644 VolumeWidget/README.md delete mode 100644 VolumeWidget/volWid.png delete mode 100644 VolumeWidget/volume-icons/1.png delete mode 100644 VolumeWidget/volume-icons/2.png delete mode 100644 VolumeWidget/volume-icons/3.png delete mode 100644 VolumeWidget/volume-icons/4.png delete mode 100644 VolumeWidget/volume-icons/5.png delete mode 100644 VolumeWidget/volume-icons/6.png delete mode 100644 VolumeWidget/volume-icons/7.png delete mode 100644 VolumeWidget/volume-icons/8.png delete mode 100644 VolumeWidget/volume-icons/9.png delete mode 100644 VolumeWidget/volume.lua rename {battery-widget-v4 => battery-widget}/battery.lua (86%) create mode 100644 brightness-widget/brightness.lua create mode 100644 email-widget/count_unread_emails.py create mode 100644 email-widget/email.lua create mode 100644 email-widget/read_unread_emails.py create mode 100644 rhythmbox-widget/rhythmbox.lua rename {spotify-widget-v4 => spotify-widget}/spotify.lua (82%) rename {volume-widget-v4 => volume-widget}/volume.lua (100%) diff --git a/BatteryWidget/README.md b/BatteryWidget/README.md deleted file mode 100644 index 531a15c..0000000 --- a/BatteryWidget/README.md +++ /dev/null @@ -1,26 +0,0 @@ -## Battery widget -Simple and easy-to-install widget for Awesome Window Manager. - -This widget consists of - - - an icon which shows the battery status: ![Battery Widget](./batWid1.png) - - a pop-up window, which shows up when you hover over it: ![Battery Widget](./batWid2.png) - - a pop-up warning message which appears when battery level is less that 15%: ![Battery Widget](./batWid3.png) - -## Installation - -This widget uses the output of acpi tool. -- install `acpi` tool: -``` -sudo apt-get install acpi -``` -- clone/copy battery.lua file and battery-icons folder to your ~/home/username/.config/awesome/ folder; - -- change path to the icons in `battery.lua`; - -- include `battery.lua` and add battery widget to your wibox in rc.lua: -``` -require("battery") -... -right_layout:add(batteryIcon) -``` diff --git a/BatteryWidget/batWid1.png b/BatteryWidget/batWid1.png deleted file mode 100644 index d1d4e5bd3b6c0c94198c4ee916a9756f6fabc542..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1108 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 diff --git a/BatteryWidget/battery-icons/100.png b/BatteryWidget/battery-icons/100.png deleted file mode 100644 index 48cc41202144e18d1152d750b56b71338c1be693..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1250 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y2=9ZF3nBND}m`vLFjeHsTY(KatnYqyQCInmZhe+73JqDfW2&$iQ6rfIL(9V zO~LIJN1S@~fsWA!MJ!T8!-RmT2gHOYTObFX@Kf`Esl5o8tj()0y=7ov4D)nx45_&F zX8J}iW=Dax{K;Fw4r=wb@(XY)&b_wJ$!gX@4!uPZ;h=JP%GX@>(Fm_!yZuxdCkas@OnWp__{ zq8GsspWwFO)tv62P4x+!#}>q2;E!ci=e+SFwaWNrwd=Li4?O1%Zv51gZxXj)VPmQD z%KpH5r@ftDw*~E=b|)mO_)FZv?+mYPm;Phg=aP`UbXLTV`yB`St|zOVFJt-|@hZQu zD)vH>(%!-a_fCG<_NiLm_1NKA2lV#+QoO;Q+Re250VB`Bxvq^lGLhmP8V-&1dIj@i zw2qnGWj22xyeCSe;`p5}I|3KG{Nt}_*k;!2CD$+$NZN7xEDk<-Yxna>`3F@DdjC}_ z8CT1B9Dk`7@gwOtN66>LCj4KK{3#L<|A)hXA#t1NqF?;>e?X;mdKI;Vst0KpTp AWdHyG diff --git a/BatteryWidget/battery-icons/20.png b/BatteryWidget/battery-icons/20.png deleted file mode 100644 index e3b455b8af97a93cb113b4ac32e36fc719fb535a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1161 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y&acD6J& zv~YHV>2=9ZF3nBND}m`vf$McKz^NCM6mkoIHoK%2WtOF;xE1B+DuBIgm5JLeE;!AD z>P^Av7H3zSdi8;h(Fa8=QbfaqfT;(>geO}d2cGa#^MI+n2$-y27_C|Z%o2Y+T^vIy zZoQdq$aTm-q;2-L)xqxK?EDWNy?bMLg!zTyuC8v2O6KcUyDh@>A4ncK>ZoRn0vbYfIHEyO=~4FtBPkFmeSnFo|?byE8BQ0^?i*-4#=UW-hj8 zmM>uTUBqn5;?2xuzhm~YZv)At^Y1LwBJcREJ2_u!{BDqM84;e#Xou* z)+Rr_J}>={vTs69;QU5S4HdnGby6?AGxQ2MJO8t5I5f&XOW|9(VNv-5j<^R}fe-rT zz4;Tqw#A;Ae*<6X;+5}D9C^ncqaV`jw|uTxNS*arUt75AfDV21RQmwKpM@8l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)yx}mG2=9ZF3nBND}m`vLFhHcsTY(KatnYqyQCInmZhe+73JqDfW2&$iQ6p(IL(9V zO~LIJL!5f`fsWA!MJ!T8!-RmT2gHOYTObFX@Kf`Esl5o8tZQ$YSTQg#N_)CEhE&{o zGu@Eukby|s>|0k?F79q-FA%h{s^%#yz9_w8M_0E+C9}F?VKBS+!Yan|3VM7&ivJo# zmK@o*#s5Ehyzs1LmGPVQXsq3;ZYjd5;lRih(7+_JfPqybAmYb1*=Cj(Lc+}fnopP3 z%sapxb70pJ=~!l4W})~c`o8ZP--aI$^l`ZUu~}X1oS~wVeNj)mLEQ=M>NU5wFoj-U zaPWx8m95tAzTLh!{bT05+xaYSteSJ)?Nhf|!fCSMb?yZw(N3n?4b18rCTV<-lzqu0 z$Exw+Ig|8fjuus0X73LS>77jBS7Lt8*HYc2Ucl@eZklylcgOBk7Z>HHB)wl3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y2=9ZF3nBND}m`vLFhHbsTY(KatnYqyQCInmZhe+73JqDfW2&$iQ6qkIL(9V zO~LIJW1M>RfsWA!MJ!T8!-RmT2gHOYTObFX@Kf`Esl5o8tQWu7SjWJ?XyxhR7*cWT z&Ge04%#H$W`IEPVDNgm}l2_=RaLH zq}3&2f2%FW@wmkvd0*szXi(74uBx6e7E zdA&h!hSl>;bI#g-;4GF1|FWR`p@qZ4@Smpxs+G^Z{=o9QV9JdL&8^dQUKqVs`&9g? z{|W!h?Lt4ZKdryNc3!P@V1oKoo)!tm+sl(h_uJ~8>`(f)ROSB9lONl^7S4Cv_$?~U zW)0_?!dL7Y_)EK)YIn4!@7SubLDKd$(@YkX59e9m9a@~Y<^}hT#_}1FA`usYZU3wc zTl9nd-UF4Zy~hffR)?5N9p5}DujJ=#bED1Q8~4nWJ9I1Ddf5e?ZI^dl@rHQ@=&yw8 ckE#b4`r>Z9Rf>B(A5^kl3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y2=9ZF3nBND}m`vLFhHcsTY(KatnYqyQCInmZhe+73JqDfW2&$iQ6p(IL(9V zO~LIJL!5f`fsWA!MJ!T8!-RmT2gHOYTObFX@Kf`Esl5o8tWDy&)EO8U-923#Ln>~) znZ7ZL$x)y!|LQfbH90{~7;~7WU8`(;tr9C$+iViXxRG;Z(saGh0~5|gED`LnbLcYJ zrsUMMV8c)GXAdl%O>+C7_LF_z?5EGlZsxC_S$gmHi6RTGfCeU!1q`ej4vbs@4>AHL z-C?(WzU>T$2!?wyP0m-UyL>3&d7q8&z@7m~lzk&S& z=RF;+J&W_Jeg>~~`NqG-(f_rZs(o|swO+4%=U%#nPujY5d;5-wGxzeVye*M`Q?oId mFY9L6tm#$Aev{GP$11^aYuz_DPVRr;a>mou&t;ucLK6Uq$gV2@ diff --git a/BatteryWidget/battery.lua b/BatteryWidget/battery.lua deleted file mode 100644 index 4b2d069..0000000 --- a/BatteryWidget/battery.lua +++ /dev/null @@ -1,56 +0,0 @@ -local wibox = require("wibox") -local awful = require("awful") -local naughty = require("naughty") - -function showBatteryWidgetPopup() - local save_offset = offset - naughty.notify({ - text = awful.util.pread("acpi | cut -d, -f 2,3"), - title = "Battery status", - timeout = 5, hover_timeout = 0.5, - width = 160, - }) -end - -function showWarningWidgetPopup() - local charge = tonumber(awful.util.pread("acpi | cut -d, -f 2 | egrep -o '[0-9]{1,3}'")) - if (charge < 15) then - naughty.notify({ - text = "Huston, we have a problem", - title = "Battery dying", - timeout = 5, hover_timeout = 0.5, - position = "bottom_right", - bg = "#F06060", - fg = "#EEE9EF", - width = 200, - }) - end -end - -function showBatteryWidgetIcon() - local charge = tonumber(awful.util.pread("acpi | cut -d, -f 2 | egrep -o '[0-9]{1,3}'")) - local batteryType - - if (charge >= 0 and charge < 20) then batteryType=20 - elseif (charge >= 20 and charge < 40) then batteryType=40 - elseif (charge >= 40 and charge < 60) then batteryType=60 - elseif (charge >= 60 and charge < 80) then batteryType=80 - elseif (charge >= 80 and charge <= 100) then batteryType=100 - end - - batteryIcon:set_image("/home/username/.config/awesome/battery-icons/" .. batteryType .. ".png") -end - -batteryIcon = wibox.widget.imagebox() -showBatteryWidgetIcon() -batteryIcon:connect_signal("mouse::enter", function() showBatteryWidgetPopup() end) - --- timer to refresh battery icon -batteryWidgetTimer = timer({ timeout = 5 }) -batteryWidgetTimer:connect_signal("timeout", function() showBatteryWidgetIcon() end) -batteryWidgetTimer:start() - --- timer to refresh battery warning -batteryWarningTimer = timer({ timeout = 50 }) -batteryWarningTimer:connect_signal("timeout", function() showWarningWidgetPopup() end) -batteryWarningTimer:start() diff --git a/EmailWidget/README.md b/EmailWidget/README.md deleted file mode 100644 index 6f204ca..0000000 --- a/EmailWidget/README.md +++ /dev/null @@ -1,26 +0,0 @@ -This widget consists of an icon with counter which shows number of unread emails: ![email icon](./emailWidgetScrnsht.png) -and a popup message which appears when mouse hovers over an icon: ![email popup](./emailWidgetScrnsht2.png) - -## Installation - -To install it either clone [EmailWidget](https://github.com/streetturtle/AwesomeWM/tree/master/EmailWidget) project under `~/.config/awesome/` or download a .zip archive and unzip it there. - -After provide your credentials in python scripts so that they could connect to server and add following lines in your **rc.lua** file: - -```lua -require("email") -... -right_layout:add(emailWidget_icon) -right_layout:add(emailWidget_counter) -``` - -## How it works - -This widget uses the output of two python scripts, first is called every 5 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: - -``` bash -python ~/.config/awesome/email/countUnreadEmails.py -python ~/.config/awesome/email/readEmails.py -``` - -Note that getting number of unread emails could take some time, so instead of `pread` or `spawn_with_shell` functions I use DBus, you can read more about it in [this]({{site.url}}/2015/09/fix-awesome-freezes) post. diff --git a/EmailWidget/email.lua b/EmailWidget/email.lua deleted file mode 100644 index 3f486cf..0000000 --- a/EmailWidget/email.lua +++ /dev/null @@ -1,40 +0,0 @@ -local wibox = require("wibox") -local awful = require("awful") -local naughty = require("naughty") - -function showEmailWidgetPopup() - local save_offset = offset - local popuptext = "test" - naughty.notify({ - title = "Unread emails", - text = awful.util.pread("python /home/username/.config/awesome/getUnreadEmails.py"), - timeout = 10, - width = 300, - fg = "#ffffff", - bg = "#333333aa", - }) -end - --- Icon which shows unread emails when hover -emailIcon = wibox.widget.imagebox() -emailIcon:set_image("/home/username/.config/awesome/mail.png") -emailIcon:connect_signal("mouse::enter", function() showEmailWidgetPopup() end) - -dbus.request_name("session", "ru.console.df") -dbus.add_match("session", "interface='ru.console.df', member='fsValue' " ) -dbus.connect_signal("ru.console.df", - function (...) - local data = {...} - local dbustext = data[2] - emailCount:set_text(dbustext) - end) - --- Counter which shows number of unread emails -emailCount = wibox.widget.textbox() - -emailCountTimer = timer ({timeout = 5}) -emailCountTimer:connect_signal ("timeout", - function () - awful.util.spawn_with_shell("dbus-send --session --dest=org.naquadah.awesome.awful /ru/console/df ru.console.df.fsValue string:$(python /home/username/.config/awesome/getUnreadEmailsNum.py)" ) - end) -emailCountTimer:start() diff --git a/EmailWidget/emailWidgetScrnsht.png b/EmailWidget/emailWidgetScrnsht.png deleted file mode 100644 index 07b69ce19a646c1477d208396490c68d3dd5792a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 875 zcmV-x1C;!UP)naO)!-#2e|;b?OZ`2faTeZvuFXqg7F zZM4&3$UR^zo#kCR5%=FoY{|ol>!g~%o%Iz6=QWI2jZs(%ehxfq_6ix zf1;dM1j|^KWmQ#qo+mC)N-@T&s)j-#N2h1|==j*RyLY1fiI2~oSB!PMuQz%sQO>Kj z8OGQxz_Ho-`nqGPbUGc4Mg>7&MX+sq=F?2PE6#BoTM!C`loMULzPaTe<+!0M7Xwo3 z)Wp4QqwG-wa5pjC&`}+-EKAcg!!Yvse6d&*MR9h1HW5$!BQ0XvpWnV4xq0J1cQcA8 zE5b@{C89*cM$xh?Q4~c{bVPLj z&%K}aa6e~eGr!s0*`3X19b>qU2LQyBSZ*!X5@?~6;*uI(5YAn{+SuGoC|RCgeDiS9 zPXpjMe(uAxhkM0D`g-dHfeCQ)im-{@*4n0Nn)}u-UnVt4R>7i_qSEX}HuvP#ZO_T9 z*Z}GTfeCQ)+8Y3&guHtBg6Fy4j;nmS5XSiYg-g0_0LK2?%uZjL2yF>ddgBu6>#99v zrda?C2!YQid(;2`z$z50-i3GTyW{ZV>`=@e;1`7$+XcggcYpu@002ovPDHLkV1l_V Bn)?6% diff --git a/EmailWidget/emailWidgetScrnsht2.png b/EmailWidget/emailWidgetScrnsht2.png deleted file mode 100644 index e2acc0cc1428f394e5b435177828e8d7098a4051..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63784 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%0A9JV(-$`AOZ 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 diff --git a/EmailWidget/getUnreadEmails.py b/EmailWidget/getUnreadEmails.py deleted file mode 100644 index 8b4714a..0000000 --- a/EmailWidget/getUnreadEmails.py +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/python - -import imaplib -import email -import datetime - -def process_mailbox(M): - rv, data = M.search(None, "UNSEEN") - if rv != 'OK': - print "No messages found!" - return - - for num in data[0].split(): - # rv, data = M.fetch(num, '(RFC822)') # mark us read - rv, data = M.fetch(num, '(BODY.PEEK[])') # don't mark us read - if rv != 'OK': - print "ERROR getting message", num - return - - msg = email.message_from_string(data[0][1]) - print 'From:', msg['From'] - print 'Subject: %s' % (msg['Subject']) - date_tuple = email.utils.parsedate_tz(msg['Date']) - if date_tuple: - local_date = datetime.datetime.fromtimestamp( - email.utils.mktime_tz(date_tuple)) - print "Local Date:", local_date.strftime("%a, %d %b %Y %H:%M:%S") - print - -M=imaplib.IMAP4_SSL("imap.whatever.com", 993) -M.login("username","password") - -rv, data = M.select("INBOX") -if rv == 'OK': - process_mailbox(M) - M.close() - -M.logout() - diff --git a/EmailWidget/getUnreadEmailsNum.py b/EmailWidget/getUnreadEmailsNum.py deleted file mode 100644 index 5599f2e..0000000 --- a/EmailWidget/getUnreadEmailsNum.py +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/python - -import imaplib -import email - -M=imaplib.IMAP4_SSL("imap.whatever.com", 993) -M.login("username","password") - -status, counts = M.status("INBOX","(MESSAGES UNSEEN)") - -if status == "OK": - unread = int(counts[0].split()[4][:-1]) -else: - unread = "N/A" - -print(unread) diff --git a/EmailWidget/mail.png b/EmailWidget/mail.png deleted file mode 100644 index 1df6faef48d899d6746d3a08037b76b0654c0a83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7465 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%0DXO;kv0}X?M3l6*H zefK6z6xZijXs&SYG^3uu{SkdfY1f3rqBF0p7c#p#DsF2AFb3vHf$;7Z4)nH&l9UPI zPOM*MuJkN|_o4I`BUa01tI85i!LY^1~daay$%l3K|VIt>6 zHG8a=BvVyD;mO?g3hYfP)L``~7hDcvDMmnHW#CzT2p;0})jLUO68+@%icQbueQc+tMb$-TO+D>8B&^dyyY3AbS;a%&i1~Db) zdrJJ7fQ{{Pt9rKh#I~Pvw_7UXKP`?yt9{f`+;6bAUZiY8D_%Xc2#Vh@S!>_n-gf}t z8?nWS@kO3noss3e;br^AR0S?LvEezP14pFaL>nnuUdKMn<_YYkIAz@oJ_AYuiK}+p zB*3OjSYVHbjj-*>Liv|!E_fx6^aR5_^aW35>ht^0uVbTMfM4O)Lkb3-ak>zde93&V z6VNg$d;iTrU270aRsSQ#j#7p*S6RNBSi}X7UCOAJI~o$K&xjLF7@wzUtIRmMH;Im) zIx%fIaIy1{8z46~;gJ?9y?99bN>QUUCkASEy=oER?ftHO!g$TBC#6)%_SM(3J3=#@ z1}hT}@y*iZyZ=c3k!fvRtX}V6J6i1imOPAF{`Ojy)_W0lY&${=`E7eN*q}Zzd7&x`0?T+2HK)&*Lq0G zo*rdr2+vq{@wNU8^3P2XW~|aYlHUAE352D0iQL_9(Ca;S)oC%OD-RosqY{{&`n2Fw zSU=rSezlTSps{1b{u64u*QJGQ&VPipKl4WUsiyEhs zI%SDzI7Ro4AOO}Ke;d6{IfY|!AO50-Ii@f_;z@6-?73ZdP>KVwbwH@7@ z77;c*B2C_)55aXMWo1{FLbi6(t(278w6?wow#~AZklEPL_I?%G5YH&H|CzfO70?hq z)I#s`wN7wh>b@+Pv;$&WXdAzL6+pPGSshES+Cpyb^hsFKZjCLGki`ALz+DLi{M$hk zdzeRVSEyYI<5(Bdt1kpPxq6h+mBJdBRKgFO2{b5j)SXBQMK@<_a$jsDy zftn_6%N~ZhoHpn6zVAK#F&nkJEw!}y`|EeU=N#_moclZH_d5u#)POlzL0<0K)%iMI znoJht79oTz!*=)dHoa}_?CJ*dX0kcYG#d388HS~5HG&|&>VhE1FpQ$8z~YXNUvAW= z0{}7%dbLXBbWS$6v_c47y(o$n&BjMzL? z1dlQ8Dacj<9tH)YlP!1Zo_^sFMckHs1)1RjE246As`EkpBQq_|Gxw|vQDv{&tn8|| zU~xiZ$?C0@+Y_5Eeo$^GEMyx_ogbtiP-K->?KZSmbqw*d=0>9nO~-P+)l_%TYg|s- zXU^B;H;v5$A3sU;p`qdAq(o2d5GBSrNCpA`Anl+;91lTJMPx8zCpicJ0Ib8w;1OZy zOkg~@AvOHDt&5lxAwTW-S+qu@Ht2OyonaU+qXibq!$X4+z`)-Z02fw-E?-_zr0V7kmzM;YTDXAE=0PVu_>RS^1899uiwi*8MWI}wOW5?6ki&K zu{0|}juwJKWv-A$Fu9ClI5-m+$+^_z7oAu?RCTJJns#1VSYMxyi;d08&5`P@Z5`fH zvnu7#0Ub^DSPJDIq(*)$nx^7!pakse+2AORgYbq&r)hCr_ z&c(*Y__@DNSCqTzlPAw!`~;CjLu2>5Ua9`w;V`7@0yNK;ZrYfWz0y~2bW~J;a%Zo~T1<5; uMbo2p`>e*#OSMx}RJ17H4eqDm;<6uikFaL-G2o{F0000/.config/awesome/volume-icons/" .. volumeLevel .. ".png") -``` - -- include `volume.lua` and add volume widget to your wibox in rc.lua: - -``` -require("volume") -... -right_layout:add(volumeWidget) -``` +Coming soon diff --git a/RatesWidget/currency.png b/RatesWidget/currency.png deleted file mode 100644 index 4c7dbce2617ae47375706b66c8736858d5971426..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19289 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

6!BPG?1|vm%!N{OCPG%D>DH!rU3GkeJQZ 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 At^fc4 diff --git a/RatesWidget/rates.lua b/RatesWidget/rates.lua deleted file mode 100644 index 6fa2e47..0000000 --- a/RatesWidget/rates.lua +++ /dev/null @@ -1,39 +0,0 @@ -local wibox = require("wibox") -local awful = require("awful") - -rateWidget = wibox.widget.textbox() - --- DBus (Command are sent to Dbus, which prevents Awesome from freezŅƒ) -sleepTimerDbus = timer ({timeout = 1800}) -sleepTimerDbus:connect_signal ("timeout", - function () - awful.util.spawn_with_shell("dbus-send --session --dest=org.naquadah.awesome.awful /com/console/rate com.console.rate.rateWidget string:$(python ~/.config/awesome/rates/rates.py)" ) - end) -sleepTimerDbus:start() -sleepTimerDbus:emit_signal("timeout") - -dbus.request_name("session", "com.console.rate") -dbus.add_match("session", "interface='com.console.rate', member='rateWidget' " ) -dbus.connect_signal("com.console.rate", - function (...) - local data = {...} - local dbustext = data[2] - rateWidget:set_text(dbustext) - end) - --- The notification popup which shows rates for other currencies -function showRatesPopup() - naughty.notify({ - title = "Rates", - text = awful.util.pread("python ~/.config/awesome/rates/ratesPopup.py"), - icon = "/home/username/.config/awesome/rates/currency.png", - icon_size = 100, - timeout = 10, - width = 300, - padding = 100, - fg = "#ffffff", - bg = "#333333aa", - }) -end - -rateWidget:connect_signal("mouse::enter", function() showRatesPopup() end) \ No newline at end of file diff --git a/RatesWidget/rates.py b/RatesWidget/rates.py deleted file mode 100644 index 9a12462..0000000 --- a/RatesWidget/rates.py +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/python - -import requests -import json - -r = requests.get("http://api.fixer.io/latest?symbols=CHF,EUR") -resp = json.loads(r.content) - -print resp["rates"]["CHF"] \ No newline at end of file diff --git a/RatesWidget/ratesPopup.py b/RatesWidget/ratesPopup.py deleted file mode 100644 index 4ac6cce..0000000 --- a/RatesWidget/ratesPopup.py +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/python - -import requests -import json - -r = requests.get("http://api.fixer.io/latest?symbols=USD,EUR,JPY,GBP,CHF,CAD,RUB") -resp = json.loads(r.content) -rates = resp["rates"] - -for currency, rate in rates.items(): - print currency, rate diff --git a/RatesWidget/readme.md b/RatesWidget/readme.md deleted file mode 100644 index d13bae1..0000000 --- a/RatesWidget/readme.md +++ /dev/null @@ -1,8 +0,0 @@ -# Rates Widget - -Widget for Awesome WM which displays the currency rate between Swiss Frank and Euro. For the rate API it uses [fixer.io](http://fixer.io/) - JSON API for foreign exchange rates and currency conversion. And a python script which calls this API. - -You can read more about it in these posts: - - - http://pavelmakhov.com/2016/01/how-to-create-widget/ - - http://pavelmakhov.com/2016/01/how-to-create-widget-part-2/ diff --git a/Spotify/screenshot.png b/Spotify/screenshot.png deleted file mode 100644 index 9893a92cfd3c3150abdd188a0c2ce8788516019c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2231 zcmV;o2uSydP)h_L_t(&-tAg>kW@z*@9x*{ z^}FWWYj!y{yIhfQ2_=GpLPZluj8+m8!GuJ>M9hJeN~x*BBE}d}sfbn?sZd5tg%VQ) z2^!-85h!+n1%!5*4oM(DcEs*l9!|1$6uNq=|Es`bmC z>pkC^&F11&KVQB0QA+6-?w{wF=H55o$_(Xn2Whx_Sg3pJ9qT>pI81e(;Yp1YSrXP zn^*n1zp2UzQ3b`TVrwyY>udM3AI8k3IZ{XJ6Ib}f-?|b1Vs~0~yd(na+ zH;$&1mQ+=qdG}CR^$q>IC-+>Oh7ivD<~`B!1PiDjOLcE-8qheS)HN;4^ZD}ajZI%( zvM5wkNOldi~V<(YiIU4D1Ia|B#jrYwB&S?%BYIol_V|s?^iqRvD zWS^}Y`C>cP{{GfS9%?ys*wXa;(MV~DYuOo^0RVb3nQUv14JprIIydTzh$c#H-N;tZ zbXRv@TYG#+MLyGmVJ(;GOabX_ZKJ-QX$)q*Z2iq^{mb>?Z9DpRi7aKrN-KvC9s8-* zmpuaj7&~jmgj;40m~=HBQ=$>QuP1FH{)wOpn>$GK3l0LV736~vIL#-m?(@^Juw zAd2~O^X7-X<=GB^VAuMM-OXo*kH0BLUQ$)pv@`KLhKVpHvcxFObO8XAQpdD-A`af^ zfN)H+`Otf#r%!!v>yFAv3-29zH@{-*qu^Itl>9FEoO{@lE~Q(fI{CmJ2ox@?whyY_eMzxcrX z1Ap0^TaYhZ(1VZqeFJ%*G`KdmES`|6$rFj9WE+E@R+x~>b+Zd46ps@{zA(!K{sR|Q zj=bkMJQ1>|1V*WA+u5}X06-i^WXVjYui9xA=Z_s1W%;vrezpIBYrwReu0Pm$re(_Q zx8}&CyLv=fE*>`YLVb?K;uQ(4yXQaWHanW?>>`Sy#G={rov0`sji>X~2g4f9-!0}o zz9h4^XBs)X+T5i}0?*I1H?4Rv`+3uWcW?gogYk-`r|SQ8WP45jZsXp6W@I`~ooU#) z`|Hb}axII)_~7QPIaiJxT5rE!n19)D1LCuR_gme-~j-$7cRhpAjsm8 z?X{_n&g|jfN}cxKQyX^Hjh!{KhdAfe*{eh8ntM zS}vs^q()4`rW8WJS(@p&RK#-NQqN|PV&-E>2$d%)`+D_gxI~d62#F8~91;T``5u#{ zuq=fU6d>Sj(;=9+rVS~C0T6hC0J3z;cl=l+rl<6f5-E8NB=U--+sp^5s1`+vFysjqMJyzHdKIGhj?V%p3K9>ADupd8;GiG~p?IvUqP!~A zXGvn@drQAx60Zn66T+LnxSrmna*CIpR8$Qb2tG85ejI zAq4yY0tx~!v|>nacaMO1J*|lX@obm+f# zF`Z6PN|VWCB9XZJuDgyNYak-AEDK|tPNig71^`%=MF`<}9%HO&8bVws6mne`Lg+XS zgizPhs;W{(F~+uSvx_gf9ET-YwoS|PyrQCFj^je1a5x-p@92OK5<(2apo~e9WZSmm zI3q?>7ZnwCb#*0sdl_RTCB?lxJ)=gB95ZGNLa3{|%W<4&G+JI>-rCyA7z+Zb>l%cR z<8Y!ZasJ$S8Uz4B$Ffb+B!n==AOx=K%95mMn&){4p}xMPEXkH-DT?9;)OB5f7b+?$ zh$s<4WLY7E7>1cnr^BI0O-*e}OS9*BnxlJ%d#C?lBDjA4lEGg z_o9)QuBBB~H4FnGSXNS^>1k1vIy*ZRMbR`Z8jYq>eH@1oLJ&fZ<1ogQ(t!F9Ai#j< z`JV4`9A{bv#+Wh27z2P|j73pI2)VACxpOkcc%Jt>@87Ys;rCmaof!ZC002ovPDHLk FV1fr^FtPvu diff --git a/Spotify/spotify.lua b/Spotify/spotify.lua deleted file mode 100644 index 828d3e6..0000000 --- a/Spotify/spotify.lua +++ /dev/null @@ -1,15 +0,0 @@ -local wibox = require("wibox") -local awful = require("awful") - -spotify_widget = wibox.widget.textbox() - -function updateSpotifyWidget(widget) - local current = awful.util.pread('sp current-oneline') - widget:set_text(current) -end - -spotify_timer = timer ({timeout = 10}) -spotify_timer:connect_signal ("timeout", function() updateSpotifyWidget(spotify_widget) end) -spotify_timer:start() - -spotify_timer:emit_signal("timeout") \ No newline at end of file diff --git a/VolumeWidget/README.md b/VolumeWidget/README.md deleted file mode 100644 index 312fa4d..0000000 --- a/VolumeWidget/README.md +++ /dev/null @@ -1,21 +0,0 @@ -## Volume widget -Simple and easy-to-install widget for Awesome Window Manager. - -This widget represents the sound level: ![Volume Wiget](./volWid.png) - -## Installation - -- clone/copy volume.lua file and volume-icons folder to your `~/home/username/.config/awesome/` folder; - -- change path to the icons in `volume.lua`: - -``` -widget:set_image("/home//.config/awesome/volume-icons/" .. volumeLevel .. ".png") -``` - -- include `volume.lua` and add volume widget to your wibox in rc.lua: -``` -require("volume") -... -right_layout:add(volumeWidget) -``` diff --git a/VolumeWidget/volWid.png b/VolumeWidget/volWid.png deleted file mode 100644 index fdfdd203769973b620954d3f12e2545cd6389b3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 301 zcmV+|0n+}7P)VhCgdz z@(>0cxq++aFxgTe~DWM4fzbHI) diff --git a/VolumeWidget/volume-icons/2.png b/VolumeWidget/volume-icons/2.png deleted file mode 100644 index 9a488c79ae469bb55e38258f824f6cdcac3b91bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkd=<(FAo4*-QEOI#yLobz*YQ}ap~oQqNuOHxx5 z$}>wc6x=<11Hv2m#DR*UJY5_^DsH{KvXPTPfydQx|BnBs3YobB9e2D=p6Hsiyx z9?X5i7Z$23@0Yaqd8xKQPj{RCxmHDqCeF454mF7;#Tf~3#qqNoc5ui^A3UNC67qEQ Kb6Mw<&;$T5DL&!= diff --git a/VolumeWidget/volume-icons/3.png b/VolumeWidget/volume-icons/3.png deleted file mode 100644 index a1bfb30af8e01010129ffd0a1afd5801b17c30e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkd=L9ZKc3Q$P0#5JPCIX^cyHLrxhxhOTUBsE2$ zJhLQ2!QIn0AiR-J9H=P4)5S5Q;?~DiFY7 zcg@#;(5oMnXKEh5Yru3c!(^_7bX!7>`o+%8i5zVSO^OmtoNWmlY9I%J!GUnGWfDAU SD;=ZGfcT!SelF{r5}E*JRYBVT diff --git a/VolumeWidget/volume-icons/4.png b/VolumeWidget/volume-icons/4.png deleted file mode 100644 index 8f111109e26ed5ba841716744c08a816b257ed69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkd=T;K$T)j%Q164!_l=ltB<)VvY~=c3falGGH1 z^30M91$R&1fbd2>aiF4fPZ!6Kid%25+~j0X;9+%C{&v6U%>jANiZdY!Ybw_=0+qmk z!&Hl}i8E)OZg)S@e{h$*wnS@NXK^COv2QA~EX3Oq`281wxNQkdiV{tnZ3!G|Aa{Ym afl#%BHUfG-ZeH;L@jYGrT-G@yGywpte?~0; diff --git a/VolumeWidget/volume-icons/5.png b/VolumeWidget/volume-icons/5.png deleted file mode 100644 index 613cb4a8da1755f6b6d2894294a260a8f1375a5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkd=TIHl2ra&Rd64!_l=ltB<)VvY~=c3falGGH1 z^30M91$R&1fbd2>aiF3cPZ!6Kid%259OPtB;9)uF@@D_j8;$y+JjSvoW_1G}wd$?2arBr^|}%IWsl6U>$JU({Kg$kCS2q$ttE*_Obe e267x290(Viq#|OLqp)rZi0|p@=d#Wzp$PyGvq?h$ diff --git a/VolumeWidget/volume-icons/6.png b/VolumeWidget/volume-icons/6.png deleted file mode 100644 index 1defc8a16ac11a481900ee5fca22517eeab3c4fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 270 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkeo*~c@r-@ynFG`LC%)r3XIaJrQ~?1E z){9=Zr>Duut35ioedfQLQ7qbNGcCm15^U@{W7W>Ja=M-NG%3{cF|eEGBK-W2z?;V) rF3&*$9|IO=gM$J*2U(b5W@)4{OI(n!t2&wQ0}}Fd^>bP0l+XkK|3ph) diff --git a/VolumeWidget/volume-icons/7.png b/VolumeWidget/volume-icons/7.png deleted file mode 100644 index 8207899ba5b2712a076098aa569e6d1044cb5793..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 273 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkeouCi3VGEhje#5JPCIX^cyHLrxhxhOTUBsE2$ zJhLQ2!QIn0AiR-J9H^+$)5S5Q;?~rl|>*)90zM-($q1sL?T z2){XbCPvQa(J9^CnpuVshR%=fshw;0RGOqwXy+p|(WUcqBAc_2>bZ8wp8J!5Vm!^Y rb3lR;Jk63k&4~s;#FJ(KGp`{?E!0rP?XRkGJV?mX)z4*}Q$iB}Eu~Bj diff --git a/VolumeWidget/volume-icons/8.png b/VolumeWidget/volume-icons/8.png deleted file mode 100644 index 423f21365dd53555b21cd3fe423c7c502a17d396..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 282 zcmeAS@N?(olHy`uVBq!ia0vp^IY8{r!3HEB@h-9eQfx`y?k+$Y2!1;6t_M<_1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~JFkeo{OhxJi-AItC9V-A&iT2ysd*&~&PAz-C8;S2 z<(VZJ3hti10pX2&;y^`Bo-U3d6}R4AImpYP$l>Z}`0c(?bkoHbjOEK%>MGVU0+j&4 zfxdz!Ya`?3$NMAp)tBFj;t4xb&}7_s`{Zo?$u25^k7{P9D0K=wKdd6?ImJR=t~3iEBiObAE1aYF-J0b5UwyNotBh zd1gt5g1e`0KzJjcI8afWr;B4q#jUs3Hu5qk@~}Aeyx5;AJaOL_L5Vc4gr~x58G&jT z7(O^xG!>_$)g9~VcsDakaLtT|oZrseo@F7PCS=$-{ojKaiKdw@!p{#0oKXP^wk4=t zJhIb(#kf=LT&v;?Pm@ADo`d)1fEDl@WN|iN5#~84;9~$b8b~w*sohsl3G>~srw1hD M>FVdQ&MBb@0DG5KaR2}S diff --git a/VolumeWidget/volume.lua b/VolumeWidget/volume.lua deleted file mode 100644 index 34c12f5..0000000 --- a/VolumeWidget/volume.lua +++ /dev/null @@ -1,34 +0,0 @@ -local wibox = require("wibox") -local awful = require("awful") - -volume_widget = wibox.widget.imagebox() - -function update_volume(widget) - local fd = io.popen("amixer -D pulse sget Master") - local status = fd:read("*all") - fd:close() - - local volume = string.match(status, "(%d?%d?%d)%%") - volume = tonumber(string.format("% 3d", volume)) - - status = string.match(status, "%[(o[^%]]*)%]") - - if (volume >= 0 and volume < 10) then volumeLevel=1 - elseif (volume >= 10 and volume < 20) then volumeLevel=2 - elseif (volume >= 20 and volume < 30) then volumeLevel=3 - elseif (volume >= 30 and volume < 40) then volumeLevel=4 - elseif (volume >= 40 and volume < 50) then volumeLevel=5 - elseif (volume >= 50 and volume < 60) then volumeLevel=6 - elseif (volume >= 60 and volume < 70) then volumeLevel=7 - elseif (volume >= 70 and volume < 80) then volumeLevel=8 - elseif (volume >= 80 and volume <= 100) then volumeLevel=9 - end - - widget:set_image("/home/pashik/.config/awesome/volume-icons/" .. volumeLevel .. ".png") -end - -update_volume(volume_widget) - -mytimer = timer({ timeout = 0.2 }) -mytimer:connect_signal("timeout", function () update_volume(volume_widget) end) -mytimer:start() \ No newline at end of file diff --git a/battery-widget-v4/battery.lua b/battery-widget/battery.lua similarity index 86% rename from battery-widget-v4/battery.lua rename to battery-widget/battery.lua index b391b2c..14fef67 100644 --- a/battery-widget-v4/battery.lua +++ b/battery-widget/battery.lua @@ -3,16 +3,19 @@ local awful = require("awful") local naughty = require("naughty") local watch = require("awful.widget.watch") +batteryIcon = wibox.widget { widget = wibox.widget.imagebox } + +-- acpi sample outputs -- Battery 0: Discharging, 75%, 01:51:38 remaining -- Battery 0: Charging, 53%, 00:57:43 until charged -batteryIcon = wibox.widget { widget = wibox.widget.imagebox } +local path_to_icons = "/usr/share/icons/Arc-Icons/panel/22/" watch( "acpi", 10, function(widget, stdout, stderr, exitreason, exitcode) local batteryType - local bar, status, charge, time = string.match(stdout, '(.+): (%a+), (%d%d)%%, (.+)') + local _, status, charge, time = string.match(stdout, '(.+): (%a+), (%d%d)%%, (.+)') charge = tonumber(charge) if (charge >= 0 and charge < 20) then batteryType="battery-empty" @@ -25,7 +28,7 @@ watch( if status == 'Charging' then batteryType = batteryType .. '-charging' end - batteryIcon.image = "/usr/share/icons/Arc-Icons/panel/22/" .. batteryType .. ".svg" + batteryIcon.image = path_to_icons .. batteryType .. ".svg" end ) @@ -55,4 +58,4 @@ function show_battery_warning() end -- popup with battery info -batteryIcon:connect_signal("mouse::enter", function() show_battery_status() end) +batteryIcon:connect_signal("mouse::enter", function() show_battery_status() end) \ No newline at end of file diff --git a/brightness-widget/brightness.lua b/brightness-widget/brightness.lua new file mode 100644 index 0000000..78e4916 --- /dev/null +++ b/brightness-widget/brightness.lua @@ -0,0 +1,17 @@ +local wibox = require("wibox") +local awful = require("awful") +local watch = require("awful.widget.watch") + +brightness_widget = wibox.widget.textbox() +brightness_widget:set_font('Play 9') + +brightness_icon = wibox.widget.imagebox() +brightness_icon:set_image("/usr/share/icons/Arc-Icons/actions/22/object-inverse.png") + +watch( + "xbacklight -get", 1, + function(widget, stdout, stderr, exitreason, exitcode) + local brightness_level = tonumber(string.format("%.0f", stdout)) + brightness_widget:set_text(brightness_level) + end +) \ No newline at end of file diff --git a/email-widget/count_unread_emails.py b/email-widget/count_unread_emails.py new file mode 100644 index 0000000..f4d2b86 --- /dev/null +++ b/email-widget/count_unread_emails.py @@ -0,0 +1,16 @@ +#!/usr/bin/python + +import imaplib +import email + +M=imaplib.IMAP4_SSL("mail.teenagemutantninjaturtles.com", 993) +M.login("mickey@tmnt.com","cowabunga") + +status, counts = M.status("INBOX","(MESSAGES UNSEEN)") + +if status == "OK": + unread = counts[0].split()[4][:-1] +else: + unread = "N/A" + +print(unread) \ No newline at end of file diff --git a/email-widget/email.lua b/email-widget/email.lua new file mode 100644 index 0000000..22a7b6d --- /dev/null +++ b/email-widget/email.lua @@ -0,0 +1,42 @@ +local wibox = require("wibox") +local awful = require("awful") +local naughty = require("naughty") +local watch = require("awful.widget.watch") + +local path_to_icons = "/usr/share/icons/Arc-Icons/actions/22/" + +email_widget = wibox.widget.textbox() +email_widget:set_font('Play 9') + +email_icon = wibox.widget.imagebox() +email_icon:set_image(path_to_icons .. "/mail-mark-new.png") + +watch( + "python /home//.config/awesome/email/count_unread_emails.py", 20, + function(widget, stdout, stderr, exitreason, exitcode) + local unread_emails_num = tonumber(stdout) + if (unread_emails_num > 0) then + email_icon:set_image(path_to_icons .. "/mail-mark-unread.png") + email_widget:set_text(stdout) + elseif (unread_emails_num == 0) then + email_icon:set_image(path_to_icons .. "/mail-message-new.png") + email_widget:set_text("") + end + end +) + + +function show_emails() + awful.spawn.easy_async([[bash -c 'python /home//.config/awesome/email/read_unread_emails.py']], + function(stdout, stderr, reason, exit_code) + naughty.notify{ + text = stdout, + title = "Unread Emails", + timeout = 5, hover_timeout = 0.5, + width = 400, + } + end + ) +end + +email_icon:connect_signal("mouse::enter", function() show_emails() end) \ No newline at end of file diff --git a/email-widget/read_unread_emails.py b/email-widget/read_unread_emails.py new file mode 100644 index 0000000..343fe66 --- /dev/null +++ b/email-widget/read_unread_emails.py @@ -0,0 +1,42 @@ +#!/usr/bin/python + +import imaplib +import email +import datetime + +def process_mailbox(M): + rv, data = M.search(None, "(UNSEEN)") + if rv != 'OK': + print "No messages found!" + return + + for num in data[0].split(): + rv, data = M.fetch(num, '(BODY.PEEK[])') + if rv != 'OK': + print "ERROR getting message", num + return + + msg = email.message_from_string(data[0][1]) + print 'From:', msg['From'] + print 'Subject: %s' % (msg['Subject']) + date_tuple = email.utils.parsedate_tz(msg['Date']) + if date_tuple: + local_date = datetime.datetime.fromtimestamp(email.utils.mktime_tz(date_tuple)) + print "Local Date:", local_date.strftime("%a, %d %b %Y %H:%M:%S") + # with code below you can process text of email + # if msg.is_multipart(): + # for payload in msg.get_payload(): + # if payload.get_content_maintype() == 'text': + # print payload.get_payload() + # else: + # print msg.get_payload() + + +M=imaplib.IMAP4_SSL("mail.teenagemutantninjaturtles.com", 993) +M.login("mickey@tmnt.com","cowabunga") + +rv, data = M.select("INBOX") +if rv == 'OK': + process_mailbox(M) +M.close() +M.logout() \ No newline at end of file diff --git a/rhythmbox-widget/rhythmbox.lua b/rhythmbox-widget/rhythmbox.lua new file mode 100644 index 0000000..4a54d4b --- /dev/null +++ b/rhythmbox-widget/rhythmbox.lua @@ -0,0 +1,16 @@ +local wibox = require("wibox") +local awful = require("awful") +local watch = require("awful.widget.watch") + +rhythmbox_widget = wibox.widget.textbox() +rhythmbox_widget:set_font('Play 9') + +rhythmbox_icon = wibox.widget.imagebox() +rhythmbox_icon:set_image("/usr/share/icons/Arc-Icons/devices/22/audio-speakers.png") + +watch( + "rhythmbox-client --no-start --print-playing", 1, + function(widget, stdout, stderr, exitreason, exitcode) + rhythmbox_widget:set_text(stdout) + end +) \ No newline at end of file diff --git a/spotify-widget-v4/spotify.lua b/spotify-widget/spotify.lua similarity index 82% rename from spotify-widget-v4/spotify.lua rename to spotify-widget/spotify.lua index f61c249..c9b3789 100644 --- a/spotify-widget-v4/spotify.lua +++ b/spotify-widget/spotify.lua @@ -7,11 +7,11 @@ spotify_widget:set_font('Play 9') -- optional icon, could be replaced by spotfiy logo (https://developer.spotify.com/design/) spotify_icon = wibox.widget.imagebox() -spotify_icon:set_image("/usr/share/icons/Arc-Icons/places/symbolic/folder-music-symbolic.svg") +spotify_icon:set_image("/usr/share/icons/Arc-Icons/devices/22/audio-headphones.png") watch( "sp current-oneline", 1, function(widget, stdout, stderr, exitreason, exitcode) spotify_widget:set_text(stdout) end -) +) \ No newline at end of file diff --git a/volume-widget-v4/volume.lua b/volume-widget/volume.lua similarity index 100% rename from volume-widget-v4/volume.lua rename to volume-widget/volume.lua