Linux version!

Synthesia is a living project. You can help by sharing your ideas.
Search the forum before posting your idea. :D

No explicit, hateful, or hurtful language. Nothing illegal.
User avatar
mahen
Synthesia Multiple Donor!
Posts: 73

Post by mahen »

zzzxtreme : well, that's not necessarily true ;)

cf : http://2dboy.com/2009/10/26/pay-what-yo ... le-wrap-up :)
Running Synthesia from Linux (WINE).
oscarah
Posts: 3

Post by oscarah »

Hi to all!

I've been very interested on Synthesia, so I test it. I LIKE it very much, but I've no Windows nor Mac to install it. But, I like it so much that I took the sources from free version, and I'm writing a port for GNU/Linux ;)

It is at https://sourceforge.net/projects/linthesia/

It's not ready yet. I'll post here when finished.
Thank you very much Nicholas for doing this. :)

Cheers.
tommai78101
Posts: 766

Post by tommai78101 »

oscarah wrote:Hi to all!

I've been very interested on Synthesia, so I test it. I LIKE it very much, but I've no Windows nor Mac to install it. But, I like it so much that I took the sources from free version, and I'm writing a port for GNU/Linux ;)

It is at https://sourceforge.net/projects/linthesia/

It's not ready yet. I'll post here when finished.
Thank you very much Nicholas for doing this. :)

Cheers.
OH MY GOD! We finally found a port! Land Ahoy!
Hardware Information: Dell Alienware 15 R4, Intel Core i7-8750H @ 2.20GHz / 2.21 GHz, 16GB RAM, Nvidia RTX 2070 / Nvidia GTX 1060 dual-GPU, Roland FP-10, MIDI-OX + LoopMIDI combo.
oscarah
Posts: 3

Post by oscarah »

Hi again!

Linthesia (GNU/Linux port of Synthesia) is now available, and ready to use. A co-developer has made a Debian package (so, you can install it easyly on Debian based distributions, like Ubuntu). Just remain an important thing to fix: input does not connect automatically. You need to choose correct input source, and using an external tool, like aconnect or its gui (aconnectgui), make the link actually. Just for input, not for output. I'm working on this and I expect to fix it soon.

Thanks for reading, and if you try it, please, leave feedback (suggestions, bugs, etc.)
Cheers.
oscarah
Posts: 3

Post by oscarah »

Good news!

The previously commented bug is now fixed (at release 0.3-2). :P
tommai78101
Posts: 766

Post by tommai78101 »

oscarah wrote:Good news!

The previously commented bug is now fixed (at release 0.3-2). :P
Yes, that's good news.
Hardware Information: Dell Alienware 15 R4, Intel Core i7-8750H @ 2.20GHz / 2.21 GHz, 16GB RAM, Nvidia RTX 2070 / Nvidia GTX 1060 dual-GPU, Roland FP-10, MIDI-OX + LoopMIDI combo.
macias
Posts: 18

Post by macias »

Just saying "hi" from yet another Linux user who would be more than happy to see original program on Linux, not fork or running on wine/vbox :-D

Nicholas, you made probably the most useful game in the history of computer games, I am serious, probably next to tetris. Thank you for excellent idea and great execution. I didn't jump into source code yet, but there are some toolkits which work on all platforms, the most known is Qt probably. It would lower the problems with keeping 3 branches of the same program, instead it would be single branch. Of course if it is not common framework now, it would mean a rewriting some parts (ouch), but it would help even for Mac and Windows.
I just hope that somewhere in the future you reconsider Linux port (not fork or branch).

And single comment for ridiculous Activision stunt -- I cannot wait when they sue Microsoft for Ribbon Hero.

Thank you again for great work, kind regards!
Yet another Linux user of Synthesia ;-). Testing is done on Windows computer though.
Nicholas
Posts: 13135

Post by Nicholas »

While I still see the occasional pocket of enthusiasm for a Linux version, my reasons are still unfortunately valid. If you take a look at the download numbers for Linthesia, the relative use a Linux version would see still doesn't justify even a small fraction of the effort it would require to make one. That is especially true when a work-around (Wine) exists.

It's less about the initial porting. Linthesia showed that it's not an especially long path going that route. It's the maintenance. Testing 3 platforms every time I release a dev preview or new version is exactly 1/3 more testing than I have to do now. It's also 1/3 more opportunity for bizarre platform-specific bugs, which are almost always the hardest to track down bugs. More testing means more time spent not developing.

So, to give a handful of people a native version of something they can already use would hurt all the other users. I can't make that decision in good conscious.

I love how much enthusiasm Synthesia receives from people using all sorts of devices. (I get requests for iPhone and Xbox 360 versions, too. ;) ) I'm just not in a position to deliver it everywhere at once.
Jimmy
Posts: 1

Post by Jimmy »

