[Wine] My first attempts at Wine

Martin Gregorie martin at gregorie.org
Sat Apr 30 05:59:20 CDT 2011


On Fri, 2011-04-29 at 20:06 -0500, DaveK9 wrote:
> Yes, I know I should really learn about Linux and its applications,
> but I have a lot of Windows software, and I have to keep doing "real
> work", so it would be a lot easier if I could just shift OS and keep
> all the familiar applications running, and migrate slowly over time.
>
IME the easiest way to do that is to network two PCs, leave one running
XP and install Linux on the other. It doesn't have to be expensive
because Linux needs a lot less hardware than Windows: I'm running
current RedHat Fedora distros on two machines:
- a Lenovo R61i laptop (1.6 MHz core Duo, 1GB RAM, 160GB hdd)
- an IBM NetVista which is at least 15 years old (I bought it used in
  2004) - 866 MHz P3, 512 MB RAM, 160 GB hdd

Both machines run a full graphical setup (Gnome desktop) as software
development boxes and the NetVista is also running an internal Apache
webserver, the PostgreSQL database, CVS source management and BOINC (for
the SETI at Home and MalariaControl co-operative processing projects). Both
machines are fast enough to be well usable.

Besides, Linux is a much better network OS than Windows and you really
need a local network to get to grips with its network features.
 
>  Ideally the OS would be invisible, with a Wine layer on top, and an
> XP desktop on top of that.
> 
I don't think you've understood the set-up. There is no Wine layer and
no XP desktop (unless you're running XP in a VM). 

You're looking at a simple Gnome desktop running in a native Linux
environment. Wine is best thought as a shim that fits between the Linux
kernel and a Windows app whose purpose is to translate Windows API calls
into Linux service calls and to support Windows features which have no
equivalent in Linux, e.g. the Registry. Thats essentially all it does
bar a few convenience bells and whistles. The 'virtual desktop' is
merely another X-term window managed by Gnome that's there to provide a
1:1 pixel map to applications that, for one reason or another, can't
deal with the real screen size when running in full-screen mode.

All Wine code runs in user-space, which is why it won't help with
Windows drivers - under Linux all drivers run in kernel-space under the
direct control of the kernel and are accesses via kernel service calls.

> The Java Runtime was a native version, so its problems didn't really
> deserve to be mentioned under Wine problems, but it does show why I
> need Wine to help me migrate.
>
You should be using a native Java runtime (either OpenJava or Oracle
Java). The only reason for deviating from this is if you have
applications that call native JVM extensions via the JNI interface.
Remember that Java is a WORA (Write Once, Run Anywhere) programming
system, so a properly written native Java program will run under any
standards compliant JRE on any OS.
 
> Why does Linux check for loose ends and then leave it up to me to fix
> them ? Whoever wrote the code must surely know where to find the
> missing things better than I do.
> 
Because there are no standards for where even a well-written Windows
application should put configuration parameters, e.g. in the Register or
configuration file(s) and if the latter where should it be, or DLLs etc.
And, many Windows apps are remarkably badly written and break even the
Windows rules, such as they are.  In view of this its unreasonable to
expect anything apart from the application's installer to understand
where a Windows app expects to find this its components. Kindly remember
that all too many Windows app installers are very badly written too.
 
Linux has conventions for where to place this stuff that are generally
followed and, in addition, has good and very widely used package
management tools.

> How do I know if I am running Wine from root, and if I am, how do I
> not do that ?
>
If you've logged in as root or are using sudo to run things you're
running as root.

You really need to get yourself a Linux book and read at least the
basics or you'll piss people off by asking too many questions which you
should already know the answers to. If you consider yourself a Windows
power user or know any OS at the command line level try 'Linux in a
Nutshell'. Otherwise you'll probably need something a little less terse.


Martin





More information about the wine-users mailing list