Development

This pages describes things that should be followed while tracking development versions and importing new versions for GTK+ and or GNOME into the ports tree.

Except for a few exceptions, the GTK+ and GNOME stacks use even numbers for stable releases and uneven for development releases.

The FreeBSD GNOME Team uses https://github.com/freebsd/freebsd-ports-gnome as the repo for tracking new GNOME releases and tracking development versions. The development is done in the branches named after the theme of the work. If a development version is tracked, then the next stable version is used for the branch name. For example GNOME and GTK+ are released together so they are in the same branch, like gnome-3.24. The master branch is used to track vanilla FreeBSD ports so it very easy to compare the work against what is in ports.

Current branches in use

Branch Status Notes
master - Vanilla ports, no work is done here
gnome-3.26 finishing touches GNOME 2.26 development branch. Contains the GTK+ 4 port
gstreamer currently not in use GStreamer 1.12

Problem ports

List of ports that missing features or are current blockers.

Port Where Blocker Notes
sysutils/gnome-control-center ports No Printer config doesn't work. Running “system-config-printer” directy will work
x11/gdm gnome-3.26 Yes Login seems to succeed, but returns to login screen. Doesn't launch gnome-session/mate-session/etc
multimedia/cheese gnome-3.26 Semi Uses new method of camera detection, needs adaptation to FreeBSD way

Updating into ports

There are two big parts, the GTK part and the GNOME part.

  • GTK contains glib,gtk and gtkmm (c++ bindings) and the likes.
  • GNOME part contains GNOME desktop components, like gnome-shell, mutter but also gvfs for example.

Required steps

  • Exp-run is required.
  • GTK+ 3 upgrades tend to break themeing. Ports that need attention are listed in the table below.

List of ports that need to be “synced” for new GTK+ versions.

Port Note
deskutils/xfce4-notifyd Portrevision bump, build time detection of GTK+ version.
x11-themes/adwaita-icon-theme Needs to be kept in sync with GTK+ version.
x11-themes/gnome-themes-standard Keep in sync with the GTK+ version.
x11-themes/greybird-theme Keep in sync with the GTK+ version.
x11-themes/gtk-E17-theme Needs to be kept in sync with the GTK+ version
x11-themes/gtk-arc-themes Has themes for both GTK+ and GNOME
x11-themes/mate-themes Needs to be kept in sync with the GTK+ version, GTK+ version = mate-themes version.

GNOME 3.24 Import

Ports that had their Makefile reviewed to remove obsolete dependencies etc. And creating a list of gnome@ ports

