# gnome-terminal problems with harfbuzz



## Nyantastic (May 1, 2017)

I'm using pkg to install gnome-terminal.

I've been having some problems with the gnome-terminal package recently. First of all, a few days ago the terminal "forgot" its size and became very small each time a new window was opened, and now after a pkg upgrade it is completely failing to appear with an error message like this:

```
$ gnome-terminal
Shared object "libharfbuzz.so.0" not found, required by "libpangocairo-1.0.so.0"
```
`pkg check -Ba` produces a string of errors related to harfbuzz such as the following:

```
(gtk3-3.22.12) /usr/local/bin/gtk3-demo-application - required shared library libharfbuzz.so.0 not found
pkg: fstat() failed for(/usr/local/bin/hb-ot-shape-closure): No such file or directory
pkg: fstat() failed for(/usr/local/bin/hb-shape): No such file or directory
pkg: fstat() failed for(/usr/local/bin/hb-view): No such file or directory
pkg: fstat() failed for(/usr/local/include/harfbuzz/hb-blob.h): No such file or directory
```

However, pkg doesn't regard it as being not installed:

```
# pkg install harfbuzz
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The most recent version of packages are already installed
```

I'm not sure what the problem could be or what to do to resolve it. Unfortunately I cannot even start an Emacs window because that also seems to require harfbuzz.

Edit: The following command solved some of the problems:

```
# pkg install --force harfbuzz
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The following 1 package(s) will be affected (of 0 checked):

Installed packages to be REINSTALLED:
        harfbuzz-1.4.6_1

Number of packages to be reinstalled: 1

Proceed with this action? [y/N]: y
[1/1] Reinstalling harfbuzz-1.4.6_1...
[1/1] Extracting harfbuzz-1.4.6_1: 100%
```
Now I can start Emacs, but Gnome terminal still doesn't work.

Edit 2:

I reinstalled Gnome terminal using the same method: `pkg install --force gnome-terminal`

Now gnome-terminal appears, but it is still tiny and the following odd errors appear each time it's resized:

```
$
(gnome-terminal-server:83997): Gtk-WARNING **: Allocating size to GtkScrollbar 0x2a78f1f8 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?
```
Final edit (I will post further updates as replies):

Now every time I try to use the terminal menu I get pages and pages of the following garbage:

```
(gnome-terminal-server:83997): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkImageMenuItem)
*** BUG ***
In void pixman_region32_init_rect(region_type_t *, int, int, unsigned int, unsigned int): Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug
```
What can I do to restore gnome-terminal to functioning correctly?


----------



## Nyantastic (May 1, 2017)

Now I'm seeing the following error:

"VTE needs to be recompiled against a newer gtk+ version."

when I start gnome-terminal. Googling for the above brings up things about something called arch-linux.


----------



## SirDice (May 1, 2017)

Looks like it didn't update some parts, it's a bit of a long shot but try "upgrading" everything: `pkg upgrade -f`. Then reboot to make sure libraries are unloaded and the new ones are loaded properly.


----------



## Nyantastic (May 2, 2017)

SirDice said:


> Looks like it didn't update some parts, it's a bit of a long shot but try "upgrading" everything: `pkg upgrade -f`. Then reboot to make sure libraries are unloaded and the new ones are loaded properly.


I applied this change. Some of the errors with Gnome terminal were resolved. Unfortunately the menus are still not working and the terminal comes up in a very small format. However it is working enough for me to get on with my other work, so I can accept the current situation. Thank you.


----------

