haxe-hardware icon indicating copy to clipboard operation
haxe-hardware copied to clipboard

2021 Compatibility

Open JOELwindows7 opened this issue 3 years ago • 4 comments

Wow, that haxe-hardware is heckin old! This need updates

The change of Haxe development industries are fast.

  • OpenFl 8 lost the JNI, I think. so I changed the library to Lime. you'll then need to install Lime. see https://github.com/player-03/android6permissions/commit/57289885196b3f570229fd50f7a33819395f1f8f . they were using OpenFl, but then changed because since 8, the JNI is gone. only Lime now that has it.
  • Haxe foundation now has HashLink! successor of Neko some sort. so I added import hl.lib when the compile target is hashlink.. yeah. just in case.
  • Android now has 64 bit arm! yes. I think that was since Samsung Galaxy S6 if not wrong. Now, I added and built 64 bit library. check that project/build.xml. there is now HXCPP_ARM64. see https://haxe.org/manual/target-cpp-defines.html section Target Architecture.
  • also compile the ndll for other OS as well, sort of. I only have Windows right now. my Linux is.. tight, full disk space. Yeah in Lime to compile for Desktop, your Host OS must be the same as the Desktop target. I missing: macOS, Linux, tvOS, iOS, and I think that's it.

yeah enjoy. what do you think?

JOELwindows7 avatar Jul 03 '21 10:07 JOELwindows7

Hi there. I should probably archive this repo, as you mentioned I haven't done anything with it in a while. I also don't have a way to test these changes at the moment.

Are you using this library for something? I saw that you created a fork that changes the license - that's not how software licensing works, and would be considered illegal use. I would suggest doing some reading about how to apply licenses.

ktravis avatar Jul 03 '21 16:07 ktravis

Hi there. I should probably archive this repo, as you mentioned I haven't done anything with it in a while. I also don't have a way to test these changes at the moment.

Are you using this library for something? I saw that you created a fork that changes the license - that's not how software licensing works, and would be considered illegal use. I would suggest doing some reading about how to apply licenses.

  • I am using this for some of my projects, so to have vibration during the gameplay and other things.
  • Yes, I have 2 forks. this and https://github.com/Perkedel/haxe-hardware . tbh idk about license, I am not lawyer. I've carefully read about MIT here and out again. and with this, I believe it is safe to relicense the fork to another. heck, there is even one or more study case that did happened, https://github.com/stepmania/stepmania e.g. is MIT. and there was In The Groove, is a fork of Stepmania and made it proprietary, sad ending.
  • I only change license to the mod https://github.com/Perkedel/haxe-hardware, not in this contribution fork. Therefore you are free to take this fix. so if you accept this pull, I'll archive my mod. and unfortunately since you have no plan on working further on this, then okay idk I think we'll use my mod.
  • and okay, I think I should bring the notice back in the readme file saying upstream copyright ktravis, and bla bla bla, in the mod (https://github.com/Perkedel/haxe-hardware ) that changed it to LGPL.
  • afaik, LGPL is the most popular to be used for libraries. unlike regular GPL, you can use libraries licensed LGPL to be implemented even on proprietary projects (if proprietary, you can only dynamically link the library, no inclusion, I think). but what's the difference with MIT? well, I guess I figured out: forking LGPL project, you must make your fork open source, while forking MIT project, lets you so. Right?
  • I'm sorry, I think I went very rude with that. I just... don't want, who make mods of my mod (fork of a fork), close source it.

JOELwindows7 avatar Jul 03 '21 20:07 JOELwindows7

JOELwindows7,

The MIT license permits sublicensing the software and you can license any subsequent software you create with your own license, however, you are not permitted to relicense (i.e. change the license of) the original software (at least not without the original copyright holders permission). More to the point you must comply with the terms of the MIT license as stated:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

So long as you include the full MIT license/copyright notice you can continue using the fork of this code with your changes being licensed under a different license. If you do not include this you are in violation of the MIT license.

ChrisRx avatar Jul 03 '21 22:07 ChrisRx

JOELwindows7,

The MIT license permits sublicensing the software and you can license any subsequent software you create with your own license, however, you are not permitted to relicense (i.e. change the license of) the original software (at least not without the original copyright holders permission). More to the point you must comply with the terms of the MIT license as stated:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

So long as you include the full MIT license/copyright notice you can continue using the fork of this code with your changes being licensed under a different license. If you do not include this you are in violation of the MIT license.

  • Okay so, that's quite shocking. the explanation at chosealicense.com didn't told me anyway about relicensing stuff. I thought that's all the dots we need to know. turns out you said no, okay. Then should've also had Relicense allow or not dot. Or maybe I missed that.
  • https://github.com/Perkedel/haxe-hardware/commit/352854aa9a7c757a6b0138c1e225374217a133c1 Right, I have reinstalled the same full copy MIT license back at it again. which way do you guys like? the LICENSE file is LGPL (so LICENSE-upstream is MIT) or the other way like LICENSE file is MIT (so LICENSE-thisFork is LGPL)? which one is your favorite?
  • Oh yeah remember, I have been placed the Copyright notice on that fork's README.md file. Double comply just to be safe.

JOELwindows7 avatar Jul 04 '21 01:07 JOELwindows7