Page 3 of 5

Posted: Wed 17 Oct 2012, 15:20
by rmcellig
Thanks SFR. Keep up the great work.

Posted: Wed 17 Oct 2012, 20:23
by SFR
Now I know for sure - I'm a code junkie... :roll:
I started to play with Stifiling's scripts and RWC...and I wasn't able to stop until finished!

So here it is: RWC-1.6.
The "Local" part is unchanged and should work as usual, but there's new part: Online.

I've applied Sifiling's 'googleimages' idea.

How it works:
- You can put a search query, but, let's say, don't expect miracles, ok? :wink:
- RWC automatically determines screen resolution, but if you have some strange one, like 481x924 it's better to set something more usual like 800x600 or eventually 0x0.
- If internet connection is lost, RWC switches to Local mode, but when connection is restored, RWC switches back to Online mode.

Known issues:
- Sometimes downloaded pictures are "broken" (eg. site doesn't allow do get it via wget, I guess?).
In this case RWC tries to download another (max. 5 times), but it fails anyway from time to time.
- Now requires Gtkdialog >= 0.8.0

Sorry, but I have no strenght to test if it still works correctly in other Puppies than Slacko 5.3.3, Carolina and Lupu-528, hope it does.

OK, now I really need to take a longer break. :lol:

PS. Thanks again for the idea and code, Stifiling. :)

_________________________________

EDIT: I've added also InterfaceLift site in version 1.6.1:
- If you enter specific data into Query and Resolution fields - "google.images.com" will be in use (random pictures based on chosen query and resolution).
- If you enter * (asterisk) into any of fields - "interfacelift.com" will be in use then (random wallpapers in HD resolution).

Also corrected 'search query' routine - it's a bit more accurate now.

Enjoy & Greetings!

Posted: Wed 17 Oct 2012, 22:08
by stifiling
Hey thanks for that SFC. just one last thing i want to say and that is.....it would appear as though the googleimages would be the best of the scripts. but based on my history with using them, the interfacelift.com script is really the best. it doesn't freeze sometimes like the google one does...it seems to randomize better...(for one reason or another the google one tends to duplicate more often), and also.....the wallpapers are plentiful and tend to be more beautiful and more like 'real' wallpapers.

i wish i had said these things before u rewrote the app. but i do think...u'd like the ifl one better.

Good job though...the new RWC looks really nice.

Posted: Wed 17 Oct 2012, 22:27
by RSH
SFR wrote:@Stifiling & Rmcellig
Anyway, I don't know if you guys are aware of this, but there's also Rhadon's Wallrefresh app very related to the subject.
Sorry, I did not test RWC, but, yes, rhadon's WallRefresh is great.

Image

I'm currently online from the Computer i do use in my drumming room. WallRefresh is already installed in LazY Puppy. :)

Posted: Wed 17 Oct 2012, 23:52
by rmcellig
Hi RSH. Beautiful background.

What are you using for the icons on the bottom and right of your screen? Wbar? If so, is it the latest version? I was thinking of installing something like that but the repos have an older version.

Posted: Thu 18 Oct 2012, 00:24
by RSH
Hi mcellig.

The background is Wallrefresh Online Wallpaper ---> Stockholm.

On the bottom is wbar, that's right. But it's an old version, Actually a modified version of 1.3.3 with setup.

The Icons on the right are the usual drive icons. I did set them to the right side in /etc/eventmanager.

Code: Select all

#left, right, bottom, or top of screen...
ICON_PLACE_ORIENTATION='right'
The icon theme is my personal edition of the faenza icon set.

---

I have put a script into LazY Puppy that makes symbolic links from /usr/share/pixmaps, from /usr/local/lib/X11/pixmaps and some other paths to the wbar icon directory in /usr/share/wbar/wbar.icons - so, i can use all those icons in wbar. If I do switch the icon theme the wbar icons do change also this way. :)

Posted: Thu 18 Oct 2012, 01:50
by rmcellig
Thanks! Appreciate it.

