News:

Simutrans.com Portal
Our Simutrans site. You can find everything about Simutrans from here.

Arch Linux / Manjaro Simutrans packages

Started by Roboron, February 07, 2020, 08:00:23 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Roboron

I've started an effort to populate ArchLinux Users Repository with all of Simutrans' main paksets, Simutrans Extended and nightly releases (it's a rolling release, so it has sense to have nightly releases directly in the repos!).

1.Simutrans
Simutrans has been available in [community] for years, but only a few paksets could be installed from repositories. Let's change that!
2.Simutrans Extended
Simutrans Extended doesn't have an "Stable" release. Instead, it is updated every day. That could be a problem for distros like Debian, but not in Arch, where updates are frequent and welcome.
3.Simutrans Nightly
Lastly, I can also make some nightly packages for Simutrans, for the ones who like to be as up-to-date as possible.

prissi

Most of the pakset license are not really compatible with most Linux licenses, which is why they were not included.

For Simutrans standard, a nightly does not make sense, since the servers all asuume a stable version.

Roboron

Quote from: prissi on February 08, 2020, 11:54:31 AM
Most of the pakset license are not really compatible with most Linux licenses, which is why they were not included.

I understand. Fortunately that's not a problem in Arch (which even includes proprietary software in their repos, like Spotify), less so in the User's repository. Manjaro also comes with non-free software by default (times have changed, I guess...). By the way, I think that OpenSUSE is right now the one with more paksets included in their repos.

However, I'm having a really hard time at identifying the paksets licenses. I first assumed that everything included in Sourceforge is licensed under the Artistic License, unless specified otherwise in the archives in the zip, since that's what Sourceforge says in the Project Summary. But a member of the german community told me that pak64.german was Freeware, not AL. How can I know for sure what is the license of a pakset? Neither the wiki nor the webpage say anything about licenses. Does the lack of license.txt in the zip means that it is Freeware?  ???

Quote from: prissi on February 08, 2020, 11:54:31 AMFor Simutrans standard, a nightly does not make sense, since the servers all asuume a stable version.

It's just there for the ones who like to test the nightlies, just like the nightlies in https://nightly.simutrans.com/es/ (which seem to be never available for some reason), but packaged properly. Since I already had to automate the process for Simutrans Extended, no extra work was needed to do the same for Simutrans.

Mariculous

#3
Quote from: Roboron on February 08, 2020, 12:54:33 PMDoes the lack of license.txt in the zip means that it is Freeware?  ???
Quote
If you find software that doesn't have a license, that generally means you have no permission from the creators of the software to use, modify, or share the software. Although a code host such as GitHub may allow you to view and fork the code, this does not imply that you are permitted to use, modify, or share the software for any purpose.
Strictly, if you don't find any license information, you are not even allowed to use the software.
However, if the provided download (sourceforge) states it is under the artistic license whilst it's not, that's a difficult situation.

Andarix

Quote from: Roboron on February 08, 2020, 12:54:33 PM
...
However, I'm having a really hard time at identifying the paksets licenses. ...

I found this. But I can not say how far the information is correct.

SimuTranslator site - preferences sets
Quote from: Frank on April 20, 2014, 04:29:54 PM
set admins please check the settings of their sets

if open source so, then please fill in the field below the link to the sources without http://

also edit homepage link without http://

Admins can add other licenses.
please tell name and link

The details are shown on the Set Info

Roboron

Quote from: Andarix on February 08, 2020, 02:19:03 PM
I found this. But I can not say how far the information is correct.

Link is broken, but I managed to find the current translation page here https://makie.de/translator/script/main.php?lang=es&page=setinfo

So far the license information seems mostly coherent with what I already have. I've taken my time to gather more information, here are my results:

I have a problem with pak64.german. The linked translation page shows 2 versions of pak64.german, one is v112.3. The first time I submitted the first, AL version, I was then told that the later, Freeware https://simutrans-germany.com/wiki/wiki/article228-unofficial-pak64-german-0-120-4-1-3-beta is now the current version. I'm confused right now.Prove me wrong if I have not correctly identified the licenses. Extended licenses are easy to verify.
Quote from: Freahk on February 08, 2020, 01:43:18 PMStrictly, if you don't find any license information, you are not even allowed to use the software. However, if the provided download (sourceforge) states it is under the artistic license whilst it's not, that's a difficult situation.
A situation like this could be VERY problematic, to my understanding, although I'm not a legalese guy to be sure. First because the files distributed in Sourceforge/GitHub/etc are supposed to have the same license as defined by the project/repository (in this case, the Artistic License), unless specified otherwise (tho they still have to be compatible licenses to be distributed together). Second, because this is what SourceForge FAQ says:
Quote from: SourceForge
Is the software you provide free?

The software hosted on our site is both free and Open Source. Each project is expected to provide their own Open Source License which contains any restrictions on the use of the software or code. If a project is not free, does not provide source code, or does not contain a valid Open Source License: please report it here.
If Simutrans Project on Sourceforge is hosting and distributing non-free and non open source software, it may be infringing SF terms.

Note that I don't really care (not the authors have also cared for 10+ years), and I'm not definitely reporting Simutrans for that. Neither this changes my plans, since I'm not redistributing anything in the AUR, just linking to the originals, and I can define the license as "Unknown" so that it is responsibility of the user to use or not the software without permission  ;)

Leartin

The licence-setting on the translator is a dropdown menu, where you can choose AL, AL2, Freeware and no. So, rather than a wrong license, I set no license for pak192.comic. CC-BY-SA is correct (specifically CC-BY-SA 3, but contributers don't care to that extent)

Andarix

These ambiguities are due to the 23-year history of Simutrans.

And the problem that there is a division in program and graphics set. The extent to which images and a few data (graphic sets) can be called source code in the sense of the program is not easy to answer.




Quote from: Leartin on February 08, 2020, 05:06:04 PM
The licence-setting on the translator is a dropdown menu, where you can choose AL, AL2, Freeware and no. So, rather than a wrong license, I set no license for pak192.comic. CC-BY-SA is correct (specifically CC-BY-SA 3, but contributers don't care to that extent)

SimuTranslator site - preferences sets
Quote from: Frank on April 20, 2014, 04:29:54 PM
set admins please check the settings of their sets

if open source so, then please fill in the field below the link to the sources without http://

also edit homepage link without http://

Admins can add other licenses.
please tell name and link

The details are shown on the Set Info

@Leartin

I would say if you provide the translator's admins with the license name and a link to the license text, the license will also be added.

If you do not do this, the selection will not be expanded.

Leartin

Andarix, if you feel like it's important that the translator has the correct licenses listed for all paksets, feel free to contact the admin. I don't really see the point in being annoying about p192c's license when there are issues with most of them, that I could not change anyway. Plus, after licenses are fixed, the maintainers listed are off as well, so the info displayed would still be wrong.

Ters

Quote from: Freahk on February 08, 2020, 01:43:18 PMStrictly, if you don't find any license information, you are not even allowed to use the software.
Why is that? There usually aren't any licenses in books. Special laws for software actually seems to provide the extra rights needed for using software, as installing and running software implies some copying. (Some copyright laws allow creation of copies for personal use of everything.)

What seems to be the cases with proprietary licenses (also for movies and music apparently), is that they declare that you bought the software as you would have bought a book. You don't own your copy, just a right to use it, including some inherent internal copying. Your basically borrowing it. Without such a license, the basic premise that you own your copy and can use it as it is intended. Owning a copy does not in itself give you all the rights to that copy. Copyright remains with the author, unless licensed away.

Of course, the exact details of copyright law varies from country to country, and changes over time as well. I've looked at section 117 in the Copyright Act of USA, and the Software Directive of the European Union when writing this.

Pak sets may not count as software, though.

Mariculous

#10
Did you ever buy Simutrans or any pakset? Well I didn't.
When you buy a game, you will always also get the license.

https://choosealicense.com/no-permission/

Btw: choosealicense belongs to github, so I guess this is a fairly reliable source.

Roboron

Quote from: Andarix on February 08, 2020, 05:12:46 PMThese ambiguities are due to the 23-year history of Simutrans.

And the problem that there is a division in program and graphics set. The extent to which images and a few data (graphic sets) can be called source code in the sense of the program is not easy to answer.

Honestly I don't think the problem is how old Simutrans is or whether paksets can be considered source code or not. The problem is the lack of "license culture" of the Simutrans' community in the past. Had the paksets be properly licensed, we wouldn't  be wasting time discussing this. Even more, had they be licensed under a more restrictive libre license like the GPL, we wouldn't have problems with derivative works switching license like the pak64.german did... But it's useless to complain now, and things have improved nowadays like the licenses of pak192 and pak256 show.

Quote from: Ters on February 08, 2020, 09:27:56 PMSpecial laws for software actually seems to provide the extra rights needed for using software, as installing and running software implies some copying.

This seems to be the logic behind the SUSE repository, since the paksets with no license are offerend as "SUSE-Freeware"...


On a different note, I've finished uploading PKGBUILDS to the AUR. Only thing left is changing the licenses I previously wrongly identified as AL to "Unknown" (I'll do tomorrow), waiting for administrators to give me maintainership of simutrans-pak192.comic so I can update it, and waiting for pak192.comic developers to fix nightly builds for the nightly version  :-X

Ters

Quote from: Freahk on February 09, 2020, 01:18:05 AMWhen you buy a game, you will always also get the license.
Normally when you "buy software", you don't actually buy the software, but the right to use a leased copy. That is what the license is about. There are some legal issues surrounding the fact that you usually only get to see the license which makes this clear until after the purchase is done. You can't impose restrictions after the fact, but in practice, people don't care.

The word "buy" is also not really relevant. Copyright law is all about "obtaining a copy".

Andarix

#13
Quote from: Roboron on February 09, 2020, 01:27:58 AM
Honestly I don't think the problem is how old Simutrans is or whether paksets can be considered source code or not. The problem is the lack of "license culture" of the Simutrans' community in the past. Had the paksets be properly licensed, we wouldn't  be wasting time discussing this. Even more, had they be licensed under a more restrictive libre license like the GPL, we wouldn't have problems with derivative works switching license like the pak64.german did... But it's useless to complain now, and things have improved nowadays like the licenses of pak192 and pak256 show.
....

In the beginning (1997 ~ 2006/2007) Simutrans was just freeware. The source files of the program and the graphics sets were not public.

Then it was decided to make the program code publicly available. But there is an opinion that there must also be a license.
[edit]This was a requirement by the Debian developers to be included in the Debian repo.[/edit]
Only to put something under a license or to change it later all authors have to agree. And there is the problem because many authors are no longer available. Therefore, much is subject to copyright.

And the copyright is interpreted quite differently, depending on the country in which the author is at home.

In 1997 Linux was still in its infancy. Since then, however, there have been many discussions about licenses in the Linux environment. Apart from that, there were some licenses that didn't exist today.

And then there is the fact that people don't participate just because something has a license that they don't like.

I have been following the Simutrans development for a long time. And I've found that since it's been OpenSource, the error messages related to the graphics sets have decreased significantly. This does not necessarily have to have to do with it, since society also changes due to other influences. In any case, there were significantly more activities up to 2010 than in the past 10 years. That should also be a reason why a lot of information is out of date because nobody has been found who updates the information. Or many point a finger at others who should please do it instead of participating themselves.

A mosaic consists of many small stones. That means that even small contributions create something big.

Even if forums are favored in the exchange of information, information is out of date there because only the poster creator and a few moderators can update it. In contrast, wikis offer the possibility that everyone can add and update information. But a wiki is also out of date if no one is involved in maintenance.

Mariculous

Ters, we can for sure argue about slightly inpreciese translations.
However, we could also just accept the guidelines provided by github:
Quote
If you find software that doesn't have a license, that generally means you have no permission from the creators of the software to use, modify, or share the software. Although a code host such as GitHub may allow you to view and fork the code, this does not imply that you are permitted to use, modify, or share the software for any purpose.
I would prefer the latter.

prissi

20 years ago, there was shareware, freeware, proprietary software and almost unknown open source. Most things from hobbyists were Public Domain, or Freeware (as one says now). When it came to open source, pak64.german cannot be made open source, because some of the graphics are made by someone who (for very good reasons) did not want to distribute the sources. So it stayed Freeware.

pak64.Japan had some graphics from Freetrain, which had a license that allowed the reuse of their graphics only for free transport game related software. Upon asking them, I got the explicit right for Simutrans. So it is Artistic License with some other licensed parts.

Ters

Quote from: Freahk on February 09, 2020, 10:41:11 AMQuote
If you find software that doesn't have a license, that generally means you have no permission from the creators of the software to use, modify, or share the software. Although a code host such as GitHub may allow you to view and fork the code, this does not imply that you are permitted to use, modify, or share the software for any purpose.
That is an odd statement. All I've heard is that by default you are allowed to view and use what you have, but not fork, modify or share. Furthermore, without a license, GitHub is not allowed to share the code with you in the first place.

Mariculous

What I definitely know is that whenever there is no license given, it's under copyright.
Copyright laws depend on authors country, so there might be countries where even the usage is not permitted.

Quote from: Ters on February 09, 2020, 12:17:46 PMFurthermore, without a license, GitHub is not allowed to share the code with you in the first place.
Oh they are! Read their ToS. When using github, you agree that anyone can read and fork your project, but not more. Anything else is up to the license.

Roboron

Quote from: Andarix on February 09, 2020, 09:38:50 AM
Even if forums are favored in the exchange of information, information is out of date there because only the poster creator and a few moderators can update it. In contrast, wikis offer the possibility that everyone can add and update information. But a wiki is also out of date if no one is involved in maintenance.

Talking about the wiki, I've now updated the paksets wiki page adding the licenses.

jamespetts

Splendid, thank you for your work on these: this will be most useful for those interested in Simutrans-Extended and who do not wish to compile themselves or download a package and install manually.

As to the licences, my own view is that the whole idea of so-called intellectual property is abusive and ought to be abolished completely, but one has to obey the law whilst it remains such; in that context, it is unfortunate that the original creators did not choose to use a more clearly free licence (preferably the GPL) for both source code and paksets, but we must do the best with what we have.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Ters

GPL is a bad license for small hobbyist driven communities. It is more suited for enterprise use due to all the terms. Want to share a pak set you downloaded with a friend? Well, then you have to be prepared to personally supply that friend with the source code whenever that friend asks for it. If you don't have the source code at hand, then you will have violated GPL.

My general impression is that software backed by big companies tend to be GPL, while student/hobbyist software tend to be BSD or similar. Apache licenses are in the middle. Some poorly backed GPL projects don't offer binaries.

jamespetts

Quote from: Ters on February 09, 2020, 01:29:05 PM
GPL is a bad license for small hobbyist driven communities. It is more suited for enterprise use due to all the terms. Want to share a pak set you downloaded with a friend? Well, then you have to be prepared to personally supply that friend with the source code whenever that friend asks for it. If you don't have the source code at hand, then you will have violated GPL.

This does not seem a likely scenario - normally, one would just download the source and/or binary from the website/repository of whoever distributes it if one wanted an unmodified version. If one produces a modified version, one would normally set up one's own repository allowing automatic downloading of both source and binary. Individual person to person sharing of a binary is really very rare; enough that an accompanying obligation to share the source code on request is really not a practical problem.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Roboron

Quote from: Ters on February 09, 2020, 01:29:05 PMWant to share a pak set you downloaded with a friend? Well, then you have to be prepared to personally supply that friend with the source code whenever that friend asks for it. If you don't have the source code at hand, then you will have violated GPL.

Actually, that's not true in GPLv3

Quote from: GPLv3For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

This statement was introduced specifically to address the problem you mentioned. You only need to be sure that the source code is available somewhere where your friend can access it.

Ters

Quote from: Roboron on February 09, 2020, 01:57:22 PM
This statement was introduced specifically to address the problem you mentioned. You only need to be sure that the source code is available somewhere where your friend can access it.
Exactly. How do I ensure some hobbyists homepage stays up? We have even been close to losing the Simutrans sites at times.



Quote from: jamespetts on February 09, 2020, 01:36:07 PMThis does not seem a likely scenario - normally, one would just download the source and/or binary from the website/repository of whoever distributes it if one wanted an unmodified version.
Hobbyist and student projects do not necessarily have homepages. The tool I have created for Simutrans sure doesn't have one, nor do I ever plan on creating one.

Quote from: jamespetts on February 09, 2020, 01:36:07 PMIndividual person to person sharing of a binary is really very rare; enough that an accompanying obligation to share the source code on request is really not a practical problem.
That's exactly what happened with my tool. I tried to give the source code, but nobody knew what to do with source code. They wanted something to run: a binary.

Roboron

Quote from: Ters on February 09, 2020, 04:17:15 PMExactly. How do I ensure some hobbyists homepage stays up? We have even been close to losing the Simutrans sites at times.

You don't, and you don't need to. You only have to comply with the license when you redistribute the software. You aren't under a continuous long-term obligation to supply the source again if your friend lose it or declined to receive it in the first place.

Notice also that you don't have to accept the license when you get the binaries; this means, you can have the binaries for personal use as long as you don't modify and redistribute the software. This allows that in a situation where the source code has been banished from the surface of the Earth like in the scenario you described, users can still share and run copies, as long as these are unmodified copies (thing that is impossible anyway since no one has the source code for modifying the software).

Quote from: GPLv39. Acceptance Not Required for Having Copies.

You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so.

So, your claims that the GPL is a bad license are neither true nor correct; you actually had no idea what the GPL allows you to do.

Ters

Quote from: Roboron on February 09, 2020, 05:52:49 PMYou don't, and you don't need to. You only have to comply with the license when you redistribute the software. You aren't under a continuous long-term obligation to supply the source again if your friend lose it or declined to receive it in the first place.
That is not how this was interpreted when someone wanted the source code for their wifi router. You don't have to ask for the source code exactly when you get the binary.

Quote from: Roboron on February 09, 2020, 05:52:49 PMNotice also that you don't have to accept the license when you get the binaries
There is apparently some discussion on whether this makes the license null and void.

Quote from: Roboron on February 09, 2020, 05:52:49 PMThis allows that in a situation where the source code has been banished from the surface of the Earth like in the scenario you described, users can still share and run copies, as long as these are unmodified copies
But the whole idea behind open source is that people should modify their software. Losing the source code should be the worst possible scenario imaginable for the people behind GPL. That is likely what the clause is all about avoiding. They need to make sure that for every binary out there, there is the corresponding source code.

Quote from: Roboron on February 09, 2020, 05:52:49 PMSo, your claims that the GPL is a bad license are neither true nor correct; you actually had no idea what the GPL allows you to do.
That is why it is such a bad license. I need a lawyer to understand it.

Roboron

Quote from: Ters on February 10, 2020, 04:51:40 PMThat is not how this was interpreted when someone wanted the source code for their wifi router. You don't have to ask for the source code exactly when you get the binary.

Routers are a special form of distributing software, since they are products on their own. The GPL has a special section for these cases:

Quote from: GPLv36. Conveying Non-Source Forms.

You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways:

    a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange.
    b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge.

If the company selling the router didn't comply with any of this, of course they are violating the GPL. But as mentioned, this doesn't apply to software distributed simply as software.

Quote from: Ters on February 10, 2020, 04:51:40 PMThere is apparently some discussion on whether this makes the license null and void.

It doesn't. There have been 13 year to prove it, and I'm sure that a lot of legal cases.

Quote from: Ters on February 10, 2020, 04:51:40 PMLosing the source code should be the worst possible scenario imaginable for the people behind GPL.

AFAIK, this is very unlike in any of the open source licenses, since the mere ability to redistribute the code means that there are very little possibilities of the sources disappearing. The clause is here just for ease of copying the software (specially for P2P).

Quote from: Ters on February 10, 2020, 04:51:40 PMThat is why it is such a bad license. I need a lawyer to understand it.

I could argue the same about any license, they are complex documents and they need to be, since their goal is not letting room for misinterpretations. Yes, the GPL(v3) is more extensive in comparative with other licenses and with previous versions of the GPL, but remember that his goal is to protect user's liberties and a few words shouldn't be an excuse not to do so.

Mariculous

Just wondering, why do we have a GPL discussion here?
We can't simply change the simutrans license anyway.

Roboron

I've finally taken the maintainership of pak192.comic so now it can be installed again and it is updated to version 0.5.

And with this every simutrans and simutrans extended pakset can be installed from the repositories! Hooray!

p.d.: also pak128.german updated to v1.3

sdog

Roboron, thanks for providing packages on AUR.

Let me know when you need a hand with maintaining.

A clarification for those with no Arch experience. Arch has two package systems. Pacman with packages one can install like in Debian. But also the Arch User Repository which is much more dynamic.

It requires a little more understanding to understand AUR packages. But this reduces requirements in security. For example, an AUR package can be something that is little more than a wrapper to an external source of binaries. That allows to include proprietary software (eg Google Chrome). Much more often one finds packages that are cloning directly from an open source project's GitHub and compiling binaries.

This moves the problem of compatible license directly to an issue of user and developer. Arch as medium have not to be involved.

sdog

Roboron, I think you are missing a 'make' dependency in the simutrans nightly AUR:

In conifg.default you patch
> FREETYPE_CONFIG    = pkg-config freetype2

However `pkg-config` is not in base repository. For some reason I had it missing on a recently set up system. Perhaps it makes sense to include 'base-devel' or 'pkgconf' dependency. On the other hand, one can expect of users to have 'base-devel' completely installed.

Error did not appear during config, but by preproc not able to resolve #include <ft2build.h>.

HOSTCXX display/font.cc
display/font.cc:240:10: fatal error: ft2build.h: No such file or directory

Roboron

Quote from: sdog on August 24, 2020, 03:19:04 PMRoboron, I think you are missing a 'make' dependency in the simutrans nightly AUR...

You are right. Building this package in a clean chroot didn't help me notice this missing dependency because it installs base-devel before.

I've included pkgconf in the PKGBUILD as a make dependency. This will be pushed tomorrow to the AUR. Let me know if it is enough, and thank you for your report :-)

Roboron

simutrans-nightly and simutrans-extended packages are going to be removed from the repositories and replaced by simutrans-svn and simutrans-extended-git to comply with AUR VCS guidelines. Packages version will be named now after the commit. Please uninstall the old packages and install the new ones.

=> https://aur.archlinux.org/packages/simutrans-svn
=> https://aur.archlinux.org/packages/simutrans-extended-git

Sorry for the inconvenience.