Hi,
we are happy to announce an initial version of our Mac OS X >= 10.8 builds. So far the packages have not yet received that much testing, so please give them a try, and report any issues you encounter.
The packages are available at: https://dl.winehq.org/wine-builds/macosx (Some mirrors don't show all files yet, just append random arguments to the url like ?whereismypackage to trick the cache)
For unexperienced users, it is recommended to install Wine using the *.pkg files. Just double-click on the package, and the usual Mac OS X installer wizard should open. As pointed out by Austin, I am not a registered Apple Developer and therefore the packages aren't signed. This will result in an error if you configured gate keeper to block unsigned packages. The installation itself should be self-explaining, so I will not go into too much detail here. It is possible to install the package either for all users (needs administrator privileges), or just for your current user. If you haven't installed XQuartz >= 2.7.7 yet (our package supports the x11drv as well as the macdrv), the installer will complain. Just install the missing dependency, and restart the installation, if this is the case.
After the installation is finished, you should find an entry "Wine Staging" or "Wine Devel" in your Launchpad. By clicking on it, a new Terminal window opens with a short introduction into some important wine commands. You can now directly start wine/winecfg/... from the Terminal, as the PATH variable is set correctly. For user convenience, the package also associates itself with all *.exe files, which means you can run windows executables just by double-clicking on them. This might not work for all executables though, since OS X doesn't seem to pass the current working directory to the "Open With" handler.
Some experienced users on the other hand might prefer a raw wine version without those gimmicks, so we also provide tarball archives. They basically contain the same files (except packaging related stuff), and can be unpacked in any directory. There is no need to set DYLD_* environment variables, all paths are relative, so it should work as long as the directory structure is preserved (you can skip the /usr prefix though using --strip-components 1). Also make sure to install XQuartz >= 2.7.7 in this case.
For those who are wondering, here a couple more technical aspects:
-------- Dependencies --------
The following dependencies are shipped as precompiled *.dylib-libraries directly with Wine:
* libjpeg-turbo * liblcms2 * liblzma * libopenal-soft * libtiff * libxml2 * libxslt * [libtxc-dxtn-s2tc] This is the patent free implementation of dxtn as used by many linux distros. Only included in Wine Staging.
-------- Scripts --------
You can find all scripts and build files at https://github.com/wine-compholio/wine-packaging/tree/master/macosx Those files allow you to build the packages on Debian Jessie as host system, starting from a patched clang compiler (to support ms_hook_prologue), tools necessary to create OS X packages, cross compilation of the Wine build dependencies and finally cross compiles Wine itself. You only have to provide MacOSX10.8.sdk.tar.xz and xquartz-2.7.7.tar.xz, everything else is built from source. However, the generated scripts are meant to be run inside our build VMs, so realistically speaking it requires some effort to setup such a system and is not suitable for an average user.
------------------------
There are also some features I am planning to implement in the future (depending on how much time I have):
-------- Auto updater --------
There is no common system to provide automatic updates for packages besides the Store, so I think it would be good to come up with some solution for this problem. Especially if the user installed the package into his home directory, he could easily update it without entering a password. I don't have much knowledge about objective-c or cocoa, so if someone else wants to implement this, I am more then glad to add it as an optional feature to the installer.
-------- Desktop integration --------
So far Wine does not create desktop entries that are shown in Launchpad, but instead creates useless entries at ~/.local/share/applications/. I think it shouldn't be too hard to dynamically create a proper entry at ~/Applications/ using a wrapper like I did for the main wine executable.
-------- Package signing? --------
This is basically something I could fix in 5 minutes, but I don't feel like paying 99$/year if I basically don't use Mac OS X myself.
------------------------
Happy new year and happy testing! :)
Best regards, Michael
Great! this will definitely make wine more popular for OSX users. I was able to get the pkg installed and running apps within a minute on OSX 10.10 :D (fwiw, used the PCIE SSD so your results may vary.)
As for the package signing, many people won't find the unknown developer warning very friendly while opening the pkg. But on the other hand if we don't see those users complaining about it then it's not that big of an issue I feel. But I still think however that a developer license would be nice to have and could potentially broaden the audience even more.
Cheers, Aaryaman
On Fri, Jan 1, 2016 at 7:24 AM, Michael Müller michael@fds-team.de wrote:
Hi,
we are happy to announce an initial version of our Mac OS X >= 10.8 builds. So far the packages have not yet received that much testing, so please give them a try, and report any issues you encounter.
The packages are available at: https://dl.winehq.org/wine-builds/macosx (Some mirrors don't show all files yet, just append random arguments to the url like ?whereismypackage to trick the cache)
For unexperienced users, it is recommended to install Wine using the *.pkg files. Just double-click on the package, and the usual Mac OS X installer wizard should open. As pointed out by Austin, I am not a registered Apple Developer and therefore the packages aren't signed. This will result in an error if you configured gate keeper to block unsigned packages. The installation itself should be self-explaining, so I will not go into too much detail here. It is possible to install the package either for all users (needs administrator privileges), or just for your current user. If you haven't installed XQuartz >= 2.7.7 yet (our package supports the x11drv as well as the macdrv), the installer will complain. Just install the missing dependency, and restart the installation, if this is the case.
After the installation is finished, you should find an entry "Wine Staging" or "Wine Devel" in your Launchpad. By clicking on it, a new Terminal window opens with a short introduction into some important wine commands. You can now directly start wine/winecfg/... from the Terminal, as the PATH variable is set correctly. For user convenience, the package also associates itself with all *.exe files, which means you can run windows executables just by double-clicking on them. This might not work for all executables though, since OS X doesn't seem to pass the current working directory to the "Open With" handler.
Some experienced users on the other hand might prefer a raw wine version without those gimmicks, so we also provide tarball archives. They basically contain the same files (except packaging related stuff), and can be unpacked in any directory. There is no need to set DYLD_* environment variables, all paths are relative, so it should work as long as the directory structure is preserved (you can skip the /usr prefix though using --strip-components 1). Also make sure to install XQuartz >= 2.7.7 in this case.
For those who are wondering, here a couple more technical aspects:
-------- Dependencies --------
The following dependencies are shipped as precompiled *.dylib-libraries directly with Wine:
* libjpeg-turbo * liblcms2 * liblzma * libopenal-soft * libtiff * libxml2 * libxslt * [libtxc-dxtn-s2tc] This is the patent free implementation of dxtn as used by many linux distros. Only included in Wine Staging.
-------- Scripts --------
You can find all scripts and build files at https://github.com/wine-compholio/wine-packaging/tree/master/macosx Those files allow you to build the packages on Debian Jessie as host system, starting from a patched clang compiler (to support ms_hook_prologue), tools necessary to create OS X packages, cross compilation of the Wine build dependencies and finally cross compiles Wine itself. You only have to provide MacOSX10.8.sdk.tar.xz and xquartz-2.7.7.tar.xz, everything else is built from source. However, the generated scripts are meant to be run inside our build VMs, so realistically speaking it requires some effort to setup such a system and is not suitable for an average user.
There are also some features I am planning to implement in the future (depending on how much time I have):
-------- Auto updater --------
There is no common system to provide automatic updates for packages besides the Store, so I think it would be good to come up with some solution for this problem. Especially if the user installed the package into his home directory, he could easily update it without entering a password. I don't have much knowledge about objective-c or cocoa, so if someone else wants to implement this, I am more then glad to add it as an optional feature to the installer.
-------- Desktop integration --------
So far Wine does not create desktop entries that are shown in Launchpad, but instead creates useless entries at ~/.local/share/applications/. I think it shouldn't be too hard to dynamically create a proper entry at ~/Applications/ using a wrapper like I did for the main wine executable.
-------- Package signing? --------
This is basically something I could fix in 5 minutes, but I don't feel like paying 99$/year if I basically don't use Mac OS X myself.
Happy new year and happy testing! :)
Best regards, Michael
On Fri, Jan 1, 2016 at 7:24 AM, Michael Müller michael@fds-team.de wrote:
For user convenience, the package also associates itself with all *.exe files, which means you can run windows executables just by double-clicking on them.
Not always, atleast in my case. I had a third party app installed which had already associated itself with *.exe files, and after installing the package it didn't change the default app to open by double clicking to wine. Instead I had to use the "Open with" option by right clicking on the .exe.
This might not work for all executables though, since OS X doesn't seem to pass the current working directory to the "Open With" handler.
Does that depend on the location of the executable or the executable itself? If it's the latter, can you give any example apps which have such executables?
Cheers, Aaryaman
Am 01.01.2016 um 09:08 schrieb Aaryaman Vasishta:
Not always, atleast in my case. I had a third party app installed which had already associated itself with *.exe files, and after installing the package it didn't change the default app to open by double clicking to wine. Instead I had to use the "Open with" option by right clicking on the .exe.
If I remember correctly OS X saves the first App, which installs an "Open With" handler for a file extension / mime type, as the default handler. If you have multiple applications installed, you have to set Wine as the default application, but there is nothing I could change in the installer.
Does that depend on the location of the executable or the executable itself? If it's the latter, can you give any example apps which have such executables?
Basically all non portable applications on Windows, which ship additional files, rely on the current working directory being set correctly. However, many applications need to be installed into the wineprefix first and their installer is often self contained, so it should work for the usual case that you downloaded some installer file. As an Improvement I could also set the working directory to the directory containing the file, which should be correct in 95% of the cases, even if you double click on a file inside of a wineprefix.
Regards, Michael
On Fri, 1 Jan 2016 02:54:48 +0100 Michael Müller michael@fds-team.de wrote:
we are happy to announce an initial version of our Mac OS X >= 10.8 builds. So far the packages have not yet received that much testing, so please give them a try, and report any issues you encounter.
This is probably a dumb question, but since I know nothing about Macs but have to support Mac users, I have to ask it. I noticed that, unlike your instructions for the Linux packages, you didn't mention anything about being able to install both the development and staging packages on the same machine. Does that mean it's not possible to have both packages installed on Mac OS X, or that it is possible, but nothing special needs to be done? Also, are there potential conflicts with previously installed versions of Wine that users need to be warned about? I'm thinking of Wine installed via Macports, Fink, or Homebrew in particular.
Am 02.01.2016 um 16:49 schrieb Rosanne DiMesio:
On Fri, 1 Jan 2016 02:54:48 +0100 Michael Müller michael@fds-team.de wrote:
we are happy to announce an initial version of our Mac OS X >= 10.8 builds. So far the packages have not yet received that much testing, so please give them a try, and report any issues you encounter.
This is probably a dumb question, but since I know nothing about Macs but have to support Mac users, I have to ask it. I noticed that, unlike your instructions for the Linux packages, you didn't mention anything about being able to install both the development and staging packages on the same machine. Does that mean it's not possible to have both packages installed on Mac OS X, or that it is possible, but nothing special needs to be done? Also, are there potential conflicts with previously installed versions of Wine that users need to be warned about? I'm thinking of Wine installed via Macports, Fink, or Homebrew in particular.
The Wine Devel and Wine Staging packages can be installed in parallel. When started correctly (using Launchpad or the Dock), they will work no matter which other Wine versions are on the same system. Technically this is implemented by prepending the $PATH environment variable with the installation directory of our Wine version.
Please note that it is very important here that users use the Launcher, typing "wine" in a regular terminal will either not work, or run a Wine version installed via other sources like Macports/Fink/Homebrew. At least Homebrew installs to /usr/local, which means that "wine" typed in a regular terminal has a different meaning than "wine" typed in a terminal spawned by clicking on "Wine Devel" or "Wine Staging". Only in the second case, the WineHQ packages will be used.
In order to start WineHQ from a terminal without going through our Launcher, the user either has to:
* Prepend $PATH himself with the installation directory. For an installation into the home directory, the following command should work:
export PATH="$HOME/Applications/Wine Devel.app/Contents/Resources/wine/bin:$PATH"
export PATH="$HOME/Applications/Wine Staging.app/Contents/Resources/wine/bin:$PATH"
* Use the Mac OS X specific "open" command, which will search for the executable by program name.
open -a "Wine Devel" program.exe open -a "Wine Devel" --args winecfg open -a "Wine Staging" program.exe [...]
The only (non-critical) "conflict" is that the Devel and Staging packages (and also Play On Mac) register themselves for .exe files. The first installed application is then the default application to open .exe files. But like on all other systems, you can do a right click on such a file and use the "Open With" menu entry to select the application you want to use. The user can also change the default application for the .exe extension, if they want to always use Wine Devel or Wine Staging.
Regards, Michael