Monday, March 15, 2010

Icons for Windows Apps on Linux

As much as I prefer Mint/Ubuntu to Windows (and that's much), I've yet to find a directory synchronization application native to Linux that I like as much as Cockos Inc.'s (free) PathSync for Windows. Fortunately PathSync runs just fine under Wine emulation. That's doubly handy, since I still have a couple of Windows systems, and I can use the same sync app on all my machines.

PathSync saves it settings to files with a .pss extension, and on Windows you can double-click the icon for a .pss file and open it in PathSync. This works in Linux as well after I write a small script file to run PathSync under Wine, and associate the .pss extension with the script file.

On all machines, I sync to a USB drive. On the Linux boxes, I put all the .pss files, plus the script to run them, in a single directory under my home, and also throw in a script file to do a "master sync" by running the other script against every .pss file in the directory. Then I create a launcher for that master sync script and park it in the system panel for easy access.

That just leaves me with the task of associating useful icons with both the .pss files and the launcher for the master script. Turns out that's easier than I thought. Wine creates a .desktop file for PathSync in ~/.local/share/applications/wine/Programs/PathSync, which tells the OS among other things where to find the icon that PathSync provides to Windows. That icon shows up in ~/.local/share/icons, and I can associate it with the master script launcher as well. So everything looks the same under Mint and Ubuntu as under Windows.

Other Windows programs installed under Wine park their icons in the same directory, so they can also be associated with launchers and scripts.

No comments:

Post a Comment

Due to intermittent spamming, comments are being moderated. If this is your first time commenting on the blog, please read the Ground Rules for Comments. In particular, if you want to ask an operations research-related question not relevant to this post, consider asking it on Operations Research Stack Exchange.