Gitk produces segmentation fault

Hi,

$ gitk                     
zsh: segmentation fault (core dumped)  gitk
$ pacman -F gitk
extra/git 2.44.0-1 [installed]
    usr/bin/gitk

Googled and found only this which is for wayland and kde:
https://stackoverflow.com/questions/76565285/git-gui-gitk-broken-interface-cause-crash-on-kde-plasma-wayland

$ inxi -v8azy
System:
  Kernel: 6.6.19-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc avail: acpi_pm
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-6.6-x86_64
    root=UUID=61cfdf95-2fac-4cbf-8e1d-1fb7af4b80a9 rw rootflags=subvol=@
    sysrq_always_enabled=1 quiet splash apparmor=1 security=apparmor
    udev.log_priority=3 resume=4d268b9c-6469-4ded-a104-acf8268c43e0
  Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.36 wm: xfwm4 v: 4.18.0
    with: xfce4-panel tools: light-locker vt: 7 dm: LightDM v: 1.32.0
    Distro: Manjaro base: Arch Linux
Machine:
  Type: Laptop System: Dell product: Latitude 5490 v: N/A
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: Dell model: 08NJ82 v: A00 serial: <superuser required> part-nu: 0816
    uuid: <superuser required> UEFI: Dell v: 1.26.0 date: 11/20/2022
Battery:
  ID-1: BAT0 charge: 46.2 Wh (100.0%) condition: 46.2/68.0 Wh (67.9%)
    volts: 8.3 min: 7.6 model: SMP DELL GD1JP65 type: Li-poly serial: <filter>
    status: full
Memory:
  System RAM: total: 8 GiB available: 7.62 GiB used: 4.54 GiB (59.6%)
  Message: For most reliable report, use superuser + dmidecode.
  Array-1: capacity: 32 GiB slots: 2 modules: 1 EC: None
    max-module-size: 16 GiB note: est.
  Device-1: DIMM A type: DDR4 detail: synchronous unbuffered (unregistered)
    size: 8 GiB speed: 2400 MT/s volts: note: check curr: 1 min: 1 max: 1
    width (bits): data: 64 total: 64 manufacturer: 80AD000080AD
    part-no: HMA81GS6AFR8N-UH serial: <filter>
  Device-2: ChannelB-DIMM0 type: no module installed
PCI Slots:
  Permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: Intel Core i5-8250U bits: 64 type: MT MCP arch: Coffee Lake
    gen: core 8 level: v3 note: check built: 2017 process: Intel 14nm family: 6
    model-id: 0x8E (142) stepping: 0xA (10) microcode: 0xF4
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 6 MiB desc: 1x6 MiB
  Speed (MHz): avg: 516 high: 728 min/max: 400/3400 scaling:
    driver: intel_pstate governor: powersave cores: 1: 400 2: 400 3: 700 4: 700
    5: 400 6: 728 7: 400 8: 400 bogomips: 28808
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_perfmon art avx avx2 bmi1 bmi2 bts clflush
    clflushopt cmov constant_tsc cpuid cpuid_fault cx16 cx8 de ds_cpl dtes64
    dtherm dts epb ept ept_ad erms est f16c flexpriority flush_l1d fma fpu
    fsgsbase fxsr ht hwp hwp_act_window hwp_epp hwp_notify ibpb ibrs ida
    intel_pt invpcid lahf_lm lm mca mce md_clear mmx monitor movbe mpx msr
    mtrr nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge
    pln pni popcnt pse pse36 pti pts rdrand rdseed rdtscp rep_good sdbg sep
    smap smep ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp syscall tm tm2
    tpr_shadow tsc tsc_adjust tsc_deadline_timer vme vmx vnmi vpid x2apic
    xgetbv1 xsave xsavec xsaveopt xsaves xtopology xtpr
  Vulnerabilities:
  Type: gather_data_sampling mitigation: Microcode
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT
    vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: retbleed mitigation: IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: IBRS, IBPB: conditional, STIBP: conditional,
    RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel UHD Graphics 620 vendor: Dell driver: i915 v: kernel
    arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports: active: eDP-1
    empty: DP-1,HDMI-A-1,HDMI-A-2 bus-ID: 00:02.0 chip-ID: 8086:5917
    class-ID: 0300
  Device-2: Microdia Integrated_Webcam_HD driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-5:2 chip-ID: 0c45:6717
    class-ID: 0e02
  Display: x11 server: X.Org v: 21.1.11 compositor: xfwm4 v: 4.18.0 driver:
    X: loaded: intel dri: i965 gpu: i915 display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 mapped: eDP1 model: ChiMei InnoLux 0x14c9 built: 2017
    res: 1920x1080 hz: 60 dpi: 157 gamma: 1.2 chroma: red: x: 0.592 y: 0.349
    green: x: 0.329 y: 0.557 blue: x: 0.153 y: 0.118 white: x: 0.314 y: 0.329
    size: 310x170mm (12.2x6.69") diag: 354mm (13.9") ratio: 16:9
    modes: 1920x1080
  EDID-Warnings: 1: parse_edid: unknown flag 0
  API: OpenGL Message: Unable to show GL data. glxinfo is missing.
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Dell driver: snd_hda_intel
    v: kernel alternate: snd_soc_skl,snd_soc_avs bus-ID: 00:1f.3
    chip-ID: 8086:9d71 class-ID: 0403
  API: ALSA v: k6.6.19-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.0.3 status: off tools: pw-cli
  Server-3: PulseAudio v: 17.0 status: active with: pulseaudio-alsa
    type: plugin tools: pacat,pactl,pavucontrol
