Buka icon indicating copy to clipboard operation
Buka copied to clipboard

Harfbuzz version too old

Open cdutsov opened this issue 5 years ago • 8 comments

Hello,

I've tried installing Buka from arch linux's AUR but when I run it I get the following error:

(Buka:70766): Pango-ERROR **: 15:47:38.639: Harfbuzz version too old (1.3.1)

I have tried to run LD_PRELOAD=/usr/lib/libharfbuzz.so.0 Buka, but the error is the same. strace shows that used library is openat(AT_FDCWD, "/usr/lib/libharfbuzz.so.0", O_RDONLY|O_CLOEXEC) = 3 I have installed harfbuzz version 2.6.4-2 and pango ver. ango 1:1.44.7+11+g73b46b04-1

cdutsov avatar Feb 25 '20 13:02 cdutsov

same issue on fedora 32 :/

mybigman avatar Mar 24 '20 03:03 mybigman

Here are 3 methods to fix this issue - Pango-ERROR : Harfbuzz version too old (1.3.1)

Method 1 (patch): Revert back to Pango 1.43. In terminal: sudo dnf downgrade --releasever 30 pango-1.43.0-4.fc30.x86_64 Buka will now work, but the user is required to exclude pango during updates. in terminal: sudo dnf update --exclude pango,pango-devel,nemo, nemo-extension

Method 2: Install from source. Go to https://github.com/oguzhaninan/Buka and follow the "Build from source" section.

Method 3: Change the text, include a license in the JSON, and build the RPM. The RPM was successfully created using rpm-builder, and electron-installer-redhat. A SPDX license was required in the package JSON for the RPM build.

ghost avatar Apr 20 '20 04:04 ghost

I have same problem with AppImage but my harfbuzz is not 1.3.1

dpkg -l libharfbuzz0b
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version      Architecture Description
+++-===================-============-============-=============================================
ii  libharfbuzz0b:amd64 2.6.4-1      amd64        OpenType text shaping engine (shared library)
ii  libharfbuzz0b:i386  2.6.4-1      i386         OpenType text shaping engine (shared library)

and I don't see harfbuzz or pango inside the AppImage

sherpya avatar May 04 '20 23:05 sherpya

Same thing here in Solus Linux (Solus 4.1 Fortitude / Linux 5.6.4-152.current) Tried to use Buka-1.0.0-x86_64.AppImage but when run ./Buka*.AppImage this error occurred:

(buka:5561): Pango-ERROR **: 23:52:30.520: Harfbuzz version too old (1.3.1)

and a quick search in my system's packages shows: harfbuzz-error

any advice ?

alexxtasi avatar May 09 '20 21:05 alexxtasi

Same error at Ubuntu 20.04

$ dpkg -l libharfbuzz0b
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version        Architecture Description
+++-===================-==============-============-=============================================
ii  libharfbuzz0b:amd64 2.6.4-1ubuntu4 amd64        OpenType text shaping engine (shared library)
ii  libharfbuzz0b:i386  2.6.4-1ubuntu4 i386         OpenType text shaping engine (shared library)

augusnunes avatar May 28 '20 04:05 augusnunes

same issue on Debian testing bullseye

ii  libharfbuzz0b:amd64 2.6.7-1      amd64        OpenType text shaping engine (shared library)
ii  libharfbuzz0b:i386  2.6.7-1      i386         OpenType text shaping engine (shared library)

blogdron avatar Aug 16 '20 16:08 blogdron

Same on Atom, Ubuntu 20.04

usr/bin/atom: line 127: 27668 Trace/breakpoint trap   (core dumped) nohup "$ATOM_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$ATOM_HOME/nohup.out" 2>&1

(atom:27668): Pango-ERROR **: 15:55:32.705: Harfbuzz version too old (1.4.2)

tmadushan avatar Aug 25 '20 10:08 tmadushan

Ubuntu 20.04 x64 .deb package

A working Debian package was created and Buka was installed successfully on a fresh install of Ubuntu 20.04.

The required Pango libraries were added to the data tarball of the Debian package, and a new package was created using npm electron-installer-debian.

Here is a link to the Debian package:

buka_1.0.0_amd64.deb

The package can be installed and executed using "buka" in terminal or search for the Buka application.

To create and install the Debian package:

1.) Install the required dependencies.

In terminal: sudo apt install gconf-service gconf2 libcanberra-gtk-module

2.) Get the original deb file: Buka_1.0.0_amd64.deb

3.) Get the correct libraries.

Get https://packages.ubuntu.com/focal/libs/libpango-1.0-0 https://packages.ubuntu.com/focal/libpangocairo-1.0-0 https://packages.ubuntu.com/focal/libpangoft2-1.0-0

Open these files using Archive Manager. For each package: Navigate to ./usr/lib/x86_64-linux-gnu/

Extract both files in this location e.g. libpango-1.0.so.0, libpango-1.0.so.0.4200.3 Store all 6 in a folder.

4.) Add Pango libraries to data tarball of original Debian package.

4a.) Extract Data tarball. Extract Debian package: Buka_1.0.0_amd64.deb Extract Data tarball: data.tar.xz Inside Data, navigate to /usr/lib/Buka/ Copy this path. Open terminal in this folder and 'pwd' to get path.

4b.) Add the Pango libraries. Open terminal in the folder that contains the 6 Pango library files. Move these files to the Data tarball location copied above.

5.) Install npm requirements to build and package the project.

In terminal: sudo apt install npm && sudo npm install -g electron-installer-debian && sudo npm install electron-packager -g

6.) Create the debian.json configuration file.

6a.) Download Buka project icon: https://github.com/oguzhaninan/Buka/blob/master/assets/img/icon.png

Inside Data folder, navigate to usr/lib/ There should be a Buka folder in this location.

6b.) Create a new file called debian.json and add this to file:

{
  "dest": "release-builds/",
  "icon": "icon.png",
  "categories": [
    "Utility"
  ],
  "lintianOverrides": [
    "changelog-file-missing-in-native-package"
  ]
}

Include the correct location of the icon.png file. In this example, it is in the data/usr/lib/ folder.

Save and close file.

7.) Build the Debian package.

Inside the ../data/usr/lib/ folder should be: Buka folder, icon.png, and debian.json .

Run the following npm command in terminal:

sudo electron-installer-debian --src Buka --arch amd64 --config debian.json

After this completes, the Debian package will be location in a new folder called release-builds.

ghost avatar Aug 26 '20 09:08 ghost