Nicholas wrote:While I still see the occasional pocket of enthusiasm for a Linux version, my reasons are still unfortunately valid. If you take a look at the download numbers for Linthesia, the relative use a Linux version would see still doesn't justify even a small fraction of the effort it would require to make one.
While I fully respect your choice to not support Linux I think it's not justified to compare the numbers between a relatively well know game with a full blown website and a Linux port that is still in its infancy and only discoverable when you read a post that is deep in the forum.
Nicholas wrote: That is especially true when a work-around (Wine) exists.
Maybe this is true for some people, but certainly not for me. While teh game installs fine, it will instantly crash when I try to start it.
It's less about the initial porting. Linthesia showed that it's not an especially long path going that route. It's the maintenance. Testing 3 platforms every time I release a dev preview or new version is exactly 1/3 more testing than I have to do now. It's also 1/3 more opportunity for bizarre platform-specific bugs, which are almost always the hardest to track down bugs. More testing means more time spent not developing.
This is a good point and I applaud your decision to release the source code to make porting possible. I hope that Linthesia will be continued to be developed because as of now, sound output doesn't work for me, which makes the whole thing kind of useless obviously.
So, to give a handful of people a native version of something they can already use would hurt all the other users. I can't make that decision in good conscious.
Again, I understand your reasoning here. But this depends on whether Linux users really can use Linthesia or Synthesia throught Wine, and both options don't work for me.

I hope you understand this is meant as constructive criticism and reading your posts I can see that you really looked into the subject of Linux support and made an informed decision after pondering your options. I often read requests for Linux versions (or other platforms) and the ensuing discussion and I find your stance on the topic refreshing.

At the end of my post I'd like to make to suggestions that will help to bring Synthesia/Linthesia closer to the Linux community:

1. Create a link on the website to Linthesia under the Win and Mac download buttons to make it easier to discover.

2. Create a Linux subforum so users of Synthesia under Wine or Linthesia are able to exchange ideas and troubleshoot problems.

Wow... this post got longer than expected, finally I'd like to say that I whish you all the best with Synthesia and hope for a good relationship between your project and the Linux community.
Nicholas
Posts: 13135

Post by Nicholas »

Jimmy wrote:While the game installs fine, it will instantly crash when I try to start it.
Have you tried getting the Microsoft version of the GDI+ library? That's a known issue if not.
Jimmy wrote:1. Create a link on the website to Linthesia under the Win and Mac download buttons to make it easier to discover.
So, first, I was waiting until something like that stabilized more before linking. The fact that you can't get sound up and running is evidence enough for me to hold off a little while longer.

Also, it's a tricky proposition linking to something I can't support at all. With the type of traffic the main page sees, even if the user isn't running Linux at all, there is a good chance the volume of support requests I receive would increase. The mail from parents that claim technical illiteracy, 11 year olds wondering where they can find a particular song, grandparents asking how to sign up to PayPal because they want to buy a key for their grandchildren, or even the random email asking -- my favorite -- whether or not Synthesia contains any viruses and is safe to download (hint: asking the author probably isn't the best way to find out ;) )... demonstrates that a good chunk of my user demographic lacks some of the technical savvy necessary to distinguish. I would guess mentions of other sites or other projects might lead to even more confusion than they're already experiencing.

Still, a big penguin icon might sort that out. With any luck people know that they're using Windows. Hopefully.
Jimmy wrote:2. Create a Linux subforum so users of Synthesia under Wine or Linthesia are able to exchange ideas and troubleshoot problems.
At this point, they're two very different animals. Linthesia is based on the last open version of the source from almost 2 years ago. Since then, virtually every part of the front end has been re-written, all of the Learning Pack features added, and quite a bit of design direction changed.

Also, with no collaboration on the design goals or direction of Linthesia, I'm not sure our two communities are going to have much in common to discuss before very long.
macias
Posts: 18

Post by macias »

Nicholas wrote:If you take a look at the download numbers for Linthesia, the relative use a Linux version would see still doesn't justify even a small fraction of the effort it would require to make one. That is especially true when a work-around (Wine) exists.
The problem is, stats may mislead you. Of course I am just single user, but I didn't even touch Linthesia, so you counted me as Windows user, despite the fact I am Linux user and I would like to see Synthesia for Linux :-)

And for Wine -- I use it, it works, but it does not match "Windows version", the mouse response is very slow. And before posting any wish/bug I have to recheck the issue on Windows computer.

But I fully respect your decision, it is your baby and your time, I simply wish I could see running natively and not being 2nd grade "citizen".

All best for you Nicholas!
Yet another Linux user of Synthesia ;-). Testing is done on Windows computer though.
Nicholas
Posts: 13135

Post by Nicholas »

Hmm, this is starting to sound like a conspiracy... several well thought-out and worded posts with no religious wars about operating systems in a topic about operating system support. I didn't even know that was possible on the Internet. :D
alex789
Posts: 6

Post by alex789 »

I fooled around a bit with the game about a year or so ago. Now when I wanted to run it under Ubuntu 9.10 I had to do a couple of hours of googling and testing to get it to run.

Just to save the next person the trouble here's what I had to do:

