Treer / Amidst-for-Minetest

the Amidst project converted to support Minetest (aka Amidstest)
https://www.minetest.net/
GNU General Public License v3.0
27 stars 2 forks source link

Modern UI icons are under non-free license #10

Closed Wuzzy2 closed 6 years ago

Wuzzy2 commented 6 years ago

According to license info, the “Modern UI Icons” are currently under a non-free license (CC BY-ND).

If the point of this project is to be free software, these icons should be replaced by free alternatives or removed. It shouldn't be too hard to find replacements, however.

Wuzzy2 commented 6 years ago

Unused possibly copyrighted icons (Minecraft) for which removal should be considered:

Treer commented 6 years ago

I'm happy to have replacements for anything with a sketchy derivation.

Note that Amidstest works on Minecraft, though Minecraft must be installed.

The original goal was to push Minetest compatibility upstream into the main Amidst repository, which is an app for Minecraft. I've abandoned that idea because the required changes were too deep, but Amidstest still includes complete working Minecraft support, thus all the minecraft-specific textures.

The codebase would be significantly simpler if Minecraft compatibility was dropped, but since it's structured around Minecraft then if that's not being kept then perhaps Java could be dropped too - rewrite entirely in something properly open like .Net Core.

I'm not sure where the modern UI icons are used, it's not the the igloo icon that was added in the commit that adds the modern UI icon license, as that was drawn by me.

Wuzzy2 commented 6 years ago

I'm not sure where the modern UI icons are used, it's not the the igloo icon that was added in the commit that adds the modern UI icon license, as that was drawn by me.

Modern UI Icons are these: http://modernuiicons.com/

Strangely, I don't think any of these are actually used in the software, I have looked closely but just could not find them anywhere. Maybe you can safely drop the license for Modern UI Icons.

One icon with unknown origin is the pencil icon at the bottom right, but it does not seem to come from Modern UI Icons (I have checked). I don't know where it's coming from, I haven't found the file yet.

Note the Modern UI Icons have been superseced by Material Design Icons https://materialdesignicons.com/, which are released under Apache License 2.0. These icons also look very useful.

And yes, things which look like blatant copies of Minecraft should be replaced/redrawn.


Off-topic:

About Minecraft support: I don't know why you want to support two technically very different games at once. Is there actual user demand for this?

I don't think it's really needed. Also, you would basically spend your time basically just duplicating features from Amidst. From the user perspective, Amidsttest will always lack behind in terms of Minecraft support. So users would be better of to just use Amist directly. I think the Amidst people know what they're doing, let them do their job.

No real harm is done by keeping support, so if removing support is too much work for you, it's no big deal.

perhaps Java could be dropped too - rewrite entirely in something properly open like .Net Core.

Noooooooooo! This would be a terrible idea. Why would you drop a perfectly working codebase in a perfectly legit programming language with properly cross-platform support? Note that Java is not considered to be “closed” since years anymore. In contrast, .NET is only “open” in theory. In practice, .NET has terrible support on GNU/Linux. There is this Mono thing, but it's only meant as an imitation of .NET and does not even fully implement .NET, and it's feature set is also smaller than .NET on Windows. I know from experience that using .NET on GNU/Linux is usually a huge pain in the ass, to the point I have completely banned anything .NET on my computer. .NET might be useful if you want to code for Windows only but not if you want to be cross-platform.

Treer commented 6 years ago

I was planning to maintain support by just pulling the Amidst pull-requests directly. However, since I'm no longer going to push the Minetest support upstream, the answer is no - there's no real user demand AFAIK for a program that does both, it's a sunk cost fallacy - making Amidst compatible with Minetest without compromising its Minecraft support was hard and took me more time than I intended. I have to learn to let it go.

Amidst's code is twisted up and structured around Minecraft's architecture and version history, making it not very accessible to newcomers, so if you were going to drop Minecraft it could be refactored to the point of being a completely different code-base, that's partly where the the rewrite comment came from.

But have no fear, a rewrite isn't going to happen unless someone else does it.

That rewrite comment was also brought on by some other factors - my linux distro couldn't run Amidst because the the required JRE was too new, so I assumed open-jre doesn't run it (if you have it working on open-jre let me know so I can correct the wiki), which means many people just won't use a Java-Amidstest. Meanwhile Oracle has said public updates for Java SE 8 released 2019+ won't be available for commercial/production use without a commercial license - which isn't the end of the world but I'd also listened to this amusing rant about how Oracle works/closing a major opensource project, and as someone who's not invested in Java yet, it leaves me wondering why invest myself further into that ecosystem.

.Net Core on the other hand is not Mono, it's not the Windows .Net, and is fully supported on GNU/Linux. It's Microsoft's cross-platform MIT-licensed .Net, I'm not sure whether it's suitable for a GUI app though because I get the impression it's mostly used to write services or ASP.Net pages to run on GNU/Linux servers - I don't think it comes with a proper cross-platform GUI framework like Java does (and if it does, it won't be mature or as nice).

Treer commented 6 years ago

I got to the bottom of the Modern UI Icons mystery, and have removed the licence in 529ffbb4859a66a7fbfd33a0270872e0980e03c1. I've also created a pull request to remove it from the amidst-for-minecraft project.

It was pulled in with changes from AmidstExporter - I added it to AmidstExporter in 2014 for this icon, but that feature was never back-ported to Amidst and so neither was the icon.

I'll avoid *-ND licences in future.

Wuzzy2 commented 6 years ago

Thank you. :+1: :smile:

Treer commented 1 year ago

perhaps Java could be dropped too - rewrite entirely in something properly open like .Net Core.

Noooooooooo!

😁

On this topic, If anyone did want to switch the java mapgens into a fresh new project, I put the bones of an Amidst-like mapviewer in Godot 4 here. All the other little features like biome legends etc. would still be a lot of work though.

(Godot 4 supports dotnet Core now, and should run nicely on linux).