Posted: Thu 18 Oct 2012, 12:10
by SFR
stifiling wrote:Hey thanks for that SFC. just one last thing i want to say and that is.....it would appear as though the googleimages would be the best of the scripts. but based on my history with using them, the interfacelift.com script is really the best. it doesn't freeze sometimes like the google one does...it seems to randomize better...(for one reason or another the google one tends to duplicate more often), and also.....the wallpapers are plentiful and tend to be more beautiful and more like 'real' wallpapers.

i wish i had said these things before u rewrote the app. but i do think...u'd like the ifl one better.

Good job though...the new RWC looks really nice.
Hey Stifiling

The problem with InterfaceLift is it seems that categories as well as resolutions are 'hard-coded', that's why I've chosen googleimages, which gives more...err...freedom..?
For instance, one can choose "cat+sweet+fluffy" or "thermonuclear+explosion+mayhem" in any resolution and he/she'll get, more or less of course, what was expected.

But it's not a big problem really, I've resolved that this way:
If user enters * into 'Search query' and/or 'Resolution' field - then InterfaceLift will be in use; otherwise - GoogleImages.

Fair enough, I think?

I've attached v1.6.1 to my previous post.

Greetings!

Posted: Fri 26 Oct 2012, 13:30
by SFR
Update, version 1.6.2:

Bugfix: possible corruption of pinboard wallpaper when RWC/computer is turned off during downloading.
Added: 'Safe Search' checkbox; until now 'safe search' was "on" by default.

Greetings!

Posted: Fri 26 Oct 2012, 14:18
by rmcellig
Looks good!! You are doing amazingly well with this app.

For the look inside sub folders option. How many folders deep does it go?

Posted: Fri 26 Oct 2012, 15:00
by SFR
rmcellig wrote:For the look inside sub folders option. How many folders deep does it go?
Hard to say. :lol:
I just created 100 nested subfolders and RWC still finds pictures saved in the deepest one...
You can try by yourself:

Code: Select all

