Download utility for devs. Xdialog progress. # New version.

Under development: PCMCIA, wireless, etc.
Message
Author
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#21 Post by mikeb »

Thought I would drop into where the men hang out. At least you don't ask me to leave a discussion about device detection when I mention a program for device detection. Or muscled out of a low power server thread when I've designed and built high efficiency regulators ... its a funny old world and the bit I really don't get is the need for excessive complication. A solution is not considered unless it has that Heath Robinson touch. :D.

Actually replace a perfectly good message dialog with a 8 year old one with no unicode support, awkward font usage and generally ugly, get all scripts to convert to it, then realise its 8 years old and does not support unicode and replace it with a 6 k script calling a full blown gtk user interface binary.
Took me 6 lines to replace yaf-splash... mu did it in 4 which inspired me .... odd.
I am sure that chain of events will be given a perfectly justified explanation. Ah that's better :D

Don't think we are going to change the GUI world here , indeed I quite like gtk2 from a users point of view...its become stable, unsmeary, and rather attractive if handled correctly....those bulbous buttons now seem refreshingly clear. What we can do is keep what we do with it clean and simple. Even if your progress wget thingy only gets as far as this thread its showing the sort of thing that can be done with so little....and some other neat contributions too.. I will try them all :)

mike
amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#22 Post by amigo »

The thing is that requiring a GUI for doing even basic system setup is bad design. It rules out alternative uses of the tool. First, somebody might want setup a safe server without X -or even headless. Or you might want some other alternative interface -speech-driven or whatever.

The nice thing about dialog/Xdialog is that the same script with the same syntax can be used in a cli program 'dialog' or in Xdialog which can be compiled for either gtk1 or gtk2 -maybe even gtk3. It still doesn't give us other types of interfaces, but it's better than using something entirely dependent on an X toolkit.

Actually, the easybashgui is a pretty good universal interface which could be easily expanded to use audio output, or other methods of notification and interaction. It provides a universal way for scripts to create messages or receive data input -even when dialog itself is not around, or using dialog, Xdialog, gtkdialog, kdialog and more.
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#23 Post by mikeb »

Rebuild Xdialog so it does not give that huge usage window when one makes a syntax error. Its syntax is a bit weird to me and always trips me up but perhaps its the UNIX way..I know not.

My silly suggestion of having one puppy tailored gui interface rather than a hotch potch of half a dozen is not so silly really...and yes why not include ncurses and/or terminal friendly output option...would certainly help with such scripts that can be used in or out of X like sfs mounting and package installing.

Relying on third party software rather than in house does have drawbacks. Mind you so does disappearing developers here.
I did notice gtkdialog's new maintainer is very puppy friendly, and much more scripter friendly too...version 3 scripts work with version 4 which makes a very nice change. not sure if gtkdialog is a good starting point for a universal notification dialog though ... its abilities and methods don't really fit with that role... something smaller I would say.

Tried that yad progress dialog.... very neat...
Xdialog one worked ok too...

Both would be nice as widgets for a bigger dialog.

mike
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#24 Post by sunburnt »

EasyBashGui looks a bit like what mikeb and I suggest. A common command set.
But it`s a patch also, not an underlying api. But it does a lot, that`s for sure.

A download utility certainly could be used/needed during boot before X starts.
Global thinking is key to what is needed when and where. Guis can`t do it all.

Gtk2 seems to be a darling for simplicity and functionality. I had good luck with it.
Gtk3 seems to be generally hated and I have to agree that I don`t care for it much.

I made a small substitute for GtkDialog, a programmable vertical array of widgets.
Buttons, Labels, Texts, Passwords, Combos, Lists, Progresses, TabPanels, etc.
Written in BaCon, it`s converted to C code, so it must be compiled for the O.S.
GTK I think is why it doesn`t work on many O.S.s. I haven`t tested this though.


Thoughts: A fully useful graphical tool kit can be small, beautiful, and simple.
I`ve written gui drawing modules for such a thing. So far I`ve used GTK canvas.
But I`d like to use an X window directly and XCB to render on it. Lots of reading.

