Page 1 of 2

Suggested Puppy Control Panel

Posted: Thu 01 Mar 2007, 16:40
by dvw86
Here is a program for changing many of the system settings in Puppy. It is not fully functional yet. I started making it for my own use and pleasure, but there has been some attention lately to making an "official" one for Puppy. So here is what I have so far.


The main "page" or screen with all of the options. Each icon is a button that will load the options for that group.
Image

The center top title is also a search field on the first page. As you start typing it will try to guess what button you may want and highlight them. This is very fast and automatically updates after each keystroke. as you can see here, three buttons get highlighted if you type the word "screen"
Image

If we continue typing and type out "screen saver" only one button is left highlighted.
Image


Here is what the first page looks like. It is the "Appearance" or JWM configuration page.
Image

Ideas, comments, and suggestions are welcome.

Posted: Thu 01 Mar 2007, 16:57
by rarsa
It looks even better than I thought.

Here is some advice:
- Develop it in a language already included in Puppy. Or jockey really hard to have lua on the LiveCD, but don't invest too much in Lua before knowing it's going to be there. Is it GTK compliant? I think that's important for keeping a common look and feel among applications.
- Clearly diferentiate "common" from "advanced" options in the configuration screens.
- Create visual and usability guideliness for the configuration screens so people wanting to contribute can integrate seamlessly
- Develop it as a shell with plug-ins. e.g. Have the framework to manage what the main screen does, but allow "registering" configurators, maybe through .destop files as they already support specifying pretty much all you need to add it in the right spot in your UI.

Posted: Thu 01 Mar 2007, 17:27
by dvw86
Thank you Rarsa. I appreciate the feed back.
rarsa wrote: - Develop it in a language already included in Puppy. Or jockey really hard to have lua on the LiveCD, but don't invest too much in Lua before knowing it's going to be there. Is it GTK compliant? I think that's important for keeping a common look and feel among applications.
MurgaLua uses FLTK for the GUI so it looks very much "at home" or native in any operating system (Linux, Windows, Mac) and with any window manager. I have already voiced some of my thoughts on Barrys News page when he posted "Some thoughts on programming " See my posts about in the middle and at the end. And I was really writing it for my own use. I was just going to "offer it up" if others were interested. I plan on writing other programs in murgaLua in the future.

rarsa wrote: - Clearly diferentiate "common" from "advanced" options in the configuration screens.
Good point. I will have to give that some thought. My original intention was to make everything so easy that "anyone" could use it.

rarsa wrote: - Create visual and usability guideliness for the configuration screens so people wanting to contribute can integrate seamlessly
Yes I plan on that. I have everything set up in the code so it is very easy for me or someone else to add a new feature or "button".

rarsa wrote: - Develop it as a shell with plug-ins. e.g. Have the framework to manage what the main screen does, but allow "registering" configurators, maybe through .destop files as they already support specifying pretty much all you need to add it in the right spot in your UI.
I was planning on something like that. I haven't gotten that far yet though. I was just trying to get everything working. I'm sure that there is a lot of cleaning up that can be done in the code as well.

The application is wrapped in a Rox-App and is actually started with a shell script. One of the reasons I chose murgaLua is because it works very well with Bash and other languages. It is a very small scripting language, but it is very powerful.

