Just wanted to give everyone a heads up..
I followed up with Jeremy's email a few months ago about a publisher wanting to put together a book on Wine. Yep, I have no life and 400 pages can't be that hard to write. Well, we started the ball rolling and now it looks like it's going to happen. I should be signing the contract in a few days. There's lots of details I thought you guys might be interested in.
You'll find the chapter outlines[1] at the bottom of this email. This book is oriented at users and Winelib developers. It's not a book about how to hack Wine internals. One thing I'll try to keep in mind as I'm writing is how to entice people to get involved with development. I think it's important to try to get people involved in the community.
I'm not going to be writing this alone. Ira Krakow, a Boston native, will be writing the Winelib parts. I didn't feel comfortable doing those and Ira had approached the publisher separately about doing a book on porting Windows apps. We've chatted a few times and I'm confident that given his experience he'll do well. I'm cc:ing him on this email by way of introduction and I'm sure at some point in the future he'll have a question or two (or 50.)
The publisher is Prentice-Hall. Thus far they've been excellent to work with and they really seem to just "get it" when it comes to open source projects. Specifically, this book will fall into their Bruce Perens' Open Source Series [2]. After the book is published, it will be available for a short time only in a dead tree version. After a few months it will be available under the Open Publication License [3]. It's a good license and contains many things I think are important.
Also, I'd like to thank everyone who reviewed the initial proposal. That process happened really fast and I wasn't even aware it had been sent out for review until after you guys got the emails. There was lots of good feedback in there and I incorporated a lot of it in the final proposal that got approved (you may even notice some changes in the chapters below as a result.) Some other things you guys mentioned aren't specifically in this chapter outline, but I made some notes as to what needs to be addressed. Thanks again.
Anyone who didn't see that proposal, you didn't miss much. It was lots of marketspeak. The key is the chapter outline below, so if you have any comments about what I'm overlooking, _please_ let me know.
[1] Chapter outlines:
Title: "Wine: Running Windows Applications on Linux" [4] 1. Wine Introduction[15 pages] What is Wine? How Can Wine Help You? An Introduction to Windows Components Overview of Wine's Components Recent Changes to Wine A History of the Wine Project How Can You Get Wine?
2. Installing Wine [20 pages] System Requirements Bundled Versions Downloading Packaged Versions Accessing CVS Compiling and Installing Wine Uninstalling Wine
3. Configuring Wine [35 pages] Introduction to Winecfg Windows Versions Libraries: Native vs. Builtin Application Settings Drive Configuration Serial and Parallel Ports Network Shares Fonts Printing Database Access
4. Installing Applications [35 pages] Basic Installation Common Installation Pitfalls Resources to Help With Installation Adding Native Libraries Installing Games Copy Protection Pitfalls Using Native DirectX
5. Installing Common Programs [35 pages] Microsoft Office Adobe Photoshop File Utilities Peer-to-Peer Applications Further Help: The Wine Application Database
6. Linux, Wine, and Windows Integration [40 pages] Integrating with Desktop Environments KDE and GNOME Integration Wine Tools Introduction Wineshelllink Wineprefixcreate Regedit Understanding the Wine Registry Changing the Registry Importing an Existing Registry Using an Existing Windows Partition
7. Enterprise Deployment [30 pages] Licensing Considerations Understanding Windows and Wine Security Automating Deployment of Applications Scripting Wine Citrix Killer: Wine and the Linux Terminal Server Project Performance Tweaks Reporting Bugs and Working with Developers
8. Commercial Alternatives: CodeWeaver's CrossOver Office [25 pages] Introduction to CrossOver Office Downloading and Installing CrossOver Configuring CrossOver Installing Applications with CrossOver
9. Commercial Alternatives: TransGaming's Cedega [25 pages] Introduction to Cedega Downloading and Installing Cedega Configuring Cedega Installing Games with Cedega
10. Introduction to Winelib [20 pages] Introduction to Winelib Licensing Considerations Portability Considerations Getting Started Understanding the Winelib toolkit A Roadmap for Porting Installation of the MinGW Compiler
11. Using Winelib for Porting [45 pages] Installation of the MinGW compiler Moving From Visual Studio to MinGW Tips and Tricks for Changing Compilers Moving Development to Linux Using Winemaker Using the Wine Resource Compiler Using the Wine Message Compiler Linking it Together: winegcc Debugging with the Wine debugger
12. Case Study: Porting a To-Be-Determined Application [30 pages]
13. Advanced Porting Techniques [25 pages] C++ Problems Working with Microsoft Foundation Classes Working with Templates Moving From Visual Studio to MinGW
14. dvanced Library Techniques [20 pages] Getting Started: Why Share Libraries? Using Linux Libraries with Winelib Applications Using Windows Libraries with Winelib Applications Why Wine is not a Shared Library
[2] Peren's Open Source Series info: http://phptr.com/promotion/1484?redir=1 [3] OPL license: http://www.opencontent.org/openpub/ a good discussion of it: http://lwn.net/Articles/108250/ [4] With regards to the title, I'll be sure to mention in Wine runs on other operating systems.
PS. This still leaves the door open for someone to write an O'Reilly book.
PPS. I'd like to think this won't affect WWN because I really have no life. However, that's not too realistic. Hopefully WWN won't suffer too much.
- Brian Vincent