{"id":15103994,"url":"https://github.com/misterda/love-release","last_synced_at":"2025-04-04T19:14:33.761Z","repository":{"id":65559461,"uuid":"14150021","full_name":"MisterDA/love-release","owner":"MisterDA","description":":love_letter: Lua script that makes LÖVE game release easier","archived":false,"fork":false,"pushed_at":"2024-07-10T11:51:46.000Z","size":252,"stargazers_count":471,"open_issues_count":11,"forks_count":28,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-04T19:14:22.493Z","etag":null,"topics":["love","love2d","lua"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MisterDA.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-11-05T18:26:46.000Z","updated_at":"2025-04-01T02:38:57.000Z","dependencies_parsed_at":"2024-09-20T10:30:46.233Z","dependency_job_id":null,"html_url":"https://github.com/MisterDA/love-release","commit_stats":{"total_commits":213,"total_committers":11,"mean_commits":"19.363636363636363","dds":0.05633802816901412,"last_synced_commit":"c354e3434820692296047974dc366ca179017e4a"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MisterDA%2Flove-release","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MisterDA%2Flove-release/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MisterDA%2Flove-release/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MisterDA%2Flove-release/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MisterDA","download_url":"https://codeload.github.com/MisterDA/love-release/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247234923,"owners_count":20905854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["love","love2d","lua"],"created_at":"2024-09-25T20:00:21.663Z","updated_at":"2025-04-04T19:14:33.737Z","avatar_url":"https://github.com/MisterDA.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# love-release\n[![License](https://img.shields.io/badge/License-MIT-brightgreen.svg)](LICENSE)\n[![LuaRocks](https://img.shields.io/badge/LuaRocks-blue.svg)](https://luarocks.org/modules/rucikir/love-release)\n![Lua](https://img.shields.io/badge/Lua-5.1%2C%20JIT-blue.svg)\n\n[Lua][lua] script that makes [LÖVE][love] game release easier (previously\nBash script).\\\nAutomates LÖVE [Game Distribution][game_dist].\\\nLÖVE [forum topic][forum_topic].\\\nAvailable as a [LuaRocks 3][luarocks] [package][].\n\n## Features\nlove-release makes your LÖVE game release easier. love-release can\ncreate from your sources: Windows executables, macOS applications,\nDebian packages, and simple LÖVE files.\n\nlove-release creates only one LÖVE file per release directory and\nkeeps it synced with your sources.\n\nlove-release can extract its information from the environment: it\nguesses your game's title from the directory where it's stored,\nselects by default the latest LÖVE version from the web or uses its\nlatest bundled LÖVE version, then parses the `conf.lua` file to\nextract even more information such as the real LÖVE version your\nproject uses.\n\n### Usage\n```\nUsage: love-release [-D] [-M] [-a \u003cauthor\u003e] [-b] [-d \u003cdesc\u003e]\n       [-e \u003cemail\u003e] [-l \u003clove\u003e] [-p \u003cpackage\u003e] [-t \u003ctitle\u003e] [-u \u003curl\u003e]\n       [--uti \u003cuti\u003e] [-v \u003cv\u003e] [-X \u003cexclude\u003e] [--version] [-h] [\u003crelease\u003e] [\u003csource\u003e]\n       [-W [32|64]]\n\nMakes LÖVE games releases easier !\n\nArguments:\n   release               Project release directory.\n   source                Project source directory.\n\nOptions:\n   -D                    Debian package.\n   -M                    macOS application.\n   -W [32|64]            Windows executable.\n   -a \u003cauthor\u003e, --author \u003cauthor\u003e\n                         Author full name. Required for Debian.\n   -b                    Compile new or updated files to LuaJIT bytecode.\n   -d \u003cdesc\u003e, --desc \u003cdesc\u003e\n                         Project description. Required for Debian.\n   -e \u003cemail\u003e, --email \u003cemail\u003e\n                         Author email. Required for Debian.\n   -l \u003clove\u003e, --love \u003clove\u003e\n                         LÖVE version to use.\n   -p \u003cpackage\u003e, --package \u003cpackage\u003e\n                         Package and command name.\n   -t \u003ctitle\u003e, --title \u003ctitle\u003e\n                         Project title.\n   -u \u003curl\u003e, --url \u003curl\u003e Project homepage url. Required for Debian.\n   --uti \u003cuti\u003e           Project Uniform Type Identifier. Required for macOS.\n   -x \u003cexclude_pattern\u003e, --exclude \u003cexclude_pattern\u003e\n                         Exclude file patterns.\n   -v \u003cv\u003e                Project version. Required for Debian.\n   -h, --help            Show this help message and exit.\n\nFor more info, see https://github.com/MisterDA/love-release\n```\n\n### Configuration\nlove-release outputs a Lua table containing the information it uses to\ngenerate your project. That information can be stored in your\n`conf.lua` file to be used later.\n\n```lua\nfunction love.conf(t)\n  t.releases = {\n    title = nil,              -- The project title (string)\n    package = nil,            -- The project command and package name (string)\n    loveVersion = nil,        -- The project LÖVE version\n    version = nil,            -- The project version\n    author = nil,             -- Your name (string)\n    email = nil,              -- Your email (string)\n    description = nil,        -- The project description (string)\n    homepage = nil,           -- The project homepage (string)\n    identifier = nil,         -- The project Uniform Type Identifier (string)\n    excludeFileList = {},     -- File patterns to exclude. (string list)\n    releaseDirectory = nil,   -- Where to store the project releases (string)\n  }\nend\n```\n\n## Installation\n\n### Dependencies\nlove-release is only installable through LuaRocks and highly depends\non LuaRocks internal API. love-release is currently built on\nLuaRocks 3. LuaRocks API is not meant to be stable, and a future\nupdate could break love-release.\n\n#### Required\n- [libzip][] and its headers for lua-libzip.\n- Other libraries are automatically installed, but let's give them\n  some credit: [lua-zip][], [luafilesystem][], [loadconf][],\n  [middleclass][].\n\n#### Optional\n- `love` can be used to determine your system LÖVE version.\n- `fakeroot` and `dpkg-deb` are required to create Debian packages.\n- [LuaJIT][] can be used to compile your sources, either with\n  `luarocks-luajit` or with `luajit` if it is installed.\n\n### Install\n\n```sh\n# latest stable version\nluarocks install love-release\n\n# development version\nluarocks install --server=http://luarocks.org/dev love-release\n```\n\n### Remove Bash version\nYou may have previously installed the Bash version of\nlove-release. You can remove it with the following piece of code. Take\nthe time to assure yourself that the paths are correct and match your\ninstallation of love-release.\n\n```sh\nrm -rf '/usr/bin/love-release'\t\\\n       '/usr/share/love-release'\t\\\n       '/usr/share/man/man1/love-release.1.gz'\t\\\n       '/usr/share/bash-completion/completions/love-release'\t\\\n       '/etc/bash_completion.d/love-release'\n```\n\n## Contribute\nThe documentation of love-release internals is written with [LDoc][].\nGenerate it by running `ldoc .`.\\\nI currently do not plan to continue the development of the Bash script,\nor even to fix it. If there appears to be any need for it, let me know\nand I might consider doing so.\\\nEvery bug report or feature request is gladly welcome !\n\n[forum_topic]: https://love2d.org/forums/viewtopic.php?t=75387\n[game_dist]: https://www.love2d.org/wiki/Game_Distribution\n[LDoc]: https://github.com/stevedonovan/LDoc\n[luafilesystem]: https://github.com/keplerproject/luafilesystem\n[libzip]: http://www.nih.at/libzip/\n[love]: https://www.love2d.org/\n[Lua]: http://www.lua.org/\n[luaJIT]: http://luajit.org/\n[luarocks]: https://luarocks.org/\n[lua-zip]: https://github.com/brimworks/lua-zip\n[loadconf]: https://github.com/Alloyed/loadconf\n[middleclass]: https://github.com/kikito/middleclass\n[package]: https://luarocks.org/modules/rucikir/love-release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmisterda%2Flove-release","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmisterda%2Flove-release","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmisterda%2Flove-release/lists"}