Posted: Thu 01 Mar 2007, 17:54
by SirDuncan
This looks real good so far. Is there a beta (or whatever version you're at) download available for us to try?

Downloading Lua doesn't bother me, because I already downloaded it thinking I would try to learn it. I ended up putting that on hold until I was done with my Java programming class so that I wouldn't confuse myself. However, Rarsa is right. Many people would prefer to use a tool that has everything it needs built in to Puppy. A quick Google search for a compiler for Lua (as in one that will make a self executing binary instead of something that still needs interpereted) yields no results. If one existed you could have written in Lua and then compiled it and no one would have ever known.

One suggestion, I would add the ability to change themes, etc. for other popular WMs like IceWM, Fluxbox, Enlightenment, and XFCE. I don't know how hard that would be, but since a lot of people use other WMs it would make your program more useful.

I really like what I see, though, so I look forward to being able to test it.

Posted: Thu 01 Mar 2007, 20:36
by Eyes-Only
This is... well... simply incredible regardless the scripting language! (Though I can understand everyone's point.) I took one look at these screenies and all I could say was: "WOW!"

Puppy truly needs something of this high a calibre me thinks.

Great job Fellow Puppian! 10 Woofs on the woof-o-meter!

Amicalement,

Eyes-Only
"L'Peau-Rouge"

Posted: Thu 01 Mar 2007, 23:05
by dvw86
SirDuncan wrote:This looks real good so far. Is there a beta (or whatever version you're at) download available for us to try?
I'll try to post what I have in a couple of days. I'm working 14 hour shifts right now and don't have much time.
SirDuncan wrote: Downloading Lua doesn't bother me, because I already downloaded it thinking I would try to learn it. I ended up putting that on hold until I was done with my Java programming class so that I wouldn't confuse myself. However, Rarsa is right. Many people would prefer to use a tool that has everything it needs built in to Puppy. A quick Google search for a compiler for Lua (as in one that will make a self executing binary instead of something that still needs interpereted) yields no results. If one existed you could have written in Lua and then compiled it and no one would have ever known.

Actually I used murgaLua which I think is better than Lua for this type of application.
http://www.murga.org/devPages/murgaLua/
Also, the only thing needed in Puppy to run programs written in murgaLua is one executable that is only 312K. I will post it as well for those who just want to try my program out and don't want to actually write programs in murgaLua.
SirDuncan wrote: One suggestion, I would add the ability to change themes, etc. for other popular WMs like IceWM, Fluxbox, Enlightenment, and XFCE. I don't know how hard that would be, but since a lot of people use other WMs it would make your program more useful.
I don't think that would be too hard to do. For now I was just trying to get the basics working though.

Posted: Thu 01 Mar 2007, 23:33
by SirDuncan
Actually, the Lua I downloaded was Mr. Murga's version. I wanted it because of the GUI maker.

I await the download patiently.

Posted: Thu 01 Mar 2007, 23:54
by WhoDo
dvw86 wrote:Actually I used murgaLua which I think is better than Lua for this type of application.
http://www.murga.org/devPages/murgaLua/
Also, the only thing needed in Puppy to run programs written in murgaLua is one executable that is only 312K. I will post it as well for those who just want to try my program out and don't want to actually write programs in murgaLua.
Only 312k? It is now IN in Puppy 2.15CE Beta! When you get it uploaded I will add it to the working copy. 8)

I would also be willing to test each iteration as you have it available. I suggest you talk to tronkel about what he is doing with a C implementation of an Icewm configuration manager. The two should dovetail together, if possible.

The look and feel is EXACTLY what we're looking for in the CE project, dvw86! Thank you, thank you, thank you!

Please keep in touch. PM me if you want to offer updates, advice, suggestions for its inclusion in the working copy.

WOW is right! :D

Posted: Fri 02 Mar 2007, 02:16
by BarryK
312K? Is that compressed size?

Posted: Fri 02 Mar 2007, 03:40
by Lobster
I really like what you have done. I have experimented with similar personal menu programs with my interest in XUL (yours is much, much better)

XUL however is a little complex for a novice like me because it is a developing language - not available in Opera incidentally - which is the default browser for Puppy 2.15 Beta

I always try and use the icons in Puppy and the programming languages available - even though I understand why you used MurgaLua.

Now that gtkdialog3 will be in Puppy 2.15 and 2.16, I wonder if the wizard wizard can be made to work and look similar to what you have done?

MurgaLua might be in 2.15 (at the Beta stage) will not be in 2.16 and by 2.17 your program will sadly not be in use except perhaps in MeanPuppy (unless going over to Glade or some such GUI design system) or maybe just by you - that would be a shame :(

http://puppylinux.org/wikka/Puppy216
Remember the majority of people use Puppy as is, with what is provided . . .

Please bear that in mind :)

I like it.

Posted: Fri 02 Mar 2007, 04:12
by WhoDo
BarryK wrote:312K? Is that compressed size?
I'd say uncompressed, Barry. It's a run-time executable but it may take up only marginally less space in the sfs.

I see where GINS is only 12-15k and you are planning to use that for 2.16. Gnocl is already in 2.15CE Alpha, and probably Beta1, but if you want to take 2.16 in a different direction it won't make sense to create a blind alley.

There must be a way to use murgaLUA with less space. After all, DSL are using almost exclusively for their apps, and their space targets are well below ours.

Cheers

Posted: Fri 02 Mar 2007, 16:59
by dvw86
312K is uncompressed for the run time executable. Personally, I feel that it has the small size, speed, and features to be a good base language for a small Linux like Puppy. That's probably why the DSL people chose it as well.

Posted: Fri 02 Mar 2007, 20:00
by veronicathecow
Hi dvw86 I eagerly await your control panel, this willm ake Puppy even more accesable to the masses (like me 8-)

waiting too

Posted: Fri 02 Mar 2007, 20:38
by raffy
Count me in among the waiting multitude. :)

Posted: Sat 03 Mar 2007, 04:32
by Flash
This is just my two cents worth of random thoughts.

I make notes in books and manuals that I use. I find this to be a very useful feature of books, that has generally been ignored in computer applications and operating systems. I suppose because people once had to share a computer by running the same applications from a common OS. However, Puppy is based on a single-user live CD. Each user of the computer can now in effect have his or her own customized OS, including just the right applications. There's no reason not to make notes easy to do in Puppy.

Here's an example of the kind of thing I mean: if a window appeared when I moved the cursor over an icon, with a more complete explanation of what the icon represents, it should be easy for me, the casual user, to change what the window says. That way I could make notes and add instructions as I learn and customize Puppy. At least it ought to be easy for even the casual user to change what the text below the icon says. :)

Posted: Sat 03 Mar 2007, 10:19
by JohnMurga
dvw86 wrote:312K is uncompressed for the run time executable. Personally, I feel that it has the small size, speed, and features to be a good base language for a small Linux like Puppy. That's probably why the DSL people chose it as well.
Well, originally I wanted a runtime for Windows and Linux that gave me the GUI, networking, and XML features in less than 500k :-)

