SoK/Ideas/2025: Difference between revisions
m →KdeEcoTest: Improve emulation tool: fixed formatting |
→KdeEcoTest: Improve emulation tool: added new to-do for KdeEcoTest |
||
Line 178: | Line 178: | ||
'''Project type:''' Coding | '''Project type:''' Coding | ||
'''Brief explanation:''' Measuring the energy consumption of KDE software is one of the goals of the KDE Eco initiative. Refer to the [https://eco.kde.org/handbook/ KDE Eco Handbook] and [https://invent.kde.org/teams/eco/remote-eco-lab KEcolab] for more details on the measurement process. To achieve this goal it is necessary to use an emulation tool to create Standard Usage Scenario scripts. [https://invent.kde.org/teams/eco/feep/-/blob/master/tools/KdeEcoTest/ | '''Brief explanation:''' Measuring the energy consumption of KDE software is one of the goals of the KDE Eco initiative. Refer to the [https://eco.kde.org/handbook/ KDE Eco Handbook] and [https://invent.kde.org/teams/eco/remote-eco-lab KEcolab] for more details on the measurement process. To achieve this goal it is necessary to use an emulation tool to create Standard Usage Scenario scripts. [https://invent.kde.org/teams/eco/feep/-/blob/master/tools/KdeEcoTest/ KdeEcoTest] is one such tool, but it needs some fixes. Some to-dos include: | ||
* Help migrate the existing code at the FEEP repository to a standalone repository | |||
* Fix shift coordination | * Fix shift coordination | ||
* Add modal functionality | * Add modal functionality |
Revision as of 19:07, 19 December 2024
Ideas
General information
All community members can submit an idea for a Season of KDE project. If you have an idea, reach out to the different people on the team to see if at least one core member would like to mentor and ask if you can add their contact info to the idea below.
Do not add SoK ideas with no mentor and no contact info.
Information for mentees
These ideas were contributed by our KDE 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 are interested in.
When writing your proposal or asking for help from the general KDE community do not 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.
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.
Games: Improve Mankala Graphical User Interface
Project type: Coding
Brief explanation: Mankala Engine has been recently developed. There is a simple Graphical User Interface (GUI), Mankala. The aim of this SoK project is to improve the GUI.
Expected results: A beautiful, functional cross platform GUI.
Knowledge Prerequisite: Knowledge of QML and some basic knowledge of C++
Mentors: João Gouveia ([email protected]), Benson Muite (benson_muite at emailplus dot org) or contact through https://matrix.to/#/#mancala:kde.org
Games: Add a Mancala Game to Mankala Engine
Project type: Coding
Brief explanation: Mankala Engine has been recently developed. There are a wide variety of Mancala games. The aim of this SoK project is to add at least one additional Mancala game to Mankala Engine.
Expected results: At least one new game in Mankala Engine.
Knowledge Prerequisite: Some basic knowledge of programming and willingness to learn C++
Mentors: João Gouveia ([email protected]), Benson Muite (benson_muite at emailplus dot org) or Contact through https://matrix.to/#/#mancala:kde.org or
Kdenlive - create animated icon previews for transitions
Project type: Coding
Brief explanation: Kdenlive is a video editing app. You can apply various transitions between video clips (for example a simple crossfade, or a slide from left). Currently, these transitions are listed in a tree view list. The idea would be to be able to switch between this tree view and an icon view that would display animated icons previewing the transition.
Expected results:
- Create a new QListView mode (transitions are stored in a model) that can display animated gifs.
- Create a bash or python script that can generate animated gif icons for the transitions (we can provide some sample code to start this).
Knowledge Prerequisite: C++ and basic Qt
Mentor: Jean-Baptiste Mardelle ([email protected]) or contact through https://matrix.to/#/#kdenlive-dev:kde.org
Konverter: An app to convert videos and audios
Already found a potential mentee.
Project type: Coding
Brief explanation: There is an existing Qt5 project named sound Konverter by Carl. We plan to reuse that project and preferably use ffmpeg C++ bindings to create an app based on Qt6 and Kirigami, that will convert audio and video files to different extensions.
Expected results: A beautiful, functional cross-platform GUI with video and audio conversion support.
Knowledge Prerequisite: Knowledge of QML and C++ with some basic knowledge on ffmpeg
Mentor: Carl Schwan
Win2Linux-Chooser: An app to help migrate from Windows to Linux
Project type: Coding
Brief explanation: The Win2Linux-Chooser for Windows is a tool that guides users in identifying their needs and system/hardware specifications when switching to GNU/Linux. This tool can reduce e-waste and carbon emissions, promote accessibility to GNU/Linux, provide inclusivity for resource-constrained settings, and foster Free and Open Source Software (FOSS) adoption.
Expected results: An easy-to-use tool for Windows users to help migrate their machines to GNU/Linux. Ideally the tool is backwards-compatible for unsupported versions of Windows to enable upcycling of these devices.
Knowledge Prerequisite: tbd
Mentors: developer mentor tbd, Joseph P. De Veaugh-Geiss @joseph:kde.org on Matrix
KEcoLab: Documentation (Written/Video) for Measurement Process and Report
Project type: Documentation
Brief explanation: KEcoLab requires comprehensive documentation for its measurement process and the measurement report generated through the process. The tasks include but are not limited to the following; note that more than one project can be proposed based on these tasks.
Refer to the KDE Eco Handbook and KEcolab for more details on the measurement process and report structure. Please reach out to mentors in case of any help regarding the project.
Written
• Selecting a documentation platform (GitLab Wiki, KDE Wiki, or third-party tools like MkDocs, Hugo-sites, Ghostwriter). Markdown-based documentation is preferred, with priority given to GitLab Wiki > KDE Docs > Third-party tools.
• Enhancing the current documentation available on ReadMe (with possible accompanying video) and migrating it to the above chosen platform.
• Documenting the structure and content of the measurement report to ensure it is understandable and useful for non-technical users. This task involves discussions with mentors and developers.
• Including additional documentation on features, enhancements, contributing guidelines, etc.
Video
• Video documentation of measurement process to promote use of KEcoLab (e.g., a developer checking previous energy consumption values, making a change in the code, then re-measuring to see the value go down).
Expected results: By the end of SoK, the documentation for the measurement process and the measurement report should be completed and deployed on the chosen platform.
Knowledge Prerequisite:
• Basic knowledge of Markdown • Basic understanding of R programming • Basic Coding and Technical writing skills • Video production
Mentors: Karanjot Singh @drquark:kde.org, Joseph P. De Veaugh-Geiss @joseph:kde.org, Aakarsh MJ @aakarshmj:matrix.org, Pradyot Ranjan (Video) @pradyotranjan:gitter.im, Kieryn Darkwater (Video) @mxdarkwater:matrix.org on Matrix
KdeEcoTest: Improve emulation tool
Project type: Coding
Brief explanation: Measuring the energy consumption of KDE software is one of the goals of the KDE Eco initiative. Refer to the KDE Eco Handbook and KEcolab for more details on the measurement process. To achieve this goal it is necessary to use an emulation tool to create Standard Usage Scenario scripts. KdeEcoTest is one such tool, but it needs some fixes. Some to-dos include:
- Help migrate the existing code at the FEEP repository to a standalone repository
- Fix shift coordination
- Add modal functionality
- Test and finalize scripts for Okular and other KDE software on Windows and Linux
- Prepare scripts for other PDF readers such as Adobe Acrobat
Expected results: At the end of the project several 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: Emmanuel Charruau @allon:kde.org, Joseph P. De Veaugh-Geiss @joseph:kde.org, Athul Raj K @krathul:matrix.org (only limited mentoring support) on Matrix