love-release - in Lua ! - makes LÖVE game release easier

Showcase your libraries, tools and other projects that help your fellow love users.
User avatar
Rucikir
Party member
Posts: 118
Joined: Tue Nov 05, 2013 6:33 pm
Location: Paris
Contact:

Re: love-release.lua - makes LÖVE game release easier

Post by Rucikir » Fri Jan 22, 2016 1:14 am

That's it ! love-release 2.0.0 is out ! It has been rewritten in Lua - almost - entirely. You can install it with LuaRocks.

Installation on Linux should be rather easy, on Mac I can feel the pain you'll get with libzip & lua-zip (there's a symlink somewhere) and lua-sec (because openssl has been replaced with libressl), but you should make it. I assume that if you already have a working installation of LuaRocks on Windows, then you should know how to deal with this.
If someone could provide detailed instructions on how to install love-release on Mac OS X and Windows, this would be nice.

The missing features are:
  • icons support (still)
  • Android & iOS port. I'll get on the Android soon (I hope), and the iOS port hasn't very much (at all ?) instructions too.
  • Load your own build scripts, if you'd like to use custom commands or custom LÖVE binaries.
  • Support for LÖVE games before 0.6.0. Are there still binaries and games for this in the wild ? I don't know, I wasn't around.
  • Tests. I have heard that tests and coverage stuff are good things in software development. Busted ? Tap ? Telescope ? Then... luacov ? Then.. Travis-CI and coveralls ?
  • Linux static binaries #9
  • Get the list of tracked files from the VCS
The list can go on if you have more ideas :)

I think this Lua rewrite is more efficient than the Bahs set of scripts, but sometimes it's just easier to use a zip -9 -q -r than the Lua equivalent.

Tell me what you think !
Lua script to distribute your LÖVE games. love-release.lua : Forum | Github
@Rucikir

Muzz
Citizen
Posts: 54
Joined: Sun Jun 28, 2015 1:24 pm

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Muzz » Fri Jan 22, 2016 2:33 am

Well isn't that handy, i was just to make a build of my program to send out.

I'll give it a full test and let you know how it goes!

EDIT:

Ok i have no clue how to install the libzip library for windows.

User avatar
Jack5500
Party member
Posts: 149
Joined: Wed Dec 07, 2011 8:38 pm
Location: Hamburg, Germany

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Jack5500 » Fri Jan 22, 2016 7:36 am

Muzz wrote:Well isn't that handy, i was just to make a build of my program to send out.

I'll give it a full test and let you know how it goes!

EDIT:

Ok i have no clue how to install the libzip library for windows.
I had my problems with WIndows too.
May I sugges my own solution: https://github.com/JanWerder/LoveAutoComp

User avatar
rmcode
Party member
Posts: 447
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by rmcode » Sat Jan 23, 2016 12:54 am

I also have troubles with the libzip library on OSX.

User avatar
Aina
Prole
Posts: 3
Joined: Tue Jan 06, 2015 3:05 am

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Aina » Sun Jan 31, 2016 2:17 pm

Hi! Anyone Global Game Jamming here? :D

