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

Would you be interested in expanding this library to support other FreeDesktop specifications too? #107

Open
xplshn opened this issue Jan 15, 2025 · 2 comments

Comments

@xplshn
Copy link

xplshn commented Jan 15, 2025

Hi, great work, I was wondering if you'd be interested in expanding this library, to have multiple libraries held in this same repo, all of them being implementations of specifications under the XDG & FreeDesktop.org namespace.

It'd be lovely, as there's currently no suitable library that implements:

I only found https://github.com/rkoesters/xdg which implements some of these, and rather partially.

I'd be very much interested in helping out with the implementation of the "trash-spec" and the "desktop-entry-spec", as well as the "thumbnails" spec, I've already implemented desktop-entry parsing various times before, as well as thumbnail managing. So those are things I can try and implement myself.

Do let me know if there's any interest on this :)!
I await your response!
Regards!

@adrg
Copy link
Owner

adrg commented Jan 15, 2025

Hi @xplshn,

Sure, having more of the XDG related specs covered in the library would be great. I was actually planning on implementing some of them as well at some point.

The trash spec would be a good starting point as it is the most useful in my opinion. However, I would like to keep the package cross-platform and that will most likely be the tricky part.

@xplshn
Copy link
Author

xplshn commented Jan 15, 2025

Hi @xplshn,

Sure, having more of the XDG related specs covered in the library would be great. I was actually planning on implementing some of them as well at some point.

The trash spec would be a good starting point as it is the most useful in my opinion. However, I would like to keep the package cross-platform and that will most likely be the tricky part.

The package itself can be kept crossplatform, but there are some specs which cannot really be translated into other environments, at that point, we'd be writing polyfills.

I think we could go with this idea I had:

  • Implement freedesktop specs
  • Implement the polyfills for WIN32, Plan 9 ; (if possible, not everything can be translated to win32)
  • And then implement a package which is cross platform, letting people choose the freedesktop package, the win32 package, the plan 9 package, or the one which merges all of them and is fully crossplatform.

What do you think?

This way the freedesktop specs would be correctly implemented, for their intended platform, and other people would be able to import that one, or the one that is crossplatform (and thus not really freedesktop compliant)

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

2 participants