{"id":15014713,"url":"https://github.com/love-actions/love-actions-linux","last_synced_at":"2025-04-12T08:23:41.650Z","repository":{"id":44443298,"uuid":"512599094","full_name":"love-actions/love-actions-linux","owner":"love-actions","description":"Build Linux .AppImage package","archived":false,"fork":false,"pushed_at":"2024-11-07T14:18:03.000Z","size":23,"stargazers_count":8,"open_issues_count":3,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-26T03:33:12.728Z","etag":null,"topics":["linux","love2d"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/love-actions.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2022-07-11T03:05:44.000Z","updated_at":"2025-03-16T19:06:16.000Z","dependencies_parsed_at":"2024-11-06T02:18:08.181Z","dependency_job_id":"e56966e4-b235-474c-b2b2-431ca83a401c","html_url":"https://github.com/love-actions/love-actions-linux","commit_stats":{"total_commits":38,"total_committers":3,"mean_commits":"12.666666666666666","dds":0.07894736842105265,"last_synced_commit":"a88721b73fe4358039f95e523ed6c82124c4c43b"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/love-actions%2Flove-actions-linux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/love-actions%2Flove-actions-linux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/love-actions%2Flove-actions-linux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/love-actions%2Flove-actions-linux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/love-actions","download_url":"https://codeload.github.com/love-actions/love-actions-linux/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248538070,"owners_count":21120936,"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":["linux","love2d"],"created_at":"2024-09-24T19:45:59.856Z","updated_at":"2025-04-12T08:23:41.631Z","avatar_url":"https://github.com/love-actions.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# love-actions-linux\n\n## Which version to use?\n\n- For the `11.5` version of the [LÖVE](https://love2d.org/) framework, use the `v2` tag or `v2.x.x` tags.\n- For the `11.4` version of the [LÖVE](https://love2d.org/) framework, use the `v1` tag or `v1.x.x` tags.\n\n### Branches\n\nThis branch is for the latest release version of the [LÖVE](https://love2d.org/) framework.\n\nFor the `11.4` version, please refer to the [**11.4**](https://github.com/love-actions/love-actions-linux/tree/11.4) branch.\n\n## About\n\nGithub Action for building \u0026 deploying Linux `.AppImage` packages of a [LÖVE](https://love2d.org/) framework based game.\n\n### Related actions\n\nSee related actions below:\n\n[Love actions bare package](https://github.com/marketplace/actions/love-actions-bare-package)\n\n[Love actions for testing](https://github.com/marketplace/actions/love-actions-for-testing)\n\n## Quick example\n\n```yaml\n- name: Build Linux packages\n  id: build-packages\n  uses: love-action/love-actions-linux@v2\n  with:\n    app-name: Love App\n    bundle-id: com.example.loveapp\n    description: My awesome love app\n    version-string: \"1.0.0\"\n    icon-path: ./.github/build/linux/dev/icon.png\n    love-ref: \"11.5\"\n    love-package: ./game.love\n    lib-path: ./lib\n    share-path: ./share\n    build-deb: true\n    product-name: love_app\n    output-folder: ./dist\n```\n\n### Notice\n\nIf you want to load dynamic libraries in love runtime, you should place them in the `{lib-path}/lua/5.1/` dir.\n\nYour library folder should look like this:\n\n```\n - lib\n    |- a.so\n    |- b.so\n    |- lua\n        |-5.1\n           |- load_in_lua.so\n```\n\n## With [Love actions bare package](https://github.com/marketplace/actions/love-actions-bare-package) and [Love actions for testing](https://github.com/marketplace/actions/love-actions-for-testing)\n\n```yml\nenv:\n  BUILD_TYPE: ${{ fromJSON('[\"dev\", \"release\"]')[startsWith(github.ref, 'refs/tags/v')] }}\n  CORE_LOVE_PACKAGE_PATH: ./core.love\n  CORE_LOVE_ARTIFACT_NAME: core_love_package\n  PRODUCT_NAME: my_love_app\n  BUNDLE_ID: com.example.myloveapp\n\njobs:\n  build-core:\n    runs-on: ubuntu-latest\n    env:\n      OUTPUT_FOLDER: ./build\n    steps:\n      - uses: actions/checkout@v4\n        with:\n          submodules: recursive\n      - name: Build core love package\n        uses: love-actions/love-actions-core@v1\n        with:\n          build-list: ./media/ ./parts/ ./Zframework/ ./conf.lua ./main.lua ./version.lua\n          package-path: ${{ env.CORE_LOVE_PACKAGE_PATH }}\n      - name: Upload core love package\n        uses: actions/upload-artifact@v4\n        with:\n          name: ${{ env.CORE_LOVE_ARTIFACT_NAME }}\n          path: ${{ env.CORE_LOVE_PACKAGE_PATH }}\n  auto-test:\n    runs-on: ubuntu-latest\n    needs: build-core\n    steps:\n      - uses: actions/checkout@v4\n        with:\n          submodules: recursive\n      - name: Love actions for testing\n        uses: love-actions/love-actions-test@v1\n        with:\n          font-path: ./parts/fonts/proportional.otf\n          language-folder: ./parts/language\n  build-linux:\n    runs-on: ubuntu-latest\n    needs: [build-core, auto-test]\n    env:\n      OUTPUT_FOLDER: ./build\n    steps:\n      - uses: actions/checkout@v4\n        with:\n          submodules: recursive\n      # Download your core love package here\n      - name: Download core love package\n        uses: actions/download-artifact@v4\n        with:\n          name: ${{ env.CORE_LOVE_ARTIFACT_NAME }}\n      # This is an example dynamic library\n      - name: Download ColdClear\n        uses: ./.github/actions/get-cc\n        with:\n          platform: Linux\n          dir: ./ColdClear\n      # Notice the subdir /lua/5.1\n      - name: Process ColdClear\n        shell: bash\n        run: |\n          cd ./ColdClear\n          mkdir -p ./lib/lua/5.1\n          mv ./x64/CCloader.so ./lib/lua/5.1\n      - name: Build Linux packages\n        id: build-packages\n        uses: love-actions/love-actions-linux@v2\n        with:\n          app-name: Love App\n          bundle-id: com.example.loveapp\n          description: My awesome love app\n          version-string: \"1.0.0\"\n          icon-path: ./.github/build/linux/${{ env.BUILD_TYPE }}/icon.png\n          love-package: ${{ env.CORE_LOVE_PACKAGE_PATH }}\n          lib-path: ./ColdClear/lib\n          product-name: ${{ env.PRODUCT_NAME }}\n          output-folder: ${{ env.OUTPUT_FOLDER }}\n      - name: Upload AppImage artifact\n        uses: actions/upload-artifact@v4\n        with:\n          name: ${{ needs.get-info.outputs.base-name }}_Linux_AppImage\n          path: ${{ env.OUTPUT_FOLDER }}/${{ env.PRODUCT_NAME }}.AppImage\n```\n\n## All inputs\n\n| Name                  | Required | Default                  | Description                                                                        |\n| :-------------------- | -------- | ------------------------ | ---------------------------------------------------------------------------------- |\n| `app-name`            | `false`  | `\"Love App\"`             | App display name. Would be used in desktop file                                    |\n| `bundle-id`           | `false`  | `\"org.loveactions.love\"` | App bundle ID. Would be used to rename debian package's desktop file               |\n| `description`         | `false`  | `\"love\"`                 | App description. Would be used in control file and desktop file                    |\n| `version-string`      | `false`  | `\"11.5\"`                 | App version string. Recommend using 3 numbers seperated by dots                    |\n| `icon-path`           | `false`  | `\"\"`                     | Path to the png icon. Would be used in desktop file                                |\n| `love-ref`            | `false`  | `\"11.5\"`                 | `love` release ref. Could only be release tags like `11.5`                         |\n| `love-package`        | `false`  | `\"./game.love\"`          | Love package. Used to assemble the executable                                      |\n| `lib-path`            | `false`  | `\"\"`                     | Path to the library folder. Would copy all contents excluding top folder           |\n| `share-path`          | `false`  | `\"\"`                     | Path to the share folder. Would copy all contents excluding top folder             |\n| `build-deb`           | `false`  | `\"true\"`                 | Switch to control build debian package or not                                      |\n| `product-name`        | `false`  | `\"love_app\"`             | Base name of the package. Used to rename products                                  |\n| `output-folder`       | `false`  | `\"./build\"`              | Packages output folder. All packages would be placed here                          |\n| `love-actions-folder` | `false`  | `\"love-actions-linux\"`   | Path to the `love-actions-linux` folder. Would be used to run all the action steps |\n\n## All outputs\n\n| Name            | Example                     | Description                                                                                     |\n| :-------------- | --------------------------- | ----------------------------------------------------------------------------------------------- |\n| `package-paths` | `./build/love_app.AppImage` | built packages' paths in a bash-style list relative to the repository root, separated by spaces |\n\n## Other platforms\n\nIf you need to build game for other platforms, please check links below:\n\n[Love actions for android](https://github.com/marketplace/actions/love-actions-for-android)\n\n[Love actions for iOS](https://github.com/marketplace/actions/love-actions-for-ios)\n\n[Love actions for macOS portable](https://github.com/marketplace/actions/love-actions-for-macos-portable)\n\n[Love actions for macOS AppStore](https://github.com/marketplace/actions/love-actions-for-macos-appstore)\n\n[Love actions for Windows](https://github.com/marketplace/actions/love-actions-for-windows)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flove-actions%2Flove-actions-linux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flove-actions%2Flove-actions-linux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flove-actions%2Flove-actions-linux/lists"}