mastodon.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
The original server operated by the Mastodon gGmbH non-profit

Administered by:

Server stats:

347K
active users

#gobject

0 posts0 participants0 posts today
/dev/LUGGuten Morgen Pinguine! Eine kleine Info / Status update \o/<br><br><b>Ein erster Meilenstein ist erreicht!</b> Ich habe heute einen ersten tag (0.0.1) für libcxmpp erstellt. Es ist nicht viel, aber ein Anfang.<br><br><a href="https://devlug.de/social?t=libcxmpp" class="mention hashtag" rel="nofollow noopener" target="_blank">#libcxmpp</a> besteht aus einer kleinen Menge von <a href="https://devlug.de/social?t=gobject" class="mention hashtag" rel="nofollow noopener" target="_blank">#GObject</a> types. Diese sollen eine einfach zu verwendete Schnittstelle für Funktionen rundum <a href="https://devlug.de/social?t=xmpp" class="mention hashtag" rel="nofollow noopener" target="_blank">#XMPP</a> bereitstellen. Aktuell ist es möglich, dass sich ein Client mit einem XMPP Server verbindet, eine <code>presence</code> schickt. Den <code>roster</code> abfragt und einfach Nachrichten (type <code>chat</code>) senden und empfangen kann.<br><br>Hierfür habe ich eine Demo Implementierung im Projekt angelegt. Dies sieht dann wie folgt aus.<br><br><pre>Loading Client Manager...<br>XMPP&gt; connect<br>XMPP Connect - JID&gt; demo@domain.tld<br>XMPP Connect - PWD&gt; 123456<br>XMPP&gt; Client has been connected with XMPP Server<br><br>XMPP&gt; presence<br>XMPP&gt; message<br>XMPP Message - JID&gt; stefan@domain.tld<br>XMPP Message - Text&gt; Hallo! Das ist ein Test :)<br>XMPP&gt; Message from stefan@domain.tld/Coffein: Hallo. Die Nachricht ist angekommen.<br></pre>Anwendungsdesign muss ich mir noch mal genauer überlegen. Der ersten Entwurf beinhaltet einen CM (Connection Manager). Der Connection Manager soll alle Accounts und Connections verwalten. Die Connection ist eine funktionale Sicht auf die XMPP Verbindung, währen der XMPP Wrapper die technische Implementierung via <a href="https://devlug.de/social?t=libstrophe" class="mention hashtag" rel="nofollow noopener" target="_blank">#libstrophe</a> bereitstellt.<br><br>Der Client kann sich mit Signalen verbinden - <a href="https://devlug.de/social?t=signal" class="mention hashtag" rel="nofollow noopener" target="_blank">#signal</a> :-x<br><br><pre>g_signal_connect_object(connection, "connected",<br> G_CALLBACK(cxmpp_connected), connection,<br> G_CONNECT_SWAPPED);<br><br>g_signal_connect_object(connection, "new-contact",<br> G_CALLBACK(new_contact), connection,<br> G_CONNECT_SWAPPED);<br><br>g_signal_connect_object(connection, "new-chat-message",<br> G_CALLBACK(new_chat_message), connection,<br> G_CONNECT_SWAPPED);<br></pre><b>Ausblick für den nächsten Meilenstein</b><br><br>Als Backend solle eine <a href="https://devlug.de/social?t=sqlite" class="mention hashtag" rel="nofollow noopener" target="_blank">#sqlite</a> Datenbank verwendet werden. Verschlüsselung im ersten Schritt mit <a href="https://devlug.de/social?t=openpgp" class="mention hashtag" rel="nofollow noopener" target="_blank">#OpenPGP</a> <a href="https://devlug.de/social?t=ox" class="mention hashtag" rel="nofollow noopener" target="_blank">#OX</a> via <a href="https://devlug.de/social?t=gnupg" class="mention hashtag" rel="nofollow noopener" target="_blank">#GnuPG</a>. Ziel ist es, dass ich im ersten Schritt die Implementierung von <a href="https://devlug.de/social?t=xmppc" class="mention hashtag" rel="nofollow noopener" target="_blank">#xmppc</a> (ein XMPP command line client) auf <a href="https://devlug.de/social?t=libcxmpp" class="mention hashtag" rel="nofollow noopener" target="_blank">#libcxmpp</a> umstellen kann.<br><br>Code ist auf <a href="https://devlug.de/social?t=codeberg" class="mention hashtag" rel="nofollow noopener" target="_blank">#Codeberg</a> <a href="https://codeberg.org/devLUG/libcxmpp" rel="nofollow noopener" target="_blank">https://codeberg.org/devLUG/libcxmpp</a><br><br>Happy chatting!<br><br><a href="https://devlug.de/social?t=messenger" class="mention hashtag" rel="nofollow noopener" target="_blank">#Messenger</a> <a href="https://devlug.de/social?t=debian" class="mention hashtag" rel="nofollow noopener" target="_blank">#Debian</a> <a href="https://devlug.de/social?t=gnu" class="mention hashtag" rel="nofollow noopener" target="_blank">#GNU</a> <a href="https://devlug.de/social?t=linux" class="mention hashtag" rel="nofollow noopener" target="_blank">#Linux</a> <a href="https://devlug.de/social?t=jabber" class="mention hashtag" rel="nofollow noopener" target="_blank">#Jabber</a><br>
StefanHat jemand eine Idee was ich falsch mache?<br><br>Ich habe ein Signal registriert:<br><br><code>g_signal_new("xmpp-new-contact", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL, G_TYPE_POINTER, 1, G_TYPE_POINTER);</code><br><br>Ich habe es jetzt so geworfen:<br><br><code>g_signal_emit_by_name(userdata, "xmpp-new-contact", 1, buddy);</code><br><br>Ich möchte gerne einen Parameter ( <code>struct</code> <code>buddy_t</code> ) an das Signal übergeben.<br><br><pre>static void xmpp_new_contact(XmppConnection *self, int n, ... ) {<br> va_list args;<br> va_start(args, n);<br> for (int i = 0; i &lt; n; i++) {<br> buddy_t* buddy = va_arg(args, buddy_t* );<br> g_log(G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, "Contact: %s", buddy-&gt;jid);<br> } <br> va_end(args);<br>} <br></pre>Das ist aber wohl nicht ganz richtig,....<br><br><a href="https://devlug.de/social?t=gtk" class="mention hashtag" rel="nofollow noopener" target="_blank">#gtk</a> <a href="https://devlug.de/social?t=gobject" class="mention hashtag" rel="nofollow noopener" target="_blank">#GObject</a><br>
/dev/urandom<p>really, i should just list a few things i like about <a href="https://toot.cat/tags/GLib" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GLib</span></a> / <a href="https://toot.cat/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> (and y'all are welcome to hashtag change my mind about it or introduce other <a href="https://toot.cat/tags/C" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>C</span></a> libraries that, you think, present a better or more elegant API):</p><ul><li><p>a consistent naming scheme for files, function names, etc. that works for both GLib's own functions and whatever you decide to write and is easy to remember</p></li><li><p>helper functions and macros that simplify your code (i already mentioned the <code>_ref</code> functions returning the pointer you give into it, but there's also things like <code>g_clear_object</code> that unreferences a thing and also sets its pointer to NULL, avoiding double unrefs)</p></li><li><p>documentation that is clear about who owns (and is responsible for freeing) any pointers returned -- for C code that's an absolute necessity imo</p></li></ul>
Emmanuele Bassi<p>I have not blogged or talked about the follow-up work to my &quot;GType Next&quot; blog post that I&#39;ve been doing in my spare time, mainly because it is happening *in my spare time*, and I don&#39;t want to give false impressions to people; the other reason is that the time consuming bit is not writing a bunch of code, but it&#39;s planning ahead, because the goal is to avoid breaking stuff at all costs…</p><p><a href="https://mastodon.social/tags/glib" class="mention hashtag" rel="tag">#<span>glib</span></a> <a href="https://mastodon.social/tags/gobject" class="mention hashtag" rel="tag">#<span>gobject</span></a> <a href="https://mastodon.social/tags/gtk" class="mention hashtag" rel="tag">#<span>gtk</span></a></p>
Vala<p><a href="https://mastodon.social/tags/RayLib" class="mention hashtag" rel="tag">#<span>RayLib</span></a> + <a href="https://mastodon.social/tags/Vala" class="mention hashtag" rel="tag">#<span>Vala</span></a> bindings + <a href="https://mastodon.social/tags/OOP" class="mention hashtag" rel="tag">#<span>OOP</span></a> <a href="https://mastodon.social/tags/GObject" class="mention hashtag" rel="tag">#<span>GObject</span></a> wrapper library written in <a href="https://mastodon.social/tags/Vala" class="mention hashtag" rel="tag">#<span>Vala</span></a> = the *best* <a href="https://mastodon.social/tags/gamedev" class="mention hashtag" rel="tag">#<span>gamedev</span></a> experience of all time!!??<br />Well, we are working on it! :D At least <span class="h-card" translate="no"><a href="https://fosstodon.org/@halfmexican" class="u-url mention">@<span>halfmexican</span></a></span> is one of them!<br />Check out the vapi and WIP wrapper library, for example look at this beautiful `RaylibOOP.Color` class: <a href="https://github.com/Charadon/raylib-vapi/blob/main/src/lib/Color.vala" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">https://</span><span class="ellipsis">github.com/Charadon/raylib-vap</span><span class="invisible">i/blob/main/src/lib/Color.vala</span></a><br />Also this library can of course be used by *all* other GObject language bindings.<br />And this sample is just the first, more are coming! For direct updates join our discord server!</p>
Marcus Lundblad<p>About time to update the shield parsing/rendering to deal with the updated defintions with short-hand "banner maps" from OpenStreetMap Americana.</p><p>So, let's dive down into C (pun kinda intended) again… 😁</p><p><a href="https://fosstodon.org/tags/mapstodon" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mapstodon</span></a> <a href="https://fosstodon.org/tags/gnomemaps" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gnomemaps</span></a> <a href="https://fosstodon.org/tags/c" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>c</span></a> <a href="https://fosstodon.org/tags/gobject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gobject</span></a> <a href="https://fosstodon.org/tags/gnomebuilder" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gnomebuilder</span></a></p>
Vala<p>Write your own Wayland Desktop!<br />The &quot;Astal&quot; framework, which is written in Vala, makes it super-simple! (you can use it with any gobject-introspection language though)<br /><a href="https://aylur.github.io/astal/" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">https://</span><span class="">aylur.github.io/astal/</span><span class="invisible"></span></a><br />Here a WIP project from our community. So far a custom status bar, quick settings, MPRIS, etc. Together with the Hyprland window manager. Built with <a href="https://mastodon.social/tags/GTK4" class="mention hashtag" rel="tag">#<span>GTK4</span></a>, <a href="https://mastodon.social/tags/Blueprint" class="mention hashtag" rel="tag">#<span>Blueprint</span></a>, <a href="https://mastodon.social/tags/Libadwaita" class="mention hashtag" rel="tag">#<span>Libadwaita</span></a> and of course <a href="https://mastodon.social/tags/Vala" class="mention hashtag" rel="tag">#<span>Vala</span></a>!<br /><a href="https://github.com/ARKye03/morghulis" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">https://</span><span class="">github.com/ARKye03/morghulis</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/GTK" class="mention hashtag" rel="tag">#<span>GTK</span></a> <a href="https://mastodon.social/tags/GObject" class="mention hashtag" rel="tag">#<span>GObject</span></a> <a href="https://mastodon.social/tags/GObjectIntrospection" class="mention hashtag" rel="tag">#<span>GObjectIntrospection</span></a> <a href="https://mastodon.social/tags/Wayland" class="mention hashtag" rel="tag">#<span>Wayland</span></a> <a href="https://mastodon.social/tags/Hyprland" class="mention hashtag" rel="tag">#<span>Hyprland</span></a> <a href="https://mastodon.social/tags/Astal" class="mention hashtag" rel="tag">#<span>Astal</span></a> <a href="https://mastodon.social/tags/freedesktop" class="mention hashtag" rel="tag">#<span>freedesktop</span></a></p>
Vala<p><span class="h-card" translate="no"><a href="https://mastodon.social/@shriramk" class="u-url mention">@<span>shriramk</span></a></span> meanwhile C developers: What&#39;s the problem? ;)</p><p><a href="https://mastodon.social/tags/gobject" class="mention hashtag" rel="tag">#<span>gobject</span></a> <a href="https://mastodon.social/tags/gnome" class="mention hashtag" rel="tag">#<span>gnome</span></a> <a href="https://mastodon.social/tags/C" class="mention hashtag" rel="tag">#<span>C</span></a> <a href="https://mastodon.social/tags/gobjectIntrospection" class="mention hashtag" rel="tag">#<span>gobjectIntrospection</span></a> <a href="https://mastodon.social/tags/gtk" class="mention hashtag" rel="tag">#<span>gtk</span></a> <a href="https://mastodon.social/tags/vala" class="mention hashtag" rel="tag">#<span>vala</span></a> <a href="https://mastodon.social/tags/vapi" class="mention hashtag" rel="tag">#<span>vapi</span></a></p>
Philip Withnall<p>Support for async/sync/finish introspection annotations has landed in GLib for the next unstable release, <a href="https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3746" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">https://</span><span class="ellipsis">gitlab.gnome.org/GNOME/glib/-/</span><span class="invisible">merge_requests/3746</span></a></p><p><a href="https://mastodon.social/tags/GLib" class="mention hashtag" rel="tag">#<span>GLib</span></a> <a href="https://mastodon.social/tags/MaintainerLife" class="mention hashtag" rel="tag">#<span>MaintainerLife</span></a> <a href="https://mastodon.social/tags/gobject" class="mention hashtag" rel="tag">#<span>gobject</span></a>-introspection <a href="https://mastodon.social/tags/GNOME" class="mention hashtag" rel="tag">#<span>GNOME</span></a></p>
Daniele Verducci 🧉<a class="hashtag" href="https://social.ichibi.eu/tag/studying" rel="nofollow noopener" target="_blank">#studying</a> <a class="hashtag" href="https://social.ichibi.eu/tag/mobile" rel="nofollow noopener" target="_blank">#mobile</a> <a class="hashtag" href="https://social.ichibi.eu/tag/gnome" rel="nofollow noopener" target="_blank">#gnome</a> <a class="hashtag" href="https://social.ichibi.eu/tag/app" rel="nofollow noopener" target="_blank">#app</a> <a class="hashtag" href="https://social.ichibi.eu/tag/development" rel="nofollow noopener" target="_blank">#development</a> before work. I'm developing Lumos, an incident light <a class="hashtag" href="https://social.ichibi.eu/tag/exposimeter" rel="nofollow noopener" target="_blank">#exposimeter</a> for <a class="hashtag" href="https://social.ichibi.eu/tag/photography" rel="nofollow noopener" target="_blank">#photography</a> that reads light values from the <a class="hashtag" href="https://social.ichibi.eu/tag/phone" rel="nofollow noopener" target="_blank">#phone</a> light sensor and converts it in <a class="hashtag" href="https://social.ichibi.eu/tag/aperture" rel="nofollow noopener" target="_blank">#aperture</a> values or <a class="hashtag" href="https://social.ichibi.eu/tag/shutter" rel="nofollow noopener" target="_blank">#shutter</a> speeds, depending on the mode.<br><br><a class="hashtag" href="https://social.ichibi.eu/tag/gnomebuilder" rel="nofollow noopener" target="_blank">#gnomeBuilder</a> <a class="hashtag" href="https://social.ichibi.eu/tag/gobject" rel="nofollow noopener" target="_blank">#gobject</a> <a class="hashtag" href="https://social.ichibi.eu/tag/python" rel="nofollow noopener" target="_blank">#python</a> <a class="hashtag" href="https://social.ichibi.eu/tag/adwaita" rel="nofollow noopener" target="_blank">#adwaita</a> <a class="hashtag" href="https://social.ichibi.eu/tag/gtk" rel="nofollow noopener" target="_blank">#gtk</a> <a class="hashtag" href="https://social.ichibi.eu/tag/dbus" rel="nofollow noopener" target="_blank">#dbus</a> <a class="hashtag" href="https://social.ichibi.eu/tag/gnomeshell" rel="nofollow noopener" target="_blank">#gnomeshell</a> <a class="hashtag" href="https://social.ichibi.eu/tag/linuxonmobile" rel="nofollow noopener" target="_blank">#linuxonmobile</a> <a class="hashtag" href="https://social.ichibi.eu/tag/gnomemobile" rel="nofollow noopener" target="_blank">#gnomemobile</a>
Luke T. Shumaker<p><a href="https://fosstodon.org/tags/DailyStandup" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DailyStandup</span></a> </p><p>Yesterday:<br>- Responded to some feedback on the mkinitcpio <a href="https://fosstodon.org/tags/ARM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ARM</span></a> zImage PR<br>- Responded to some feedback on the <span class="h-card" translate="no"><a href="https://mastodon.xyz/@Liberapay" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>Liberapay</span></a></span> <span class="h-card" translate="no"><a href="https://photog.social/@libravatar" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>libravatar</span></a></span> PR. It is now merged and deployed! Federated avatars now work on Liberapay! <a href="https://fosstodon.org/tags/Federation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Federation</span></a> <br>- Kept working on gotk4 GTK-Doc/GI-DocGen markdown parsing. <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a></p><p>Today:<br>- Responding to more feedback on the mkinitcpio PR.<br>- Still working on the GI-DocGen parser.</p>
Johannes Brakensiek<p>Think I‘m going to cut it down to 3. this year. <a href="https://fosstodon.org/tags/HappyHolidayHacking" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HappyHolidayHacking</span></a> was interrupted by many visitors, sick family and busy children until now.</p><p>And it looks like I‘m too bugged by the state of <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> libraries/desktops and declining <a href="https://fosstodon.org/tags/ObjC" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ObjC</span></a> usage to continue number 4 currently.</p>
Johannes Brakensiek<p><span class="h-card" translate="no"><a href="https://kosmos.social/@colby" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>colby</span></a></span> But an <span class="h-card" translate="no"><a href="https://mastodon.social/@elementary" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>elementary</span></a></span> implementation using <a href="https://fosstodon.org/tags/GNUstep" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GNUstep</span></a> would have been great - despite the fact that <a href="https://fosstodon.org/tags/ObjC" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ObjC</span></a> is lacking <a href="https://fosstodon.org/tags/FLOSS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FLOSS</span></a> support (almost no support in <a href="https://fosstodon.org/tags/gcc" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gcc</span></a> at all), making the <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> and <a href="https://fosstodon.org/tags/GTK" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GTK</span></a> world a better and more pragmatic approach.</p><p>(That‘s the reason why I want to bring <a href="https://fosstodon.org/tags/ObjC" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ObjC</span></a> to <a href="https://fosstodon.org/tags/elementary" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>elementary</span></a> and <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> and not vice versa.)</p><p>[<a href="https://fosstodon.org/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> support is even worse.]</p>
Johannes Brakensiek<p><span class="h-card" translate="no"><a href="https://mstdn.ca/@tylerburton" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>tylerburton</span></a></span> Current <a href="https://fosstodon.org/tags/MR" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MR</span></a>: <a href="https://codeberg.org/ObjGTK/ObjGTKGen/pulls/34" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/ObjGTK/ObjGTKGen/</span><span class="invisible">pulls/34</span></a></p><p>Started implementing exceptions, ended up checking memory management for return types and going to implement toggle references for object instances thanks to the help of <span class="h-card" translate="no"><a href="https://floss.social/@bugaevc" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>bugaevc</span></a></span>.</p><p>Once I managed that I may have gotten closer to a production ready release of a <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> wrapper. 😉</p>
Johannes Brakensiek<p><span class="h-card" translate="no"><a href="https://mstdn.ca/@tylerburton" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>tylerburton</span></a></span> I‘m still working on <a href="https://fosstodon.org/tags/ObjGTK" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ObjGTK</span></a> (your former <a href="https://fosstodon.org/tags/CoreGTK" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CoreGTK</span></a>), hoping to implement <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> instance/memory handling by the beginning of the next year. I only have very few time to work on it, but evolves steadily. 😉</p>
Johannes Brakensiek<p><span class="h-card" translate="no"><a href="https://mstdn.ca/@tylerburton" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>tylerburton</span></a></span> Well, I‘m still using <span class="h-card" translate="no"><a href="https://ap.nil.im/users/objfw" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>objfw</span></a></span> and <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> mainly so I don‘t really know first hand. I think Base/Foundation still is used for production to port some apps to Android. Regarding <a href="https://fosstodon.org/tags/GUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GUI</span></a>/#AppKit <span class="h-card" translate="no"><a href="https://oldbytes.space/@mos_8502" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mos_8502</span></a></span> created some patches to make it more look like some kind of Mac OS X. And before war in Ukraine trunkmaster applied some patches for better multi display support for <a href="https://fosstodon.org/tags/Nextspace" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Nextspace</span></a>.</p>
Johannes Brakensiek<p>Writing software for the <a href="https://fosstodon.org/tags/GNOME" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GNOME</span></a>/#GTK world is not as easy, nice and comfortable as writing macOS or iOS software, but it sparks a lot more joy, because I can share it with real people I live with and that‘s worth a lot.</p><p>So writing <a href="https://fosstodon.org/tags/GTK" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GTK</span></a> / <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a> apps is somewhat cumbersome for sure and I‘m going to need to upcycle a lot of abondoned libs and apps to achieve my goals, but the burden feels good and alright.</p>
Johannes Brakensiek<p>The simplicity of <a href="https://fosstodon.org/tags/UNIX" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UNIX</span></a> has healed me from using <a href="https://fosstodon.org/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a>. Looks like these days I'd rather write a <a href="https://fosstodon.org/tags/C" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>C</span></a> tool (or even use <a href="https://fosstodon.org/tags/GObject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GObject</span></a>) than use Java tools again.<br>(I still like <a href="https://fosstodon.org/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> as a language, but the <a href="https://fosstodon.org/tags/toolchain" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>toolchain</span></a> is incomprehensible.)</p>
Emmanuele Bassi<p>If you maintain a GObject-based library or a language binding, and have 25 minutes to spare for reading ~5700 words on a possible new direction for the GObject type system, I wrote something that might interest you: <a href="https://www.bassi.io/articles/2023/08/23/the-mirror/" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">https://www.</span><span class="ellipsis">bassi.io/articles/2023/08/23/t</span><span class="invisible">he-mirror/</span></a></p><p>It&#39;s a strawman proposal, and it needs a lot more discussion with various stakeholders; ideally, we&#39;re going to have a hackfest about GObject, language bindings, introspection, and the future of the type system.</p><p><a href="https://mastodon.social/tags/gobject" class="mention hashtag" rel="tag">#<span>gobject</span></a> <a href="https://mastodon.social/tags/gtk" class="mention hashtag" rel="tag">#<span>gtk</span></a> <a href="https://mastodon.social/tags/gnome" class="mention hashtag" rel="tag">#<span>gnome</span></a></p>
Zeeshan Ali Khan :rust: 🇺🇦<p>Unpopular opinion: <a href="https://toot.cat/tags/gobject" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gobject</span></a> was a mistake. Expecting folks to not only code in C but having to learn some strange API that requires a huge amount of boilerplate, was probably not the best way to attract contributors.</p><p>For all its problems, we should have just accepted C++. Like most C++ users, we could have just stuck to specific subset of it.</p><p>Then again, we've much better alternatives now but folks still want to stick to C and gobject. 🤷‍♂️</p><p>Just FYI: I had been a huge fan of gobject for a long time and even famous for my love for it.</p><p><a href="https://toot.cat/tags/gnome" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gnome</span></a></p>