Skip to content
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

Will this project be affected by AGS v2(Astal) #456

Open
iMithrellas opened this issue Nov 8, 2024 · 8 comments
Open

Will this project be affected by AGS v2(Astal) #456

iMithrellas opened this issue Nov 8, 2024 · 8 comments

Comments

@iMithrellas
Copy link

Hi, as the title suggests, I would like to know if this project will be affected by this upcoming merge in AGS, and possibly how.
Aylur/ags#504

@Jas-SinghFSU
Copy link
Owner

Once AGS v2 releases this project will be transitioning to it.

@Aylur
Copy link

Aylur commented Nov 9, 2024

FYI Astal is a library so you don't have to rely on AGS anymore, you could already start the migration process.
I'll document this more thoroughly, once I come up with an api for nix, but basically you should distribute projects using Astal+TypeScript as a bundled script.
You can either use ags bundle and distribute the bundled script which can be executed like any other executable (it has some quirks in cases where you also want to distribute assets and other data, will document it too in the future), or use meson (ags is currently the recommended way, since I expect 99.9% usage for personal use which ags is meant for, but for distributed projects like this I'd recommend using meson)
One of the goals of Astal is to see more projects like this, where its not just "an ags config" but a program of its own. Documenting distributed projects is currently a low prio, so feel free to ask if you need help.

@Jas-SinghFSU
Copy link
Owner

Jas-SinghFSU commented Nov 9, 2024

That makes sense, thank you for the clarification. I'll probably start the migration process soon; appreciate it Aylur.

@rubiin
Copy link
Contributor

rubiin commented Nov 11, 2024

@Jas-SinghFSU I would love to help in the transition given we make a milestone with tasks. Then anyone interested can take a task and migrate the codebase to astal. We can start out with a next branch

I also think we should halt the bigger fixes and completely stop new features until the migration otherwise we would have to work twice

@rubiin
Copy link
Contributor

rubiin commented Nov 11, 2024

@Aylur is there a performance gain of any sorts from the current implementation. I was mostly interested in this.

@Aylur
Copy link

Aylur commented Nov 11, 2024

Its negligible amount if there is any. We are still just calling into C code, spidermonkey (gjs) is very well optimized so you shouldn't be worrying about it. Only real difference between a gjs+gtk and a vala/c+gtk project is just some extra memory gjs allocates to do its thing, performance difference won't be noticeable.
The difference between DX on the other hand is huge writing jsx code vs vala/c is imo very much worth it.
However, If you decide to go for gtk4, vala+blueprint might be just as good as jsx and might be worth considering if you really care about ~30mb difference

@andradei
Copy link

andradei commented Dec 5, 2024

It will be great to have this be bundled in the AUR.

@Jas-SinghFSU
Copy link
Owner

@Jas-SinghFSU I would love to help in the transition given we make a milestone with tasks. Then anyone interested can take a task and migrate the codebase to astal. We can start out with a next branch.

I totally forgot missed this until this thread just got pinged to me due to a new message. Sorry about that.

I haven't had a chance to make milestones since between work and life I have only had brief pockets of time so I've just used those to migrate as much as I can. Hopefully in the future I get a chance to make it more collaborative and get some time to set up some milestones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants