Skip to main content

A Program to create Snapshots of Flatpak Apps

Project description

jdFlatpakSnapshot

A Program to create Snapshots of Flatpak Apps

jdFlatpakSnapshot

jdFlatpakSnapshot allows you to easily create. a Snapshot of all the Data of a Flatpak. You can now play around and change the settings of the Flatpak or something else. If something goes wrong, you can restore the Data from the Snapshot with one click.

Install

Flatpak

You can get jdFlatpakSnapshot from Flathub

pip

You can install jdFlatpakSnapshot from PyPI using pip:

pip install jdFlatpakSnapshot

Using this Method, it will not include a Desktop Entry or any other Data file, so you need to run jdFlatpakSnapshot from the Command Line. Use this only, when nothing else works.

From source

This is only for experienced Users and someone, who wants to package jdFlatpakSnapshot for a Distro. jdFlatpak should be installed as a Python package. You can use pip or any other tool that can handle Python packages. YOu need to have lrelease installed to build the Package. After that, you should run install-unix-datafiles.py which wil install things like the Desktop Entry or the Icon in the correct place. It defaults to /usr, but you can change it with the --prefix argument. It also applies the translation to this files. You need gettext installed to run install-unix-datafiles.py.

Here's a example of installing jdFlatpakSnapshot into /usr/local:

sudo pip install --prefix /usr/local .
sudo ./install-unix-datafiles.py --prefix /usr/local

Translate

You can help translating jdFlatpakSnapshot on Codeberg Translate

Develop

jdFlatpak is written in Python and uses PyQt6 as GUI toolkit. You should have some experience in both. You can run jdFlatpakSnapshot.pyto start jdFlatpakSnapshot from source and test your local changes. It ships with a few scripts in the tools directory that you need to develop.

CompileUI.py

This is the most important script. It will take all .ui files in jdFlatpakSnapshot/ui and compiles it to a Python class and stores it in jdFlatpakSnapshot/ui_compiled. Without running this script first, you can't start jdFlatpakSnapshot. You need to rerun it every time you changed or added a .ui file.

BuildTranslations.py

This script takes all .ts files and compiles it to .qm files. The .ts files are containing the translation source and are being used during the translation process. The .qm contains the compiled translation and are being used by the Program. You need to compile a .ts file to a .qm file to see the translations in the Program.

UpdateTranslations.py

This regenerates the .ts files. You need to run it, when you changed something in the source code. The .ts files are contains the line in the source, where the string to translate appears, so make sure you run it even when you don't changed a translatable string, so the location is correct.

UpdateUnixDataTranslations.py

This regenerates the translation files in deploy/translations. these files contains the translations for the Desktop Entry and the AppStream File. It uses gettext, as it is hard to translate this using Qt. These files just exists to integrate the translation with Weblate, because Weblate can't translate the Desktop Entry and the AppStream file. Make sure you run this when you edited one of these files. YOu need to have gettext installed to use it.

UpdateTranslators.py

This uses git to get a list of all Translators and writes it to jdFlatpakSnapshot/data/translators.json. This is used to display the translators in the About Dialog. You need git to run this script.

WriteChangelogHtml.py

This read the Changelog from deploy/page.codeberg.JakobDev.jdFlatpakSnapshot.metainfo.xml, converts it to HTML and writes it to jdFlatpakSnapshot/data/changelog.html. This is used to display the Changelog in the About Dialog. You need appstream-python to be installed to use this script.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jdFlatpakSnapshot-2.2.tar.gz (50.4 kB view details)

Uploaded Source

Built Distribution

jdFlatpakSnapshot-2.2-py3-none-any.whl (71.9 kB view details)

Uploaded Python 3

File details

Details for the file jdFlatpakSnapshot-2.2.tar.gz.

File metadata

  • Download URL: jdFlatpakSnapshot-2.2.tar.gz
  • Upload date:
  • Size: 50.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.1

File hashes

Hashes for jdFlatpakSnapshot-2.2.tar.gz
Algorithm Hash digest
SHA256 c824770ecb1270e248c28cc7baaf82f9f0912906aa2dba14ef3c122d88bf6fec
MD5 2c317498666abdf70f65e612f4078aec
BLAKE2b-256 19068c9d248552385d98121f9262447c827db08544d7bc3432f0870230040276

See more details on using hashes here.

File details

Details for the file jdFlatpakSnapshot-2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for jdFlatpakSnapshot-2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 319ebdccb94a9d7085283a873cc1940ff53c0f7906c12d33644fec8595f0e560
MD5 9fda2bf8525c483549c8fc7bb5dcf49d
BLAKE2b-256 6e117c9a2fcc2ad20b2ef00923c2e8381fd4aeab09263860adbc0559cc303691

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page