{% extends "page.html" %} {% block body %} {% set page_class = "apps-single" %} {% endblock body %} {% block header %} {# This value is matched by the config.extra.menu.main~url #} {% set current_section = "apps" %} {{ macros_header::header(current_section=current_section)}} {% endblock header %} {% block content %}
{#{{ macros_sidebar::docs_sidebar(current_section=current_section) }}#}

← Back to all Apps

{{ macros_toc::docs_toc(page=page) }}

{{ page.title }}

{{ page.description }}{% if page.extra.summary_source_url %} Source{% endif %}

{#% for asset in page.assets -%} {%- if asset is matching("[.](jpg|png)$") -%} {% set image = resize_image(path=asset, width=180, height=335) %} {%- endif %} {%- endfor %#}
{% if page.content %} {{ page.content | safe }} {% endif %}
Project links: {% if page.extra.more_information %} Links with more information: {% endif %} {% if page.extra.screenshots %} Links to (pages with) screenshots: {% endif %} {% if page.extra.screenshots_img %} Screenshots
    {% for screenshot in page.extra.screenshots_img %}
  • Screenshot of {{ page.title }}
  • {% endfor %}
{% endif %}

Rating

{% if page.taxonomies.mobile_compatibility %} Mobile Fit: {% for compatibility in page.taxonomies.mobile_compatibility %} {{ compatibility }} {% if compatibility == "5" %}

Perfect - this app fits your phone screen just fine out of the box and works nicely with touch input!

{% elif compatibility == "4" %}

Almost perfect, works fine with tweaks for scaling, like scale-to-fit {% if page.extra.scale_to_fit %}{{ page.extra.scale_to_fit }} on{% endif %} on Phosh

{% elif compatibility == "3" %}

Some parts of the app are not usable with touch input on small screens, even with scale-to-fit {% if page.extra.scale_to_fit %}{{ page.extra.scale_to_fit }} on{% endif %}

{% elif compatibility == "2" %}

Many parts of the app are not usable with touch input on small screens, even with scale-to-fit {% if page.extra.scale_to_fit %}{{ page.extra.scale_to_fit }} on{% endif %}

{% elif compatibility == "1" %}

App is unusable with touch input on small screens – why is this app listed?

{% else %}

This app has not yet been evaluated - please help!

{% endif %} {% endfor %} {% endif %} {% if page.taxonomies.status %}{% for project_state in page.taxonomies.status %}
Project status: {{ project_state }} {% if project_state == "mature" %}

This project has been in development for a long time and is usually well beyond its 1.0 release. It should work fine.

{% elif project_state == "maturing" %}

This project has been in development for some time and is somewhere around a 1.0 release. It should work mostly fine.

{% elif project_state == "early" %}

This project has been in development for a short time only. It should work mostly fine, but expect bugs and an incomplete featureset.

{% elif project_state == "WIP" %}

This project is in a very early state of development. It may work fine for you, but there may also be dragons.

{% elif project_state == "inactive" %}

This project has not seen any inactivity in more than a year. It may work fine for you, there may be dragons, and most importantly, don't expect updates or a response to your bug reports!

{% elif project_state == "unmaintained" %}

This project has been officially abandonned by its maintainers. It might still work for you, but you won't get any help if something is wrong.

{% elif project_state == "archived" %}

This project has been archived by its maintainers. It might still work for you, but you won't get any help if something is wrong.

{% elif project_state == "gone" %}

This project has been deleted by its maintainers. The source code is just gone, and nothing can be done about that. In case you still have a copy of it, please get in touch.

{% else %}

Whoops, we don't know how to explain this status yet. Something went wrong!

{% endif %} {% endfor %}
{% endif %}

Features

{% if page.taxonomies.requires_internet %}

Connectivity: {% for value in page.taxonomies.requires_internet %} {% if value == "requires offline-only" %} This app does never use the internet. {% elif value == "supports offline-only" %} This app can work completely offline. {% elif value == "requires always" %} This app needs to be only all the time. {% elif value == "recommends always" %} This app works better with a continous internet connection, but does not require it. {% elif value == "requires first-run" %} This app requires internet on first-run, e.g., to download content necessary for operation. {% else %}

Whoops, we don't know how to explain this status yet. Something went wrong!

{% endif %} {% endfor %}

{% endif %} {% if page.extra.all_features_touch %} {% if page.extra.all_features_touch is string %} {% else %} {% if page.extra.all_features_touch %}

 Every feature of this app can be accessed via touch screen, no mouse or keyboard needed.

{% endif %} {% endif %} {% if page.extra.intended_for_mobile %}

 This app is (according to its appstream metadata or description) intended to be compatible with mobile devices.

{% endif %} {% endif %}

Packaging

{% if page.extra.repology %}
Is this app packaged for my distribution?

green: current and packaged,
red: packaged, but not current, ratings and other details may not apply.

{% for repologyname in page.extra.repology %} Packaging status {% endfor %}

Powered by Repology


{% endif %} {% if page.extra.flathub %}

Get it on Flathub!

{% endif %} {% if page.extra.flatpak_link %}

Install as flatpak: {{ page.extra.flatpak_link }}

{% endif %} {% if page.extra.flatpak_recipe %}

Build and install your own flatpak: {{ page.extra.flatpak_recipe }}

{% endif %} {% if page.extra.snapcraft %}

Get it on Snapcraft!

{% endif %} {% if page.extra.snap_link %}

Install as Snap: {{ page.extra.snap_link }}

{% endif %} {% if page.extra.snap_recipe %}

Build and install your own Snap: {{ page.extra.snap_recipe }}

{% endif %} {% if page.extra.snapcraft or page.extra.snap_link or page.extra.snap_recipe %}

Please note that Snap only supports these distributions.

{% endif %} {% if page.extra.app_id %}

If you're lucky*, you can install this app by just hitting this button:

Install

* You need to have an appstream:// handler, e.g., GNOME Software or KDE Discover, installed and the app needs to be available in a configured software repository, more details.

{% endif %}

Find similar apps

{% if page.taxonomies.services %}

By Service: {% for service in page.taxonomies.services %} {{ service }} {% endfor %}

{% endif %} {% if page.taxonomies.categories %}

By Category: {% for category in page.taxonomies.categories %} {{ category }} {% endfor %}

{% endif %} {% if page.taxonomies.freedesktop_categories %}

By FreeDesktop-(Additional-)Category: {% for freedesktop_category in page.taxonomies.freedesktop_categories %} {{ freedesktop_category }} {% endfor %}

{% endif %}

Licensing and technical details

License: {% if page.taxonomies.project_licenses %}{% for project_license in page.taxonomies.project_licenses %} {{ project_license }} {% endfor %}{% endif %} {% if page.taxonomies.metadata_licenses %}{% for metadata_license in page.taxonomies.metadata_licenses %} Metadata: {{ metadata_license }} {% endfor %}{% endif %}

{% if page.taxonomies.frameworks %}

Frameworks: {% for framework in page.taxonomies.frameworks %} {{ framework }} {% endfor %}

{% endif %} {% if page.taxonomies.backends %}

Backend: {% for backend in page.taxonomies.backends %} {{ backend }} {% endfor %}

{% endif %} {% if page.taxonomies.programming_languages %}

Programming languages: {% for programming_language in page.taxonomies.programming_languages %} {{ programming_language | replace(from="Cpp", to="C++")}} {% endfor %}

{% endif %} {% if page.taxonomies.build_systems %}

Build system: {% for build_system in page.taxonomies.build_systems %} {{ build_system }} {% endfor %}

{% endif %} {% if page.extra.appstream_xml_url %}

AppStream Metadata URL: {{ page.extra.appstream_xml_url }}

{% endif %}
{% endblock content %}