Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Harfbuzz version too old #53

Open
cdutsov opened this issue Feb 25, 2020 · 8 comments
Open

Harfbuzz version too old #53

cdutsov opened this issue Feb 25, 2020 · 8 comments

Comments

@cdutsov
Copy link

cdutsov commented Feb 25, 2020

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

@mybigman
Copy link

same issue on fedora 32 :/

@ghost
Copy link

ghost commented Apr 20, 2020

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.

@sherpya
Copy link

sherpya commented May 4, 2020

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

@alexxtasi
Copy link

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 ?

@augusnunes
Copy link

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)

@blogdron
Copy link

blogdron commented Aug 16, 2020

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)

@tmadushan
Copy link

tmadushan commented Aug 25, 2020

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)

@ghost
Copy link

ghost commented Aug 26, 2020

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants