https://github.com/endlessm/electron-flatpak-base-app
Flatpak runtime for electron apps based on the freedesktop runtime.
https://github.com/endlessm/electron-flatpak-base-app
Last synced: 2 days ago
JSON representation
Flatpak runtime for electron apps based on the freedesktop runtime.
- Host: GitHub
- URL: https://github.com/endlessm/electron-flatpak-base-app
- Owner: endlessm
- Archived: true
- Created: 2016-10-03T19:18:45.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-12-09T12:03:46.000Z (over 2 years ago)
- Last Synced: 2024-04-15T00:02:36.501Z (about 1 year ago)
- Language: Makefile
- Size: 39.1 KB
- Stars: 13
- Watchers: 25
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-flatpak - io.atom.electron.BaseApp - [example](https://github.com/flathub/electron-sample-app), deprecated (Runtimes / Base Apps)
README
**Obsolete**, superseded by https://github.com/flathub/org.electronjs.Electron2.BaseApp and https://github.com/flathub/io.atom.electron.BaseApp.
# electron-flatpak-base-app
This repo contains flatpak builder manifests for building a number of
applications to help with electron flatpak development.Built versions for x86_64, i386 and arm are hosted on [Flathub](https://flathub.org).
To get started with the electron base app for your current architecture.
```
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub io.atom.electron.BaseApp
```## Apps
The most useful app here will probably be the `io.atom.electron.BaseApp`
which can be layered into your flatpak electron app with all the library
dependencies electron needs to run. For a high level overview of flatpak,
electron and the applications here see.#### General Apps
- **io.atom.electron.BaseApp**: contains all the library dependencies of an
electron application, allowing your app to target the freedesktop runtime.
Should be suitable for targeting *any* linux distribution.
- **io.atom.electron.DevApp**: layered on top of the base app, this application
contains flatpak, git and nodejs installed. You can use it to build electron
flatpaks on a system where either git or nodejs is not available.#### EndlessOS Apps
- **com.endless.ElectronKnowledgeBaseApp**: layered on top of the base app,
contains the library dependencies needed to build offline content browsing
apps for EndlessOS.
- **com.endless.ElectronKnowledgeDevApp**: adds flatpak, git and nodejs to
the ElectronKnowledgeBaseApp. You can build EndlessOS content browsing
flatpaks from within this app.## Building
Building the apps require `flatpak` and `flatpak-builder` to be installed on
your system. You will also need the freedesktop runtime, which if you don't
already have, can be installed by running
```
make install-deps
```Any of the app manifests can be built directly using the `flatpak-builder`
command. The makefile contains a recipe for building all the apps in this
repo sequentially, to do so just run
```
make
```You can use the following environment variables to configure the build.
- ARCH: architecture to use when building the base application. You must
have the freedesktop runtimes installed for the same architecture.
- REPO: the location of the flatpak repository to publish the base app to.
Defaults to `repo` wherever `make` is run.
- REPO_NAME: the name to use when setting up a local flatpak remote for the
repo. Default to `local-endless-electron-apps`.
- EXPORT_ARGS: extra arguments to use when exporting the application with
`flatpak-builder`, such as `--gpg-sign=KEYID` for gpg signing.## Using
You can use the base app to build an electron application flatpak. One way to do
this is to specify it in a `flatpak-builder` manifest file.
```json
{
"id": "com.website.MyElectronApp",
"base": "io.atom.electron.BaseApp",
"base-version": "master",
"runtime": "org.freedesktop.Platform",
"runtime-version": "1.6",
"sdk": "org.freedesktop.Sdk",
```