GithubHelp home page GithubHelp logo

lirios / appcenter Goto Github PK

View Code? Open in Web Editor NEW
29.0 8.0 3.0 672 KB

:rocket: App Center for Liri OS

License: GNU General Public License v3.0

C++ 81.24% QML 15.95% C 0.41% CMake 2.40%
flatpak qml qt package-manager bundle ostree updater qt-quick hacktoberfest material-design

appcenter's Introduction

Liri

GitHub issues Bountysource

This repository contains:

  • Manifest files for developers.
  • General issue tracker.
  • Backers list.
  • Wiki.

Contributor Guide

Please read the detailed contributor guide.

General issue tracker

Click on the Issues tab and submit issues.

Wiki

Click on the Wiki tab, read and/or write new content.

Alternatively you can clone the Wiki repository, work on your local system and push the changes back.

Clone the repository with:

git clone [email protected]:lirios/lirios.wiki.git

appcenter's People

Contributors

alexkreidler avatar ibelieve avatar liri-ci avatar plfiorini avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

appcenter's Issues

Resources are duplicate

We might have the same resource from many different sources, but we want
to present it to the user only once.

Fix CMake deprecation warnings

Make Warning (dev) at cmake/LibFindMacros.cmake:160 (message):
  Plural form Glib_LIBRARIES;Glib_LIBRARY found in config options of GIO.
  This works as before but is now deprecated.  Please only use singular forms
  INCLUDE_DIR and LIBRARY, and update your find scripts for LibFindMacros >
  2.0 automatic dependency system (most often you can simply remove the
  PROCESS variables entirely).
Call Stack (most recent call first):
  cmake/FindGIO.cmake:26 (libfind_process)
  cmake/LibFindMacros.cmake:14 (find_package)
  cmake/FindFlatpak.cmake:13 (libfind_package)
  CMakeLists.txt:69 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found GIO 
CMake Warning (dev) at cmake/LibFindMacros.cmake:160 (message):
  Plural form Glib_LIBRARIES found in config options of Flatpak.  This works
  as before but is now deprecated.  Please only use singular forms
  INCLUDE_DIR and LIBRARY, and update your find scripts for LibFindMacros >
  2.0 automatic dependency system (most often you can simply remove the
  PROCESS variables entirely).
Call Stack (most recent call first):
  cmake/FindFlatpak.cmake:34 (libfind_process)
  CMakeLists.txt:69 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found Flatpak 
CMake Warning (dev) at /usr/share/ECM/modules/ECMPackageConfigHelpers.cmake:84 (message):
  Your project already requires a version of CMake that includes the
  find_dependency macro via the CMakeFindDependencyMacro module.  You should
  use CMakePackageConfigHelpers instead of ECMPackageConfigHelpers.
Call Stack (most recent call first):
  framework/CMakeLists.txt:2 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

AppStream parser library

The official library is very limited and can't parse a lot of stuff, including keywords and kudos.
We should write a small library around a DOM XML parser of the collection.

Kudos

Kudos is a rating system for apps based on a combination of AppStream metadata, desktop files and icons.
It is inspired by the same kudos system of gnome-software.

The following metrics define how tightly the application is integrated with the platform:

  • HiDpiIcon — installs a 128x128 or larger application icon
  • HighContrast — uses hicontrast or scalable icons for visually impaired users
  • ModernToolkit — uses a modern toolkit like Gtk-3 or QT-5
  • UsesNotifications — registers desktop notifications
  • SearchProvider — provides a search provider for GNOME Shell or KDE Plasma
  • InstallsUserDocs — provides user documentation

There are some "run-time" kudos as well:

  • FeaturedRecommended — Someone from Liri chose to feature this
  • HasKeywords — there are keywords in the desktop file used for searching
  • HasScreenshots — more than one screenshot is supplied
  • MyLanguage — has a populated translation in my locale, or a locale fallback
  • Popular — lots of people have downloaded this (not yet available)
  • RecentRelease — there been an upstream release in the last year
  • Sandboxed — the app runs through a sandbox
  • SandboxedSecure — the app runs through a sandbox with additional restrictions

Support AppImage

More and more upstream projects are already distributing upstream-provided, official AppImages.

Supporting AppImage in Liri OS App Center would have, among others, these advantages:

  • Immediate availability of a growing number of applications, directly from their upstream application authors, on the day the software is released
  • No unpacking or installation necessary
  • No root needed
  • No system libraries changed
  • Works out of the box, no installation of runtimes needed (unlike Snap and Flatpak)
  • Optional desktop integration with appimaged
  • Optional binary delta updates, e.g., for continuous builds (only download the binary diff) using AppImageUpdate
  • Can optionally GPG2-sign your AppImages (inside the file)
  • Works on Live ISOs (unlike Flatpak)
  • Can use the same AppImages when dual-booting multiple distributions

Don't fetch AppStream metadata when Internet is down

If the metadata was cached long ago we download it again but if the Internet connection is down the download fails leaving us with an empty applications list and a lot of errors in the terminal.

If Internet is down we should never try to fetch the metadata, instead we should use the cached metadata or show an error if it's not available.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.