Re: Obvious and ALSA
[+CC: dunz0r; tried to help me out on IRC with the same] On Fri, Oct 21, 2011 at 6:46 PM, Julien Danjou jul...@danjou.info wrote: I just hit a bad bug. awesome would not start! Oh my! Truck load of thanks JD :). I had been a victim of the same since the last 2-3 days. Tried to debug it, but was totally off track. What made debugging even more difficult for me was that awesome wasn't logging anything at all. So I wasn't sure what to ask on the mailing list either. Anyway, I understand awesome's code base and X a little better now. I discovered that this was caused by obvious. FYI, vicious is affected by this too. Thanks. -- Anurag Priyam -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: Obvious and ALSA
On Fri, Oct 21, 2011 at 03:16:40PM +0200, Julien Danjou wrote: Removing pulseaudio resolved the problem for now, but I think we should do something in obvious to avoid that, like unsetting the DISPLAY environment variable. Why not simply defer the first update of the widget to give awesome a chance to finish starting up? D. -- Daniel Silverstone http://www.digital-scurf.org/ PGP mail accepted and encouraged.Key Id: 3CCE BABE 206C 3B69 -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: Obvious and ALSA
On Fri, Oct 21 2011, Daniel Silverstone wrote: On Fri, Oct 21, 2011 at 03:16:40PM +0200, Julien Danjou wrote: Removing pulseaudio resolved the problem for now, but I think we should do something in obvious to avoid that, like unsetting the DISPLAY environment variable. Why not simply defer the first update of the widget to give awesome a chance to finish starting up? Why not, I'm just not sure it's easier. :) -- Julien Danjou pgprIJz97akBR.pgp Description: PGP signature
Re: Obvious and ALSA
On 21.10.2011 15:16, Julien Danjou wrote: I just hit a bad bug. awesome would not start! I discovered that this was caused by obvious. I use the volume_alsa widget, which runs amixer. But I had pulseaudio installed. And doing a: xtrace amixer -c 0 -- get Master showed that the pulseaudio plugin of alsa was run and tried to connect to the X server to fetch some atoms. The problem is that while startup, awesome is grabbing the X server. Therefore, the awesome startup was totally blocked. Removing pulseaudio resolved the problem for now, but I think we should do something in obvious to avoid that, like unsetting the DISPLAY environment variable. WDYT? That problem is relatively common. I only ever saw it happening due to pulseaudio. In other news, you have a great timing. Let's look at the recent git history for the master branch: commit bf76b3842b92922b8d3fa23a105d9e9b1aad521c Author: Uli Schlachter psyc...@znc.in Date: Wed Oct 19 15:11:11 2011 +0200 Ungrab the server before parsing the config This moves the loading of the rc.lua and managing of pre-existing clients to after we ungrab the server during startup. To make sure we have no races with clients which start up parallel to awesome, we do the QueryTree for all the clients that we have to manage before the ungrab, but start managing the clients only after the ungrab. This means that we have already selected our event mask on the root window in scan() and thus received an UnmapNotify event when we reparent windows into a frame window. This has the effect that we immediately unmanage the client again, whoops. To fix this, we grab the server again and remove our event mask on the root window again while we reparent. This should hopefully fix all cases where we deadlock during startup because pulseaudio wants to talk to the X server, but is being ignored because we have the server grabbed while at the same time we are waiting for pulseaudio. Signed-off-by: Uli Schlachter psyc...@znc.in To make this perfect, this just needs someone to port it to the 3.4 branch. That won't be me since I don't have the necessary stuff for that since quite a long time. That shouldn't actually be too hard. I don't think the patch would apply cleanly, but if someone fixes that up bad hand *and actually tests the result*, stuff should be working smoothly. Thinking about it, I'm not sure if all that patch is even necessary in 3.4. 3.4 isn't a reparenting WM and thus it wouldn't get an UnmapNotify due to the reparent which should make the hack in client.c unnecessary... @jd: Are you on the 3.4 branch or is your git clone just too old? Did I break your config badly enough to make you switch to 3.4? :-) Uli -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: Obvious and ALSA
On Fri, Oct 21 2011, Uli Schlachter wrote: @jd: Are you on the 3.4 branch or is your git clone just too old? Did I break your config badly enough to make you switch to 3.4? :-) Yeah, I'm on 3.4 for a long time now. :) -- Julien Danjou pgpuD11oBLIWw.pgp Description: PGP signature
Re: Obvious and ALSA
On Fri, Oct 21, 2011 at 04:11:01PM +0200, Uli Schlachter wrote: [...] That problem is relatively common. I only ever saw it happening due to pulseaudio. In other news, you have a great timing. Let's look at the recent git history for the master branch: [...] [...] To make this perfect, this just needs someone to port it to the 3.4 branch. That won't be me since I don't have the necessary stuff for that since quite a long time. [...] Hmm, so that would solve the problem for the git head. Nice :) I guess I'll have to maintain a branch with v3.4.10 specific patches (such as unsetting DISPLAY) soon... -- Gregor Best pgpEZ8O3AX4YK.pgp Description: PGP signature
Re: [Obvious Patch] Make keymap_switch less bad
On Mon, Jul 05, 2010 at 04:58:44PM -0400, Andrei Thorp wrote: [...] Thanks guys, but I can't imagine how this problem passed through 2 people unless no one tested (or something is weird on my end). [...] Well that might be the cause exactly. AFAIK, Uli's tests went as far as yup, doesn't break awesome and mine didn't get any further either... Sorry for the inconvenience and thanks a lot for fixing it :) -- Gregor Best pgpgQNNzANFhq.pgp Description: PGP signature
Re: [Obvious Patch] Make keymap_switch less bad
On Fri, Jul 2, 2010 at 11:40 PM, Andrei Thorp gar...@gmail.com wrote: On Mon, Jun 28, 2010 at 8:30 AM, Uli Schlachter psyc...@znc.in wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Am 28.06.2010 14:22, Uli Schlachter wrote: Hi, the attached patches stop obvious' keymap_switch from breaking my config (It kind-of leaked FDs until the next garbage collect which made awesome run into the FD limit). Also it makes sure the timer in keymap_switch is only started when it's needed. In other news, I don't use this code, so no testing done (Except that I don't see those leaks anymore...). ... - -- - - Buck, when, exactly, did you lose your mind? - - Three months ago. I woke up one morning married to a pineapple. An ugly pineapple... But I loved her! -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) iQEcBAEBCAAGBQJMKJXZAAoJECLkKOvLj8sGql0H/1RlPjMZWGcuD02oqnvWywfU wscRbX/IUS1vsS7sDBkzUYHmeZ+guPGInu/n1eN3AFkB1juHj3Wxy81q84TbJRJd nhZpgwEwZuKvFDRhytEbMXqAjyoEAZuM4JwNfDqpTnr/gbW0fwDrczu8TND/ZLwW nhjvxGa1eGY3wIEmwG3bJaeChxHgreHtiRy43DKY1mQvGw6T0yBCdisOn896Qhgm 3SY1rfOeqgCFNrpMTHoGdIPVCVKIFpGXrTX40UfXzjAkzlmUXEWgZsSyelHtS9LR WKQJApNvsT72LclLlTzIC2KWsMhNzFMoiwpugjjgv+j6Z9LHQ2++9VWgCDsdr1k= =Su25 -END PGP SIGNATURE- Thanks, I'm sure I'll be pushing this in soon... Hello, I went to push this patch set in and discovered that Gregor already had. However, clearly someone didn't test something (or something is wrong here). A function was used before it was declared. I moved the function and now everything seems to be great. Thanks guys, but I can't imagine how this problem passed through 2 people unless no one tested (or something is weird on my end). -AT -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious Patch] Make keymap_switch less bad
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Am 28.06.2010 14:22, Uli Schlachter wrote: Hi, the attached patches stop obvious' keymap_switch from breaking my config (It kind-of leaked FDs until the next garbage collect which made awesome run into the FD limit). Also it makes sure the timer in keymap_switch is only started when it's needed. In other news, I don't use this code, so no testing done (Except that I don't see those leaks anymore...). ... - -- - - Buck, when, exactly, did you lose your mind? - - Three months ago. I woke up one morning married to a pineapple. An ugly pineapple... But I loved her! -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) iQEcBAEBCAAGBQJMKJXZAAoJECLkKOvLj8sGql0H/1RlPjMZWGcuD02oqnvWywfU wscRbX/IUS1vsS7sDBkzUYHmeZ+guPGInu/n1eN3AFkB1juHj3Wxy81q84TbJRJd nhZpgwEwZuKvFDRhytEbMXqAjyoEAZuM4JwNfDqpTnr/gbW0fwDrczu8TND/ZLwW nhjvxGa1eGY3wIEmwG3bJaeChxHgreHtiRy43DKY1mQvGw6T0yBCdisOn896Qhgm 3SY1rfOeqgCFNrpMTHoGdIPVCVKIFpGXrTX40UfXzjAkzlmUXEWgZsSyelHtS9LR WKQJApNvsT72LclLlTzIC2KWsMhNzFMoiwpugjjgv+j6Z9LHQ2++9VWgCDsdr1k= =Su25 -END PGP SIGNATURE- From e138fc02ce0ca7f2e229aa8f02241cc2a2e7b93d Mon Sep 17 00:00:00 2001 From: Uli Schlachter psyc...@znc.in Date: Mon, 28 Jun 2010 13:18:07 +0200 Subject: [PATCH 1/3] keymap_switch: Use spawn() instead of popen() popen() returns a file handle which can be used to interact with the started process. This file handle is only closed when it's explicitly closed (not happening here) or when it is garbage collected. Turns out that the lua garbage collector kicks in seldom enough for my awesome instance to run into the fd limit (1024 open FDs is the maximum by default). Fix this by using awful.util.spawn() instead of io.popen(). This will make the output of setxkbmap visible as awesome's output, but besides that it should work as good as the old code. Signed-off-by: Uli Schlachter psyc...@znc.in --- keymap_switch/init.lua |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/keymap_switch/init.lua b/keymap_switch/init.lua index f344f02..5df10c1 100644 --- a/keymap_switch/init.lua +++ b/keymap_switch/init.lua @@ -87,7 +87,7 @@ local function delayed_update_once(start) end local function switch_keymap(layout_string) -io.popen(setxkbmap \ .. layout_string .. \) +awful.util.spawn(setxkbmap \ .. layout_string .. \) delayed_update_once(true) end -- 1.7.1 From 1a977b5fd47de7085aac0ae13ad34e5a63524124 Mon Sep 17 00:00:00 2001 From: Uli Schlachter psyc...@znc.in Date: Mon, 28 Jun 2010 13:21:29 +0200 Subject: [PATCH 2/3] keymap_switch: Close fd when it's no longer needed By default, a file handle is only closed when its garbage collected. This happens seldom enough for my awesome instance to run out of file handles (1024 fds is the default limit). Fix this by explicitly closing the handle when we don't need it any more. Signed-off-by: Uli Schlachter psyc...@znc.in --- keymap_switch/init.lua |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/keymap_switch/init.lua b/keymap_switch/init.lua index 5df10c1..7d0b3b2 100644 --- a/keymap_switch/init.lua +++ b/keymap_switch/init.lua @@ -64,6 +64,7 @@ local function get_current_keymap() if line:match(xkb_symbols) then local keymap = line:match(\+.*\+) +fd:close() if not keymap then return unknown layout else @@ -72,6 +73,7 @@ local function get_current_keymap() end end +fd:close() return unknown layout end -- 1.7.1 From e77acde6fa2f0f9528c8badfab32965215df98a9 Mon Sep 17 00:00:00 2001 From: Uli Schlachter psyc...@znc.in Date: Mon, 28 Jun 2010 14:19:31 +0200 Subject: [PATCH 3/3] keymap_switch: Only do the setup when needed Signed-off-by: Uli Schlachter psyc...@znc.in --- keymap_switch/init.lua | 17 + 1 files changed, 13 insertions(+), 4 deletions(-) diff --git a/keymap_switch/init.lua b/keymap_switch/init.lua index 7d0b3b2..0834a57 100644 --- a/keymap_switch/init.lua +++ b/keymap_switch/init.lua @@ -38,7 +38,20 @@ end module(obvious.keymap_switch) +setup_done = false +local function init_once() +if setup_done then +return +end +lib.hooks.timer.register(5, 60, update, Update for the keymap widget) +lib.hooks.timer.start(update) +delayed_update_once(true) +setup_done = true +end + local function init(widget) +init_once() + -- Use the default widget if not specified if widget then settings.widget = widget @@ -111,9 +124,5 @@ function update() settings.widget.text = get_current_keymap() end -lib.hooks.timer.register(5, 60, update, Update for the keymap widget) -lib.hooks.timer.start(update) -delayed_update_once(true) - setmetatable(_M, { __call = function() return init(settings.widget) end }) -- TODO let the user specify widget here -- vim:
Re: [Obvious] Yo, Farhaven
On Thu, May 27, 2010 at 04:27:05PM -0400, Andrei Thorp wrote: [...] * wlan widget needs to be fixed to not show 100% when disconnected? [...] Heh, makes sense :) I'll try to find some time tonight and fix this. [...] * I changed the font for the clock's calendar to be monospace since I use a non-fixed font by default. Yeah, I know, hate me. Anyway, I'm a bit iffy about whether this is a good solution or not. Tell me what you think (it's pushed). [...] Sounds a bit hackish, but it's better than having the calendar all out of alignment. I think I'll add an option for setting the font so the user can do what they want. -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best pgpPbPtP8GDoD.pgp Description: PGP signature
Re: [Obvious] Yo, Farhaven
On Fri, May 28, 2010 at 3:19 AM, Gregor Best g...@ring0.de wrote: On Thu, May 27, 2010 at 04:27:05PM -0400, Andrei Thorp wrote: [...] * wlan widget needs to be fixed to not show 100% when disconnected? [...] Heh, makes sense :) I'll try to find some time tonight and fix this. [...] * I changed the font for the clock's calendar to be monospace since I use a non-fixed font by default. Yeah, I know, hate me. Anyway, I'm a bit iffy about whether this is a good solution or not. Tell me what you think (it's pushed). [...] Sounds a bit hackish, but it's better than having the calendar all out of alignment. I think I'll add an option for setting the font so the user can do what they want. -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best Good stuff. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] margin support and setting defaults
On Thu, Aug 27, 2009 at 11:46:03PM +1200, Jacob Winther wrote: Not sure if this is the right approach, I just wanted to simplify my config a bit. [...] It is absolutely right. Both patches have been merged, thanks a lot :) -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best pgpkjE0iYUFTX.pgp Description: PGP signature
Re: [Obvious Patch] Fix volume_alsa
Excerpts from Uli Schlachter's message of Fri Aug 07 09:50:33 -0400 2009: Hi, volume_alsa killed my awesome session today by indexing nil. Don't do that! Uli - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 Farhaven! -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious Patch] Fix volume_alsa
Merged, thanks a lot :) -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best pgpNEhpgm3Mt1.pgp Description: PGP signature
Re: [Obvious Patch] Some fun
On Mon, Aug 03, 2009 at 06:21:42PM +0200, Uli Schlachter wrote: [...] Subject: [PATCH 1/4] Move code for getting the wlan strength to lib.wlan [...] Sweet, I'm really happy you're doing this because it's part of the reason I created the lib :) [...] Subject: [PATCH 2/4] Add a general function for creating widgets [...] Nifty, nifty. What we might want to investigate in the future is having widget users be able to choose what kind of display the widget has. For example, if we have a graphical progress bar as well as a textual progress bar as well as a simple numerical progress bar, it's imaginable that you could write a generic widget that has an option for which kind of display it should be using. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious Patch] Some fun
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Andrei Thorp wrote: On Mon, Aug 03, 2009 at 06:21:42PM +0200, Uli Schlachter wrote: [...] Subject: [PATCH 2/4] Add a general function for creating widgets [...] Nifty, nifty. What we might want to investigate in the future is having widget users be able to choose what kind of display the widget has. For example, if we have a graphical progress bar as well as a textual progress bar as well as a simple numerical progress bar, it's imaginable that you could write a generic widget that has an option for which kind of display it should be using. You should really take a look at my obvious rfc patches below. ;) In my current awesomerc.lua I got sth like this: obvious.widget.progressbar(obvious.data.wlan(wlan0)), obvious.widget.graph(obvious.data.wlan(wlan0)), I hope you get the idea. ;) Please comment on those patches! Uli P.S: While I only submitted the wlan version yet, I have upload traffic, download traffic, mem usage, cpu usage, disk I/O and used disk space coded and working. - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKextDAAoJECLkKOvLj8sGk+AH/j7x5ypNoPX6dn8E64FkE2vb Yy+0HRN2yJLerHsOnF5x8WBSdJxG+MzSvGvLHT1iIe265T/UMx/W3A406bMW+Hin n1imn04+Zikwr/MPRMOF0bNbyErQCkI6gxB6RSimfXz5GPNfY3qGnUOwWhcmZHyC KkTFsxzhYrxmX4y8Qn6IZd/z5SKbgwwNk6/wTxa9Kcn6Sh/DCQOasjp6A1kQxHDq 6tLctoIs5Gxue8j/VSNo/mZqDafgU+CRtEltrxziXNtDcFY2xHBPSUYn2ecy7R0N a8ajU8sCk+rU8wkfhDpll53cVzOgXNJdX9I5Z22igBtnGAxvlGUg50a+nj9fnWA= =JfO7 -END PGP SIGNATURE- -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious RFC Patches] Add the concept of data sources
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Uli Schlachter wrote: Hi list, if you don't use obvious stop here. This patch series adds the concept of general data sources to obvious. This splits the widget-part from the collect-data-about-the-system-part. Any data source is a table with two entries: Whoops, some debugging code left in (timer fires each second instead of every 10 seconds). New stuff attached - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKeZztAAoJECLkKOvLj8sGbdkH+gOD5IHVtWyX+Ni1cwkXNzL2 +rEgjFZqNUef58vF0BSV2+URbmUz6DRoVmDM2kRe/TRpklLOt7NMD956Fl0rcn7h 6jppJ46//+25/aEu4OwQ8de516OqWE+yNhbsCdBIhU7wC668QJJZscTh/8VjnXQZ rhbAfADYisumWcMo04Nc/KCSr9vHQiQRB4Rue8fQX/AddJXP4yq8nNX8bRbISGn+ x4G1C2TDenEwDGb86sklyRjn0UOA1jxur7ww2VJ7hnftSItKviyX8gOyYyvLoHRJ ijwBcvQs6UPC5uYPVfEwq8ZIQeoM6eIGGo34m8alVcHYmFLseDiboYikIv9p69s= =N/K+ -END PGP SIGNATURE- From b0ebfcd37a9dd64d7cd7209d8630dfad9e52bcb6 Mon Sep 17 00:00:00 2001 From: Uli Schlachter psyc...@znc.in Date: Wed, 5 Aug 2009 16:24:13 +0200 Subject: [PATCH 1/3] Add the concept of data sources obvious.data.* are supposed to be a collection of general data sources. Via obvious.widget.progressbar() one can turn one of them into a widget and add that to the statusbar. For example: obvious.widget.progressbar(obvious.data.wlan(wlan0)) Signed-off-by: Uli Schlachter psyc...@znc.in --- data/init.lua | 10 data/wlan.lua | 44 +++ init.lua|3 +- lib/init.lua|3 +- lib/{widgets.lua = widget.lua} |2 +- lib/wlan.lua| 30 -- widget/init.lua | 28 wlan/init.lua |3 +- 8 files changed, 88 insertions(+), 35 deletions(-) create mode 100644 data/init.lua create mode 100644 data/wlan.lua rename lib/{widgets.lua = widget.lua} (97%) delete mode 100644 lib/wlan.lua create mode 100644 widget/init.lua diff --git a/data/init.lua b/data/init.lua new file mode 100644 index 000..4379583 --- /dev/null +++ b/data/init.lua @@ -0,0 +1,10 @@ +--- +-- Author: Uli Schlachter-- +-- Copyright 2009 Uli Schlachter -- +--- + +require(obvious.data.wlan) + +module(obvious.data) + +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=4:softtabstop=4:encoding=utf-8:textwidth=80 diff --git a/data/wlan.lua b/data/wlan.lua new file mode 100644 index 000..d366efa --- /dev/null +++ b/data/wlan.lua @@ -0,0 +1,44 @@ + +-- Author: Gregor Best-- +-- Copyright 2009 Gregor Best -- + + +local tonumber = tonumber +local setmetatable = setmetatable +local io = { +open = io.open +} + +module(obvious.data.wlan) + +local function get_data(device) +local link +local fd = io.open(/proc/net/wireless) +if not fd then return end + +for line in fd:lines() do +if line:match(^ ..device) then +link = tonumber(line:match( (%d?%d?%d))) +break +end +end +fd:close() + +return link +end + +local function get_data_source(device) +local device = device or wlan0 +local ret = {} + +ret.device = device +ret.max = 100 +ret.get = function (obj) +return get_data(obj.device) +end + +return ret +end + +setmetatable(_M, { __call = function (_, ...) return get_data_source(...) end }) +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=4:softtabstop=4:encoding=utf-8:textwidth=80 diff --git a/init.lua b/init.lua index 2474541..e157b63 100644 --- a/init.lua +++ b/init.lua @@ -4,12 +4,13 @@ --- require(obvious.lib) +require(obvious.data) require(obvious.clock) require(obvious.battery) require(obvious.volume_alsa) require(obvious.wlan) -require(obvious.wlan.bar) require(obvious.popup_run_prompt) require(obvious.basic_mpd) +require(obvious.widget) module(obvious) diff --git a/lib/init.lua b/lib/init.lua index 31fe374..c7377c6 100644 --- a/lib/init.lua +++ b/lib/init.lua @@ -5,9 +5,8 @@ require(obvious.lib.hooks) require(obvious.lib.util) -require(obvious.lib.widgets) +require(obvious.lib.widget) require(obvious.lib.mpd) -require(obvious.lib.wlan) module(obvious.lib) -- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=4:softtabstop=4:encoding=utf-8:textwidth=80 diff --git a/lib/widgets.lua b/lib/widget.lua similarity index 97% rename from lib/widgets.lua rename to lib/widget.lua index 40f73c2..9a54404 100644 --- a/lib/widgets.lua +++ b/lib/widget.lua @@ -8,7 +8,7 @@ local awful = { widget = require(awful.widget) } -module(obvious.lib.widgets)
Re: [Obvious Patch] Some fun
On Mon, Aug 03, 2009 at 06:21:42PM +0200, Uli Schlachter wrote: [...] Subject: [PATCH 1/4] Move code for getting the wlan strength to lib.wlan [...] Merged [...] Subject: [PATCH 2/4] Add a general function for creating widgets [...] Merged [...] Subject: [PATCH 3/4] Add a wlan progressbar widget [...] Merged, though adding some info to the readme file would be nice :) [...] Subject: [PATCH 4/4] basic_mpd: Fix [...] Merged thanks a lot :) -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best pgpRc6wYE8dzt.pgp Description: PGP signature
Re: [Obvious] Next branch patches (for easy review)
(finally) merged, thanks :) -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best pgpZiG2e0uwSC.pgp Description: PGP signature
Re: [Obvious] Next branch patches (for easy review)
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Uli Schlachter wrote: Andrei Thorp wrote: I wanna get my patches reviewed dammit ;) Ok, here we go: Subject: [PATCH 1/4] Lib: hooks lib w/ awful timer wrapper functions [...] diff --git a/lib/hooks/init.lua b/lib/hooks/init.lua new file mode 100644 index 000..ec94102 --- /dev/null +++ b/lib/hooks/init.lua [...] +-- Register a timer just as you would with awful.hooks.timer.register, but +-- with one slight twist: you set your regular speed, (optionally) your slow +-- speed, and then your function. +-- @param reg_time Regular speed for the widget +-- @param slow_time Slow time for the widget +-- @param fn The function that the timer should call +-- @param descr The description of this function +function timer.register(reg_time, slow_time, fn, descr) +if not slow_time then slow_time = reg_time * 4 end +registry[fn] = { +regular=reg_time, +slow=slow_time, +speed=regular, +running=true, +description=descr or Undescribed timer +} +timer.set_speed(registry[fn].speed, fn) +end [...] (BTW, is slow_time being nil handled anywhere?) Ah, found it. I'd propose to move this into set_speed(). if want_slow_spped() then local speed = v.slow or 4 * (v.regular or 42) else local speed = v.reguler or 42 end (where 42 is a global config variable that the user can mess with) Uli - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKcYjdAAoJECLkKOvLj8sGCyIH/3KdKYXXCYZiRq2fniNbAxBG V9+Fp7phweJaVMzwexLT4OsCqnHbnpzzTBINqnjQ2ftx1/KEPniJk7eHOT8v9U8h iUE4f+vKLCxnVD8b7UXrNgKOVBM6BTAQXt26XSmTrDvWLWbEY3Gh8hGSTKTrw1rS AneKdyXe3VxnwdNyIxHxZHS2GAUeaLK+KTXzu9XlTgqD+9X5jvhSbb8bE6Oltvda KXxmcsYwHR2r4r2SoU/vtSpKA/9uv8SCOtGR0G086SYw4dcdkY9J7i0x2qiLwmOK GJ5xH1hqFVfnUydawtojh3+n7vm7PvrIH3wvPP+EUStDGJZillDYTr7v8IjjhUA= =FRDl -END PGP SIGNATURE- -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Next branch patches (for easy review)
Andrei Thorp wrote: Subject: [PATCH 2/4] Lib/Util: Added bold colour functions diff --git a/lib/util/init.lua b/lib/util/init.lua new file mode 100644 index 000..6360f87 --- /dev/null +++ b/lib/util/init.lua @@ -0,0 +1,21 @@ +-- +-- Author: Andrei Garoth Thorp-- +-- Copyright 2009 Andrei Garoth Thorp -- +-- +module(obvious.lib.util) + +-- Set Foreground colour of text +-- @param colour The colour you want to set the text to +-- @param text The text you want to colour +-- @return The coloured string +function colour(colour, text) +return 'span color=' .. colour .. '' .. text .. '/span' +end + +-- Make bold text +-- @param text The text you want to make bold +-- @return The bolded text +function bold(text) +return 'b' .. text .. '/b' +end +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=4:softtabstop=4:encoding=utf-8:textwidth=80 Looks good I guess. But | can do better[1] (This is based on some code that | nopasted and i tweaked it a little, oh and who needs luadoc anyway? ;) ). Uli [1] http://git.znc.in/?p=psychon/dotfiles.git;a=blob;f=config/awesome/markup.lua;hb=HEAD -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Next branch patches (for easy review)
Excerpts from Uli Schlachter's message of Thu Jul 30 07:31:38 -0400 2009: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Andrei Thorp wrote: I wanna get my patches reviewed dammit ;) Ok, here we go: Subject: [PATCH 1/4] Lib: hooks lib w/ awful timer wrapper functions [...] diff --git a/lib/hooks/init.lua b/lib/hooks/init.lua new file mode 100644 index 000..ec94102 --- /dev/null +++ b/lib/hooks/init.lua [...] +-- Register a timer just as you would with awful.hooks.timer.register, but +-- with one slight twist: you set your regular speed, (optionally) your slow +-- speed, and then your function. +-- @param reg_time Regular speed for the widget +-- @param slow_time Slow time for the widget +-- @param fn The function that the timer should call +-- @param descr The description of this function +function timer.register(reg_time, slow_time, fn, descr) +if not slow_time then slow_time = reg_time * 4 end +registry[fn] = { +regular=reg_time, +slow=slow_time, +speed=regular, +running=true, +description=descr or Undescribed timer +} +timer.set_speed(registry[fn].speed, fn) +end How is this (optionally) your slow speed supposed to work? I would propose something like this: function timer.register(fn, desc, reg_time, slow_time) That way timer.register(bla, bla, 42) results in slow_time being nil, waaay more optionally. (BTW, is slow_time being nil handled anywhere?) Nah, I think I'll keep descr at the end to make that more optional, then edit the comment. I don't really want to change the ordering of the arguments, because that ordering is used pretty consistently throughout the program. If you want to specify slow_time as nil, you still can with timer.register(5, nil, foo). I think that's good enough. +-- Unregister the timer altogether +-- Maybe you should just turn it to zero with timer.stop()? +-- @param fn The function you want to unregister. +function timer.unregister(fn) +registry[fn] = nil +awful.hooks.timer.unregister(fn) +end Maybe you should not tell me what I want. :P How about this: Please note that you can use timer.stop() and timer.start() to pause and unpause a timer? Not sure why you're even bothering reviewing this, but changed. +-- Generic let timer run at foo speed function Generic function to modify an existing timer's speed Switch timers between slow and regular mode Something like this... Sure, done. +-- @param speed The speed at which you want the function(s) to run: one of +-- regular or slow +-- @param fn (Optional) Function that you want to set to foo speed. If you +-- do not supply this argument, the system sets all timers to foo speed. That foo really sounds weird, sorry. Okay. +function timer.set_speed(speed, fn) +if fn then +registry[fn].speed = speed +if not registry[fn].running then +return +end +awful.hooks.timer.unregister(fn) +if speed == regular then +awful.hooks.timer.register(registry[fn].regular, fn) +elseif speed == slow then +awful.hooks.timer.register(registry[fn].slow, fn) +end +else +for key, value in pairs(registry) do +registry[key].speed = speed +if registry[key].running then +awful.hooks.timer.unregister(key) +if speed == regular then +awful.hooks.timer.register(registry[key].regular, key) +elseif speed == slow then +awful.hooks.timer.register(registry[key].slow, key) +end +end +end +end +end How about this for the else branch: for key, value in pairs(registry) do timer.set_speed(speed, key) done Clever, I like it. +-- Edit a function's speeds. Modify? Dunno, edit sounds weird (to me). Ignored. +-- @param reg_time Regular speed for the function +-- @param slow_time Slow speed for the function s/_time/_speed/? (just a proposal) Ignored. +-- @param fn Function that you want to alter the speed of Why isn't this optional her but everywhere else? Because I don't want them to be able to set the speeds of all registered timers at the same time. That doesn't make sense and could screw up a lot of your running Obvious widgets. If you really wanted this, you could get the list of all of them and iterate. +function timer.set_speeds(reg_time, slow_time, fn) +registry[fn] = { +regular=reg_time, +slow=slow_time, +speed=registry[fn].speed, +running=registry[fn].running, +} +timer.set_speed(registry[fn].speed, fn) +end Yeah, unfortunately similar. I don't really see too much I can do about this though, they're sufficiently different and it doesn't seem obvious to me how to reduce code and add a
Re: [Obvious] Next branch patches (for easy review)
Excerpts from Uli Schlachter's message of Thu Jul 30 07:49:51 -0400 2009: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Uli Schlachter wrote: Andrei Thorp wrote: I wanna get my patches reviewed dammit ;) Ok, here we go: Subject: [PATCH 1/4] Lib: hooks lib w/ awful timer wrapper functions [...] diff --git a/lib/hooks/init.lua b/lib/hooks/init.lua new file mode 100644 index 000..ec94102 --- /dev/null +++ b/lib/hooks/init.lua [...] +-- Register a timer just as you would with awful.hooks.timer.register, but +-- with one slight twist: you set your regular speed, (optionally) your slow +-- speed, and then your function. +-- @param reg_time Regular speed for the widget +-- @param slow_time Slow time for the widget +-- @param fn The function that the timer should call +-- @param descr The description of this function +function timer.register(reg_time, slow_time, fn, descr) +if not slow_time then slow_time = reg_time * 4 end +registry[fn] = { +regular=reg_time, +slow=slow_time, +speed=regular, +running=true, +description=descr or Undescribed timer +} +timer.set_speed(registry[fn].speed, fn) +end [...] (BTW, is slow_time being nil handled anywhere?) Ah, found it. I'd propose to move this into set_speed(). if want_slow_spped() then local speed = v.slow or 4 * (v.regular or 42) else local speed = v.reguler or 42 end Don't really understand why you want this / what it's for. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Next branch patches (for easy review)
On Thu, Jul 30, 2009 at 04:21:21PM +0200, Uli Schlachter wrote: diff --git a/lib/mpd/init.lua b/lib/mpd/init.lua new file mode 100644 index 000..d1f0e35 --- /dev/null +++ b/lib/mpd/init.lua @@ -0,0 +1,160 @@ +-- Small interface to MusicPD +-- based on a netcat version from Steve Jothen sjothen at gmail dot com +-- (see http://github.com/otkrove/ion3-config/tree/master/mpd.lua) +-- +-- Copyright (c) 2008-2009, Alexandre Perrin kaw...@kaworu.ch +-- All rights reserved. +-- +-- Redistribution and use in source and binary forms, with or without +-- modification, are permitted provided that the following conditions +-- are met: +-- +-- 1. Redistributions of source code must retain the above copyright +--notice, this list of conditions and the following disclaimer. +-- 2. Redistributions in binary form must reproduce the above copyright +--notice, this list of conditions and the following disclaimer in the +--documentation and/or other materials provided with the distribution. +-- 4. Neither the name of the author nor the names of its contributors +--may be used to endorse or promote products derived from this software +--without specific prior written permission. +-- +-- THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +-- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +-- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +-- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +-- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +-- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +-- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +-- SUCH DAMAGE. [snip, haven't looked closely at the stuff after this] This screams GPL INCOMPATIBLE. Ask jd if awesome modules have to be GPL-compatible, I'm not sure what the GPL says about scripting languages like lua. Uli Hi, I fail to see in what it screams GPL INCOMPATIBLE. Can you explain? Thanks. Alex. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Next branch patches (for easy review)
On Thu, Jul 30, 2009 at 04:21:21PM +0200, Uli Schlachter wrote: diff --git a/lib/mpd/init.lua b/lib/mpd/init.lua new file mode 100644 index 000..d1f0e35 --- /dev/null +++ b/lib/mpd/init.lua @@ -0,0 +1,160 @@ +-- Small interface to MusicPD +-- based on a netcat version from Steve Jothen sjothen at gmail dot com +-- (see http://github.com/otkrove/ion3-config/tree/master/mpd.lua) +-- +-- Copyright (c) 2008-2009, Alexandre Perrin kaw...@kaworu.ch +-- All rights reserved. +-- +-- Redistribution and use in source and binary forms, with or without +-- modification, are permitted provided that the following conditions +-- are met: +-- +-- 1. Redistributions of source code must retain the above copyright +--notice, this list of conditions and the following disclaimer. +-- 2. Redistributions in binary form must reproduce the above copyright +--notice, this list of conditions and the following disclaimer in the +--documentation and/or other materials provided with the distribution. +-- 4. Neither the name of the author nor the names of its contributors +--may be used to endorse or promote products derived from this software +--without specific prior written permission. +-- +-- THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +-- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +-- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +-- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +-- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +-- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +-- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +-- SUCH DAMAGE. [snip, haven't looked closely at the stuff after this] This screams GPL INCOMPATIBLE. Ask jd if awesome modules have to be GPL-compatible, I'm not sure what the GPL says about scripting languages like lua. Uli Hi, I fail to see in what it screams GPL INCOMPATIBLE. Can you explain? Thanks. Alex. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Next branch patches (for easy review)
At 1248963681 time_t, Uli Schlachter wrote: This screams GPL INCOMPATIBLE. Ask jd if awesome modules have to be GPL-compatible, I'm not sure what the GPL says about scripting languages like lua. No they have not to be GPL-compatible. They can be what the hell they want. Cheers, -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // My root password is signature.asc Description: Digital signature
Re: [Obvious] Next branch patches (for easy review)
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Andrei Thorp wrote: Excerpts from Uli Schlachter's message of Thu Jul 30 09:43:46 -0400 2009: Andrei Thorp wrote: @@ -97,25 +113,33 @@ function show_wibox(s) }) runwibox[s].visible = true -f = function () -startgeom = runwibox[s]:geometry() -runwibox[s]:geometry({ -y = startgeom.y - settings.move_amount, -}) -if runwibox[s]:geometry().y = screen[s].geometry.y + -screen[s].geometry.height - startgeom.height then -set_default(mouse.screen) -awful.hooks.timer.unregister(f) -end +if lib.hooks.timer.has(do_slide_up) then +lib.hooks.timer.start(do_slide_up) +else +lib.hooks.timer.register(settings.move_speed, + settings.move_speed*3, + do_slide_up, + popup_run_prompt slide up) end - -awful.hooks.timer.register(settings.move_speed, f) I like the old code better which unregisters the timer when it's no longer needed (or at least get rid of that lib.hooks.timer.has() call somehow). I'll probably register the timer elsewhere and just pause it right away then. Fixes to Timers pushed. Care to send the fix for review? *duck* - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKcdB2AAoJECLkKOvLj8sGkrIIAMNpb3VOjxQOjwjoKrGz3pzC kp0tL0t8K/hwL43UjtAKW4oekkkXwjdnkkfkfwRpAbBA/l8CcP2ZEhrAr7GSS7IJ Ae97UXAamReK6qudv7QGCUiyafdHP9/GD0F81QNGp4e/QUTQlsYgxaPpiSJGA1xr M8jJL9rIIGorQNiqxAQT7zjDyZQ6oqgYM3E+QSWRTpGpMYZOCU0yAJlKfrOdTg24 2/jSqezUAWvd8VPK+t8yJfvJwYjeJg3UDys5o0duAlG3NsBKhvpxlnLrsLU51AyT 8WGmfi/lWlKoeuHlLX3+k0yfALr5RhienCYnLO5fhr+DHfdOrogFmeuhoVc20Xg= =5Q4G -END PGP SIGNATURE- -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Next branch patches (for easy review)
Excerpts from Uli Schlachter's message of Thu Jul 30 12:55:20 -0400 2009: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Andrei Thorp wrote: Excerpts from Uli Schlachter's message of Thu Jul 30 09:43:46 -0400 2009: Andrei Thorp wrote: @@ -97,25 +113,33 @@ function show_wibox(s) }) runwibox[s].visible = true -f = function () -startgeom = runwibox[s]:geometry() -runwibox[s]:geometry({ -y = startgeom.y - settings.move_amount, -}) -if runwibox[s]:geometry().y = screen[s].geometry.y + -screen[s].geometry.height - startgeom.height then -set_default(mouse.screen) -awful.hooks.timer.unregister(f) -end +if lib.hooks.timer.has(do_slide_up) then +lib.hooks.timer.start(do_slide_up) +else +lib.hooks.timer.register(settings.move_speed, + settings.move_speed*3, + do_slide_up, + popup_run_prompt slide up) end - -awful.hooks.timer.register(settings.move_speed, f) I like the old code better which unregisters the timer when it's no longer needed (or at least get rid of that lib.hooks.timer.has() call somehow). I'll probably register the timer elsewhere and just pause it right away then. Fixes to Timers pushed. Care to send the fix for review? *duck* Nah. Almost everything you asked me to change here was cosmetic subjective stuff. Some of it I changed, some of it I didn't. I don't really see what's left to review at this point. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] [PATCH] buttons as simple table
On Tue, Jul 28, 2009 at 08:50:20PM -0400, Evan McClain wrote: Attached is a patch to use buttons as a simple table as per the earlier commit to awesome master. [...] Merged it, thanks a lot :) -- GCS/IT/M d- s+:- a--- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- O M-- V PS+ PE- Y+ PGP+++ t+ 5 X+ R tv+ b++ DI+++ D+++ G+ e- h! r y+ Gregor Best pgpYR1q05A1G0.pgp Description: PGP signature
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
At 1247610233 time_t, Andrei Thorp wrote: [5fb091f] Run Prompt: Used Obvious timer hook instead of awful You gonna love my new timer (from next branch). :) -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // And thinking so much differently. signature.asc Description: Digital signature
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
Excerpts from Julien Danjou's message of Wed Jul 15 03:42:01 -0400 2009: At 1247610233 time_t, Andrei Thorp wrote: [5fb091f] Run Prompt: Used Obvious timer hook instead of awful You gonna love my new timer (from next branch). :) Huh... it.. uh.. looks pretty similar to what I wrote :P It'll make some of my code a bit simpler, but in the end, mine still adds descriptions + speeds + abstraction so when we are forced to upgrade, it's a one line change rather than a 15 widget change. Anyway, cool improvement. I like the timeout idea. You forgot comments for the functions :P. Also, I'm curious as to why this was implemented in C and not awful? -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
At 1247663299 time_t, Andrei Thorp wrote: Also, I'm curious as to why this was implemented in C and not awful? Because the hooks (and the timer one) are meant to die. Cheers, -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // There is nothing under this line. signature.asc Description: Digital signature
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
Excerpts from Julien Danjou's message of Wed Jul 15 09:13:47 -0400 2009: At 1247663299 time_t, Andrei Thorp wrote: Also, I'm curious as to why this was implemented in C and not awful? Because the hooks (and the timer one) are meant to die. Okay, and I guess you need the hooks in C too, so you can't just implement it in Lua. Understood. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
Excerpts from Andrei Thorp's message of Tue Jul 14 18:23:53 -0400 2009: [5fb091f] Run Prompt: Used Obvious timer hook instead of awful Actually, I found a small bug in this. It still worked kind of randomly, which is unfortunate, but this fixes things much more properly. I've just --amended this commit, but the hash is now: [353e34f] Run Prompt: Used Obvious timer hook instead of awful Cheers. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
At 1247665395 time_t, Andrei Thorp wrote: Okay, and I guess you need the hooks in C too, so you can't just implement it in Lua. Understood. No, but there's no way to wake up awesome every N seconds in pure-Lua. Or you show me how. ;) -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // Anna Molly! Anna Molly! Anna Molly! signature.asc Description: Digital signature
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
Excerpts from Julien Danjou's message of Wed Jul 15 09:48:35 -0400 2009: At 1247665395 time_t, Andrei Thorp wrote: Okay, and I guess you need the hooks in C too, so you can't just implement it in Lua. Understood. No, but there's no way to wake up awesome every N seconds in pure-Lua. Or you show me how. ;) Spin off lua threads for the timers that sleep for N seconds and then call their function? Is something about that impossible? (I don't know lua threading or sleeping) -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
At 1247668210 time_t, Andrei Thorp wrote: Spin off lua threads for the timers that sleep for N seconds and then call their function? Is something about that impossible? (I don't know lua threading or sleeping) There's no sleep nor thread, only coroutine which does not work that way. ;) -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // When I get sad, I stop being sad and be awesome instead. True story. signature.asc Description: Digital signature
Re: [Obvious] (Pull Request) Lib; Lib - Hooks; Lib - Util
Excerpts from Andrei Thorp's message of Tue Jul 14 11:03:46 -0400 2009: Hello there again! This is a somewhat manual cherry-pick request on part of the next branch. Available at: g...@git.mercenariesguild.net:obvious.git next Andrei 'Garoth' Thorp (2): [d2aa9c2] Lib: hooks lib w/ awful timer wrapper functions [aead25c] Lib/Util: Added bold colour functions So this adds some interesting stuff to Obvious. The main big conceptual addition is the Obvious lib -- the idea here is to provide an extension to awful for use with Obvious. The plan would be to put stuff like mpd backends (one is in the works in another branch), /proc parsing backends, and utilities in there. So far, I've implemented some maybe exciting stuff: * The basic file structure for the lib * lib/hooks/timer: This is an extension of awful.hooks.timer. It has some extra features: (Thanks to anrxc for some ideas.) * Each timer register takes a regular speed, a slow speed, the fn, and a description. * You can access the data for registered functions at any point, or change it. This should be interesting for changing the speeds on stuff that was registered by widgets and not by the user directly (hopefully). The description aids in identifying which timer goes with what if you're trying to do this. * You can tell a registered function (or all functions at once!) to change speed to slow or regular. This may be useful for a low usage kind of setup where you want your widgets running, but not so quickly because you're on battery or something. Maybe you just feel like slow-motion :) * You can pause/unpause any function (or all at once). When they are resumed, they remember which speed they were at before being paused. This is great for that I'm on battery, suspend my widgets moment. * Check whether a function is registered. Useful for some dynamic stuff. * lib/util: A basic set of utilities. So far, this just has simple bold + colour functions that someone may want to improve at some point. They're just wrappers for the pango markup. There is another patch in next that I don't think is quite ready for merge. It's a port of my popup run prompt to this. It works, but slow-mo isn't quite in. Don't grab that :) Hopefully some people are as excited about this timer stuff as I am, haha. Maybe I'm just crazy though. Cheers. Okay, so I've actually finished porting the popup_run_prompt to this as a demo. You can actually slow down how fast it slides now. Not very practical, but pretty cool :P I might end up taking this out at some point so this widget isn't affected by slowing by default. [5fb091f] Run Prompt: Used Obvious timer hook instead of awful Also in branch next. Thanks, farhaven! -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: Obvious and Wiki
[...] Is Obvious officially supported or not? This is because I want to put it on the page to incite people to use Obvious repo so it grows/gets more support. [...] If you mean Is obvious a part of Awesome, then no, it's not a part of awesome, it's an own project. If you however mean Can I go to #awesome and ask about Obvious?, then yes. Garoth and I hang out there nearly 24/7, and as it's out project, we'd be glad to help anyone getting started with it. Seeing that wicked is also mentioned on the front page, and that wicked is also a seperate project, I think it won't hurt to link it there. Thanks a lot for your effort :) -- GCS/IT/M d- s+:- a--- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- O M-- V PS+ PE- Y+ PGP+++ t+ 5 X+ R tv+ b++ DI+++ D+++ G+ e- h! r y+ Gregor Best pgpL4LaWFRZtj.pgp Description: PGP signature
Re: Obvious and Wiki
On Sun, Jul 12, 2009 at 11:41 AM, Andrei Thorpgar...@gmail.com wrote: On Sat, Jul 11, 2009 at 11:24 PM, masterLokimasterlo...@gmail.com wrote: Hi there: I wrote a small entry on the Wiki referring to the Obvious repo and I have a doubt. Yep, it's pretty official-ish in that some of us Awesome devs support it, but it's not in the default distribution. Thanks a lot for the wiki pages, much love. I've rewritten part of the English one to explain some things better, imo. Thanks for getting the ball rolling though! -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: Obvious and Wiki
Andrei Thorp escribió: On Sun, Jul 12, 2009 at 11:41 AM, Andrei Thorpgar...@gmail.com wrote: On Sat, Jul 11, 2009 at 11:24 PM, masterLokimasterlo...@gmail.com wrote: Hi there: I wrote a small entry on the Wiki referring to the Obvious repo and I have a doubt. Yep, it's pretty official-ish in that some of us Awesome devs support it, but it's not in the default distribution. Thanks a lot for the wiki pages, much love. I've rewritten part of the English one to explain some things better, imo. Thanks for getting the ball rolling though! You're welcome! :) A small edit on the Wiki says that this is an independent project with community support. Also edited the spanish version to reflect changes. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: Obvious and Wiki
On Sun, Jul 12, 2009 at 2:53 PM, masterLokimasterlo...@gmail.com wrote: Andrei Thorp escribió: On Sun, Jul 12, 2009 at 11:41 AM, Andrei Thorpgar...@gmail.com wrote: On Sat, Jul 11, 2009 at 11:24 PM, masterLokimasterlo...@gmail.com wrote: Hi there: I wrote a small entry on the Wiki referring to the Obvious repo and I have a doubt. Yep, it's pretty official-ish in that some of us Awesome devs support it, but it's not in the default distribution. Thanks a lot for the wiki pages, much love. I've rewritten part of the English one to explain some things better, imo. Thanks for getting the ball rolling though! You're welcome! :) A small edit on the Wiki says that this is an independent project with community support. Also edited the spanish version to reflect changes. Cool, thanks for the translation :) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Pull Request: Clock Fixes, Features
Thanks, merged. -- GCS/IT/M d- s+:- a--- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- O M-- V PS+ PE- Y+ PGP+++ t+ 5 X+ R tv+ b++ DI+++ D+++ G+ e- h! r y+ Gregor Best pgpvSNqfdXOeo.pgp Description: PGP signature
Re: [Obvious] Pull Request: Pop-up Run Prompt Done
For those interested, this has been merged into Obvious master. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Pull Request: Pop-up Run Prompt Done
On Mon, Jun 29, 2009 at 09:48:45AM -0400, Andrei Thorp wrote: For those interested, this has been merged into Obvious master. [...] Damnit, I should've said something :) -- GCS/IT/M d- s+:- a--- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- O M-- V PS+ PE- Y+ PGP+++ t+ 5 X+ R tv+ b++ DI+++ D+++ G+ e- h! r y+ Gregor Best pgpDH1m93dENI.pgp Description: PGP signature
Re: [Obvious] Pull Request: Pop-up Run Prompt Done
At 1245874466 time_t, Andrei Thorp wrote: OH, right! I promised to attach a video. Here it is. I've recorded a small video so to save everyone bandwidth, etc. It's about 700kb, and shows just the area around the run prompt. I'm still amazed by the things you can done with awesome. :) -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // Trust no one. signature.asc Description: Digital signature
Re: [Obvious] Pull Request: Pop-up Run Prompt Done
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Andrei Thorp wrote: - Settings to control the speed, shape and so on of the wibox Shape? Oh and I would propose to mark some of the variables and functions as local. Don't ask me which ones, but at least inited looks like a candidate. Cheers, Uli P.S.: Yes, I wrote this mail just because of shape. :P - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKQo5wAAoJECLkKOvLj8sGpiQH/0qLwiCgqrVPe8qDqrcTgbVn aQF1yrnAV74nJhsiWWc+FqnG0yLAR5DLBTgzn7J53FIzQsZ3KwrPVS5OK/UvTgGe UdmAbURHlz39OeOnamGKqYWrvTWWPsGyH3zS1fxiAE279CKx/XYw2R28qUy0kGdW QjfbDLh+n9Ucwvuw7+yNgpDIWhJwKJcHuV8WO58stK0tZETydiE/thI95Ph5kDkA uL9ZBgXKpl4d4WZjyMVRWP4xZ7vwBq5j6qq8/9TbBqys8G4tl1Wmca+qvcxpYxF7 Z1SboRw6JDQ7W3MRcTTN2wSuZO/4EnUZPfgAfU7smMNczC+BnC+iqHBq9p8Ra2M= =aaHC -END PGP SIGNATURE- -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] Pull Request: Pop-up Run Prompt Done
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Andrei Thorp wrote: Excerpts from Uli Schlachter's message of Wed Jun 24 16:37:07 -0400 2009: Andrei Thorp wrote: - Settings to control the speed, shape and so on of the wibox Shape? You know, height, width, border_width. You've got too much xshape on the brain :) Ah, geometry! ;) Oh and I would propose to mark some of the variables and functions as local. Don't ask me which ones, but at least inited looks like a candidate. Probably a good idea -- settings and defaults shouldn't be publically accessible, and neither should enforce_init either. :) P.S.: CC'd awesome-devel again. - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKQpRTAAoJECLkKOvLj8sGD4YIAJAQ3yO0dCNkgr/Je1ke5J/4 +G0XMNbHM1+9qWvvDhGPOHZlT+gspmIV/3Xletes5BeN7DgImA5cTy0e+jdeoUX5 SK7f/eRypcd9zaUZHskZVM01HoJewtd0Ck/xbckkxpeo8WD38Yc5rpocCKJo8nlV 0IE74Dbw1YfI431MrYF+ZzpumrhvnilLBTYwJtIkcZCCFOayfTorcYxVXyMwxAAj LSJ6+2uleObD/SXZJz/pOZN01C9RqM3/70CRNPLor/C9bYnO9/YwiBz8zRvf2Scs +ivlI3Wi8e3nCc/KWIZ2VhcnwJ5VhA5L+vJcvV0u7HobNdx3gb1l4LxQuGuHiV8= =p0j2 -END PGP SIGNATURE- -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] ?
At 1245769715 time_t, Andrei Thorp wrote: Hello developer-types. I figured I'd ask first before I started doing this. Would it be fine for Obvious related stuff to be forwarded to this mailing list? I'm not sure it's a good idea. That would brings probably more than a ten thousand of users and some hundreds of mails by day on this list, and... No. Wait. Obvious you said? I read the Linux Kernel! No problem of course. ;) -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // Life is life. Lalalalala. signature.asc Description: Digital signature
Re: [Obvious] ?
Excerpts from Julien Danjou's message of Tue Jun 23 11:20:11 -0400 2009: At 1245769715 time_t, Andrei Thorp wrote: Hello developer-types. I figured I'd ask first before I started doing this. Would it be fine for Obvious related stuff to be forwarded to this mailing list? I'm not sure it's a good idea. That would brings probably more than a ten thousand of users and some hundreds of mails by day on this list, and... No. Wait. Obvious you said? I read the Linux Kernel! No problem of course. ;) Haha, okay, thanks. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) Linux! Guerrilla UNIX Development Venimus, Vidimus, Dolavimus. -- Mark A. Horton KA4YBR, m...@ka4ybr.com -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] ?
On Tue, Jun 23, 2009 at 05:20:11PM +0200, Julien Danjou wrote: At 1245769715 time_t, Andrei Thorp wrote: Hello developer-types. I figured I'd ask first before I started doing this. Would it be fine for Obvious related stuff to be forwarded to this mailing list? I'm not sure it's a good idea. That would brings probably more than a ten thousand of users and some hundreds of mails by day on this list, and... No. Wait. Obvious you said? I read the Linux Kernel! No problem of course. ;) Julien Danjou, you just gotta love his humor :P -- GCS/IT/M d- s+:- a--- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- O M-- V PS+ PE- Y+ PGP+++ t+ 5 X+ R tv+ b++ DI+++ D+++ G+ e- h! r y+ Gregor Best pgpOHli6Rno81.pgp Description: PGP signature
Re: [Obvious] ?
Excerpts from Gregor Best's message of Tue Jun 23 11:29:32 -0400 2009: On Tue, Jun 23, 2009 at 05:20:11PM +0200, Julien Danjou wrote: At 1245769715 time_t, Andrei Thorp wrote: Hello developer-types. I figured I'd ask first before I started doing this. Would it be fine for Obvious related stuff to be forwarded to this mailing list? I'm not sure it's a good idea. That would brings probably more than a ten thousand of users and some hundreds of mails by day on this list, and... No. Wait. Obvious you said? I read the Linux Kernel! No problem of course. ;) Julien Danjou, you just gotta love his humor :P I was scared for a moment :) -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) oh okay. my mistake. Yafcot:atj(*), mark * Yet another fool coming over this: according to joey -- m...@mail.novare.net -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] CONTRIBUTING Guide Pull Request
And in Julien's best spirit, I say: Thanks, merged. -- GCS/IT/M d- s+:- a--- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- O M-- V PS+ PE- Y+ PGP+++ t+ 5 X+ R tv+ b++ DI+++ D+++ G+ e- h! r y+ Gregor Best pgpz6DsUm7xxq.pgp Description: PGP signature
Re: [Obvious] CONTRIBUTING Guide Pull Request
Excerpts from Gregor Best's message of Tue Jun 23 13:09:01 -0400 2009: And in Julien's best spirit, I say: Thanks, merged. Yeah, I always enjoyed how he resolved the e-mails on the mailing list rather than just merging silently. -- Andrei Thorp, Developer: Xandros Corp. (http://www.xandros.com) If you try to please everyone, somebody is not going to like it. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Obvious] CONTRIBUTING Guide Pull Request
At 1245777325 time_t, Andrei Thorp wrote: Yeah, I always enjoyed how he resolved the e-mails on the mailing list rather than just merging silently. That's better than having the guy monitoring the branch always to see if his patch has been accepted, and also helps keeping track of forgotten patches. ;) -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // And thinking so much differently. signature.asc Description: Digital signature