The Windows gui look is over 20 years old, and it looks like crap in my opinion.
.
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#25 Post by mikeb »

Means 20 year old programs still work.
A bit twiddly at times though. XP's classic look was a nice variation of it....functional but clear.
gtk can look like crap.... bad theming is a crime against nerdmanity?
simplepup showed me that gtk1 can look nice...why was this never done in the main pups?

How about adopting the windows 8 gui... give it that tablet look so users can spend hours looking for stuff and blame themselves for it running slowly. Everything should be a floating icon...we could chase them for fun. All this must fit on a 2 inch screen.

Usage...is your computing device a convenient web interface or a machine for running various productive programs?

cult..... things tend not to change in a cult..... the horse needs to be given a rest, its been beaten enough....leave them to it is a good policy.....fighting doctrine is never an pleasant task

mike
amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#26 Post by amigo »

easybashgui is an 'api' -you simply source the library and then can use any of these 'widgets':
message
ok_message
alert_message
text
question
input
menu
tagged_menu
list
fselect (= "file select" )
dselect (= "directory select" )
wait_seconds
wait_for
terminate_wait_for
progress
adjust

I don't really care for the way the code is layed out, but there's some valuable stuff in there for constructing dialogs from any console or GUI toolkits which are in common use -even console support can be done any of three ways.

I have a pretty nice gtk1 look here -a pretty highly-patched version. One of the smallest patches is to change some default colors to the warmer standard tones of gtk2. I also include a unique file-selector which combines improvements from two 'upstream' distros.

I have tested here the antialiasing libs, but they don't work for fixed-width fonts. My old rox-gtk1 shows windows fine with nicer fonts, but the desktop icons use fixed-width, so they don't show properly.
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#27 Post by mikeb »

Yeah nice gtk1 fonts might just make everything spontaneously combust unfortunately. Best used on a per application basis only, but failed with rox but fixed with a later build IIRC.

One tiny gtk engine provided nice scroll bars instead of the standard shitty ones.

I think I just used nice colors from gtk2 themes so they matched... erm is that not sensible? Indeed was sometimes hard to tell if gtk1 or 2 at times.

mike
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#28 Post by sunburnt »

Possible to change the entire look of windows and controls.?
Instead of bumped borders, and sunken panels, etc, have a simple beveled panel window.
No other features except text, scroll knobs, pop buttons, and a few other needed items.
Eliminate the clutter entirely, if it`s not a clickable control or text/pic., then it`s not needed.
amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#29 Post by amigo »

The look of the windows is the realm of the widow manager. Of course, themes can make a big difference. I use the qtcurve-gtk1 theme, but with a tweaked gtkrc file. I used to sometimes use parts of the old gkt1-xfce desktop and the themesetter created a nice effect which I then altered to use the qtcurve elements. I also use the bluecurve icon set.

One 'problem' with gtk1 is that the icons used by the toolkit are not themeable as with gtk2. But, that is one of the main reasons that gtk1 apps respond quicker because they don't have to load those isons. The other reason that gtk1 is quicker is because there are less, and smaller libs to link at runtime.

