Juan Pablo Ugarte f050a21234 CmbView: update ui on filename change
This is needed to reload images relative to filename.
2022-07-28 17:27:08 -04:00
2022-07-25 15:05:24 +00:00
2022-07-19 09:53:48 -04:00
2022-07-17 15:20:11 -04:00
2022-07-26 16:35:16 -04:00
2022-03-20 12:09:37 -03:00
2021-07-21 11:34:42 -03:00
2021-07-21 11:34:42 -03:00
2021-07-25 10:50:22 -03:00
2021-07-25 10:50:22 -03:00
2021-08-17 17:46:48 -04:00
2022-06-15 15:01:43 -04:00
2021-06-15 19:19:33 -03:00

Cambalache

Cambalache is a new RAD tool for Gtk 4 and 3 with a clear MVC design and data model first philosophy. This translates to a wide feature coverage with minimal/none developer intervention for basic support.

Data Model Diagram

To support multiple Gtk versions it renders the workspace out of process using the Gdk broadway backend.

Merengue Diagram

License

Cambalache is distributed under the GNU Lesser General Public License, version 2.1 (LGPL) as described in the COPYING file.

Tools are distributed under the GNU General Public License, version 2 (GPL) as described in the COPYING.GPL file.

Source code

Source code lives on GNOME gitlab here

git clone https://gitlab.gnome.org/jpu/cambalache.git

Dependencies

  • Python 3 - Cambalache is written in Python
  • Meson build system
  • GTK 3 and 4 with broadway backend enabled
  • python-gi - Python GTK bindings
  • python3-lxml - Python libxml2 bindings
  • WebkitGTK - Webview for workspace

Running from sources

To run it without installing use run-dev.py script, it will automatically compile resources and create extra files needed to run.

./run-dev.py

The minimum requirements are Gtk 3 and lxml, Gtk 4 is only needed to have a functional Gtk 4 workspace.

Flatpak

The preferred way to run Cambalache is using flatpak. Instructions on how to install flatpak can be found here.

Build your bundle with the following commands

flatpak-builder --force-clean --repo=repo build ar.xjuan.Cambalache.json
flatpak build-bundle repo cambalache.flatpak ar.xjuan.Cambalache
flatpak install --user cambalache.flatpak

Flathub

You can get Cambalache prebuilt bundles here

Use the following to install:

flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub ar.xjuan.Cambalache

Manual installation

This is a regular meson package and can be installed the usual way.

# Create build directory and configure project
mkdir _build && cd _build
meson --prefix=~/.local

# Build and install
ninja
ninja install

To run it from .local/ you might need to setup PYTHONPATH env variable depending on your distribution defaults

export PYTHONPATH=.local/lib/python3/dist-packages/

Contributing

If you are interested in contributing you can open and issue here and/or a merge request here

Contact

You can hang with us and ask us questions on Matrix at #cambalache:gnome.org

Matrix

Financial support

You can financially support Cambalache development on Liberapay or Patreon like all these people did.

Liberapay

  • Liberapay is a recurrent donations platform
  • Run by a non-profit organization
  • Source code is public
  • No commission fee
  • ~5% payment processing fee

Patreon

  • Patreon is a membership platform for creators
  • Run by private company
  • No source code available
  • ~8% commission fee
  • ~8% payment processing fee

Tools

  • cambalache-db: Generate Data Model from Gir files

  • db-codegen: Generate GObject classes from DB tables

Description
Cambalache is a new RAD tool for Gtk 4 and 3 with a clear MVC design and data model first philosophy.
Readme 16 MiB
Languages
Python 95.9%
Meson 1.5%
C 1.2%
CSS 0.7%
Makefile 0.6%
Other 0.1%