All Projects → MisterDA → Love Release

MisterDA / Love Release

Licence: mit
💌 Lua script that makes LÖVE game release easier

Programming Languages

lua
6591 projects

Labels

Projects that are alternatives of or similar to Love Release

golflike
A golf roguelike
Stars: ✭ 19 (-95.21%)
Mutual labels:  love2d
denver.lua
a simple library to help you play custom waveforms with LÖVE
Stars: ✭ 66 (-83.38%)
Mutual labels:  love2d
Windfield
Physics module for LÖVE
Stars: ✭ 254 (-36.02%)
Mutual labels:  love2d
terebi
A simple library to handle pixel-perfect scaling of window content in Love2D.
Stars: ✭ 24 (-93.95%)
Mutual labels:  love2d
vector.lua
a simple vector library for Lua based on the PVector class from processing
Stars: ✭ 25 (-93.7%)
Mutual labels:  love2d
Brady
A camera library with parallax scrolling and aspect ratios for LÖVE.
Stars: ✭ 50 (-87.41%)
Mutual labels:  love2d
awesome-playdate
A list of awesome resources for Playdate (https://play.date) game development and the Playdate SDK (https://play.date/dev/)
Stars: ✭ 149 (-62.47%)
Mutual labels:  love2d
Blog
gamedev blog
Stars: ✭ 3,076 (+674.81%)
Mutual labels:  love2d
superfeather
SNES game engine in 65816 assembly, focusing on performance, flexibility, convenience
Stars: ✭ 31 (-92.19%)
Mutual labels:  love2d
animX
An animation library for Love2D with unique features
Stars: ✭ 17 (-95.72%)
Mutual labels:  love2d
Luven
Minimalist lighting engine for Löve2D
Stars: ✭ 37 (-90.68%)
Mutual labels:  love2d
sokoban
A sokoban clone.
Stars: ✭ 28 (-92.95%)
Mutual labels:  love2d
Live2LOVE
LÖVE library to show Live2D Cubism models (WIP)
Stars: ✭ 22 (-94.46%)
Mutual labels:  love2d
super-sphere
A minimal action game by Kenneth Reitz.
Stars: ✭ 37 (-90.68%)
Mutual labels:  love2d
Noobhub
🌐🔥 Network multiplayer and messaging for CoronaSDK, Moai, Gideros, LÖVE & Defold
Stars: ✭ 259 (-34.76%)
Mutual labels:  love2d
neon-phase
NEON PHASE, a colorful platformer made for a week-long jam
Stars: ✭ 21 (-94.71%)
Mutual labels:  love2d
fault
An obstacle avoidance game for Android and iOS.
Stars: ✭ 19 (-95.21%)
Mutual labels:  love2d
Tiny Ecs
ECS for Lua
Stars: ✭ 370 (-6.8%)
Mutual labels:  love2d
Love Nuklear
Lightweight immediate mode GUI for LÖVE games
Stars: ✭ 281 (-29.22%)
Mutual labels:  love2d
clove
A helper library for LÖVE which allows to loads huge amount of assets super-easily 👊
Stars: ✭ 18 (-95.47%)
Mutual labels:  love2d

love-release

License LuaRocks Lua

Lua script that makes LÖVE game release easier (previously Bash script).
Automates LÖVE Game Distribution.
LÖVE forum topic.
Available as a LuaRocks 3 package.

Features

love-release makes your LÖVE game release easier. love-release can create from your sources: Windows executables, macOS applications, Debian packages, and simple LÖVE files.

love-release creates only one LÖVE file per release directory and keeps it synced with your sources.

love-release can extract its information from the environment: it guesses your game's title from the directory where it's stored, selects by default the latest LÖVE version from the web or uses its latest bundled LÖVE version, then parses the conf.lua file to extract even more information such as the real LÖVE version your project uses.

Usage

Usage: love-release [-D] [-M] [-a <author>] [-b] [-d <desc>]
       [-e <email>] [-l <love>] [-p <package>] [-t <title>] [-u <url>]
       [--uti <uti>] [-v <v>] [-X <exclude>] [--version] [-h] [<release>] [<source>]
       [-W [32|64]]

Makes LÖVE games releases easier !

Arguments:
   release               Project release directory.
   source                Project source directory.

Options:
   -D                    Debian package.
   -M                    macOS application.
   -W [32|64]            Windows executable.
   -a <author>, --author <author>
                         Author full name. Required for Debian.
   -b                    Compile new or updated files to LuaJIT bytecode.
   -d <desc>, --desc <desc>
                         Project description. Required for Debian.
   -e <email>, --email <email>
                         Author email. Required for Debian.
   -l <love>, --love <love>
                         LÖVE version to use.
   -p <package>, --package <package>
                         Package and command name.
   -t <title>, --title <title>
                         Project title.
   -u <url>, --url <url> Project homepage url. Required for Debian.
   --uti <uti>           Project Uniform Type Identifier. Required for macOS.
   -x <exclude_pattern>, --exclude <exclude_pattern>
                         Exclude file patterns.
   -v <v>                Project version. Required for Debian.
   -h, --help            Show this help message and exit.

For more info, see https://github.com/MisterDA/love-release

Configuration

love-release outputs a Lua table containing the information it uses to generate your project. That information can be stored in your conf.lua file to be used later.

function love.conf(t)
  t.releases = {
    title = nil,              -- The project title (string)
    package = nil,            -- The project command and package name (string)
    loveVersion = nil,        -- The project LÖVE version
    version = nil,            -- The project version
    author = nil,             -- Your name (string)
    email = nil,              -- Your email (string)
    description = nil,        -- The project description (string)
    homepage = nil,           -- The project homepage (string)
    identifier = nil,         -- The project Uniform Type Identifier (string)
    excludeFileList = {},     -- File patterns to exclude. (string list)
    releaseDirectory = nil,   -- Where to store the project releases (string)
  }
end

Installation

Dependencies

love-release is only installable through LuaRocks and highly depends on LuaRocks internal API. love-release is currently built on LuaRocks 3. LuaRocks API is not meant to be stable, and a future update could break love-release.

Required

Optional

  • love can be used to determine your system LÖVE version.
  • fakeroot and dpkg-deb are required to create Debian packages.
  • LuaJIT can be used to compile your sources, either with luarocks-luajit or with luajit if it is installed.

Install

# latest stable version
luarocks install love-release

# development version
luarocks install --server=http://luarocks.org/dev love-release

Remove Bash version

You may have previously installed the Bash version of love-release. You can remove it with the following piece of code. Take the time to assure yourself that the paths are correct and match your installation of love-release.

rm -rf '/usr/bin/love-release'	\
       '/usr/share/love-release'	\
       '/usr/share/man/man1/love-release.1.gz'	\
       '/usr/share/bash-completion/completions/love-release'	\
       '/etc/bash_completion.d/love-release'

Contribute

The documentation of love-release internals is written with LDoc. Generate it by running ldoc ..
I currently do not plan to continue the development of the Bash script, or even to fix it. If there appears to be any need for it, let me know and I might consider doing so.
Every bug report or feature request is gladly welcome !

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].