Port Version Status Date
databases/evolution-data-server 3.24.2 DONE 2017-06-13
deskutils/baobab 3.24.0 DONE 2017-06-05
deskutils/bijiben 3.24.0 gnome-3.24, first launch segfault needs fixing 2017-06-06
deskutils/gnome-calendar 3.24.2 gnome-3.24, needs newer gsettings-desktop-schemas 2017-06-05
deskutils/gnome-clocks 3.24.0 DONE 2017-06-05
deskutils/gnome-maps 3.24.3 DONE 2017-05-30
deskutils/gnome-photos 3.24.2 DONE 2017-06-02
deskutils/gnome-weather 3.24.0 DONE 2017-06-05
deskutils/gucharmap 9.0.4 DONE 2017-05-31
devel/devhelp 3.24.0 DONE 2017-06-05
devel/libgdata 0.17.8 DONE 2017-05-21
devel/libgee 0.8.1 DONE 2017-06-02
devel/libgit2-glib 0.25.0 DONE 2017-05-18
devel/libpeas 0.20.0 DONE 2017-06-05
devel/gitg 3.24.0 DONE 2017-05-18
devel/gnome-builder 3.24.2 gnome-3.24, has a minor import project bug. otherwise 3.22.x for now 2017-06-06
devel/gsettings-desktop-schemas 3.24.0 gnome-3.24, might break gsd/mutter/shell? 2017-06-05
editors/gedit 3.22.0 DONE 2017-05-12
games/atomix 3.22.0 DONE 2017-05-17
games/five-or-more 3.22.2 DONE 2017-05-17
games/four-in-a-row 3.22.1 DONE 2017-05-17
games/gnome-2048 3.22.0 DONE 2017-05-17
games/gnome-chess 3.24.1 DONE 2017-05-17
games/gnome-games 3.24.0 Meta port 2017-05-17
games/gnome-klotski 3.22.1 DONE 2017-05-17
games/gnome-mahjongg 3.22.0 DONE 2017-05-17
games/gnome-mines 3.24.0 DONE 2017-05-17
games/gnome-nibbles 3.24.0 DONE 2017-05-17
games/gnome-robots 3.22.1 DONE 2017-05-17
games/gnome-sudoku 3.24.0 DONE 2017-05-17
games/gnome-taquin 3.22.0 DONE 2017-05-17
games/gnome-tetravex 3.22.0 DONE 2017-05-17
games/hitori 3.22.3 DONE 2017-05-17
games/iagno 3.22.0 DONE 2017-05-17
games/lightsoff 3.24.0 DONE 2017-05-17
games/quadrapassel 3.22.0 DONE 2017-05-17
games/swell-foop 3.24.0 DONE 2017-05-17
games/tali 3.22.0 DONE 2017-05-17
graphics/cairo 1.14.8 DONE 2017-03-08
graphics/cairomm 1.12.2 DONE 2017-04-23
graphics/clutter 1.26.2 DONE 2017-06-09
graphics/clutter-gtk3 1.8.2 DONE 2017-06-09
graphics/cogl 1.22.2 DONE 2017-06-09
graphics/eog 3.24.1 DONE 2017-06-01
graphics/eog-plugins 3.16.6 DONE 2017-06-01
graphics/gdk-pixbuf2 2.36.6 DONE 2017-04-23
graphics/gegl3 0.3.18 DONE 2017-06-02
graphics/gimp-app 2.8.22 DONE 2017-05-23
graphics/graphene 1.6.0 DONE 2017-04-18
graphics/grilo 0.3.3 DONE 2017-05-20
graphics/grilo-plugins 0.3.3 DONE 2017-05-20
graphics/inkscape 0.92.1 DONE 2017-05-22
graphics/libchamplain 0.12.15 DONE 2017-05-30
graphics/librsvg2 2.40.17 DONE 2017-05-09
lang/gjs 1.48.3 gnome-3.24, gnome-shell 3.18 doesn't build with this version. 2017-06-05
mail/evolution 3.24.2 DONE 2017-06-13
mail/evolution-ews 3.24.2 DONE 2017-06-13
math/gnome-calculator 3.24.0 DONE 2017-06-05
multimedia/totem-pl-parser 3.10.7 DONE 2017-06-02
net/geoclue 2.4.3 DONE 2017-05-11
net/gnome-online-accounts 3.24.1 DONE 2017-05-21
net/grilo 0.3.3 DONE 2017-05-20
net/grilo-plugins 0.3.4 DONE 2017-05-20
net/gtk-vnc 0.7.1 DONE 2017-05-22
net/libgweather 3.24.1 DONE 2017-06-05
print/freetype2 2.8 DONE 2017-05-17
print/harfbuzz[-icu] 1.4.6 DONE 2017-04-27
textproc/gspell 1.4.1 DONE 2017-05-12
www/epiphany 2.24.2 DONE 2017-05-13
www/webkit2-gtk3 2.16.3 DONE 2017-05-27
x11-themes/adwaita-icon-theme 3.22.0 DONE 2017-04-23
x11-themes/gnome-themes-standard 3.22.3 DONE 2017-04-23
x11-themes/mate-themes 3.22.10 DONE 2017-04-23
x11-toolkits/gdl 3.22.0 DONE 2017-06-05
x11-toolkits/gtk30 3.22.15 DONE 2017-05-11
x11-toolkits/gtkmm30 3.22.0 DONE 2017-04-23
x11-toolkits/gtksourceview3 3.22.2 DONE 2017-05-12
x11-toolkits/pango 1.40.6 DONE 2017-05-31
x11-toolkits/vte3 0.48.3 DONE 2017-05-15
x11/babl 0.1.28 DONE 2017-06-02
x11/gnome-terminal 3.24.2 DONE 2017-05-15
x11/gnome-shell 3.18.5 DONE 2017-05-15
x11/yelp 3.22.0 DONE 2017-05-06

Update Groups

The groups below should be updated together.

Not really needed to update these together, but it really handy. Also at least glib and gtk+ require a exp-run for minor bump to be done run before they can be updated. Patch level updates tend to be quite safe.

Port Notes
accessibility/atk
accessibility/atk-reference Slave port of atk
accessibility/at-spi2-atk
accessibility/at-spi2-core
accessibility/py-atspi
accessibility/py3-atspi
devel/glib
x11-toolkits/gtk20
x11-toolkits/gtk30
x11-toolkits/gtk30-reference Slave port of gtk30
x11-toolkits/gtkmm30
x11-toolkits/gtkmm30-reference Slave port of gtkmm30
x11-toolkits/pango
x11-toolkits/pango-reference Slave port of pango

These ports should be updated together. Since they are pretty much interconnected with each other.

Port Notes
deskutils/gnome-tweak-tool
deskutils/gnome-shell-extension-* Depends on a specific shell version
deskutils/gnome-shell-extra-extensions Extra extensions meta-port
devel/gsettings-desktop-schemas
sysutils/gnome-control-center
sysutils/gnome-settings-daemon
lang/gjs No inter dependacies with the other ports, just hard depend of gnome-shell
x11/gdm
x11/gnome-desktop
x11/gnome-session
x11/gnome-shell
x11/gnome-shell-extensions Depends on a specific shell version
x11-wm/mutter
  • gnome/development.txt
  • Last modified: 2018/01/14 14:11
  • by KoopMast