Closed 01micko closed 8 years ago
If you like, I can initiate adding of gtk-icons-themes to pTheme, but please tell me where I can download a theme to work/test with.
Are you suggesting that we build our own theme based on the themes in /usr/share/pixmaps/puppy? I guess it will give an improved look in the touch-themes where icons are scale up. Does there exist a list telling what icons a theme should contain. I can make the missing icons...
Just search "icon-theme" in ppm. Any one will do. Probably gnome is the most comprehensive.
Are you suggesting that we build our own theme based on the themes in /usr/share/pixmaps/puppy?
I think @technosaurus first suggested something like that. All the standard gtk icons are necessary but I don't know how to build the database (I think the icon.theme file gives a clue). Naming is the important thing and there will be a lot of symlinks. But that can be all scripted and sizes down to 16x16 can all be adjusted by script with the 'viewport'.
I'm sure there are tutorials around.
It shouldn't be hard to add gtk-icons-theme support to pTheme, but I have not been able to set a new theme...
Terminal output:
# find /usr/share/icons -type f -maxdepth 2 -name 'index.theme'|sed -e 's/^/"/' -e 's/$/"/'| xargs grep 'Name='|cut -d '=' -f2
GNOME
Hicolor
This is how it looks after X is restarted:
You're right! Gnome wasn't a good suggestion (I didn't try it). I did however just try Faenza and it does work. It is rather bloated (includes several themes) but there are much lighter themes around. I might hunt some and package them.
Does there exist a list telling what icons a theme should contain. I can make the missing icons...
Yes: Standard from freedesktop.org
Yes it is old, but the spec for gtk-2.0 hasn't changed much I believe. Many icons can be simply symlinks that can be generated at "compile time". Don't be too concerned with naming either. I will make a script from that list with the appropriate names/categories. I already have a lot of mime type icons so don't start there!!! (I'll post them soon).
What I would suggest is leave them in /usr/share/pixmaps/puppy and the theme can be built as part of the woof process.
Got Faenza working. pTheme is now ok with gtk-icons-theme, but I still has some work with ptheme_gtk. The set icon-theme in ptheme has to be parsed to ptheme_gtk...
A quick review of the iconlist at freedesktop.org shows that there are a few icons missing in /usr/share/pixmaps/puppy/ :-D
Making a complete icon-set for gtk will take some time... What is the benefits of such a major task?
unified look of icons - ok - but I don't think that alone is enough to motivate me for such a task
Yes a big task! I tend to agree that your time is better spent elsewhere.
Thanks for updating ptheme.
Yes a big task! I tend to agree that your time is better spent elsewhere.
Perhaps mine too.. ( @zigbert ) .. however..
Recognise these?
A simple script builds the lot
More to come!
Nice. What is the grand plan? Don't hesitate to ask me to make requested svgs. If the benefit of a svg icon-theme is clear, we should set it as a long term goal.
I see many programs (as geany) put icons inside /usr/share/icons/Hicolor/. Do these rely on Hicolor directories structure. I have put pmusic-icons inside Hicolor as well. Maybe /usr/share/pixmaps is a better place...
Your Rox-screeny shows vector icons with correct size (22x22px?). When using a svg-icon directly in gtkdialog like /usr/share/pixmaps/puppy/add.svg, it shows up with its defined 100x100 px. Do the Rox-code fix this scaling issue, or have you defined the size elsewhere?
Nice
Thanks.
What is the grand plan?
See issue #671
PVM gets its icons from the icon theme. Now we can match that for a better aesthetic. I haven't tried yet but my little "gtksplash" proggy (written in C) is a great test bed.
gtksplash -s "hello disk" -c green -f "Sans 48" -i gtk-harddisk
Most work but some don't; a bit perplexing why but never mind for now. Maybe @technosaurus will know.
I have started a git repo: https://github.com/puppylinux-woof-CE/puppy_icon_theme
Download the tarball and build it your self :smile: .. it's very easy. Just put the resulting directory into /usr/share/icons/
.
The icons are all scaled with a viewbox
so are the correct size.
I see many programs (as geany) put icons inside /usr/share/icons/Hicolor/. Do these rely on Hicolor directories structure. I have put pmusic-icons inside Hicolor as well. Maybe /usr/share/pixmaps is a better place...
Hicolor and Locolor are fallback themes. usually an GTK app builder will place her/his icons in there and usually Inherits=Hicolor
is specified in the icon.theme
file as the fallback. probably /usr/share/pixmaps
is better for just one icon.
Pup Volume Monitor icons work :tongue:
Just a small issue with a broken 'mounted' icon but I'm sure if I scour the source code I can find it and add it.
Getting close now...
2 questions:
Well, if the "Puppy Standard" theme is set in .gtk2rc then all widgets get the icons anyway - geany even gets one as its default icon! (edit.svg)
Some icons are not used so some will have to stay in /usr/share/pixmaps/puppy
I'm not sure if this new 'icon-theme' is mature enough for a daily use as yet - soon though. Still lots of mimetypes missing and as said some don't work at all (about.svg is a notable one).
I'm also thinking to make the icon-theme entirely optional which means if it is included then there will be redundancy - but they are so small it barely bloats the ISO image. In this case /usr/share/pixmaps/puppy should be maintained as and where it is.
It would be nice if we could tack on the icon theme to the gtkrc file. I have a couple of nice 'pthemes' but are bit bloated because of the icon theme so I intend to offer them as sfs packages.
Here is a one liner to find all the icon themes at the standard location:
The above finds themes with spaces in the name (pipe through
sed
). Below is my output - but we should filter out the fallbacks ("hicolor" and "locolor").It's then just a matter of tacking that onto the gtkrc file:
The logic is the only catch. It must be written only after
switch2
has done its thing.