home.social

#puregotk — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #puregotk, aggregated by home.social.

fetched live
  1. #puregotk ’s new WIP GStreamer bindings now work on macOS too!

  2. #puregotk’s new WIP GStreamer bindings now work on macOS too!

  3. #puregotk’s new WIP GStreamer bindings now work on macOS too!

  4. Some neat #puregotk & #GStreamer hacks I've been exploring: #Multiplex , which allows you to do torrent watchparties with your friends & share the positions, playback etc. P2P, now has an initial version that uses GStreamer to play back the video in the app itself! No more need for MPV :)

  5. Some neat #puregotk & #GStreamer hacks I've been exploring: #Multiplex, which allows you to do torrent watchparties with your friends & share the positions, playback etc. P2P, now has an initial version that uses GStreamer to play back the video in the app itself! No more need for MPV :)

    Bonus: Subtitles work better now, too!

  6. Some neat #puregotk & #GStreamer hacks I've been exploring: #Multiplex, which allows you to do torrent watchparties with your friends & share the positions, playback etc. P2P, now has an initial version that uses GStreamer to play back the video in the app itself! No more need for MPV :)

    Bonus: Subtitles work better now, too!

  7. Published an initial version of the #puregotk bindings for #p2panda to Codeberg! Obvious disclaimers regarding stability and some rough edges around the callback syntax handling but hey, it works well enough to build a chat app with it and package it with Flatpak!

  8. Published an initial version of the #puregotk bindings for #p2panda to Codeberg! Obvious disclaimers regarding stability and some rough edges around the callback syntax handling but hey, it works well enough to build a chat app with it and package it with Flatpak!

    codeberg.org/pojntfx/p2panda-g

  9. Published an initial version of the #puregotk bindings for #p2panda to Codeberg! Obvious disclaimers regarding stability and some rough edges around the callback syntax handling but hey, it works well enough to build a chat app with it and package it with Flatpak!

    codeberg.org/pojntfx/p2panda-g

  10. @p2panda @d1 @cblgh Oh I'd love to take a look at that some time as well! Go APIs can be quite peculiar sometimes, esp. with CGo. For now the GObject API actually works quite well - we don't need it here but I added support for e.g. subclassing to #puregotk as well so the sky is the limit with GObject in Go :)

  11. @p2panda @d1 @cblgh Oh I'd love to take a look at that some time as well! Go APIs can be quite peculiar sometimes, esp. with CGo. For now the GObject API actually works quite well - we don't need it here but I added support for e.g. subclassing to #puregotk as well so the sky is the limit with GObject in Go :)

  12. The #puregotk examples, including with Meson, now build and run on macOS by default, with both Homebrew and MacPorts - and, as a bonus, they can now be launched from within #GNOME Builder too!

  13. The #puregotk examples, including with Meson, now build and run on macOS by default, with both Homebrew and MacPorts - and, as a bonus, they can now be launched from within #GNOME Builder too!

  14. The #puregotk examples, including with Meson, now build and run on macOS by default, with both Homebrew and MacPorts - and, as a bonus, they can now be launched from within #GNOME Builder too!

  15. New thing: Initial support for GStreamer in #puregotk , completely CGo-free!

  16. #p2panda 's GObject library running inside of Flatpak, called from #puregotk (Golang) - and it all kind of just works, including mDNS discovery?

  17. #p2panda's GObject library running inside of Flatpak, called from #puregotk (Golang) - and it all kind of just works, including mDNS discovery?

  18. #p2panda's GObject library running inside of Flatpak, called from #puregotk (Golang) - and it all kind of just works, including mDNS discovery?

  19. Finally managed to push those two big #puregotk PRs I've been working on! 1) fixes a bug with `throws` generation: https://codeberg.org/puregotk/puregotk/pulls/46 2) makes the generation 15x faster: https://codeberg.org/puregotk/puregotk/pulls/47

    Generate `throws` parameter co...

  20. Finally managed to push those two big #puregotk PRs I've been working on!

    1) fixes a bug with `throws` generation: codeberg.org/puregotk/puregotk
    2) makes the generation 15x faster: codeberg.org/puregotk/puregotk

    That should make it that much easier to generate new bindings or even generate them during the build, e.g. for something like #p2panda

  21. Finally managed to push those two big #puregotk PRs I've been working on!

    1) fixes a bug with `throws` generation: codeberg.org/puregotk/puregotk
    2) makes the generation 15x faster: codeberg.org/puregotk/puregotk

    That should make it that much easier to generate new bindings or even generate them during the build, e.g. for something like #p2panda

  22. Managed to get an initial prototype of #Go bindings for #p2panda to work! It's using the new GObject bindings and some new #puregotk improvements I've been hacking on these past few nights. Can't wait to actually build something with this!

  23. Managed to get an initial prototype of #Go bindings for #p2panda to work! It's using the new GObject bindings and some new #puregotk improvements I've been hacking on these past few nights. Can't wait to actually build something with this! #GNOME

  24. Managed to get an initial prototype of #Go bindings for #p2panda to work! It's using the new GObject bindings and some new #puregotk improvements I've been hacking on these past few nights. Can't wait to actually build something with this! #GNOME

  25. In some more fun #puregotk #GNOME news - I managed to get Meson to work on macOS. You can even write a GObject library in Go now, compile it to a dylib and typelib, and then another puregotk-based app (or GJS, Python etc.) can load the custom widget and display it with no issues!

  26. In some more fun #puregotk #GNOME news - I managed to get Meson to work on macOS. You can even write a GObject library in Go now, compile it to a dylib and typelib, and then another puregotk-based app (or GJS, Python etc.) can load the custom widget and display it with no issues!

    Even cooler - you can cross-compile this for macOS from Linux, no CGo/macOS C compiler required :)

  27. In some more fun #puregotk #GNOME news - I managed to get Meson to work on macOS. You can even write a GObject library in Go now, compile it to a dylib and typelib, and then another puregotk-based app (or GJS, Python etc.) can load the custom widget and display it with no issues!

    Even cooler - you can cross-compile this for macOS from Linux, no CGo/macOS C compiler required :)

  28. #puregotk now supports #GNOME 50! Sessions is already updated to use it too :) Having a speedy bindings generator and simple pipeline really makes all the difference here, took just under an hour for updating, verification, using it in a different app, tagging a release, using it in Flatpak,

  29. #puregotk now supports #GNOME 50! Sessions is already updated to use it too :) Having a speedy bindings generator and simple pipeline really makes all the difference here, took just under an hour for updating, verification, using it in a different app, tagging a release, using it in Flatpak, looking for regressions etc.

    codeberg.org/puregotk/puregotk

  30. #puregotk now supports #GNOME 50! Sessions is already updated to use it too :) Having a speedy bindings generator and simple pipeline really makes all the difference here, took just under an hour for updating, verification, using it in a different app, tagging a release, using it in Flatpak, looking for regressions etc.

    codeberg.org/puregotk/puregotk

  31. Kind of neat how well #GNOME apps fit in on macOS :) Since @nila added support for macOS to #puregotk in codeberg.org/puregotk/puregotk this week I thought I’d give it a shot on my new MacBook Neo - and it works really well. Cross-compilation from Linux to macOS was super easy thanks to purego, no cross-compiler needed, just `GOOS=darwin GOARCH=arm64`. Plus, discovered that macOS’s arm64 library paths are different!

  32. Kind of neat how well #GNOME apps fit in on macOS :) Since @nila added support for macOS to #puregotk in codeberg.org/puregotk/puregotk this week I thought I’d give it a shot on my new MacBook Neo - and it works really well. Cross-compilation from Linux to macOS was super easy thanks to purego, no cross-compiler needed, just `GOOS=darwin GOARCH=arm64`. Plus, discovered that macOS’s arm64 library paths are different!

  33. #puregotk has moved to #Codeberg ! I've just opened the first PR to it: https://codeberg.org/puregotk/puregotk/pulls/42 Gosh it is nice to have a usable signal/noise ratio on a forge again ...

    Fix examples after move to Cod...

  34. #puregotk has moved to #Codeberg ! I've just opened the first PR to it: https://codeberg.org/puregotk/puregotk/pulls/42 Gosh it is nice to have a usable signal/noise ratio on a forge again ...

    Fix examples after move to Cod...

  35. #puregotk has moved to #Codeberg! I've just opened the first PR to it: codeberg.org/puregotk/puregotk

    Gosh it is nice to have a usable signal/noise ratio on a forge again ...

  36. #puregotk has moved to #Codeberg! I've just opened the first PR to it: codeberg.org/puregotk/puregotk

    Gosh it is nice to have a usable signal/noise ratio on a forge again ...

  37. #puregotk (or, as it turns out, purego actually) now supports passing C strings to Go, which makes the #GTK dialog responses work! https://github.com/jwijenbergh/purego/pull/3#issuecomment-3808732476

    Fix string conversion when cal...

  38. #puregotk (or, as it turns out, purego actually) now supports passing C strings to Go, which makes the #GTK dialog responses work!

    github.com/jwijenbergh/purego/

  39. #puregotk (or, as it turns out, purego actually) now supports passing C strings to Go, which makes the #GTK dialog responses work!

    github.com/jwijenbergh/purego/

  40. Another #puregotk #Go #GTK bindings fix: Callbacks that contain strings (think `Settings.ConnectChanged`, `AdwDialog.ConnectResponse`) now correctly convert them from C strings to Go strings: https://github.com/pojntfx/puregotk/tree/fix-c-to-go-calls Will cherry-pick & PR tomorrow.

    GitHub - pojntfx/puregotk at f...

  41. Managed to get #WebKitGTK to work with #puregotk . Just needed to add a small tweak since it was mixing up `gio.Byte` with `[]byte`. I think that makes it one of the first full-featured, CGo-free WebView libraries for Go?

  42. Another #puregotk #Go #GTK bindings fix: Callbacks that contain strings (think `Settings.ConnectChanged`, `AdwDialog.ConnectResponse`) now correctly convert them from C strings to Go strings: github.com/pojntfx/puregotk/tr

    Will cherry-pick & PR tomorrow.

  43. Another #puregotk #Go #GTK bindings fix: Callbacks that contain strings (think `Settings.ConnectChanged`, `AdwDialog.ConnectResponse`) now correctly convert them from C strings to Go strings: github.com/pojntfx/puregotk/tr

    Will cherry-pick & PR tomorrow.

  44. Managed to get #WebKitGTK to work with #puregotk. Just needed to add a small tweak since it was mixing up `gio.Byte` with `[]byte`. I think that makes it one of the first full-featured, CGo-free WebView libraries for Go?

  45. Ha, ran into a #WebKitGTK quirk today while extending the #puregotk generator to work with it: bugs.webkit.org/show_bug.cgi?i

    Workaround for now: github.com/pojntfx/ledger/comm

    Funnily enough I ran into this exact problem with my own Go-based GObject library. Initialising them in `main` (yes, in a library!) fixed it there!

  46. github.com/jwijenbergh/puregot

    Aaaand here we go! #puregotk #Go #GNOME binding examples, including subclassing and how to create a GObject library with Go (so you can distribute custom GTK widgets written in Go to C, JS, Vala, Python etc. apps)!

  47. One or two days left until the next #puregotk #Go #GNOME upstreaming PR. I've imported my examples for how to do subclassing with Golang, creating a custom GObject introspection-compatible library and so on into the upstream repo, and I've started writing documentation.

  48. One or two days left until the next #puregotk #Go #GNOME upstreaming PR. I've imported my examples for how to do subclassing with Golang, creating a custom GObject introspection-compatible library and so on into the upstream repo, and I've started writing documentation. Since it is getting late I will probably finish it tomorrow, but it's getting easier and easier for people to try now I think :)

    github.com/pojntfx/puregotk/tr

  49. New, soon-to-be upstreamed #puregotk #GNOME work today: A Meson-free/pure Go & Flatpak environment for building GNOME apps in Go as an alternative to the Meson one! Now I just have to rename them, git-subtree-split them out of the repo, and upstream it to the bindings and then these can become Foundry/Builder templates :)

    github.com/pojntfx/senbara/com

  50. New #gogettext (my #puregotk -based gettext bindings for Go) release! v0.2.0 now supports `BindI18n` and `dgettext` to allow scoping gettext translation domains in a more fine-grained way. This allows using two different translation domains in more complex scenarios, such as a Go GObject library and a Go #GNOME app where both vendor their own translations.

    New library docs: github.com/pojntfx/go-gettext?

    How you can use it for GObject libs and GNOME apps written in Go: github.com/pojntfx/senbara/com

  51. New #puregotk #Go #GNOME PR for today: Support for importing GTK GObject libraries built in Go via Meson from Go GTK applications, out of the box!

    github.com/jwijenbergh/puregot

  52. New #puregotk #GNOME hacking milestone: A GObject library built with Go can now be installed as a simple Meson module in Flatpak (fully offline/with tracked dependencies, so this should work for Flathub too), and then be used by any GIR-compatible language (Go, JS, Python etc.). Even i18n with `gettext` (with translations vendored via the library) works!

  53. github.com/pojntfx/multiplex/c

    And another Go GTK app is ported to #puregotk! Not with subclassing yet, but it will get there eventually. Build time is down from ~25 minutes to 20s 🤯

  54. New progress on the #puregotk #GObject introspection things I'm working on in #Go. It's super early, but I added preliminary support for generated getters/setters for properties. No more manual value setup & `SetProperty` calls required, just a simple `SetPropertyX` call. We're getting closer and closer to more readable code here with this IMHO, GJS on the right for comparison!