Skip to main content

Windows app on Ubuntu[Feisty Fawn]

Although I rarely run Windows these days [still use for FM2007], others Windows programs I prefer to run with Wine on my Ubuntu.I'm not try VMWare yet because I worry about system resource.

Installing Wine
Add extra repos. deb http://wine.budgetdedicated.com/apt feisty main
Add the repository key, get package cache update and install Wine.
pnix@pnix-a7n:~$ wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
OK
pnix@pnix-a7n:~$ sudo aptitude update
Get:1 http://th.archive.ubuntu.com feisty Release.gpg [191B]
.
.
Fetched 50.1kB in 11s (4212B/s)
Reading package lists... Done
pnix@pnix-a7n:~$ sudo aptitude install wine alltray
Reading package lists... Done
.
.
Setting up alltray (0.69-1) ...

Setting up wine (0.9.36~winehq0~ubuntu~7.04-1) ...

pnix@pnix-a7n:~$

Note: alltray is for dock app icon on system tray.

Install Windows apps
get executable file(.exe)
use terminal cd to that dir and Type wine [exe file]

This will start the .EXE using Wine. If it is an installer, it should then run as it would in Windows. If the application asks for a directory to install the application to, select put it under C:\Program Files. The fake C drive is created under .wine after a user runs wine in the terminal for the first time.

Here I will show what I do to run utorrent on Feisty.
pnix@pnix-a7n:~$ mkdir .utorrent
pnix@pnix-a7n:~$ cd .utorrent
pnix@pnix-a7n:~/.utorrent$ wget http://download.utorrent.com/1.6/utorrent.exe
--18:30:36-- http://download.utorrent.com/1.6/utorrent.exe
=> `utorrent.exe'
Resolving download.utorrent.com... 72.20.34.146
Connecting to download.utorrent.com|72.20.34.146|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 174,163 (170K) [application/octet-stream]

100%[=================================================================================================================>] 174,163 35.26K/s ETA 00:00

18:30:42 (35.20 KB/s) - `utorrent.exe' saved [174163/174163]

pnix@pnix-a7n:~/.utorrent$ wget http://img400.imageshack.us/img400/5093/utorrenteh8.png
--18:31:25-- http://img400.imageshack.us/img400/5093/utorrenteh8.png
=> `utorrenteh8.png'
Resolving img400.imageshack.us... 209.172.60.7
Connecting to img400.imageshack.us|209.172.60.7|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 25,853 (25K) [image/png]

100%[=================================================================================================================>] 25,853 20.83K/s

18:31:27 (20.80 KB/s) - `utorrenteh8.png' saved [25853/25853]

pnix@pnix-a7n:~/.utorrent$ wine utorrent.exe


You can also create menu by create /usr/share/applications/utorrent.desktop file
[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
Name=uTorrent
GenericName=BitTorrent Client
Icon=/home/[username]/.utorrent/utorrenteh8.png
Exec=alltray --icon /home/[username]/.utorrent/utorrenteh8.png wine /home/[username]/.utorrent/utorrent.exe
Path=
Terminal=false
MimeType=
Categories=GNOME;Application;Network;

ref:
Ubuntu Community Doc
HOWTO: wine + uTorrent with native Tray icon

Comments

Anonymous said…
worked great for me, thanks

Popular posts from this blog

Fixing sendmail take a long time to start

I notice that my database box[FC6+Oracle10.2] take along time to startup. Sendmail and sm-client very very slow to start[ about 5 minutes ]. There's something wrong in /etc/hosts file. 'newalises' command take long time to update and finish with error below. [root@ora10g ~]# newaliases WARNING: local host name (ora10g) is not qualified; see cf/README: WHO AM I? /etc/aliases: 76 aliases, longest 10 bytes, 765 bytes total [root@ora10g ~]# cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost 192.168.1.55 ora10g [root@ora10g ~]# To fix this, custom hostname[ora10g] need to append to localhost line in /etc/hosts. [root@ora10g ~]# cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost ora10g 192.168.1.55 ora10g [root@ora10g ~]# newaliases /etc/alia

Too many open files

Last week tomcat log file report many error about "Too many open files" when it has high traffic. Some in catalina_log say 2007-04-07 16:13:40 HttpProcessor[80][272] Starting background thread 2007-04-07 16:13:40 HttpConnector[80] accept: java.net.SocketException: Too many open files and here is from localhost_log 2007-04-07 16:13:40 StandardWrapperValve[myservlet]: Servlet.service() for servlet myservlet threw exception java.io.FileNotFoundException: /home/log/mylog_070407.log (Too many open files) This is because too many file descriptors're opened by tomcat. File descriptor can be limited in both system level and shell level. To check maximum number of fd in system type 'cat /proc/sys/fs/file-max'. In my case it is 65536(someone said it should set to 200000). Tomcat error when try to open socket number 272 so I think 65536 is ok for me for now. Anyway if u want to set it add 'fs.file-max = 200000' to /etc/sysctl.conf pnix@pnix-a7:~$ cat /proc/sys/fs/fil

using Class.getResource() load resource file in Eclipse

There are many ways to load resource file in java app. What sun recommended is using Class.getResource(" resource_name ") or Class.getResourceAsStream(" resource_name ") then you will get URL and InputStream respectively. If resource_name is specified without "/", it will be prepend with Class package. So resource file must be in same place[folder structure] as the Class. What I love to do is call getResource() with "/" and put resource file at the root of package. This way i can have separate resource folder. below is in Eclipse, 1. From Package explorer right click src folder->click import 2. In import dialog, Choose General->File System ->next 3. from directory:->Browse to your resource folder. 4. to folder:-> I add "resource" as a folder name under src folder. then click "Finish". In the code, load resource with this.getClass().getResource("/resource/buttons1.png") or this.getClass().getResourceAs