Skip to content

Commit

Permalink
[#376] [DC] Implementation Flow. Add flatpak description
Browse files Browse the repository at this point in the history
  • Loading branch information
lyskouski committed Nov 5, 2023
1 parent 04dac00 commit 52179ce
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ That empowers users to effortlessly manage their finances while ensuring that no
| ![Android](./docs/mockups/icons/android.png) Android (Huawei Gallery) | [fingrom_Android.aab](https://github.com/lyskouski/app-finance/releases/latest) | [App Gallery](https://appgallery.huawei.com/#/app/C109437079) | [![App Gallery](./docs/mockups/badges/huawei.png)](https://appgallery.huawei.com/#/app/C109437079) |
| ![Linux](./docs/mockups/icons/linux.png) Linux (Snap Store) | [fingrom_LinuxSnap.snap](https://github.com/lyskouski/app-finance/releases/latest) | [![Fingrom](https://snapcraft.io/fingrom/badge.svg)](https://snapcraft.io/fingrom) | [![Fingrom](./docs/mockups/badges/snap-store.png)](https://snapcraft.io/fingrom) |
| ![Linux](./docs/mockups/icons/linux.png) Linux (Flathub) | [[pending]](https://github.com/lyskouski/app-finance/issues/350) | [[pending]](https://github.com/lyskouski/app-finance/issues/350) | [[pending]](https://github.com/lyskouski/app-finance/issues/350) |
| ![Linux](./docs/mockups/icons/linux.png) Linux (AppImage) | [pending] | [pending] | [pending] |
| ![Windows](./docs/mockups/icons/windows.png) Windows (Partner Center) | [fingrom_Windows.zip](https://github.com/lyskouski/app-finance/releases/latest) | [App Center: Fingrom](https://appcenter.ms/orgs/terCAD/apps/Fingrom) | [![Microsoft Store](./docs/mockups/badges/windows.png)](https://apps.microsoft.com/detail/fingrom/9NNPDJ2ST0HV) |
| ![Web Browsers](./docs/mockups/icons/web.png) Web | [Fingrom](https://lyskouski.github.io/app-finance/) | [pending] | _(In Release)_ |

Expand Down
37 changes: 37 additions & 0 deletions docs/implementation-flow/ch08-s04-linux.tex
Original file line number Diff line number Diff line change
Expand Up @@ -124,3 +124,40 @@ \subsubsection{Linux Snap Store}
\end{lstlisting}

\img{distributing/linux-discover}{KDE Neon - Discover: Availability check}{img:d-snap}


\subsubsection{Linux Flatpak Store}

Flatpak (\href{https://flathub.org}{https://flathub.org}). is an attractive solution for distributing applications
because of its distribution-agnostic nature (it works seamlessly across different distributions with their
forward-compatibility by handling a dependency resolution problems).

We may define a runtime that contains all the common libraries our application needs \issue{350}{}. Then, we build our
Flatpak on top of this runtime. What's powerful about this approach is that this same runtime is consistently used
across all distributions. Runtimes are reusable across multiple applications. In essence, the runtime acts as a
shared foundation for various applications, making it a practical solution for developers and users alike.

\begin{lstlisting}[language=terminal]
# Install builder
$ sudo apt install flatpak-builder
# 'runtime' definition
$ flatpak search org.freedesktop.Platform
$ flatpak install flathub org.freedesktop.Platform//23.08 org.freedesktop.Sdk//23.08
# ... or 'gnome', or 'kde'
$ flatpak search org.gnome.Platform
$ flatpak install flathub org.gnome.Platform//45 org.gnome.Sdk//45
# Build project from the manifest
$ flatpak-builder build-dir com.tercad.fingrom.yml --force-clean
# Install application (clean if exists)
$ flatpak-builder --user --install --force-clean build-dir com.tercad.fingrom.yml
# Run application
$ flatpak run com.tercad.fingrom
\end{lstlisting}

\noindent Build and installation is controlled by definitions from \q{com.tercad.fingrom.yml}-file
(\href{https://docs.flatpak.org/en/latest/manifests.html}{https://docs.flatpak.org/en/latest/manifests.html}).


\subsubsection{[TBD] Linux AppImage}

...

0 comments on commit 52179ce

Please sign in to comment.