Download http://wiki.winehq.org/winetricks and run it to install gdiplus. I also set the game to use OpenGL for rendering, but maybe it does that automatically under wine?

I use my digital piano for sound output so I don't know how other options are working. But I experience no lag in the MIDI input/output as some other users have reported. I'm running this all on a Intel Atom powered netbook.

I for one don't really feel that having a native linux version is such a big deal to me. That whole concept of something being native to a platform has gotten sort of blurred anyway. I mean the default image handling program under Ubuntu is f-spot which a .NET thingy. The bigger issue to me is whether the application is OSS or not, and I don't think Nicholas is going back to releasing Synthesia as OSS.
macias
Posts: 18

Post by macias »

alex789 wrote:That whole concept of something being native to a platform has gotten sort of blurred anyway. I mean the default image handling program under Ubuntu is f-spot which a .NET thingy. The bigger issue to me is whether the application is OSS or not, and I don't think Nicholas is going back to releasing Synthesia as OSS.
In regard to platform specific apps, .net, java and alike -- that is why I try not to use .net, java, or apps executed with wine because of the speed. The apps nowadays are already heavyweight, and there is no reason to slow computer down even more (first interpreter has to kick in, than compile all the byte code, then run, ... oh boy ;-D).

And users benefit from native apps -- you always have to use some hacks to run this or that, make mouse more responsive (Synthesia case), sound not muted, and so on.

For me, in case of any app, the most important thing is if the author is open minded and thinking seriously of his/her program. After years of using opensource software it became clear to me, that even with tons of source code I will not be able to fix every program I use (I am a developer, and I have programs on my own to fix & maintain, not somebody else). So open source is a plus (because of all security threats and risk of being abandoned for any reason imaginable), but not a must.

I am happy to see Nicholas takes care of Synthesia, and it means a lot for me. The second thing -- is the app native, because it means app more snappy, more responsive, less hacking around.

Cheers,
Yet another Linux user of Synthesia ;-). Testing is done on Windows computer though.
User avatar
mahen
Synthesia Multiple Donor!
Posts: 73

Post by mahen »

As of today (wine 1.2 RC), Synthesia works perfectly out of the box from a default / blank Wine installation.

Not even a single DLL to install. It's probably been true for a few months, I guess.

Only last micro-quirk : volume is still lowered after leaving the game, which is worked around by setting in regedit :
[HKEY_CURRENT_USER\Software\Synthesia]
"Disable Auto Volume"="1"
Last edited by mahen on 06-21-10 2:42 am, edited 1 time in total.
Running Synthesia from Linux (WINE).
Nicholas
Posts: 13135

Post by Nicholas »

As usual, thanks for keeping us in the loop. I sometimes get questions via email, and it's helpful to be able to point them to accounts of it working correctly.
cbaoth
Posts: 1

Post by cbaoth »

Windowed mode seems to work for me (wine-1.1.42). I launch Synthesia in OpenGL mode:

Code: Select all

[Software\\Synthesia]
"Renderer"="opengl"
I used 'winecfg':

1. Applications -> Add application (select Synthesia.exe and select new entry "Synthesia.exe")
2. Graphics -> De-Select "Allow the window manager to decorate the windows" (if selected)
3. Graphics -> Select "Emulate a virtual desktop" and enter your screen resolution

For me it looks like this in my .wine/user.reg:

Code: Select all

[Software\\Wine\\AppDefaults\\Synthesia.exe]
"Version"="winxp"

[Software\\Wine\\AppDefaults\\Synthesia.exe\\Explorer]
"Desktop"="Synthesia.exe"

[Software\\Wine\\Explorer\\Desktops]
"Synthesia.exe"="1920x1200"

[Software\\Wine\\AppDefaults\\Synthesia.exe\\X11 Driver]
"Decorated"="N"
Everything seems to work perfectly fine in windowed mode.
MostlyHuman
Posts: 46

Post by MostlyHuman »

Why not switch to a more cross platform toolkit like Qt?
( I have no idea of what you are using right now... )

maybe that would help on having different versions and reducing testing of OS specific stuff?
Or is the MIDI communication the main issue and not the GUI/sound?
User avatar
mahen
Synthesia Multiple Donor!
Posts: 73

Post by mahen »

Well, I don't think Nicholas would think this is worth the effort, as Synthesia already works with the three major OS'es. (even though Linux requires wine, it works out of the box with it, nowadays)...

However, considering it builds on both OSX and Windows, there must already be a good amount of abstraction.
Running Synthesia from Linux (WINE).
niels
Posts: 1

Post by niels »

zzzxtreme wrote:nicholas, linux users won't pay anyway ! :lol:
Er, actually, Linux users made the largest per payer contributions to Humble Bundle and Humble Bundle 2 (more than twice the average Windows contributor in HB 2), and their total contributions in both fundraisers were comparable to Mac (in the first one, Linux out-did Mac, in the second one, they appear to be close to even)

http://www.wolfire.com/humble

http://www.humblebundle.com/
Post Reply