| … | … | @@ -52,9 +52,31 @@ steps: |
| 52 | 52 | run: test -f dist/ifsrenderer-linux-x86_64.tar.gz && test -f dist/IFSRenderer-x86_64.AppImage |
| 53 | 53 | timeout: 60 |
| 54 | 54 | |
| 55 | # Stage the layout `pear install` expects, so the published drive is directly |
| 56 | # installable: /package.json + /by-arch/<platform>-<arch>/app/<name>.AppImage. |
| 57 | # |
| 58 | # The name must be `ifsrenderer`, NOT a prettier productName: pear install |
| 59 | # derives appName from `productName ?? name`, then extracts `<appName>.desktop` |
| 60 | # from the AppImage and THROWS if it is absent. The AppImage carries |
| 61 | # `ifsrenderer.desktop`, so those two have to agree. |
| 62 | - name: Stage pear-install layout |
| 63 | run: | |
| 64 | mkdir -p by-arch/linux-x64/app |
| 65 | cp dist/IFSRenderer-x86_64.AppImage by-arch/linux-x64/app/ifsrenderer.AppImage |
| 66 | printf '{\n "name": "ifsrenderer",\n "version": "%s"\n}\n' "${GIT_COMMIT_SHORT:-dev}" > package.json |
| 67 | ls -la by-arch/linux-x64/app package.json |
| 68 | timeout: 120 |
| 69 | |
| 55 | 70 | artifacts: |
| 56 | 71 | - dist/ifsrenderer-linux-x86_64.tar.gz |
| 57 | 72 | - dist/IFSRenderer-x86_64.AppImage |
| 73 | - by-arch |
| 74 | - package.json |
| 75 | |
| 76 | # Publish each release into this repo's virtual Hyperdrive as well, so it has a |
| 77 | # durable pear:// link. The drive stores pointers, not bytes: three real 49MB |
| 78 | # AppImage builds measured 519KB of drive for 148MB of input. |
| 79 | vdrive: true |
| 58 | 80 | |
| 59 | 81 | channels: |
| 60 | 82 | experimental: |