Skip to content
This repository has been archived by the owner on Mar 26, 2024. It is now read-only.
/ kotlin-native-gnome Public archive

A set of tools to make GNOME application creation easy in Kotlin Native, with Glade UI integration.

License

Notifications You must be signed in to change notification settings

mrlem/kotlin-native-gnome

Repository files navigation

Kotlin Native GNOME (deprecated)

maven-central

A set of tools to make GNOME application creation easy in Kotlin Native, with Glade UI integration.

Screenshot


⚠️ Deprecated:

This was a work in progress for lack of a better option. Then I discovered:

  • java-gi: a java gtk4 binding, which does the job, seems very complete and well maintained
  • compose-4-gtk: a very nice proof of concept to use GTK components through composables I feel these are better alternatives.

Features

  • a lightweight GTK object binding: no wrapper objects, just extension functions & aliases
  • a Glade UI gradle plugin: produces UI classes for type-safe widget access & glade file integration in the executable
  • a sample app

Usage

Prerequisites:

sudo apt install libgtk-3-dev libtinfo5

Then in your build.gradle.kts:

repositories {
    mavenCentral()
}

And:

dependencies {
    implementation("org.mrlem.gnome:gtk-binding:0.2.0")
}

Next steps:

Current status

Still a work in progress:

  • Glade gradle plugin: 100% complete
  • API coverage is still incomplete:
    • signal handler support is partial: no callback data
    • data types is partial for some of them: bitfields, etc
    • some missing generations: Cairo
  • platform support: Linux only for now

See also

Other Kotlin native GTK projects around:

For an explanation about why I didn't rely on one of them, see the FAQ.

About

A set of tools to make GNOME application creation easy in Kotlin Native, with Glade UI integration.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages