Hi all,

        I wrote a new imgact function for FreeBSD to start wine
        automatically as a sort of an "interpreter" for windows
        binaries.
        Obviously the interpreter does not have to be exactly wine.
        You can change the program using a sysctl variable. You can
        also use another sysctl variable to tell the kernel whether
        the emulator requires windows binaries to be compatible with
        the host processor architecture.

        The idea of allowing systems to use wine automatically as
        a shell style "interpreter" for windows binaries was born
        as a kind of BSD advocacy stunt. It was simply nice to be
        able to tell people my system was able to do something they
        had never expected.
        People kept telling me they are stuck with windows, because
        they are unable to use their everyday applications in any
        other system. When I have told about things like wine to help
        with their problem people usually start complaining they are
        unable to do any special tricks to start their programs in
        an emulator. So, they do not know how to do it and they do
        not really want to know. Obviously what they need is some
        mechanism which "knows" instead of the user.
        This lead me to thinking that the analogy with emulators and
        shells is obvious. With the BSD imgact system one could just
        add another imgact module logically similar to the one used
        for the shell scripts. I just had to write one.
 
        The patch is available here...

        <http://www.mawit.com/~jau/imgact_wine-4.9.patch>

        The diffs were done against 4.9-STABLE sources, but originally
        the imgact_wine function was created in a 3.5.1 environment.
 
        There are some things which might have to change.
 
        (1) Currently the CPU architecture recognition does not work
        for any other system but iX86, because the processor type
        macros i386, alpha, ppc, etc. seem to no longer exist during
        4.9 kernel compilation.
        Actually I would like to get all those i386, alpha, ppc, and
        what-not back!!!
 
        (2) In case there is a w32 emulator within the kernel itself,
        as I believe some people try to tackle the same issue in
        NetBSD, there is a need for one more sysctl variable to tell
        the kernel whether to use the internal emulator or an external
        one like wine.
 
        (3) Lacking any information of a better place to put my w32
        related sysctl variables I put them in the kernel branch
        (kern.w32xxx). They might have to be moved somewhere else.
 
        Anyhow, this is such a small change to the system and so easy
        to switch on and off using sysctl I see no good reason to not
        support this functionality. OTOH the advocacy value for novice
        users with windows backgrounds might be quite remarkable.
        Any GUI oriented program launcher would instantly become able
        to handle also w32 binaries without any special knowledge of
        wine or windows binary formats. That again is what any novice
        with a windows background expects.

        If you find the idea worthy to use also in your systems, feel
        free...
        You may use it or abuse it, and if it breaks you get to keep
        the pieces.

 
        Cheers,
                // jau
.---  ..-  -.-  -.-  .-    .-  .-.-.-    ..-  -.-  -.-  ---  -.  .  -.
  /    Jukka A. Ukkonen,                            Mawit Ltd, Finland
 /__   M.Sc. (sw-eng & cs)                    (Phone) +358-500-606-671
   /   Internet: Jukka.Ukkonen(a)Mawit.Com      (Home) +358-9-6215-280
  /    Internet: ukkonen(a)nic.funet.fi
 v     Internet: jau(a)iki.fi               

+ + + + My opinions are mine and mine alone, not my employers. + + + +
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to