-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[DMP 2024]: GTK4 Exploration #14
Comments
Hey @walterbender |
The sugar-docs contain really helpful info. |
Do not ask process related questions about how to apply and who to contact in the above ticket. The only questions allowed are about technical aspects of the project itself. If you want help with the process, you can refer instructions listed on Unstop and any further queries can be taken up on our Discord channel titled DMP queries. Here's a Video Tutorial on how to submit a proposal for a project. |
Hey @chimosky @walterbender , any contributor to the project yet? Also wanted a suggestion, should I setup "Packaged Sugar" or "Sugar Live Build" from https://github.com/sugarlabs/sugar/blob/master/docs/development-environment.md#sugar-live-build ? I've currently setup the live build to understand and learn about the platform. |
@krishij03 We've not begun GTK4 porting yet. How to kick-start the process with this project. Sugar Live Build is a good choice for dev. But note that it will not have any GTK4 components. |
@walterbender Understood, I was wondering how I could test and debug my code written in GTK 4. Is there any way you could suggest I create a minimal GTK 4 activity? It would obviously require me to first port the activity and graphics classes to GTK 4, but how can I run the build so that I can debug my code then? |
hello sir @walterbender , I am interested in working on this project. i have already made myself familiar with the sugar labs live build and the specific features. i want to know how do i test my created file to check if it is behaving like in gtk4 environment. I am having trouble while testing the code. |
Right now you can't create a minimal GTK4 activity because sugar-toolkit-gtk3 doesn't have support for GTK4 which is what the project idea is about, you can test porting the Hello world activity to GTK4 after much of the toolkit has been ported and you can fix any bugs that come up while testing. The sugar-live-build can be downloaded and installed in a vm, where you can build and test the core sugar modules, a restart of Sugar is needed to see changes. Hope this helps! |
What files are you referring to? If it's sugar-toolkit-gtk3, then you can build and install the toolkit - instructions are in the live-build repo I provided above -. |
Hey @chimosky yes I figured that out yesterday, tested the hello world activity as well, I understand that the entire toolkit would have to be ported to GTK4 to make the new GTK4 hello world activity work. I was just wondering if I could test it in an isolated sort of environment. But that's something I'm gonna have to try myself, to port only necessary stuff from the graphics and activities files and test the hello world activity that way. Anyway, thank you so much for your help! |
As Walter suggested above, the sugar-live-build is the best environment to test with - you can install it in a vm -, you might not need to port the toolkit fully to test, you can port some parts - you can start with the What graphics and activities files are you referring to? |
yes I was referring to exactly changing the sugar3.activity.activity.Activity class and also classes like sugar3.graphics.window.Window and sugar3.graphics.alert.Alert if required. |
my apologies for a dumb question @chimosky but like you mentioned above, how can I make the changes to that class in a way where I can test the new hello world activity in gtk4? |
That's exactly the point of the exploration. If we knew, or if we had done it, we would not be asking. 😁 |
Yeah thought as much @quozl , my apologies. 😭 |
You can make the changes to those files by opening them and making changes, then build with your changes, Sugar activities use that class so starting the Hello world activity is you testing your changes.
I'll suggest you try to understand how the Hello world activity is written and how it uses sugar-toolkit-gtk3, and then learn how the parts of the toolkit it uses are implemented in the toolkit. |
hi @chimosky |
@chimosky Thanks! I'm trying to migrate the necessary classes. I've mostly figured out where the changes need to be made so far for the Hello World Activity, I'll try my best to prepare a short migration example and mention that in the proposal. |
You could go through the comments above as we've probably answered some questions you might have. |
Hi @walterbender , i am interested to work on the ui/ux part of the project. can you assign it to me. |
Hello @walterbender, @chimosky, does there exist any documentation related to migration for when sugar-toolkit was ported from GTK2 to GTK3? |
The porting guide in our documentation provides, IIRC |
Sorry, you're wrong. |
Also, both are Python modules, with both Python and C code embedded. People who want to try this should have a combination of Sugar activity development, Python, GObject introspection, GTK3, GTK4, Python extensions, C language, GNU make and autotools skills. The list can be extended with each |
Hi!
Without these details, the ticket cannot be listed on the C4GT Community Listing. Important Details - These following details are helpful for contributors to effectively identify and contribute to tickets.
Please update the ticket |
Closing as this isn't part of DMP. |
@chimosky we didn't select this for DMP but we are considering offering it up as part of C4GT community -- although it needs addition work above and beyond "complexity" and "sub-category" issues raised earlier. We need to break down the problem a bit -- probably into multiple issues -- in order to get some traction. |
Alright. |
Ticket Contents
Description
Sugar 0.120 runs on GTK3 and needs to be ported to GT4, we need to port Sugar and it's core activities to support GTK4 before GTK3 gets to its EOL.
Project Task Checklist
Steps to start
Goals & Mid-Point Milestone
Goals
Out of scope
Setup/Installation
No response
Expected Outcome
A first pass at the GTK4 version of the toolkit and a Hello World activity
Acceptance Criteria
Implementation Details
See GTK4 migrating
See docs on sugar-toolkit-gtk3
Mockups/Wireframes
No response
Product Name
Sugar Toolkit GTK4
Organisation Name
Sugar Labs
Domain
Education
Tech Skills Needed
Debugging, Python, UI/UX/Design
Mentor(s)
@i
Category
API, Refactoring, Research, Testing
The text was updated successfully, but these errors were encountered: