Dear MSYS2 folks,

We are a very small group of Wine contributors, who want to improve
Wine in order to support MSYS2 and other development tool sets as more
as possible. Our vision is to support Linux/Unix developers to use
Wine as a development and testing platform when working on cross
platform projects like LibreOffice, Firefox and so on, we hope the
more developers using and testing Wine, the better Wine will be.

After several weeks of hacking, we have an initial proof of concept
here, bringing experimental support of MSYS2 on top of Wine:
https://github.com/fracting/wine-fracting/wiki/MSYS2-on-Wine

The current status is between a toy and a tool. For example, gcc.exe,
gdb.exe and clang.exe works, but git.exe doesn't work, we have to use
git from the host system; pacman.exe works but gpgme doesn't, we have
to disable gpg check in /etc/pacman.conf. makepkg works but xz fail on
multithreading, we need to tweak /etc/makepkg.conf to disable
mulitithreading xz; etc.

Besides above, many other things are currently buggy as well. But at
very least, start from today, with documented workarounds applied, one
can successfully build the `file` package in MSYS2 on top of Wine.

As a side note, Cygwin also partially works in the same configuration above.

Our naive goal is to build the full open source stack on top of Wine
in a couple of years. This is a very hard goal, we try to work from
small and easy tasks, we try to build from bottom to top, we try to
attack potential contributors.

As MSYS2 is so important inside the stack, we would love to here your
voice and maybe seeking for your help, which is appreciated very much:

* Could you compile and install Wine according to our temporary
documentation in our temporary branch, play with MSYS2, then share
your experience and opinion?
https://github.com/fracting/wine-fracting/wiki/MSYS2-on-Wine

For example, tell us how much do you hate wineconsole, or how much do
you hate the current bad performance of Wine ;-) Also, which bug is
currently most annoying to you?

In the coming weeks, we will improve our temporary hacks to be
accepted by main stream Wine or Wine-Staging, so normal users have no
need to compile Wine by themselves.

* Could you please let us know how Wine can help your development work
so that we can priority our tasks?

Which packages in MSYS2 repo are more high priority to you?
Which tools outside of MSYS2 repo are also important to you when
developing your project? For example according to my test x64dbg
(http://x64dbg.com/ ) works on Wine but not perfect, npackd
(https://npackd.appspot.com/ ) works on Wine but not fully tested,
chocolatey (https://chocolatey.org/ ) doesn't work yet and it is hard
to support in a short time, etc.

(No, don't tell us which proprietary Windows game is most important to
you, that's obvious not our goal <grin>)

* If you found a specific Wine bug trigger by a specific package in
MSYS2 repo and you happen to know that package very well, could you
help us diagnosis that Wine bug?

For example, currently helping for diagnosing mintty.exe in Wine is
great appreciated.

* Mentoring students to work on open source.

Our manpower is limited, and we understand MSYS2 folks' time is also
limited and precious. In order to grow up the open source community,
we are planing to attract and train university students to work on
open source projects, especially work on the idea of "full stack on
Wine".

Usually working on Wine is very hard because we are debugging on
closed source software like Microsoft Office or World of Warcraft.
Wine was too hard for newbie students, now we try to change the
difficulty a little bit by focus on supporting open source software
like MSYS2 instead of closed source software like WOW.

Students would be ask to run test suites from MSYS2 packages like
`file` or `bsdtar` on top of Wine, then fix test failures by hacking
on Wine, and fix valgrind warnings by hacking on MSYS2 packages. In
order to play this plan, we need mentors from both side, is any of you
possible to volunteer not too much of your time as a mentor, by
providing advise to newbie students on debugging MSYS2 packages, and
by reviewing patches from newbie students?

In the past we have a few experience on encouraging and mentoring new
students to work on open source project:

http://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=author&s=Jactry+Zeng
http://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=author&s=Zhenbo+Li
http://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=author&s=Shuai+Meng
http://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=author&s=Yonghao+Hu

But those above were not related to the plan of "full stack on Wine"
because we didn't have that idea in the past. Now we are considering
this plan seriously and planing to call for more students.

* If you have any successful experience to use Wine as a development
tool, please don't hesitate to share your story.

We are currently only a very small group. Any positive feedback would
encourage the motivation on this plan and convince more Wine
developers to work on the plan!

At this time, LibreOffice developers already use Wine as a test
platform: 
https://wiki.documentfoundation.org/images/e/ee/LibreOffice-FOSDEM-2013-MinGW-Wine.pdf

Firefox developers also use Valgrind + Wine to diagnose memory bugs
for Windows build.

Bitcoin community use Wine as a testing tool in Travis CI.

Git for Windows use Wine to test as well:
https://github.com/msysgit/msysgit/blob/master/wine-start.sh

And more projects use Wine to test their Windows build:
https://github.com/search?q=filename%3A.travis.yml+wine&type=Code&ref=searchresults

But we haven't here anybody who is crazy enough to develop Win32 code
on top of Wine directly yet ;-)

* Any other thoughts on how the two communities can help with each
other are great appreciated!


Thanks for your great work on MSYS2 and looking forward to your voice!

P.S.: I'm usually online in #msys2@OFTC and
#winehackers/#wine-staging/#wine-zh@freenode, my nickname is fracting
on IRC, feel free to ping me or mail me if you have any further
suggestion or request! However I live in GMT+8 so I may be away of
keyboard when you are online ;-)



-- 
Regards,
Qian Hong

-
http://www.winehq.org

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Msys2-users mailing list
Msys2-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to