1
0
mirror of https://github.com/mifi/lossless-cut.git synced 2024-11-23 02:42:37 +01:00
lossless-cut/developer-notes.md
2023-01-02 12:41:59 +08:00

2.1 KiB

Development

This app is built using Electron. Make sure you have at least Node v14. The app uses ffmpeg from PATH when developing.

npm install -g yarn
git clone https://github.com/mifi/lossless-cut.git
cd lossless-cut
yarn

Note: yarn may take some time to complete.

Installing ffmpeg

Run one of the below commands:

npm run download-ffmpeg-darwin-x64
npm run download-ffmpeg-darwin-arm64
npm run download-ffmpeg-linux-x64
npm run download-ffmpeg-win32-x64

Running

npm start

Building for production

See:

Building mas-dev (Mac App Store) build locally

This will sign using the development provisioning profile:

npm run pack-mas-dev

Windows Store

Windows store version is built as a Desktop Bridge app (with runFullTrust capability). This means the app has access to essentially everything the user has access to, and even internetClient is redundant.

Releasing

For per-platform build/signing setup, see this article.

Release new version

  • Commit changes
  • npm version ...
  • git push && git push --tags
  • Wait for build and draft in Github actions
  • Release draft at github
  • Bump snap version
  • npm run scan-i18n to get the newest Englist strings and push so weblate gets them

Maintainence chores

Keep dependencies up to date

  • ffmpeg
  • electron
  • package.json

i18n

npm run scan-i18n

Licenses

Generate summary

npx license-checker --summary

Regenerate licenses file

npm run generate-licenses
#cp licenses.txt losslesscut.mifi.no/public//

Then deploy.