for i in {1..100}; do mkdir "test-$i"; cd "test-$i"; done; cp /usr/share/backgrounds/* .
(note that there's dot at the end)

It depends more on Linux/Kernel limitations than RWC, I think.

Greetings!

Posted: Fri 26 Oct 2012, 15:05
by rmcellig
Great! Thanks. I'm going to try RWC in the new Puppy Linux that was announced this week. So far I really like it.

Posted: Fri 26 Oct 2012, 17:34
by sc0ttman
Hi SFR,
rmcellig wrote:Looks good!! You are doing amazingly well with this app.
Agreed, in my brief tests (so far) it works nicely...

I am testing on Akita, which doesn't use the ROX pinboard by default,
so ROX pops up an error msg when the pinboard is first enabled by RWC,
and a default pinboard instance is started, with only the default Home icon visible...
But of course this doesn't happen if the ROX pinboard is already running...

Anyway, the above problem is not really anything to do with your app,
just what happens when ROX is not already running, but it brings me to the question...

Would it be possible (if you're even interested) to make this app use feh to set the wallpaper?

Akita uses feh when the ROX pinboard is not active.. It builds and runs another script. Example of the generated script below:

Code: Select all

#!/bin/ash
[ -x /usr/bin/feh ] && /usr/bin/feh --no-menus --bg-fill "/usr/share/backgrounds/akita.jpg"
exit
I would be more than happy to get feh working with RWC myself,
but wondered if you had any known caveats, thoughts or suggestions, etc...
If not, then don't worry... Cheers.

EDIT: I added the following to /usr/local/RWC/rwc-main:
EDIT2: changed Center to Centre below...

(not tested much at all...)

Code: Select all

#261012 added support for feh, use it if present (it's prob not)
case $ROX_STYLE in
	Centre) FEH_STYLE='--bg-center' ;;
	Stretch) FEH_STYLE='--bg-fill' ;;
	Max) FEH_STYLE='--bg-max' ;;
	Scale) FEH_STYLE='--bg-scale' ;;
	Tile) FEH_STYLE='--bg-tile' ;;
	*) FEH_STYLE='--bg-scale' ;;
esac
[ "`which feh`" != "" ] && feh --no-menus ${FEH_STYLE} "$WALLPAPER" || {
rox --RPC << EOF
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope">
 <env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer">
  <SetBackdrop>
   <Filename>$WALLPAPER</Filename>
   <Style>$ROX_STYLE</Style>
  </SetBackdrop>
</env:Body> </env:Envelope>
  
EOF
}

Posted: Fri 26 Oct 2012, 17:59
by SFR
Hey Scottman
Would it be possible (if you're even interested) to make this app use feh to set the wallpaper?
I think it would . It's just a matter of modifying rwc-main script - it checks if XFCE is the default WM (cat /etc/windowmanager | grep xfce), if not - ROX is set as default.
It will be enough to modify main 'if..else..fi' condition in the mentioned script.

I'll download Akita and see how to best adapt RWC to it, but if you'll be the first, just let me know, so I'll include it.

Greetings!

Posted: Fri 26 Oct 2012, 18:02
by sc0ttman
SFR wrote:Hey Scottman
Hi SFR... I just saw your reply after I edited my post, sorry....

Posted: Fri 26 Oct 2012, 18:11
by SFR
No problem, thanks for feh style definitions!
I'll test it a bit and upload new version in a few days.

Greetings!

Posted: Fri 26 Oct 2012, 21:56
by SFR
SFR wrote:I'll test it a bit and upload new version in a few days.
Ok, I'm natural born pessimist - I meant "hours" of course. :wink:

@ Sc0ttman:
I've done it in a bit different way:

Code: Select all

if [ `which feh` ] && [ ! "`xwininfo -root -tree | grep 'ROX-Pinboard'`" ]; then
...
because if there's Rox pinboard in use AND feh is also installed (in other Puppies, for instance, as a part of Battleshooter's Conky+Lua), RWC would use feh then.
(phew, it took me a while to find out "how to determine if pinboard is in use or not", btw)

So, RWC now works with Akita's default configuration (feh), but if user decides to use pinboard, it works aswell.

Also, Akita has different output of xrandr, so I've added small modification and current resolution should be recognized correctly now.

PS. I didn't test it "exhaustively", but everything seems to work fine so far; couldn't find any flaw...but future will tell. :wink:

Greetings!

Posted: Fri 26 Oct 2012, 22:48
by sc0ttman
Thanks, thats great.. Just a quick question, what am I supposed to do when I get the 'only 1 instance' popup msg, to get the GUI to load again? (Aside from killing it manually - I'm thinking of noobs and novices...)

Posted: Fri 26 Oct 2012, 23:48
by SFR
Yes, I just noticed that it happens from time to time in Akita (although never happend in Slacko).
Surprisingly the addition of sleep 0.3 right before this line:

Code: Select all

[ `pidof rwc-config | wc -w` -gt "2" ] && xmessage -bg red -center -title "RWC Error" "Only one instace of RWC allowed!" && exit 1
at the beginning of rwc-config script seems to "resolve" the problem.
But I'm not sure, because it happens very, very rare for me...

Please check out if it's ok for you too, so I'll upload corrected version tomorrow.
Also, perhaps a lower value of 'sleep' will work aswell..?

Thanks for noticing this, btw.

Greetings!

Posted: Sat 27 Oct 2012, 11:02
by SFR
@Sc0ttman:
I _think_ I found the actual bug, it was /usr/bin/rwc-config:

Code: Select all

exec /usr/local/RWC/rwc-config &
I've no idea why did I put & there, but for 90% it was the cause; most likely /usr/bin/rwc-config process was dying too slow. Interesting that it wasn't happend in Slacko..?
But thanks again, it was definitely RWC bug.
I hope it'll be ok now.
__________________________

I've also added experimental support for LXDE (tested only on LXPup).

__________________________

Since all versions are scattered in different places in this thread, quick summary of supported DEs:
- XFCE
- ROX
- ROX (without pinboard, but with 'feh' as wallpaper setter)
- LXDE (experimental)

EDIT: tiny bugfix in detecting current resolution; if it works for you, ignore it. Reuploaded after 5 downloads.

Greetings!