So we are releasing our game with this tool (It's awesome!) and I found that it creates the .deb without any x permissions! Making it imposible to execute wihout chmoding it. I solved it unpackaging the generated .deb, adding the permissions to the .sh and repackaging again (I will post the commands below if anyone needs them). I guess you forgot to do that in the script(?).

Thanks for this awesome script! you can check our game here: http://globalgamejam.org/2016/games/cult

1: Extract deb package

Code: Select all

 # dpkg-deb -x <mygame.deb> <dir>
2: Extract control-information from a package

Code: Select all

    # dpkg-deb -e <mygame.deb> <dir/DEBIAN>
Here you shoud go to the .sh file in ./<dir>/usr/bin and add execution permissions to it

3. After completed to make changes to the package, repack the deb

Code: Select all

    # dpkg-deb -b <dir> <new-mygame.deb>

HAPPY CODDING ANYONE!

User avatar
Rucikir
Party member
Posts: 118
Joined: Tue Nov 05, 2013 6:33 pm
Location: Paris
Contact:

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Rucikir » Tue Feb 02, 2016 12:16 am

AAAAARRRGH I forgot the permissions ?! This is so stupid. I'm sorry. Fixed.
I think that most of the time love-release is used during jams, and that's when it's tested but also most needed. There's always something that goes wrong :D
But thanks for the awesomeness !

Now that I've seen kitito's talk about continuous integration I'll setup some tests.

I downloaded your archive, and quick tip: always put a top directory in an archive (but NOT in a .love file !). Because most of the time people extract it in the their downloads directory, and if there's no top directory in your archive its content gets scattered everywhere.

Quick survey, which OS did you use to run it ? Why haven't you made a MacOS app (problems with love-release ?) ? Any thoughts on love-release (like now that it's in lua ?) ?
Lua script to distribute your LÖVE games. love-release.lua : Forum | Github
@Rucikir

User avatar
Aina
Prole
Posts: 3
Joined: Tue Jan 06, 2015 3:05 am

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Aina » Fri Feb 05, 2016 4:42 pm

Hi! Thanks for fixing it that fast! Thank you!

We did it in Linux, Linux Mint and Antergos.

Thanks for the top directory tip. I was not thungking about this problem bc. The decompressor usually makes a directory automatically, and I was not aware that some do not. We'll do it next time.

We did not do a Mac release bc. We did not have any means to test it as we don't use it and we didn't know anyone there who did. Also we where runing out of time to upload it :P

This is my first time using it, so I can't compare it to the Bash, but it works pretty well. It was a little bit dificult at first to discover how to include files in subfolders (like libraries, art...) in the .deb, but one we did this it worked fine.

Some people is claiming that they can't run it bc they don't have the right LÖVE version, we though that the script includes the entire LÖVE in the .deb, but it looks like it does not. Maybe you can include an option to do so?

User avatar
Rucikir
Party member
Posts: 118
Joined: Tue Nov 05, 2013 6:33 pm
Location: Paris
Contact:

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Rucikir » Fri Feb 05, 2016 6:23 pm

For now love-release sticks to the "repository/package-provided-by-the-distro/dependency mechanism". love-release specifies a dependency on the love package, (which is currently at 0.9.1 in both Debian and Ubuntu latest versions). If you want to target the latest LÖVE version your users should add the PPA, or install the package corresponding to the LÖVE version you're using.

This is a required feature, I'll probably work on it someday. See #9 - Linux distribution.
Lua script to distribute your LÖVE games. love-release.lua : Forum | Github
@Rucikir

User avatar
Rucikir
Party member
Posts: 118
Joined: Tue Nov 05, 2013 6:33 pm
Location: Paris
Contact:

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by Rucikir » Sun Feb 07, 2016 10:45 am

I remembered that there are two tools that can help you with this funkeh/love-linux-distribution and socketubs/love-linux-distribution. You can ship your games with a precompiled LÖVE and its shared dependencies. Might not be up-to-date, might not work everywhere.
I'll probably work on my own love-linux-distribution too.
Lua script to distribute your LÖVE games. love-release.lua : Forum | Github
@Rucikir

bobbyjones
Party member
Posts: 676
Joined: Sat Apr 26, 2014 7:46 pm

Re: love-release - in Lua ! - makes LÖVE game release easier

Post by bobbyjones » Sun Feb 07, 2016 8:09 pm

Funkeh's solution should work on most up to date distros. Distros that don't update packages often might not have good luck with Funkeh's solution. But Linux users stay fairly up to date so I would say that it works mostly everywhere.

Probably get it to support much older distros by recompiling with an older glibc version. I think glibc is the limiting factor on where it can run. I know that some older versions of Debian can't run Funkeh's solution because of its glibc being too old.

Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests