SoK/Ideas/2023: Difference between revisions
Add Flatpak project |
|||
Line 114: | Line 114: | ||
'''Mentors:''' Karanjot Singh @drquark:kde.org, Emmanuel Charruau @allon:kde.org, and Joseph P. De Veaugh-Geiss @joseph:kde.org on Matrix | '''Mentors:''' Karanjot Singh @drquark:kde.org, Emmanuel Charruau @allon:kde.org, and Joseph P. De Veaugh-Geiss @joseph:kde.org on Matrix | ||
=== Systematization 1: Automate Flatpak checks in GitLab Invent CI === | |||
'''Project type:''' Coding / CI | |||
'''Brief explanation:''' Flatpak is a new method of packaging and distributing applications that let KDE developers offer them easily for a lot of users via Flathub. Automating build and packaging checks in CI is one of KDE's goals for the next two years ([https://community.kde.org/Goals/Automate_and_systematize_internal_processes Automate and systematize internal processes]). Building on the work from a previous [https://community.kde.org/SoK/Ideas/2022#KDE_Apps_packaging_as_Flatpak_for_Flathub SoK project], you will setup Flatpak builds in KDE's GitLab CI ([https://invent.kde.org invent.kde.org]) for KDE Applications. See https://invent.kde.org/packaging/flatpak-kde-applications#flatpak-manifests and https://community.kde.org/Guidelines_and_HOWTOs/Flatpak. | |||
'''Expected results:''' Flatpak packaging automated in GitLab Invent CI for as many KDE Apps as possible. | |||
'''Knowledge Prerequisite:''' Shell scripting, Git basics. Light knowledge in CI systems (GitLab CI, GitHub Actions), build systems (CMake), packaging, Flatpak and C++/Qt will help but not required. | |||
'''Mentor:''' [https://community.kde.org/User:Ravier Timothée Ravier]. Please reach out to [https://matrix.to/#/#plasma-discover:kde.org #plasma-discover:kde.org channel on Matrix]. |
Revision as of 12:16, 15 December 2022
Ideas
Information for mentees
These ideas were contributed by our developers and users. They are sometimes vague or incomplete. If you wish to submit a proposal based on these ideas, contact the developers and find out more about the particular suggestion you're interested in.
When writing your proposal or asking for help from the general KDE community don't assume people are familiar with the ideas here. KDE is really big!
If there is no specific contact given in the idea, you can ask questions on the general KDE development list [email protected]. See the KDE mailing lists page for information on available mailing lists and how to subscribe.
You need to submit your proposal to season.kde.org before the deadline.
Sample project
Project type: Coding / Web Development / Promo / Translation
Brief explanation:
Expected results:
Knowledge Prerequisite:
Mentor:
When adding an idea to this section, please try to include the following data:
- if the application is not widely known, a description of what it does and where its code lives
- a brief explanation
- the expected results
- pre-requisites for working on your project
- if applicable, links to more information or discussions
- mailing list or IRC channel for your application/library/module
- your name and email address for contact (if you're willing to be a mentor)
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
Ideas
Your Own Idea: Something that you're totally excited about
Project type: Coding / Web Development / Promo / Translation
Brief explanation: Do you have an awesome idea you want to work on with KDE but it isn't among the ideas below? That's cool. We love that! But please do us a favor: Get in touch with a mentor early on and make sure your project is realistic and within the scope of KDE. That will spare you and us a lot of frustration.
Expected results: Something you and KDE love
Knowledge Prerequisite: Probably C++ and Qt, but it depends on your project
Mentor: Try to see who in KDE is interested in what you want to work on and approach them. If you are unsure you can always ask in #kde-soc on Freenode IRC.
When adding an idea to this section, please try to include the following data:
- if the application is not widely known, a description of what it does and where its code lives
- a brief explanation
- the expected results
- pre-requisites for working on your project
- if applicable, links to more information or discussions
- mailing list or IRC channel for your application/library/module
- your name and email address for contact (if you're willing to be a mentor)
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
Accessibility: Work on improving the accessibility of {Kalendar, NeoChat, ...} or another QML app
Project type: Coding
Brief explanation: Accessibility is one of the goal for the next two years. A part of this task is to improve one app. Work on keyboard navigation, make sure a scree reader user is able to use the app, ...
Expected results: More accessibility
Knowledge Prerequisite: QML knowledge is recommended and willingness to learn
Mentor: Carl Schwan #kde-accessibility:kde:org on matrix
Accessibility: Work on improving the accessibility of KDE's websites
Project type: Website maintenance
Brief explanation: Many of KDE's website lack even the most basic accessibility features, such as alt descriptions for images or the correct rendering on small screens, like thos found on mobile phones. The candidate will be required to comb KDE's mains sites (to start with) and add accessibility features to bring them up to spec according to the accessibility guidelines laid out in the latest versions of WCAG.
Expected results: Fully accessible websites for our visitors.
Knowledge Prerequisites: HTML, CSS, Hugo, GitLab.
Mentors: Paul Brown, Aniqa Khokhar at the Promo channel on Matrix.
Sustainability 1: Preparation of KDE apps for Blue Angel eco-certification
Project type: Documentation and script testing
Brief explanation: Currently only one computer program in the Global Ecolabelling Network is certified with the Blue Angel ecolabel: KDE's Okular. As part of the new sustainability goal, we would like to add more KDE apps, in particular GCompris and Kate, to the list.
To obtain the Blue Angel ecolabel, applications must demonstrate compliance with a list of criteria, including energy consumption transparency and user autonomy. KDE has an advantage here, since being Free Software we are already fulfilling many aspects of the criteria. The candidate will be responsible for completing what is needed to submit at least two applications for Blue Angel eco-certification, including (a) updating online documentation for the user autonomy criteria for GCompris and Kate, and (b) testing usage scenario scripts before the software can be measured in the community lab.
Expected results: Documentation of user autonomy criteria for GCompris and Kate, testing usage scenario scripts for these apps.
Knowledge Prerequisites: None ... but familiarity with GitLab, Hugo, Python/xdotool is a plus.
Mentors: Joseph P. De Veaugh-Geiss @joseph:kde.org on Matrix.
Sustainability 2: Improve "KDE Eco Test" emulation tool
Project type: Coding
Brief explanation: Sustainability is one of KDE's goals for the next two years. One aspect of this goal is to measure the energy consumption of KDE software. To do this, it is necessary to use an emulation tool to create usage scenario scripts. "KDE Eco Test" is one such tool, but it needs some fixes. A list of to-dos can be found at the repository's README.
Expected results: At the end of the project several of the to-dos in the above list should be resolved (while new ones may be added).
Knowledge Prerequisite: Coding in Python, basic knowledge of git and automation tools
Mentors: Karanjot Singh @drquark:kde.org, Emmanuel Charruau @allon:kde.org, and Joseph P. De Veaugh-Geiss @joseph:kde.org on Matrix
Systematization 1: Automate Flatpak checks in GitLab Invent CI
Project type: Coding / CI
Brief explanation: Flatpak is a new method of packaging and distributing applications that let KDE developers offer them easily for a lot of users via Flathub. Automating build and packaging checks in CI is one of KDE's goals for the next two years (Automate and systematize internal processes). Building on the work from a previous SoK project, you will setup Flatpak builds in KDE's GitLab CI (invent.kde.org) for KDE Applications. See https://invent.kde.org/packaging/flatpak-kde-applications#flatpak-manifests and https://community.kde.org/Guidelines_and_HOWTOs/Flatpak.
Expected results: Flatpak packaging automated in GitLab Invent CI for as many KDE Apps as possible.
Knowledge Prerequisite: Shell scripting, Git basics. Light knowledge in CI systems (GitLab CI, GitHub Actions), build systems (CMake), packaging, Flatpak and C++/Qt will help but not required.
Mentor: Timothée Ravier. Please reach out to #plasma-discover:kde.org channel on Matrix.