People forget that you get a lot more than just the GUI stuff :-)

If you have any issues or suggestions at all let me know, I'll be releasing the next version at some point in the next couple of weeks ...

And if you don't mind I'd definitely like to use this for next version of MeanPup (whenever it comes out).

Cheers
JohnM

Posted: Sat 03 Mar 2007, 10:41
by Lobster
:)

One of the superb features of MurgaLua are the tutorials. I wonder if any code from DSL will be found in the next Meanie?

http://puppylinux.org/wikka/MeanPuppy

Down Load Link

Posted: Sun 04 Mar 2007, 23:21
by dvw86
Okay, here is what I have so far. This is nowhere near complete but the firewall and JWM "Appearance" pages work. I ran into some trouble with the JWM themes if you have already ran Puppy's theme setter. The built in Puppy theme setter would insert the theme code anywhere there was a blank line in the file. This makes things a little messy, and my confuse this program. This program will always insert the theme code into the end of the file. I suggest that you try this first by booting from CD into RAM and then installing and running this program. That way there is no chance of messing up your "main" pupsave file. There is a lot of my de-bug code still in there and it needs cleaned up. I did a lot of it during the middle of the night and after I had been awake for over 30 hours. I had Blinky not get swallowed into the tray a few times during the testing as well. I have not had time to look into it yet though. Also, I noticed that the JWM "insert programs left" feature does not work at all. Even with a fresh install of Puppy and using the built in JWM configuration tool. It looks to be a JWM bug. If a theme has a non Alpha character in it, then it may not get loaded. For instance I had to rename puppy-xp to puppXP. This could possibly be worked around though. I'm using Puppy 2.13 but this should also work in 2.14. If you have not installed murgaLua you will need to download the run-time executable as well. You can get it here. Just download it and move it to /root/my-applications/bin. The Control Panel can be installed anywhere. It is a RoxApp and should be started by just clicking on the icon. I'm thinking of putting the murgaLua run-time into the Control Panel RoxApp to make things easier for people to install it. It would just add about 300k to the overall size. The murgaLua documents and source code can be found on John Murga's home page.
http://www.murga.org/devPages/murgaLua/

SystemTools.tar

Posted: Tue 06 Mar 2007, 18:58
by SirDuncan
I was looking at the Lua pages and came across something that might be useful to you. There is mention of a code wrapper called lua2c that will convert Lua code to C code. I don't know how well it works and I couldn't find any actual information on it, just a download link ftp://ftp.tecgraf.puc-rio.br/pub/lhf/lua2c.tar.gz. If it works well, you could write the control panel in Lua, convert it to C and then compile. No one would be able to complain that they must add the Lua interpereter to their Puppy install. Just a thought. It might not be worth the trouble given the size of the interpereter, your idea to just include it in the Roxapp might be better.

I personally think that Lua seems like a language that deserves serious consideration for Puppy and I have no problem with adding 312k to my install. Some people will argue that every 300k counts, and it does but I don't know of anything similiar in power to Lua that is as small. It just makes sense to me.

That being said, I downloaded the control panel yesterday. It really does look good. Seems to work well too. Good job and keep it up.

Posted: Mon 02 Apr 2007, 03:40
by bostonvaulter
How is this coming along? Is it still going to be included in 2.15CE?

Jason