A case against Cygwin support

Content and general development discussion, including quest scripts and server code. The Mana World is a project comprising the original tmwAthena server & a designated improved engine server based on evolHercules


Forum rules

This forum houses many years of development, tracing back to some of the earliest posts that exist on the board. Its current use is for the continued development of the server and game it has always served: The Mana World.

User avatar
o11c
Grand Knight
Grand Knight
Posts: 2262
Joined: 20 Feb 2011, 21:09
Location: ^ ^

A case against Cygwin support

Post by o11c »

Note: this is *only* about the server, NOT about the client.

It is my opinion, speaking in my official capacity, that it is not reasonable to maintain support for tmwa on cygwin (which is currently the only method of compiling and running it on windows).

Reasons:
  • Currently, there is some very ugly, bad-performing code that in the network and filesystem. I have a prototype that works on Linux, and could probably be ported to BSD if anyone needs it, but Windows does not support the underlying functions. This is the primary reason.
  • It is hard to maintain two separate versions of code, especially when it's not being tested.
  • Compiling software is harder in general on windows. For example, what if I need to add dependencies?
Rebuttals:
  • Practically no one uses windows to run tmwa anyway.
  • Client data, which is done by less technically-inclined users, can be tested without running your own server.
  • We have the test-server.
  • There are options for people who still use Windows as their primary system.
Former programmer for the TMWA server.
User avatar
Big Crunch
TMW Adviser
TMW Adviser
Posts: 1056
Joined: 16 Dec 2009, 22:52

Re: A case against Cygwin support

Post by Big Crunch »

o11c wrote:
[*] There are options for people who still use Windows as their primary system.[/list]
what are these options? I think it would be important to know if we drop cygwin compatibility.
sexy red bearded GM
Ablu
Manasource
Manasource
Posts: 288
Joined: 23 Jul 2011, 08:31
Location: Germany

Re: A case against Cygwin support

Post by Ablu »

I would be against cygwin too. I would be for native windows support without the need to install cygwin stuff.

Then windows users could download a zip with all server stuff, run the server and start testing. I would not be impressed if that would make a lot more people starting to experiment with this stuff. Dropping windows support is a really bad idea i think.
Last edited by Ablu on 02 Apr 2013, 18:42, edited 1 time in total.
User avatar
Crush
TMW Adviser
TMW Adviser
Posts: 8046
Joined: 25 Aug 2005, 16:08
Location: Germany

Re: A case against Cygwin support

Post by Crush »

There is the option to install VirtualBox, create a virtual machine, install a Linux distribution in it and install tmwAthena.

Providing a VM image where this is already set up (including Git etc.) might be a comfortable introduction for new developers.
  • former Manasource Programmer
  • former TMW Pixel artist
  • NOT a game master

Please do not send me any inquiries regarding player accounts on TMW.


You might have heard a certain rumor about me. This rumor is completely false. You might also have heard the other rumor about me. This rumor is 100% accurate.
User avatar
AnonDuck
TMW Adviser
TMW Adviser
Posts: 653
Joined: 02 Jan 2009, 04:19
Location: Catland

Re: A case against Cygwin support

Post by AnonDuck »

Are there any simple wrapper libraries you could use around these functions that are more portable? The phrase "Ported to BSD" makes me cringe.
Head of the TMW Illuminati
User avatar
Big Crunch
TMW Adviser
TMW Adviser
Posts: 1056
Joined: 16 Dec 2009, 22:52

Re: A case against Cygwin support

Post by Big Crunch »

Crush wrote:There is the option to install VirtualBox, create a virtual machine, install a Linux distribution in it and install tmwAthena.

Providing a VM image where this is already set up (including Git etc.) might be a comfortable introduction for new developers.
that actually sounds like a viable solution.
sexy red bearded GM
User avatar
Jenalya
TMW Adviser
TMW Adviser
Posts: 717
Joined: 22 Sep 2010, 19:28

Re: A case against Cygwin support

Post by Jenalya »

Ablu wrote:I would be against cygwin too. I would be for native windows support without the need to install cygwin stuff.

Then windows users could download a zip with all server stuff, run the server and start testing. I would not be impressed if that would make a lot more people starting to experiment with this stuff. Dropping windows support is a really bad idea i think.
I agree with this, and if native windows support is not possible/feasible, I think having some kind of windows support is better than no support for it at all.
Since o11c mentioned it's hard to keep support without testers for it, do we have people interested in helping to maintain and test windows support of tmwa?

Independently from this discussion, I like the idea about a vm ready for development and testing.
Ablu
Manasource
Manasource
Posts: 288
Joined: 23 Jul 2011, 08:31
Location: Germany

Re: A case against Cygwin support

Post by Ablu »

I think that the reason that you do not have active users for Windows is that it is not very nice to setup. So I guess it is time to try to get some Windows users by making that easier.
User avatar
Big Crunch
TMW Adviser
TMW Adviser
Posts: 1056
Joined: 16 Dec 2009, 22:52

Re: A case against Cygwin support

Post by Big Crunch »

i would be willing to help in any way i can. i have no idea how to push and pill things but i can test and see if a solution works in a local environ
sexy red bearded GM
Frost
TMW Adviser
TMW Adviser
Posts: 851
Joined: 09 Sep 2010, 06:20
Location: California, USA

Re: A case against Cygwin support

Post by Frost »

