flatpak-builder support #1618

Closed
zciendor wants to merge 8 commits from v0.6 into v0.6
5 changed files with 74 additions and 21 deletions
Showing only changes of commit 23376b4eee - Show all commits

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "packages/flatpak/shared-modules"]
path = packages/flatpak/shared-modules
url = https://github.com/flathub/shared-modules.git

View File

@ -103,26 +103,7 @@ slack.sh - create a package for Slackware
``` ```
#### Linux flatpak #### Linux flatpak
First make sure you have `flatpak` and `flatpak-builder` installed. Follow the See [packages/flatpak/README.md](packages/flatpak/README.md)
instructions for your distribution on [flathub](https://flatpak.org/setup/). The
instructions there only cover the installation of `flatpak`, but
`flatpak-builder` should be the same.
Once you have `flatpak` and `flatpak-builder` installed:
```
git clone git://github.com/Bitmessage/PyBitmessage.git
cd PyBitmessage/
git submodule add https://github.com/flathub/shared-modules.git
flatpak-builder --install --user -install-deps-from=flathub --force-clean --state-dir=build/.flatpak-builder build/_flatpak org.bitmessage.PyBitmessage.json
```
This will install PyBitmessage to your local flatpak user repository, but it
takes a while to compile because QT4 and PyQt4 have to be build, among others.
When done you can launch PyBitmessage via:
`flatpak run -v org.bitmessage.PyBitmessage`
If you want to free up disk space you can remove the `Sdk` runtime again:
`flatpak uninstall org.freedesktop.Sdk//18.08`
#### OS X #### OS X
Please refer to Please refer to

View File

@ -0,0 +1,68 @@
# PyBitmessage Linux flatpak instructions
_Some recent Linux distributions don't support QT4 anymore, hence PyBitmessage
won't run with a GUI. However, if you build PyBitmessage as a flatpak, it will
run in a sandbox which provides QT4.__
## Requirements
First make sure you have `flatpak` and `flatpak-builder` installed. Follow the
instructions for your distribution on [flathub](https://flatpak.org/setup/). The
instructions there only cover the installation of `flatpak`, but
`flatpak-builder` should be the same.
## Build and Install
Once you have `flatpak` and `flatpak-builder` installed:
```
git clone git://github.com/Bitmessage/PyBitmessage.git
cd PyBitmessage/
git submodule add https://github.com/flathub/shared-modules.git
flatpak-builder --install --user -install-deps-from=flathub --force-clean --state-dir=build/.flatpak-builder build/_flatpak org.bitmessage.PyBitmessage.json
PeterSurda commented 2021-03-17 12:43:23 +01:00 (Migrated from github.com)
Review

flatpak-builder --install --user -install-deps-from=flathub --force-clean --state-dir=build/.flatpak-builder build/_flatpak packages/flatplak/org.bitmessage.PyBitmessage.json

`flatpak-builder --install --user -install-deps-from=flathub --force-clean --state-dir=build/.flatpak-builder build/_flatpak packages/flatplak/org.bitmessage.PyBitmessage.json`
```
This will install PyBitmessage to your local flatpak user repository, but it
takes a while to compile because QT4 and PyQt4 have to be build, among others.
# Run
When installation is done you can launch PyBitmessage via the **command line**:
`flatpak run -v org.bitmessage.PyBitmessage`
Flatpak also exports a `.desktop` file, so you should be able to find and launch
PyBitmessage via the **application launcher** of your Desktop (Gnome, KDE, ...).
# Export
You can create a single file "bundle", which allows you to copy and install the
PyBitmessage flatpak on other devices of the same architecture as the build machine.
## Create a local flatpak repository
```
flatpak-builder --repo=build/_flatpak_repo --force-clean --state-dir=build/.flatpak-builder build/_flatpak packages/flatpak/org.bitmessage.PyBitmessage.json
```
This will create a local flatpak repository in `build/_flatpak_repo/`.
## Create a bundle
```
flatpak build-bundle build/_flatpak_repo build/pybitmessage.flatpak org.bitmessage.PyBitmessage
```
This will create a `pybitmessage.flatpak` bundle file in the `build/` directory.
This bundle can be copied to other systems or installed locally:
```
flatpak install pybitmessage.flatpak
```
The application can be run using flatpak:
```
flatpak run org.bitmessage.PyBitmessage
```
It can then be uninstalled with this command:
```
flatpak uninstall org.bitmessage.PyBitmessage
```
This way of building an application is very convenient when preparing flatpaks
for testing on another system of the same processor architecture.
## Cleanup
If you want to free up disk space you can remove the `Sdk` runtime again:
`flatpak uninstall org.freedesktop.Sdk//18.08`
You can also delete the `build` directory again.

View File

@ -81,7 +81,7 @@
"sources" : [ "sources" : [
{ {
"type" : "dir", "type" : "dir",
"path" : "." "path" : "../../"
} }
] ]
} }

@ -0,0 +1 @@
Subproject commit 3d5959a72ec0d0be923367e08ff01d04f2b6dba8