Let's see, tpkg tells me that gtk2 needs these libs:
atk_2.2.0-i586-1
bzip2_1.0.6-i586-1
cairo_1.10.2-i586-2
cxxlibs-6.0.14_4.5.3-i586-4 | gcc-g++_4.5.3-i586-4
expat_2.0.1-i586-2
fontconfig_2.8.0-i586-2
freetype_2.4.8-i586-1
gdk-pixbuf2_2.24.0-i586-1
glib2_2.28.6-i586-2
glibc_2.13-i586-4
libX11_1.4.3-i586-1
libXau_1.0.6-i586-1
libXcomposite_0.4.3-i586-1
libXcursor_1.1.11-i586-1
libXdamage_1.1.3-i586-1
libXdmcp_1.1.0-i586-1
libXext_1.2.0-i586-1
libXfixes_5.0-i586-1
libXi_1.4.2-i586-1
libXinerama_1.1.1-i586-1
libXrandr_1.3.1-i586-1
libXrender_0.9.6-i586-1
libpng_1.4.9-i586-1
libxcb_1.7-i586-1
pango_1.29.4-i586-1
pixman_0.20.2-i586-1
zlib_1.2.6-i586-1
and that gtk1 needs these:
glib_1.2.10-i586-3
glibc_2.13-i586-4
libX11_1.4.3-i586-1
libXext_1.2.0-i586-1
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#30 Post by sunburnt »

So for example take JWM ( as little as I like it ), what to change to completely reskin it.?
A possible start is an invisible window and draw on it ( a Canvas may be needed ).
GtkDialog doesn`t have a drawing widget ( that I know of ), so only BaCon will do.
I`m thinking here that doing this with an X window would be the correct way to go.
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#31 Post by mikeb »

Speed indeed..I clocked up 4 times faster from puppy 1 to puppy 4 doing a mass copy operation in rox so its not just library load times but execution too.
Yes I believe it was an early xfce4 engine that was used to improve scroll bars.

mike
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#32 Post by sunburnt »

Cleaned up my "dev`s download utility".

And now it continues a broken download automatically.
User avatar
Keef
Posts: 987
Joined: Thu 20 Dec 2007, 22:12
Location: Staffordshire

#33 Post by Keef »

All ok.
Tested it on http://412collection.co.uk

Code: Select all

# ./xdlg.dnldprogress gimp-2.4.5.pet http://db.tt/fesQujV6
The console output finished a couple of seconds before the dialog box - which is better than the other way round though.
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#34 Post by sunburnt »

Yeah, I had the dialog calling wget, but it made more sense the other way around.
It seems to keep working at a site rather well until it the download is complete.

As I said, lots of developer utilities like this should be made. ( I have a mirror selector also )
Then developing user apps and system apps would be a cinch. Just glue the parts together.
.
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#35 Post by mikeb »

Forgot to give you a screenie of my thing.... a bit bare without the you tube part.. It does resumes too...was a handy ability in the days of dial up :)
mike
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#36 Post by sunburnt »

What..!!! No progress bar..??? :lol:
Looks really good Mike, and the console output from wget too.

I`m thinking a full blown downloader with features like yours in GtkDialog.
Then it can have the usual LabelBoxes for speed and ETA. There`s already so many though.
.
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#37 Post by mikeb »

Well tis about 4 years old or more... no sexy progress bars around which would make a much neater result. In fact I want to neaten up my dropbox uploader and such a thing will do nicely. At the moment it opens a terminal window but to me a gui wants a gui style of feedback/monitoring.

mike
User avatar
Geoffrey
Posts: 2355
Joined: Sun 30 May 2010, 08:42
Location: Queensland

#38 Post by Geoffrey »

This maybe of some interest, technosaurus posted a dropbox uploader which has a progress bar. http://www.murga-linux.com/puppy/viewto ... 239#597239
[b]Carolina:[/b] [url=http://smokey01.com/carolina/pages/recent-repo.html]Recent Repository Additions[/url]
[img]https://dl.dropboxusercontent.com/s/ahfade8q4def1lq/signbot.gif[/img]
User avatar
mikeb
Posts: 11297
Joined: Thu 23 Nov 2006, 13:56

#39 Post by mikeb »

Well it does more than just upload :)
mike
Attachments
drop.png
(85.06 KiB) Downloaded 416 times
User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#40 Post by sunburnt »

Mike; It`d make a nice SpaceFM / MidnightCommander type Filer. Do downloads also?

Now if there was just a true tree panel to be had, a replacement filer for Rox could be made.
Post Reply