The version of kdiff3 currently shipped in manjaro stable channel is totally broken and segfaults. The current arch package works fine.
Mod note:- Edited topic title for brevity.
The version of kdiff3 currently shipped in manjaro stable channel is totally broken and segfaults. The current arch package works fine.
Mod note:- Edited topic title for brevity.
I noticed you also posted here: kdiff3 segfaults (#56) · Issues · SDK / KDiff3 · GitLab
Version 1.12.5-1 segfaults with
kdiff3: /usr/src/debug/kdiff3/kdiff3-1.12.5/src/SourceData.cpp:179: LineType SourceData::getSizeLines() const: Assertion `m_normalData.m_pBuf != nullptr' failed. Aborted (core dumped) kdiff3Unclear from the changelog if this is fixed in 1.12.6
Code changes can be reviewed in Code/Compare Revisions
Many C++ translation references have been updated so it’s quite possible one was incorrect in 1.12.5 Interestingly most a related to translation; @callegar what language & locale are you running?
@Manjaro-Team Does pushing 1.12.6 early break anything else? I see 1.12.5 on the Manjaro repo is an upstream Archlinux package.
Note that kdiff3 v1.12.6-1 is currently available in Arch as well as Manjaro Unstable branch.
mbn info kdiff3 -q
Branch : archlinux
Name : kdiff3
Version : 1.12.6-1
Repository : extra
Build Date : Wed 22 Jul 2026 21:23:30
Packager : Antonio Rojas <arojas@archlinux.org>
Branch : unstable
Name : kdiff3
Version : 1.12.6-1
Repository : extra
Build Date : Wed 22 Jul 2026 21:23:30
Packager : Antonio Rojas <arojas@archlinux.org>
Branch : testing
Name : kdiff3
Version : 1.12.5-1
Repository : extra
Build Date : Sat 18 Jul 2026 06:43:43
Packager : Antonio Rojas <arojas@archlinux.org>
Branch : stable
Name : kdiff3
Version : 1.12.5-1
Repository : extra
Build Date : Sat 18 Jul 2026 06:43:43
Packager : Antonio Rojas <arojas@archlinux.org>
While fasttracking this version seems a fair request you might also consider switching to Manjaro Unstable as an alternative:
For a single package one could also install it from the unstable branch without switching. But notice in general this won’t work because of dependencies. There might be particular cases though when it can work because the package has no dependencies or in the particular case the dependencies are fulfilled because stable and unstable are in sync with respect to the required dependencies. I checked this quickly for kdiff3 and since currently stable and unstable are on the same Plasma and Qt versions (at the time of writing) you may get away with
pacman -U https://ftp.gwdg.de/pub/linux/manjaro/unstable/extra/x86_64/kdiff3-1.12.6-1-x86_64.pkg.tar.zst
First a word of caution!
The following approach is unsupported and should never be substituted for proper maintenance or switching branch.
Depending on the situation at hand - it may work or it may create more trouble.
First I did a test on stable branch - running kdiff3 on a couple of files in /etc
$ kdiff3 /etc/locale.gen /etc/locale.gen.pacnew
QFSFileEngine::open: No file name specified
org.kde.kdiff3: Loading A: "/etc/locale.gen"
org.kde.kdiff3: Loading B: "/etc/locale.gen.pacnew"
org.kde.kdiff3: Diff: A <-> B
org.kde.kdiff3: Linediff: A <-> B
org.kde.kdiff3: Enter: calcDiff3LineListUsingAB
org.kde.kdiff3: Leave: calcDiff3LineListUsingAB
kdiff3: /usr/src/debug/kdiff3/kdiff3-1.12.5/src/SourceData.cpp:179: LineType SourceData::getSizeLines() const: Assertion `m_normalData.m_pBuf != nullptr' failed.
Aborted (core dumped) kdiff3 /etc/locale.gen /etc/locale.gen.pacnew
Then I pulled the 1.12.6 package
mind ye’all the mirror is not official in any capacity and you should not rely on it
$ sudo pacman -U https://manjaro.dk/repo/pool/sync/kdiff3-1.12.6-1-x86_64.pkg.tar.zst
And reran the test
$ kdiff3 /etc/locale.gen /etc/locale.gen.pacnew
QFSFileEngine::open: No file name specified
org.kde.kdiff3: Loading A: "/etc/locale.gen"
org.kde.kdiff3: Loading B: "/etc/locale.gen.pacnew"
org.kde.kdiff3: Diff: A <-> B
org.kde.kdiff3: Linediff: A <-> B
org.kde.kdiff3: Enter: calcDiff3LineListUsingAB
org.kde.kdiff3: Leave: calcDiff3LineListUsingAB
Then the kdiff3 application is working as expected.
What I typically do in these cases is getting the source package and compiling it myself on stable with chrootbuild (namely, backporting to stable). In this specific case it seems unnecessary since the manjaro unstable and the arch packages work just fine.
My locale is a bit peculiar:
LANG=en_US.UTF-8
LC_CTYPE=“en_US.UTF-8”
LC_NUMERIC=en_IE.UTF-8
LC_TIME=en_IE.UTF-8
LC_COLLATE=“en_US.UTF-8”
LC_MONETARY=en_IE.UTF-8
LC_MESSAGES=“en_US.UTF-8”
LC_PAPER=en_IE.UTF-8
LC_NAME=en_IE.UTF-8
LC_ADDRESS=en_IE.UTF-8
LC_TELEPHONE=en_IE.UTF-8
LC_MEASUREMENT=en_IE.UTF-8
LC_IDENTIFICATION=en_IE.UTF-8
LC_ALL=
I want EN_US messages (which typically means untraslated messages that are easier to match on search), and a system speaking mostly in English, but with European conventions for dates, numbers, etc. I wish there was an en_EU.UTF-8 locale.
There may be a reason why there isn’t (I’m not familiar enough with locales to know either way) - but there is en_GB.UTF-8. ![]()
It is fairly easy to accomplish on your own.
I also confirm that on stable Manjaro KDE 2026-07-23 :
sudo pacman -U https://manjaro.dk/repo/pool/sync/kdiff3-1.12.6-1-x86_64.pkg.tar.zst
fixes the issue.
Thanks