Skip to content

PucklaJ/odin-gtk

Repository files navigation

Odin GTK

Odin Bindings to GTK4 and associated libraries generated using runic

Library Path License
glib glib LGPL 2.1
gobject glib/gobject LGPL 2.1
gmodule glib/gmodule LGPL 2.1
gio glib/gio LGPL 2.1
girepository glib/girepository LGPL 2.1
gdk-pixbuf gdk-pixbuf LGPL 2.1
pango pango LGPL 2
pangocairo pango/pangocairo LGPL 2
cairo cairo LGPL 2.1
graphene graphene MIT
gtk gtk LGPL 2.1
gtk4-layer-shell gtk/layer-shell MIT

Supported Platforms

OS Arch
Linux x86_64, arm64

Other UNIX-like systems might also work, but anything else but 64-Bit won't work, since there are specific workarounds used for 64-Bit.

Usage

The gtk package on different linux distributions:

Distribution Package Name
Arch Linux gtk4, gtk4-layer-shell
Ubuntu libgtk-4-dev, libgtk4-layer-shell-dev
Alpine Linux gtk4.0-dev, gtk4-layer-shell-dev

By default all the libraries will be linked dynamically. Installing the gtk package of your linux distribution should be fine. Library files for some wrappers are provided, but in case you want to rebuild them you need to follow the following steps.

The build dependencies are:

  • just
  • meson
  • ninja
  • python
  • gcc

To install them on archlinux:

sudo pacman -S --needed --noconfirm base-devel just meson ninja python harfbuzz

on ubuntu:

sudo apt install -y build-essential just meson ninja-build python3

on alpine:

sudo apk add just meson samurai python3 build-base harfbuzz-dev

Then execute:

just setup && just wrapper