Ablu wrote:I think that the reason that you do not have active users for Windows is that it is not very nice to setup. So I guess it is time to try to get some Windows users by making that easier.
I've talked with some people on IRC who were installing into Cygwin. I agree, it discourages some people.

I like the idea of a VirtualBox image. We'd need to do a solid job maintaining a small (easy to download and install) VM. I've built server images before, and I could help.

I'd like to hear from some of the Windows people who would be the audience for this.
You earn respect by how you live, not by what you demand.
-unknown
User avatar
o11c
Grand Knight
Grand Knight
Posts: 2262
Joined: 20 Feb 2011, 21:09
Location: ^ ^

Re: A case against Cygwin support

Post by o11c »

MadCamel wrote:Are there any simple wrapper libraries you could use around these functions that are more portable? The phrase "Ported to BSD" makes me cringe.
Heh, I've had to play around on Frost's box. BSD's kernel interface is full of fail.
I'm not volunteering to *implement* it, but I have looked deep enough to know that it's technically feasible (in some ways, arguably technically superior to the Linux way, but it's ugly because of that and I'd rather write elegant code.).

I've looked at libraries that try to do this. It's not a pretty sight.
Jenalya wrote:I agree with this, and if native windows support is not possible/feasible,
Right, it's not.
Jenalya wrote:Independently from this discussion, I like the idea about a vm ready for development and testing.
That could be beneficial, even for non-Windows users. But keep in mind that VM images are HUGE.
Ablu wrote:I think that the reason that you do not have active users for Windows is that it is not very nice to setup. So I guess it is time to try to get some Windows users by making that easier.
Windows can't really get nice to set up. And I'm not convinced there are Windows users who have anything to offer to us besides maintenance burden.
Big Crunch wrote:i would be willing to help in any way i can. i have no idea how to push and pill things but i can test and see if a solution works in a local environ
I know there are people who can do that. But the questions are really:
  • Are there people who can maintain the windows support?
  • Are there people who really need windows support?
Frost wrote:I'd like to hear from some of the Windows people who would be the audience for this.
So would I. So far, the people replying (except BC, who doesn't count) are the ones who don't have a problem using Linux, not the hypothetical Windows users we're trying to speak for.
Former programmer for the TMWA server.
User avatar
o11c
Grand Knight
Grand Knight
Posts: 2262
Joined: 20 Feb 2011, 21:09
Location: ^ ^

Re: A case against Cygwin support

Post by o11c »

Big Crunch wrote:
o11c wrote:
  • There are options for people who still use Windows as their primary system.
what are these options? I think it would be important to know if we drop cygwin compatibility.
Whoops, just noticed this, I'll reply separately.

The complete list, to my knowledge, of ways to run native Linux software on a Windows box is:
  • backup your files, wipe your hard drive and install linux.
  • repartition your hard drive to install linux.
  • do a wubi install onto an NTFS file.
  • use andlinux (only for 32-bit windows).
  • use a VM.
  • ssh to a real linux box. you can forward X11 also.
Former programmer for the TMWA server.
Ablu
Manasource
Manasource
Posts: 288
Joined: 23 Jul 2011, 08:31
Location: Germany

Re: A case against Cygwin support

Post by Ablu »

I would be cool with a vm solution if it is provided in a way that it would be only a unzip + go.

Though my concerns would be:
1) that the image would be rather large
2) that changing stuff and testing it on the server would not be that intuitive for people who are not used to linux/command line
3) updating the image all the time if something changes is a bit more work i guess.

The thing i dream off is: a downloadable zip that contains a ready to use server + game data that is rebuilt on server or gamedata changes. A small ui program that allows to start, stop, restart the server.

A linux vm would probably be commandline only (all other stuff would probably be way to large download wise). So probably not something that a Windows user can handle without a guide / help / reading stuff. I think the stuff should be that damn simple to use that making something wrong is nearly not possible (or at least is fixable by Windows default problem fixing (delete, redownload)).

Wrote this rather quick. So probably full of spelling errors.

EDIT: This was supposed to be posted earlier, but somebody was faster at replying.


Regards
Ablu
User avatar
tux9th
TMW Adviser
TMW Adviser
Posts: 428
Joined: 09 Mar 2012, 20:21
Location: -67.067433,54.433587

Re: A case against Cygwin support

Post by tux9th »

I like the linux VM idea best. I think it is not that hard to maintain. With a good tutorial on a stable OS this is possible on CLI only, even for windows users.

I also think that people who want to test things and develop stuff should get used to *nix anyway. I've never seen someone developing on windows anyway.

Maybe I'll look into doing tutorial and vm image.
also if the tutorial is written properly it doesn't have to be updated everytime you update something because you could write a routine to update the files and complie.

Though I must admit that I hate VirtualBox however love the free version of VM-Ware (VM-Player).

greets
User avatar
Crush
TMW Adviser
TMW Adviser
Posts: 8046
Joined: 25 Aug 2005, 16:08
Location: Germany

Re: A case against Cygwin support

Post by Crush »

Ablu wrote:updating the image all the time if something changes is a bit more work i guess.
I imagine that we could save the image in a state where the console is open and a script is currently running which is just waiting for a keypress from the user to perform a git pull of the server source and data followed by building it. That way it will update automatically and hopefully will rarely require maintainance.
  • former Manasource Programmer
  • former TMW Pixel artist
  • NOT a game master

Please do not send me any inquiries regarding player accounts on TMW.


You might have heard a certain rumor about me. This rumor is completely false. You might also have heard the other rumor about me. This rumor is 100% accurate.
Post Reply