After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 118478 - Show Windows application icons in thumbnails
Show Windows application icons in thumbnails
Status: RESOLVED OBSOLETE
Product: libgnomeui
Classification: Deprecated
Component: general
unspecified
Other All
: High enhancement
: future
Assigned To: libgnomeui maintainers
libgnomeui maintainers
Depends on:
Blocks:
 
 
Reported: 2003-07-28 11:44 UTC by Martijn Vernooij
Modified: 2010-12-21 08:23 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
shell script to extract an icon from a windows binary (270 bytes, text/plain)
2003-07-28 11:46 UTC, Martijn Vernooij
Details
schema file to make nautilus run the script on application/x-msdos-executable files (1.05 KB, text/plain)
2003-07-28 11:47 UTC, Martijn Vernooij
Details
c code that does this faster and better (5.16 KB, application/octet-stream)
2004-02-15 20:57 UTC, Martijn Vernooij
Details

Description Martijn Vernooij 2003-07-28 11:44:25 UTC
Microsoft(r) Windows(r) binaries have icons embedded in them. It'd be nice
if Nautilus would show them. You can extract them using the icoutils at:

http://www.student.lu.se/~nbi98oli/icoutils.html

I have created a simple shell script that uses these utils to extract an
icon from a program. Together with some gconf entries this makes nautilus
show the icons.
Comment 1 Martijn Vernooij 2003-07-28 11:46:30 UTC
Created attachment 18674 [details]
shell script to extract an icon from a windows binary
Comment 2 Martijn Vernooij 2003-07-28 11:47:23 UTC
Created attachment 18675 [details]
schema file to make nautilus run the script on application/x-msdos-executable files
Comment 3 Martijn Vernooij 2003-07-28 11:50:41 UTC
Notes:
This works for me, it is not completely correct though as it should
extract the largest icon from the program.

I have not checked this for security implications at all. The icoutils
programs might be unsafe to use on various binaries, and the script
itself creates directories in /tmp in a way that I cannot guarantee to
be completely safe.

Feedback, anyone?
Comment 4 Elijah Newren 2003-07-28 16:08:36 UTC
The shell script and schema file are similar in nature to a PATCH, so
I'm going to set the PATCH keyword and mark priority as high.  I'm
also going to change severity to enhancement.
Comment 5 Luis Villa 2004-02-14 05:21:53 UTC
This should really go in in the next cycle.
Comment 6 Martijn Vernooij 2004-02-15 20:57:35 UTC
Created attachment 24430 [details]
c code that does this faster and better
Comment 7 Martijn Vernooij 2004-02-15 21:01:08 UTC
whoa, never thought anyone would be interested anymore :)

I did write a small c program that does the same thing as the script,
but in one program. 

- It can use a better selection algorithm than the script can.
- It does not use temporary files
- It's built with gnome-vfs, so it works on all filesystems
Comment 8 Alexander Larsson 2004-02-18 12:26:08 UTC
I dunno where to put these things. I don't think it makes sense in
Nautilus, we ship no other thumbnailers with nautilus. 

I'm reassigning this to libgnomeui, which is where the thumbnailer
code is. Although I don't really think it makes sense there either...
Comment 9 Christian Neumair 2005-12-09 20:33:59 UTC
Martijn: Thanks for your efforts! It looks like nobody is interested in picking
this up. If you want me, I can package it for you so that you can distribute it
and publish it on gnomefiles.org.
Comment 10 Kjartan Maraas 2006-10-23 14:23:10 UTC
There's a few compiler warning in there that would be nice to have fixed if we were to ship this as part of libgnomeui:

In file included from ./getico.c:8:
./getico.h:179: warning: ‘packed’ attribute ignored for field of type ‘struct Win32CursorIconDirEntry[]’
./getico.c: In function ‘main’:
./getico.c:561: warning: pointer targets in passing argument 1 of ‘simple_vec’ differ in signedness
./getico.c:578: warning: pointer targets in passing argument 1 of ‘simple_vec’ differ in signedness
./getico.c:581: warning: pointer targets in passing argument 2 of ‘png_write_row’ differ in signedness
Comment 11 Bastien Nocera 2006-10-23 14:59:52 UTC
And I'm not sure relying on libpng directly is a good idea either (even if lower levels in the stack do). Finally, the code is far from being integrated into libgnomeui. That would need to be done before it can be merged.
Comment 12 Kjartan Maraas 2007-02-03 15:04:42 UTC
Martijn, would you be willing to spend time integrating this further?
Comment 13 Kjartan Maraas 2010-12-21 08:23:27 UTC
Closing as obsolete.