Network:
  Device-1: Intel Ethernet I219-LM vendor: Dell driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15d7 class-ID: 0200
  IF: enp0s31f6 state: down mac: <filter>
  Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0 chip-ID: 8086:24fd class-ID: 0280
  IF: wlp2s0 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: noprefixroute scope: link
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
  WAN IP: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface driver: btusb v: 0.8 type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-7:3 chip-ID: 8087:0a2b
    class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 3 state: up address: see --recommends
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 465.76 GiB used: 80.71 GiB (17.3%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung
    model: SSD 970 EVO Plus 500GB size: 465.76 GiB block-size: physical: 512 B
    logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
    fw-rev: 2B2QEXM7 temp: 33.9 C scheme: GPT
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 327.65 GiB size: 327.65 GiB (100.00%)
    used: 79.91 GiB (24.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
    label: linux uuid: 61cfdf95-2fac-4cbf-8e1d-1fb7af4b80a9
  ID-2: /boot/efi raw-size: 100 MiB size: 96 MiB (96.00%)
    used: 36.3 MiB (37.8%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
    label: SYSTEM uuid: 244B-F424
  ID-3: /home raw-size: 327.65 GiB size: 327.65 GiB (100.00%)
    used: 79.91 GiB (24.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
    label: linux uuid: 61cfdf95-2fac-4cbf-8e1d-1fb7af4b80a9
  ID-4: /var/cache raw-size: 327.65 GiB size: 327.65 GiB (100.00%)
    used: 79.91 GiB (24.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
    label: linux uuid: 61cfdf95-2fac-4cbf-8e1d-1fb7af4b80a9
  ID-5: /var/log raw-size: 327.65 GiB size: 327.65 GiB (100.00%)
    used: 79.91 GiB (24.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
    label: linux uuid: 61cfdf95-2fac-4cbf-8e1d-1fb7af4b80a9
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: partition size: 10 GiB used: 790 MiB (7.7%) priority: -2
    dev: /dev/nvme0n1p5 maj-min: 259:5 label: N/A
    uuid: 4d268b9c-6469-4ded-a104-acf8268c43e0
Unmounted:
  ID-1: /dev/nvme0n1p2 maj-min: 259:2 size: 16 MiB fs: <superuser required>
    label: N/A uuid: N/A
  ID-2: /dev/nvme0n1p3 maj-min: 259:3 size: 128 GiB fs: ntfs label: Windows
    uuid: 98A44C7EA44C613C
USB:
  Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 12 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Device-1: 1-5:2 info: Microdia Integrated_Webcam_HD type: video
    driver: uvcvideo interfaces: 2 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1
    mode: 2.0 power: 500mA chip-ID: 0c45:6717 class-ID: 0e02
  Device-2: 1-7:3 info: Intel Bluetooth wireless interface type: bluetooth
    driver: btusb interfaces: 2 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1
    mode: 1.1 power: 100mA chip-ID: 8087:0a2b class-ID: e001
  Device-3: 1-10:4 info: Broadcom 5880 type: smart card driver: N/A
    interfaces: 2 rev: 1.1 speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1
    power: 100mA chip-ID: 0a5c:5832 class-ID: 0b00 serial: <filter>
  Hub-2: 2-0:1 info: super-speed hub ports: 6 rev: 3.0
    speed: 5 Gb/s (596.0 MiB/s) lanes: 1 mode: 3.2 gen-1x1 chip-ID: 1d6b:0003
    class-ID: 0900
Sensors:
  System Temperatures: cpu: 40.0 C pch: 36.0 C mobo: 37.0 C
  Fan Speeds (rpm): cpu: 2832
Repos:
  Packages: pm: pacman pkgs: 1788 libs: 513 tools: pamac,yay pm: flatpak
    pkgs: 0
  Active pacman repo servers in: /etc/pacman.d/mirrorlist
    1: https://ftpmirror1.infania.net/mirror/manjaro/stable/$repo/$arch
    2: http://ftp.tu-chemnitz.de/pub/linux/manjaro/stable/$repo/$arch
    3: https://manjaro.mirror.wearetriple.com/stable/$repo/$arch
    4: https://mirror.futureweb.be/manjaro/stable/$repo/$arch
    5: https://mirror.dkm.cz/manjaro/stable/$repo/$arch
    6: https://manjaro.mirror.garr.it/manjaro/stable/$repo/$arch
    7: https://mirror.freedif.org/Manjaro/stable/$repo/$arch
    8: https://mirrors.tuna.tsinghua.edu.cn/manjaro/stable/$repo/$arch
Processes:
  CPU top: 5 of 301
  1: cpu: 9.9% command: firefox pid: 10176 mem: 737.0 MiB (9.4%)
  2: cpu: 5.7% command: firefox pid: 12455 mem: 307.7 MiB (3.9%)
  3: cpu: 3.7% command: firefox pid: 14119 mem: 360.5 MiB (4.6%)
  4: cpu: 2.5% command: firefox pid: 12843 mem: 250.2 MiB (3.2%)
  5: cpu: 2.0% command: firefox pid: 12925 mem: 396.5 MiB (5.0%)
  Memory top: 5 of 301
  1: mem: 756.8 MiB (9.6%) command: java pid: 9841 cpu: 1.9%
  2: mem: 737.0 MiB (9.4%) command: firefox pid: 10176 cpu: 9.9%
  3: mem: 396.5 MiB (5.0%) command: firefox pid: 12925 cpu: 2.0%
  4: mem: 360.5 MiB (4.6%) command: firefox pid: 14119 cpu: 3.7%
  5: mem: 307.7 MiB (3.9%) command: firefox pid: 12455 cpu: 5.7%
Info:
  Processes: 301 Power: uptime: 19h 53m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 3.04 GiB services: upowerd,xfce4-power-manager
    Init: systemd v: 255 default: graphical tool: systemctl
  Compilers: clang: 16.0.6 gcc: 13.2.1 Shell: Zsh v: 5.9
    running-in: xfce4-terminal inxi: 3.3.33

Suggestions?

Make sure your system is up to date?

Thanks for the answer but it is up to date.

That is all the “help” I can offer - when I use that command
either in Xfce4 under the bash shell
or in Plasma using the zsh shell
some TK interface pops up, telling me that there is no git project archive

So: it seems to work.
It doesn’t crash
but I have no use for it and do not know how it is supposed to be used. :man_shrugging:

tk is an optional dependency that is required for gitk, so is it installed? Post output of pacman -Qi git.

$ pacman -Qi git                                                   ✔ 
Name            : git
Version         : 2.44.0-1
Description     : the fast distributed version control system
Architecture    : x86_64
URL             : https://git-scm.com/
Licenses        : GPL2
Groups          : None
Provides        : None
Depends On      : curl  expat  perl  perl-error  perl-mailtools  openssl  pcre2
                  grep  shadow  zlib
Optional Deps   : tk: gitk and git gui [installed]
                  openssh: ssh transport and crypto [installed]
                  perl-libwww: git svn [installed]
                  perl-term-readkey: git svn and interactive.singlekey setting
                  perl-io-socket-ssl: git send-email TLS support
                  perl-authen-sasl: git send-email TLS support
                  perl-mediawiki-api: git mediawiki support
                  perl-datetime-format-iso8601: git mediawiki support
                  perl-lwp-protocol-https: git mediawiki https support
                  perl-cgi: gitweb (web interface) support
                  python: git svn & git p4 [installed]
                  subversion: git svn
                  org.freedesktop.secrets: keyring credential helper [installed]
                  libsecret: libsecret credential helper [installed]
Required By     : flutter-engine  libpamac  smartgit  yay
Optional For    : gettext  npm
Conflicts With  : None
Replaces        : None
Installed Size  : 26,35 MiB
Packager        : Christian Hesse <eworm@archlinux.org>
Build Date      : fre 23 feb 2024 18:28:08
Install Date    : ons 6 mar 2024 23:41:22
Install Reason  : Installed as a dependency for another package
Install Script  : Yes
Validated By    : Signature

It seems like I have tk installed.
Is there a way to try to run gitk and get a log from it?

Do you know?
Check it.

pacman -Qi tk
Name            : tk
Version         : 8.6.14-1
Description     : A windowing toolkit for use with tcl
Architecture    : x86_64
URL             : http://tcl.sourceforge.net/
Licenses        : custom
Groups          : None
Provides        : None
Depends On      : tcl  libxss  libxft
Optional Deps   : None
Required By     : scid_vs_pc
Optional For    : git  python  python2
Conflicts With  : None
Replaces        : None
Installed Size  : 12.17 MiB
Packager        : Antonio Rojas <arojas@archlinux.org>
Build Date      : 2024-03-05T23:37:43 CET
Install Date    : 2024-03-14T00:55:29 CET
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature

I don’t know - when I start it from terminal, there is no output at all.
Just the tk interface starts up.

Yes that looks ok.

Try journalctl -f in another terminal and see if anything gets written to the system log when it crashes.

Some other things to try;

  1. Run gitk in an empty directory to test if it’s the repository that is crashing it. Should get a dialog saying “Cannot find a git repository here”.

  2. If that crashes run wish to test Tk on it’s own. Should get a small blank resizeable window.

  3. Check that you don’t have another git install on your path. which git should be /usr/bin/git.

Try journalctl -f in another terminal and see if anything gets written to the system log when it crashes.

journalctl -f                                                    ✔ 
Journal file /var/log/journal/83bcb69519b348ab85ab9f0ec6104c27/system@000612ee00aef22f-3fd66e53978c9487.journal~ is truncated, ignoring file.
mar 24 15:33:12 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:33:12 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:33:12 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:33:12 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:33:46 johlux kernel: wish[46492]: segfault at d8 ip 00007fb8213fb09a sp 00007fff0f53d2d0 error 4 in libtk8.6.so[7fb8213c9000+e3000] likely on CPU 1 (core 1, socket 0)
mar 24 15:33:46 johlux kernel: Code: 15 6b 92 0f 00 48 8b 7b 50 ff 15 11 9f 0f 00 48 8b 43 50 31 d2 48 8d 35 0e c7 0b 00 48 8b 78 10 49 8b 04 24 ff 90 c0 04 00 00 <8b> 90 d8 00 00 00 85 d2 74 14 49 8b 14 24 48 89 c6 48 8d 3d ee f5
mar 24 15:33:46 johlux systemd[1]: Created slice Slice /system/systemd-coredump.
mar 24 15:33:46 johlux systemd[1]: Started Process Core Dump (PID 46493/UID 0).
mar 24 15:33:46 johlux systemd-coredump[46494]: [🡕] Process 46492 (wish) of user 1000 dumped core.
                                                
                                                Stack trace of thread 46492:
                                                #0  0x00007fb8213fb09a Ttk_TkDestroyedHandler (libtk8.6.so + 0x4209a)
                                                #1  0x00007fb8214aa424 CreateFrame.isra.0 (libtk8.6.so + 0xf1424)
                                                #2  0x00007fb8213fc6f4 TkListCreateFrame (libtk8.6.so + 0x436f4)
                                                #3  0x00005556fcb7d181 n/a (wish8.6 + 0x1181)
                                                #4  0x00007fb8213e9795 Tk_MainEx (libtk8.6.so + 0x30795)
                                                #5  0x00005556fcb7d053 n/a (wish8.6 + 0x1053)
                                                #6  0x00007fb82104bcd0 n/a (libc.so.6 + 0x29cd0)
                                                #7  0x00007fb82104bd8a __libc_start_main (libc.so.6 + 0x29d8a)
                                                #8  0x00005556fcb7d085 _start (wish8.6 + 0x1085)
                                                ELF object binary architecture: AMD x86-64
mar 24 15:33:46 johlux systemd[1]: systemd-coredump@0-46493-0.service: Deactivated successfully.
mar 24 15:34:13 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:34:13 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:34:14 johlux kernel: wish[46602]: segfault at d8 ip 00007fd97d94709a sp 00007fff76f82ad0 error 4 in libtk8.6.so[7fd97d915000+e3000] likely on CPU 1 (core 1, socket 0)
mar 24 15:34:14 johlux kernel: Code: 15 6b 92 0f 00 48 8b 7b 50 ff 15 11 9f 0f 00 48 8b 43 50 31 d2 48 8d 35 0e c7 0b 00 48 8b 78 10 49 8b 04 24 ff 90 c0 04 00 00 <8b> 90 d8 00 00 00 85 d2 74 14 49 8b 14 24 48 89 c6 48 8d 3d ee f5
mar 24 15:34:14 johlux systemd[1]: Started Process Core Dump (PID 46603/UID 0).
mar 24 15:34:14 johlux systemd-coredump[46604]: [🡕] Process 46602 (wish) of user 1000 dumped core.
                                                
                                                Stack trace of thread 46602:
                                                #0  0x00007fd97d94709a Ttk_TkDestroyedHandler (libtk8.6.so + 0x4209a)
                                                #1  0x00007fd97d9f6424 CreateFrame.isra.0 (libtk8.6.so + 0xf1424)
                                                #2  0x00007fd97d9486f4 TkListCreateFrame (libtk8.6.so + 0x436f4)
                                                #3  0x0000556477447181 n/a (wish8.6 + 0x1181)
                                                #4  0x00007fd97d935795 Tk_MainEx (libtk8.6.so + 0x30795)
                                                #5  0x0000556477447053 n/a (wish8.6 + 0x1053)
                                                #6  0x00007fd97d597cd0 n/a (libc.so.6 + 0x29cd0)
                                                #7  0x00007fd97d597d8a __libc_start_main (libc.so.6 + 0x29d8a)
                                                #8  0x0000556477447085 _start (wish8.6 + 0x1085)
                                                ELF object binary architecture: AMD x86-64
mar 24 15:34:14 johlux systemd[1]: systemd-coredump@1-46603-0.service: Deactivated successfully.
mar 24 15:34:21 johlux kernel: wish[46616]: segfault at d8 ip 00007f3458de009a sp 00007ffd7cd20bd0 error 4 in libtk8.6.so[7f3458dae000+e3000] likely on CPU 0 (core 0, socket 0)
mar 24 15:34:21 johlux kernel: Code: 15 6b 92 0f 00 48 8b 7b 50 ff 15 11 9f 0f 00 48 8b 43 50 31 d2 48 8d 35 0e c7 0b 00 48 8b 78 10 49 8b 04 24 ff 90 c0 04 00 00 <8b> 90 d8 00 00 00 85 d2 74 14 49 8b 14 24 48 89 c6 48 8d 3d ee f5
mar 24 15:34:21 johlux systemd[1]: Started Process Core Dump (PID 46617/UID 0).
mar 24 15:34:21 johlux systemd-coredump[46618]: [🡕] Process 46616 (wish) of user 1000 dumped core.
                                                
                                                Stack trace of thread 46616:
                                                #0  0x00007f3458de009a Ttk_TkDestroyedHandler (libtk8.6.so + 0x4209a)
                                                #1  0x00007f3458e8f424 CreateFrame.isra.0 (libtk8.6.so + 0xf1424)
                                                #2  0x00007f3458de16f4 TkListCreateFrame (libtk8.6.so + 0x436f4)
                                                #3  0x000055e19d453181 n/a (wish8.6 + 0x1181)
                                                #4  0x00007f3458dce795 Tk_MainEx (libtk8.6.so + 0x30795)
                                                #5  0x000055e19d453053 n/a (wish8.6 + 0x1053)
                                                #6  0x00007f3458a30cd0 n/a (libc.so.6 + 0x29cd0)
                                                #7  0x00007f3458a30d8a __libc_start_main (libc.so.6 + 0x29d8a)
                                                #8  0x000055e19d453085 _start (wish8.6 + 0x1085)
                                                ELF object binary architecture: AMD x86-64
mar 24 15:34:21 johlux systemd[1]: systemd-coredump@2-46617-0.service: Deactivated successfully.
mar 24 15:35:13 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:35:13 johlux rtkit-daemon[1212]: Supervising 8 threads of 4 processes of 1 users.
mar 24 15:35:30 johlux NetworkManager[700]: <info>  [1711290930.5890] dhcp4 (enp0s31f6): state changed new lease, address=10.0.3.3
mar 24 15:35:30 johlux systemd[1]: Starting Network Manager Script Dispatcher Service...
mar 24 15:35:30 johlux systemd[1]: Started Network Manager Script Dispatcher Service.
mar 24 15:35:40 johlux systemd[1]: NetworkManager-dispatcher.service: Deactivated successfully.

I tried a couple of times to run gitk.

gitk                                                        SEGV ✘ 
zsh: segmentation fault (core dumped)  gitk  

It seems like git is ok:

which git                                                   SEGV ✘ 
/usr/bin/git

Wish does not work so well. Does that mean that Tk is broken?

wish                                                        SEGV ✘ 
zsh: segmentation fault (core dumped)  wish

How should I proceed form here?

Yes. Post output from which wish and pacman -Qi tk.

$ pacman -Qi tk                                                    ✔ 
Name            : tk
Version         : 8.6.14-1
Description     : A windowing toolkit for use with tcl
Architecture    : x86_64
URL             : http://tcl.sourceforge.net/
Licenses        : custom
Groups          : None
Provides        : None
Depends On      : tcl  libxss  libxft
Optional Deps   : None
Required By     : None
Optional For    : git  libpurple  python  python-pillow  python310  ruby  sigil
Conflicts With  : None
Replaces        : None
Installed Size  : 12,17 MiB
Packager        : Antonio Rojas <arojas@archlinux.org>
Build Date      : tis 5 mar 2024 23:37:43
Install Date    : fre 15 mar 2024 10:46:24
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature
$ which wish                                                       ✔ 
/usr/bin/wish
$ pacman -Qo /usr/bin/wish                                         ✔ 
/usr/bin/wish is owned by tk 8.6.14-1

I did reinstall Tk, but it did not help with gitk.

$ sudo pacman -S --asdeps tk

Both sigil and git can open without problem. (the optional dependency), but I do not know if that engages tk or if it some special function that use tk.

Could the problem be with one of the dependencies of tk, like tcl or libxss?
From the log I can just see that wish does the segfault, does that mean that it is in wish or more probable in wish and not in a dependency to wish?
The log seems to the mostly talk about wish and tk:

If wish doesn’t run then that is definitely the problem. gitk is just a wish script.

I can’t see anything wrong with your tk install. I have the same kernel and packages as you and it works here. There’s something about your system that it doesn’t like but right now I can’t think what that could be.

Could it be a problem with tcl, libxss, or libxft? since they are dependencies to tk?
If so is there a way to check them? like with pacman and pacman do a sha1 of the packages and compare to a database or something? Perhaps do a system wide signature check on all packages?

Install pacutils package if you don’t have it, then

sudo paccheck --sha256sum --recursive tk

https://wiki.archlinux.org/title/Pacman/Tips_and_tricks#Listing_all_changed_files_from_packages

for gitk to work it needs a git repo.

cd /home/repos/somerepo
gitk &

I have a hard preference for Sublime Merge - but for the sake of this topic I tested the old interface and it works

Summary

If there is no repo it shows this. It doesn’t crash.
Screenshot_20240324_160648

sudo paccheck --sha256sum --recursive tk                         ✔ 
[sudo] password for johannes: 
tk: all files match mtree sha256sums
tcl: all files match mtree sha256sums
zlib: all files match mtree sha256sums
glibc: all files match mtree sha256sums
linux-api-headers: all files match mtree sha256sums
tzdata: all files match mtree sha256sums
filesystem: all files match mtree sha256sums
iana-etc: all files match mtree sha256sums
libxss: all files match mtree sha256sums
libxext: all files match mtree sha256sums
libx11: all files match mtree sha256sums
libxcb: all files match mtree sha256sums
xcb-proto: all files match mtree sha256sums
libxdmcp: all files match mtree sha256sums
xorgproto: all files match mtree sha256sums
libxau: all files match mtree sha256sums
libxft: all files match mtree sha256sums
fontconfig: all files match mtree sha256sums
expat: all files match mtree sha256sums
freetype2: all files match mtree sha256sums
brotli: all files match mtree sha256sums
bzip2: all files match mtree sha256sums
bash: all files match mtree sha256sums
readline: all files match mtree sha256sums
ncurses: all files match mtree sha256sums
gcc-libs: all files match mtree sha256sums
libpng: all files match mtree sha256sums
harfbuzz: all files match mtree sha256sums
graphite: all files match mtree sha256sums
glib2: all files match mtree sha256sums
libffi: all files match mtree sha256sums
libsysprof-capture: all files match mtree sha256sums
pcre2: all files match mtree sha256sums
util-linux-libs: all files match mtree sha256sums
libxrender: all files match mtree sha256sums

I think this shows that all checked packages are not corrupted. But it does not show if I have the correct packages. Are not the reference sha256sums in the packages itself?
What is your opinion…
I was thinking of restoring the local database https://wiki.archlinux.org/title/Pacman/Restore_local_database
Perhaps my database is not correct, so that an old package is still on my system?
Should that not decipher if I have an old/not compatible package?
Then do an update and see what happens.
After that, do:

# paccheck --sha256sum --quiet

Or should I just do paccheck straight away?

So I guess

pacman -Qkk tk

gives you:

tk: 639 total files, 0 altered files
$ pacman -Qkk tk                                                                                                                                               
tk: 639 total files, 0 altered files

Perhaps do that recursively like the paccheck command?
Is it possible?

I doubt it’s anything to do with corrupt packages, that seems unlikely. My initial hunch is that there is something about your DE configuration that is causing this. To test this create a new user and try running wish while logged on there.