Ubuntu – How to set a wine program (ex. Foxit Reader for Windows) as the default program

default-programspdfwine

I regularly annotate pdf files and unfortunately there is no good linux pdf reader that supports decent annotations. Evince has a very rudimentary and buggy annotation feature. So I'm stuck using a Windows viewer through wine.

This works pretty well but, when I simply right-click a file (in this case a pdf), properties, open with and selected Foxit Reader, the Unity Launcher icon remained the wine icon instead of the application icon.

Has anyone set a wine program as the default program for any file?

Any ideas?

Best Answer

I solved the problem myself. Here's how:

Step 1: Create script

I followed the procedure in the https://help.ubuntu.com/community/Wine page:

gedit ~/.wine/Foxit5

Now paste the following script in it, save and close gedit. If you changed the installation path, modify the 2nd line accordingly.


#!/bin/sh

QUICKPARLOCATION="c:\\Program Files\\Foxit Software\\Foxit Reader\\Foxit Reader.exe"
PARAM=`winepath -w "$*"`
wine "$QUICKPARLOCATION" "$PARAM"
exit 0

Make sure the file is executable with this command.

chmod +x ~/.wine/Foxit5

Step 2: Create .desktop file

Info from this site: http://ubuntuforums.org/showthread.php?t=1863021

  1. cd to the directory /usr/share/applications
  2. use 'grep -i foxit *' this will search for the name foxit ignoring case.
  3. if it's not there make one from one of the smaller ones.
  4. I used sol.destop and copied it to my own fake app.
  5. Don't forget the %f, this shows that the application can be passed a file name, it has to be there to show up in the list.

    sudo cp sol.desktop foxit.destop

    gksudo gedit foxit.desktop

foxit.desktop Code: (I created an icon and saved it in the .icons folder)

[Desktop Entry]
Name=Foxit Reader 5
Comment=Read and annotate pdf files
Exec=~/.wine/Foxit5 %f
Icon=~/.icons/Foxit.png
Terminal=false
Type=Application
Categories=Office;
X-GNOME-Bugzilla-Bugzilla=Foxit
X-GNOME-Bugzilla-Product=foxit reader
X-GNOME-Bugzilla-Component=Zwischenlager
X-GNOME-Bugzilla-Version=3.2.1
StartupNotify=true
X-HildonDesk-ShowInToolbar=true
X-Osso-Service=org.gnome.Games.AisleRiot
X-Osso-Type=application/x-executable
X-Ubuntu-Gettext-Domain=aisleriot

Step 3: Set as default

Open file manager and find any pdf file. Click properties. Open with. Show all. Choose Foxit Reader

That's it! Well sort of… This method works only if Foxit reader 4 is not running. If it is a "file not found" error pops up.

EDIT: This methods works fully with Foxit Reader 5 but you would need to install wine 1.5 for this version to work. Visit http://www.winehq.org/download/ubuntu to do so.