On Sat, Mar 21, 2015 at 9:05 PM, Qian Hong <[email protected]> wrote:
> 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.
>

Sounds good. I think those packages you mention should be added as
PKGBUILD recipes to the MINGW-packages repository so that they're
available as binaries from pacman and also easy to build from source.

> 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.

OK, well it's a good start to have some things working and you can
start to file bugs (or fix things) with Wine for the things that don't
work yet.

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

Fixing Wine for MSYS2 leads naturally to Cygwin also working :-)

>
> 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.

I'd like to see ReactOS capable of using MSYS2 and all of that running
on Wine. That would be really cool I think as it'd be Open Source all
the way down.

>
> 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

I keep checking out the latest Wine on ArchLinux every so often - I
saw that the installer runs mostly quite cleanly two days ago. Would
it be possible for you to maintain an ArchLinux PKGBUILD that builds
from your branch? That would make it easy for us MSYS2'ers to test it
since we're quite used to PKGBUILDs.

I looked at your README.md, seems some tasks have a good overlap with
MSYS2, for example I'd really like to see:
"Setup build bot in Appveyor CI (for Windows, as comparison build) and
Travis CI (for Linux, with Xvfb). Run regression tests for every
commit to catch bugs in first minute.", (esp. the Appveyor part)
happen ASAP.

>
> 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?

I think once some of the major bugs are fixed it will be more pleasant
to try doing more stuff in Wine. If it ran at e.g. > 50% of the speed
and mostly everything worked then I'd occasionally develop PKGBUILDs
in that environment for MSYS2, why not eh? I think once you reach this
stage, hopefully a lot of GNU/Linux users/developers will consider
this approach for their Windows port too.

>
> 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?

Appveyor :-)

>
> 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.

We are the polar opposite to chocolatey who simply repackage binaries;
their approach is of no interest to us and their description of
themselves as "like apt-get for Windows" is IMHO, silly, it ignores
the most important bit; that apt-get installs Open Source packages
that the user can modify and re-build. I'm guessing npackd is the same
sort of deal so neither would be of much interest to Windows-based
Open Source developers. Certainly, the MSYS2 project would never
recommend its users to install another package manager when we have
Pacman. Making the MSYS2 build infrastructure work well is the most
important thing from my perspective, so anything involved in that,
git, mintty, python (of which we have 4), perl (of which we have 2)
and the base-devel package group should be prioritised. For me
personally, I like an IDE when debugging and I use the MSYS2's
Qt-Creator package for that, so if this can be run as well, then I'd
be very happy.

>
> (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?

Sure, once we get to the "mostly usable" state I'll be happy to try,
though I'm not familiar with Wine's codebase.

>
> 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?

Having the source available and easily build-able should be a great
help. You can test theories and fixes quickly that way. We'll help
anyone in #msys2 or on the mailing list provided they are polite,
patient and willing to take our advice. Not all of our PKGBUILDs work
correctly with options=('debug' '!strip') but many do. That's the best
way to investigate problems.

>
> 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!
>

I started doing a little work to get a PKGBUILD for Firefox but I got
very busy again with my job. I think one for LibreOffice would be good
too for both of us.

>
> 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 ;-)
>

If I think of anything more I'll reply.

>
>
> --
> 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
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/msys2-users

------------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to