nmimusic / unifetch

An unofficial inheritor of Neofetch
MIT License
20 stars 3 forks source link

Printing the font info crashes Unifetch #42

Open mutageneral opened 1 year ago

mutageneral commented 1 year ago

Description

Unifetch crashes at the "Font" stage under my setup. If I remove info·"Font"·font from the config file, it stops crashing.

I use i3 with KDE programs and I set the following variables in my .xinitrc to make KDE apps use the right theme:

export XDG_CURRENT_DESKTOP=KDE
export XDG_SESSION_DESKTOP=KDE
export DESKTOP_SESSION=kde
export KDE_SESSION_VERSION=5

This might confuse the script into showing the wrong info, but it should not lead to any crash. Therefore, I believe this is a bug.

Neofetch version

I just updated to the latest release 1.3.2 and it still dose it

Screenshot

with info·"Font"·font it halts right before showing the font info image without info·"Font"·font it completes without error image

Config file

# See this wiki page for more info:
# https://github.com/dylanaraps/neofetch/wiki/Customizing-Info
print_info() {
    info title
    info underline

    info "OS" distro
    info "Host" model
    info "Kernel" kernel
    prin "Init" "$(test -d "/run/systemd/system/" && echo "systemd" || echo "Not systemd")"
    info "Uptime" uptime
    # info "Packages" packages
    info "Shell" shell
    prin "/bin/sh" "$(ls_output=$(ls -l -- /bin/sh); [ -L "/bin/sh" ] && echo ${ls_output#*"/bin/sh -> "} | cut -d ">" -f2 || echo "/bin/sh")"
    info "Resolution" resolution
    prin "Editor" "Term: $(terminal_text_editor="${EDITOR:-${VISUAL}}"; basename $terminal_text_editor) |  XDG: $(xdg_editor=$(xdg-mime query default text/plain); default_editor=$(grep "^Name=.\+" /usr/share/applications/$xdg_editor) && echo "${default_editor#Name=}")"
    info "DE" de
    info "WM" wm
    info "WM Theme" wm_theme
    info "Theme" theme
    info "Icons" icons
    info "Cursor" cursor
    info "Font" font #TODO THIS LINE CRASH UNIFETCH!!!! 
    info "Terminal" term
    info "Terminal Font" term_font
    info "CPU" cpu
    info "GPU" gpu
    info "Memory" memory
    info "Battery" battery
    info "Disk" disk
    info "Network" network
    info "Local IP" local_ip
    info "Public IP" public_ip

    # info "GPU Driver" gpu_driver  # Linux/macOS only
    # info "Power Adapter" power_adapter # macOS only
    # info "Song" song
    # [[ "$player" ]] && prin "Music Player" "$player"
    # info "Users" users
    # info "Locale" locale  # This only works on glibc systems.

    # info "Java" java_ver
    # info "Python" python_ver
    # info "Node" node_ver

    info cols
}

# Title

# Hide/Show Fully qualified domain name.
#
# Default:  'off'
# Values:   'on', 'off'
# Flag:     --title_fqdn
title_fqdn="off"

# Kernel

# Shorten the output of the kernel function.
#
# Default:  'on'
# Values:   'on', 'off'
# Flag:     --kernel_shorthand
# Supports: Everything except *BSDs (except PacBSD and PC-BSD)
#
# Example:
# on:  '4.8.9-1-ARCH'
# off: 'Linux 4.8.9-1-ARCH'
kernel_shorthand="on"

# Distro

# Shorten the output of the distro function
#
# Default:  'off'
# Values:   'on', 'tiny', 'off'
# Flag:     --distro_shorthand
# Supports: Everything except Windows and Haiku
distro_shorthand="off"

# Show/Hide OS Architecture.
# Show 'x86_64', 'x86' and etc in 'Distro:' output.
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --os_arch
#
# Example:
# on:  'Univalent GNU/Linux x86_64'
# off: 'Univalent GNU/Linux'
os_arch="on"

# Uptime

# Shorten the output of the uptime function
#
# Default: 'on'
# Values:  'on', 'tiny', 'off'
# Flag:    --uptime_shorthand
#
# Example:
# on:   '2 days, 10 hours, 3 mins'
# tiny: '2d 10h 3m'
# off:  '2 days, 10 hours, 3 minutes'
uptime_shorthand="off"

# Memory

# Show memory percentage in output.
#
# Default: 'off'
# Values:  'on', 'off'
# Flag:    --memory_percent
#
# Example:
# on:   '1801MiB / 7881MiB (22%)'
# off:  '1801MiB / 7881MiB'
memory_percent="on"

# Change memory output unit.
#
# Default: 'mib'
# Values:  'kib', 'mib', 'gib'
# Flag:    --memory_unit
#
# Example:
# kib  '1020928KiB / 7117824KiB'
# mib  '1042MiB / 6951MiB'
# gib: ' 0.98GiB / 6.79GiB'
memory_unit="gib"

# Packages

# Show/Hide Package Manager names.
#
# Default: 'tiny'
# Values:  'on', 'tiny' 'off'
# Flag:    --package_managers
#
# Example:
# on:   '998 (pacman), 8 (flatpak), 4 (snap)'
# tiny: '908 (pacman, flatpak, snap)'
# off:  '908'
package_managers="on"

# Show/Hide total package count
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --show_package_total
#
show_package_total="on"

# Shell

# Show the path to $SHELL
#
# Default: 'off'
# Values:  'on', 'off'
# Flag:    --shell_path
#
# Example:
# on:  '/bin/bash'
# off: 'bash'
shell_path="off"

# Show $SHELL version
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --shell_version
#
# Example:
# on:  'bash 4.4.5'
# off: 'bash'
shell_version="on"

# CPU

# CPU speed type
#
# Default: 'bios_limit'
# Values: 'scaling_cur_freq', 'scaling_min_freq', 'scaling_max_freq', 'bios_limit'.
# Flag:    --speed_type
# Supports: Linux with 'cpufreq'
# NOTE: Any file in '/sys/devices/system/cpu/cpu0/cpufreq' can be used as a value.
speed_type="bios_limit"

# CPU speed shorthand
#
# Default: 'off'
# Values: 'on', 'off'.
# Flag:    --speed_shorthand
# NOTE: This flag is not supported in systems with CPU speed less than 1 GHz
#
# Example:
# on:    'i7-6500U (4) @ 3.1GHz'
# off:   'i7-6500U (4) @ 3.100GHz'
speed_shorthand="off"

# Enable/Disable CPU brand in output.
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --cpu_brand
#
# Example:
# on:   'Intel i7-6500U'
# off:  'i7-6500U (4)'
cpu_brand="on"

# CPU Speed
# Hide/Show CPU speed.
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --cpu_speed
#
# Example:
# on:  'Intel i7-6500U (4) @ 3.1GHz'
# off: 'Intel i7-6500U (4)'
cpu_speed="on"

# CPU Cores
# Display CPU cores in output
#
# Default: 'logical'
# Values:  'logical', 'physical', 'off'
# Flag:    --cpu_cores
# Support: 'physical' doesn't work on BSD.
#
# Example:
# logical:  'Intel i7-6500U (4) @ 3.1GHz' (All virtual cores)
# physical: 'Intel i7-6500U (2) @ 3.1GHz' (All physical cores)
# off:      'Intel i7-6500U @ 3.1GHz'
cpu_cores="logical"

# CPU Temperature
# Hide/Show CPU temperature.
# Note the temperature is added to the regular CPU function.
#
# Default: 'off'
# Values:  'C', 'F', 'off'
# Flag:    --cpu_temp
# Supports: Linux, BSD
# NOTE: For FreeBSD and NetBSD-based systems, you'll need to enable
#       coretemp kernel module. This only supports newer Intel processors.
#
# Example:
# C:   'Intel i7-6500U (4) @ 3.1GHz [27.2°C]'
# F:   'Intel i7-6500U (4) @ 3.1GHz [82.0°F]'
# off: 'Intel i7-6500U (4) @ 3.1GHz'
cpu_temp="C"

# GPU

# Enable/Disable GPU Brand
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --gpu_brand
#
# Example:
# on:  'AMD HD 7950'
# off: 'HD 7950'
gpu_brand="on"

# Which GPU to display
#
# Default: 'all'
# Values:  'all', 'dedicated', 'integrated'
# Flag:    --gpu_type
# Supports: Linux
#
# Example:
# all:
#   GPU1: AMD HD 7950
#   GPU2: Intel Integrated Graphics
#
# dedicated:
#   GPU1: AMD HD 7950
#
# integrated:
#   GPU1: Intel Integrated Graphics
gpu_type="all"

# Resolution

# Display refresh rate next to each monitor
# Default: 'off'
# Values:  'on', 'off'
# Flag:    --refresh_rate
# Supports: Doesn't work on Windows.
#
# Example:
# on:  '1920x1080 @ 60Hz'
# off: '1920x1080'
refresh_rate="on"

# Gtk Theme / Icons / Font

# Shorten output of GTK Theme / Icons / Font
#
# Default: 'off'
# Values:  'on', 'off'
# Flag:    --gtk_shorthand
#
# Example:
# on:  'Numix, Adwaita'
# off: 'Numix [GTK2], Adwaita [GTK3]'
gtk_shorthand="off"

# Enable/Disable gtk2 Theme / Icons / Font
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --gtk2
#
# Example:
# on:  'Numix [GTK2], Adwaita [GTK3]'
# off: 'Adwaita [GTK3]'
gtk2="on"

# Enable/Disable gtk3 Theme / Icons / Font
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --gtk3
#
# Example:
# on:  'Numix [GTK2], Adwaita [GTK3]'
# off: 'Numix [GTK2]'
gtk3="on"

# Enable/Disable Qt Theme / Icons / Font
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --qt
#
# Example:
# on:  'Breeze [Qt], Arc [GTK3]'
# off: 'Arc [GTK3]'
qt="on"

# IP Address

# Website to ping for the public IP
#
# Default: 'http://ident.me'
# Values:  'url'
# Flag:    --ip_host
public_ip_host="http://ident.me"

# Public IP timeout.
#
# Default: '2'
# Values:  'int'
# Flag:    --ip_timeout
public_ip_timeout=2

# Local IP interface
#
# Default: 'auto' (interface of default route)
# Values:  'auto', 'en0', 'en1'
# Flag:    --ip_interface
local_ip_interface=('auto')

# Desktop Environment

# Show Desktop Environment version
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --de_version
de_version="on"

# Disk

# Which disks to display.
# The values can be any /dev/sdXX, mount point or directory.
# NOTE: By default we only show the disk info for '/'.
#
# Default: '/'
# Values:  '/', '/dev/sdXX', '/path/to/drive'.
# Flag:    --disk_show
#
# Example:
# disk_show=('/' '/dev/sdb1'):
#      'Disk (/): 74G / 118G (66%)'
#      'Disk (/mnt/Videos): 823G / 893G (93%)'
#
# disk_show=('/'):
#      'Disk (/): 74G / 118G (66%)'
#
disk_show=('/')

# Disk subtitle.
# What to append to the Disk subtitle.
#
# Default: 'mount'
# Values:  'mount', 'name', 'dir', 'none'
# Flag:    --disk_subtitle
#
# Example:
# name:   'Disk (/dev/sda1): 74G / 118G (66%)'
#         'Disk (/dev/sdb2): 74G / 118G (66%)'
#
# mount:  'Disk (/): 74G / 118G (66%)'
#         'Disk (/mnt/Local Disk): 74G / 118G (66%)'
#         'Disk (/mnt/Videos): 74G / 118G (66%)'
#
# dir:    'Disk (/): 74G / 118G (66%)'
#         'Disk (Local Disk): 74G / 118G (66%)'
#         'Disk (Videos): 74G / 118G (66%)'
#
# none:   'Disk: 74G / 118G (66%)'
#         'Disk: 74G / 118G (66%)'
#         'Disk: 74G / 118G (66%)'
disk_subtitle="mount"

# Disk percent.
# Show/Hide disk percent.
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --disk_percent
#
# Example:
# on:  'Disk (/): 74G / 118G (66%)'
# off: 'Disk (/): 74G / 118G'
disk_percent="on"

# Song

# Manually specify a music player.
#
# Default: 'auto'
# Values:  'auto', 'player-name'
# Flag:    --music_player
#
# Available values for 'player-name':
#
# amarok
# audacious
# banshee
# bluemindo
# clementine
# cmus
# deadbeef
# deepin-music
# dragon
# elisa
# exaile
# gnome-music
# gmusicbrowser
# gogglesmm
# guayadeque
# io.elementary.music
# iTunes
# Music
# juk
# lollypop
# MellowPlayer
# mocp
# mopidy
# mpd
# muine
# netease-cloud-music
# olivia
# playerctl
# pogo
# pragha
# qmmp
# quodlibet
# rhythmbox
# sayonara
# smplayer
# spotify
# strawberry
# tauonmb
# tomahawk
# vlc
# xmms2d
# xnoise
# yarock
music_player="auto"

# Format to display song information.
#
# Default: '%artist% - %album% - %title%'
# Values:  '%artist%', '%album%', '%title%'
# Flag:    --song_format
#
# Example:
# default: 'Song: Jet - Get Born - Sgt Major'
song_format="%artist% - %album% - %title%"

# Print the Artist, Album and Title on separate lines
#
# Default: 'off'
# Values:  'on', 'off'
# Flag:    --song_shorthand
#
# Example:
# on:  'Artist: The Fratellis'
#      'Album: Costello Music'
#      'Song: Chelsea Dagger'
#
# off: 'Song: The Fratellis - Costello Music - Chelsea Dagger'
song_shorthand="off"

# 'mpc' arguments (specify a host, password etc).
#
# Default:  ''
# Example: mpc_args=(-h HOST -P PASSWORD)
mpc_args=()

# Text Colors

# Text Colors
#
# Default:  'distro'
# Values:   'distro', 'num' 'num' 'num' 'num' 'num' 'num'
# Flag:     --colors
#
# Each number represents a different part of the text in
# this order: 'title', '@', 'underline', 'subtitle', 'colon', 'info'
#
# Example:
# colors=(distro)      - Text is colored based on Distro colors.
# colors=(4 6 1 8 8 6) - Text is colored in the order above.
colors=(distro)

# Text Options

# Toggle bold text
#
# Default:  'on'
# Values:   'on', 'off'
# Flag:     --bold
bold="on"

# Enable/Disable Underline
#
# Default:  'on'
# Values:   'on', 'off'
# Flag:     --underline
underline_enabled="on"

# Underline character
#
# Default:  '-'
# Values:   'string'
# Flag:     --underline_char
underline_char="-"

# Info Separator
# Replace the default separator with the specified string.
#
# Default:  ':'
# Flag:     --separator
#
# Example:
# separator="->":   'Shell-> bash'
# separator=" =":   'WM = dwm'
separator=" ->"

# Color Blocks

# Color block range
# The range of colors to print.
#
# Default:  '0', '15'
# Values:   'num'
# Flag:     --block_range
#
# Example:
#
# Display colors 0-7 in the blocks.  (8 colors)
# unifetch --block_range 0 7
#
# Display colors 0-15 in the blocks. (16 colors)
# unifetch --block_range 0 15
block_range=(0 15)

# Toggle color blocks
#
# Default:  'on'
# Values:   'on', 'off'
# Flag:     --color_blocks
color_blocks="on"

# Color block width in spaces
#
# Default:  '3'
# Values:   'num'
# Flag:     --block_width
block_width=5

# Color block height in lines
#
# Default:  '1'
# Values:   'num'
# Flag:     --block_height
block_height=2

# Color Alignment
#
# Default: 'auto'
# Values: 'auto', 'num'
# Flag: --col_offset
#
# Number specifies how far from the left side of the terminal (in spaces) to
# begin printing the columns, in case you want to e.g. center them under your
# text.
# Example:
# col_offset="auto" - Default behaviour of unifetch
# col_offset=7      - Leave 7 spaces then print the colors
col_offset="auto"

# Progress Bars

# Bar characters
#
# Default:  '-', '='
# Values:   'string', 'string'
# Flag:     --bar_char
#
# Example:
# unifetch --bar_char 'elapsed' 'total'
# unifetch --bar_char '-' '='
bar_char_elapsed="-"
bar_char_total="="

# Toggle Bar border
#
# Default:  'on'
# Values:   'on', 'off'
# Flag:     --bar_border
bar_border="on"

# Progress bar length in spaces
# Number of chars long to make the progress bars.
#
# Default:  '15'
# Values:   'num'
# Flag:     --bar_length
bar_length=15

# Progress bar colors
# When set to distro, uses your distro's logo colors.
#
# Default:  'distro', 'distro'
# Values:   'distro', 'num'
# Flag:     --bar_colors
#
# Example:
# unifetch --bar_colors 3 4
# unifetch --bar_colors distro 5
bar_color_elapsed="distro"
bar_color_total="distro"

# Info display
# Display a bar with the info.
#
# Default: 'off'
# Values:  'bar', 'infobar', 'barinfo', 'off'
# Flags:   --memory_display
#          --battery_display
#          --disk_display
#
# Example:
# bar:     '[---=======]'
# infobar: 'info [---=======]'
# barinfo: '[---=======] info'
# off:     'info'
memory_display="off"
battery_display="off"
disk_display="off"

# Backend Settings

# Image backend.
#
# Default:  'ascii'
# Values:   'ascii', 'caca', 'catimg', 'chafa', 'jp2a', 'iterm2', 'off',
#           'pot', 'termpix', 'pixterm', 'tycat', 'w3m', 'kitty', 'ueberzug',
#           'viu'

# Flag:     --backend
image_backend="ascii"

# Image Source
#
# Which image or ascii file to display.
#
# Default:  'auto'
# Values:   'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/'
#           'command output (unifetch --ascii "$(fortune | cowsay -W 30)")'
# Flag:     --source
#
# NOTE: 'auto' will pick the best image source for whatever image backend is used.
#       In ascii mode, distro ascii art will be used and in an image mode, your
#       wallpaper will be used.
image_source="auto"
#image_source="$(unix_no_text)"

# Ascii Options

# Ascii distro
# Which distro's ascii art to display.
#
# Default: 'auto'
# Values:  'auto', 'distro_name'
# Flag:    --ascii_distro
#
# NOTE: AIX, AlmaLinux, Alpine, Alter, Amazon, AmogOS, Anarchy, Android, Antergos, antiX, AOSC OS,
# AOSC OS/Retro, Aperio GNU/Linux, Apricity, Arch, ArchBox, Archcraft, ARCHlabs, ArchMerge,
# ArchStrike, ArcoLinux, Artix, Arya, Asahi, Aster, AsteroidOS, astOS, Bedrock, BigLinux, Bitrig,
# BlackArch, blackPanther, BLAG, BlankOn, BlueLight, Bodhi, bonsai, BSD, BunsenLabs, Cachy OS,
# Calculate, CalinixOS, Carbs, CBL-Mariner, CelOS, Center, CentOS, Chakra, ChaletOS, Chapeau,
# ChonkySealOS, Chrom, Cleanjaro, Clear Linux OS, ClearOS, Clover, Cobalt Linux, Condres, 
# Container Linux by CoreOS, CRUX, Crystal Linux, Cucumber, CutefishOS, CyberOS, dahlia, DarkOs, Darwin,
# Debian, Deepin, DesaOS, Devuan, DracOS, DragonFly, Drauger, Elementary, Elive, EncryptOS, EndeavourOS,
# Endless, Enso, EuroLinux, Exherbo, Exodia Predator OS, Fedora, Feren, Finnix, FreeBSD, FreeMiNT,
# Frugalware, Funtoo, GalliumOS, Garuda, Gentoo, GhostBSD, glaucus, gNewSense, GNOME, GNU,
# GoboLinux, GrapheneOS, Grombyang, Guix, Haiku, HarDClanZ, Hash, Huayra, Hybrid, HydroOS, Hyperbola,
# iglunix, instantOS, IRIX, Itc, januslinux, Kaisen, Kali, Kamuriki, KaOS, KDE, Kibojoe, Kogaion, Korora,
# KrassOS, KSLinux, Kubuntu, LangitKetujuh, LaxerOS, LEDE, LibreELEC, Linspire, Linux, Linux Lite,
# Linux Mint, Linux Mint Old, Live Raizo, LMDE, Lubuntu, Lunar, mac, Mageia, MagpieOS, Mandriva,
# Manjaro, MassOS, MatuusOS, Maui, Mer, Minix, MIRACLE LINUX, Moevalent, MX, Namib, Neptune, NetBSD, Netrunner,
# Nitrux, NixOS, NNLinux, NomadBSD, Nurunner, NuTyX, Obarun, OBRevenge, Open Source Media Center,
# OpenBSD, openEuler, OpenIndiana, openmamba, OpenMandriva, OpenStage, openSUSE, openSUSE Leap,
# Tumbleweed, OpenWrt, open.Yellow.os, OPNsense, Oracle, orchid, OS Elbrus, PacBSD, Parabola, parch,
# Pardus, Parrot, Parsix, PCBSD, PCLinuxOS, pearOS, Pengwin, Pentoo, Peppermint, Pisi, PNM Linux, Pop!_OS,
# Porteus, PostMarketOS, Profelis SambaBOX, Proxmox, PuffOS, Puppy, PureOS, Q4OS, Qubes, Qubyt, Quibian, 
# Radix, Raspbian, ravynOS, Reborn OS, Red Star, Redcore, Redhat, Refracted Devuan, Regata,
# Regolith, RhaymOS, rocky, Rosa, Sabayon, sabotage, Sailfish, SalentOS, Sasanqua, Scientific, semc,
# Septor, Serene, SharkLinux, ShastraOS, Siduction, SkiffOS, Slackware, SliTaz, SmartOS, Soda, Solus,
# Source Mage, Sparky, Star, SteamOS, Sulin, SunOS, SwagArch, t2, Tails, TeArch, TorizonCore, Trisquel, Twister,
# Ubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Sway,
# Ubuntu Touch, Ubuntu Unity, Ubuntu-GNOME, ubuntu_old02, Ultramarine Linux, Univalent, Univention, Uos,
# UrukOS, uwuntu, Vanilla, Venom, VNux, Void, VzLinux, wii-linux-ngx, Windows, Windows 10, Windows 11,
# XFerience, Xubuntu, yiffOS, Zorin have ascii logos.

# NOTE: arch, dragonfly, Fedora, LangitKetujuh, nixos, redhat, Ubuntu have 'old' logo variants, use
# {distro}_old to use them.

# NOTE: alpine, android, aoscosretro, arch, arcolinux, artix, CalinixOS, centos, cleanjaro, crux,
# debian, dragonfly, elementary, fedora, freebsd, garuda, gentoo, guix, haiku, hyperbola, linuxlite,
# linuxmint, kali, mac, mageia, manjaro, mx, netbsd, nixos, openbsd, opensuse, orchid, parabola, popos,
# postmarketos, pureos, Raspbian, rocky, slackware, sunos, ubuntu, void have 'small' logo variants,
# use {distro}_small to use them.
ascii_distro="auto"

# Ascii Colors
#
# Default:  'distro'
# Values:   'distro', 'num' 'num' 'num' 'num' 'num' 'num'
# Flag:     --ascii_colors
#
# Example:
# ascii_colors=(distro)      - Ascii is colored based on Distro colors.
# ascii_colors=(4 6 1 8 8 6) - Ascii is colored using these colors.
ascii_colors=(distro)

# Bold ascii logo
# Whether or not to bold the ascii logo.
#
# Default: 'on'
# Values:  'on', 'off'
# Flag:    --ascii_bold
ascii_bold="on"

# Image Options

# Image loop
# Setting this to on will make unifetch redraw the image constantly until
# Ctrl+C is pressed. This fixes display issues in some terminal emulators.
#
# Default:  'off'
# Values:   'on', 'off'
# Flag:     --loop
image_loop="off"

# Thumbnail directory
#
# Default: '~/.cache/thumbnails/unifetch'
# Values:  'dir'
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/unifetch"

# Crop mode
#
# Default:  'normal'
# Values:   'normal', 'fit', 'fill'
# Flag:     --crop_mode
#
# See this wiki page to learn about the fit and fill options.
# https://github.com/dylanaraps/neofetch/wiki/What-is-Waifu-Crop%3F
crop_mode="normal"

# Crop offset
# Note: Only affects 'normal' crop mode.
#
# Default:  'center'
# Values:   'northwest', 'north', 'northeast', 'west', 'center'
#           'east', 'southwest', 'south', 'southeast'
# Flag:     --crop_offset
crop_offset="center"

# Image size
# The image is half the terminal width by default.
#
# Default: 'auto'
# Values:  'auto', '00px', '00%', 'none'
# Flags:   --image_size
#          --size
image_size="auto"

# Catimg block size.
# Control the resolution of catimg.
#
# Default: '2'
# Values:  '1', '2'
# Flags:   --catimg_size
catimg_size="2"

# Gap between image and text
#
# Default: '3'
# Values:  'num', '-num'
# Flag:    --gap
gap=3

# Image offsets
# Only works with the w3m backend.
#
# Default: '0'
# Values:  'px'
# Flags:   --xoffset
#          --yoffset
yoffset=0
xoffset=0

# Image background color
# Only works with the w3m backend.
#
# Default: ''
# Values:  'color', 'blue'
# Flag:    --bg_color
background_color=

# Misc Options

# Stdout mode
# Turn off all colors and disables image backend (ASCII/Image).
# Useful for piping into another command.
# Default: 'off'
# Values: 'on', 'off'
stdout="off"

Verbose log

full log https://gist.github.com/mutageneral/d9f057beab6d04937676949a19ff47d4

I belive the error is in this section:

+ info Font font
+ [[ -n font ]]
+ subtitle=Font
+ unset -v prin
+ get_font
+ name=gtk-font-name
+ gsettings=font-name
+ gconf=font_theme
+ xfconf=/Gtk/FontName
+ kde=font
+ fly=DefaultFont
+ lxqt=font
+ qt5ct=general
+ get_style
+ unset qt_theme gtk2_theme gtk3_theme theme path
+ [[ -n :0 ]]
+ [[ Linux != \M\a\c\ \O\S\ \X ]]
+ [[ Linux != \m\a\c\O\S ]]
+ (( de_run != 1 ))
+ [[ on == on ]]
+ de=Plasma
+ case $de in
+ kde_config_dir
+ [[ -n /home/ordici/.config ]]
+ return
+ [[ -f /home/ordici/.config/kdeglobals ]]
+ kde_config_file=/home/ordici/.config/kdeglobals
++ grep '^font' /home/ordici/.config/kdeglobals
+ qt_theme='font=MxPlus IBM VGA 8x16,11,-1,5,50,0,0,0,0,0'
+ qt_theme='MxPlus IBM VGA 8x16,11,-1,5,50,0,0,0,0,0'
++ grep '^font' /home/ordici/.config/kdeglobals
+ kde_theme='font=MxPlus IBM VGA 8x16,11,-1,5,50,0,0,0,0,0'
+ kde_theme='MxPlus IBM VGA 8x16,11,-1,5,50,0,0,0,0,0'
+ [[ font == \f\o\n\t ]]
+ kde_font_size=11,-1,5,50,0,0,0,0,0
+ kde_font_size=11
+ kde_theme='MxPlus IBM VGA 8x16 0 11'
+ [[ font == \c\u\r\s\o\r\T\h\e\m\e ]]
+ kde_theme='MxPlus IBM VGA 8x16 0 11 [KDE], '
+ [[ -z '' ]]
+ [[ -n '' ]]
+ [[ -f /home/ordici/.gtkrc-2.0 ]]
++ grep '^[^#]*gtk-font-name' /home/ordici/.gtkrc-2.0
+ gtk2_theme='gtk-font-name="MxPlus IBM VGA 8x16,  11"'
+ gtk2_theme='"MxPlus IBM VGA 8x16,  11"'
+ [[ -z '' ]]
+ type -p dump_xsettings
++ dump_xsettings
++ sed -n 's,^Gtk/FontName ,,p'
No current owner for _XSETTINGS_S0 selection
+ gtk3_theme=
+ [[ -z '' ]]
+ [[ -f /home/ordici/.config/gtk-3.0/settings.ini ]]
++ grep '^[^#]*gtk-font-name' /home/ordici/.config/gtk-3.0/settings.ini
+ gtk3_theme='gtk-font-name=MxPlus IBM VGA 8x16,  11'
+ gtk3_theme='MxPlus IBM VGA 8x16,  11'
+ [[ qt5ct == \q\t\5\c\t ]]
+ [[ -f /home/ordici/.config/qt5ct/qt5ct.conf ]]
++ grep '^general' /home/ordici/.config/qt5ct/qt5ct.conf
+ qt_theme='general=@Variant(\0\0\0@\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)'
+ qt_theme='@Variant(\0\0\0@\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)'
+ [[ general == \g\e\n\e\r\a\l ]]
+ qt_theme='@Variant(\0\0\0@\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)'
+ qt_theme='@Variant(\0\0\0@\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)'
+ qt_theme='\0\0\0@\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)'
+ qt_theme='\0\0\0@\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10'
+ qt5ct_font_name='\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10'
+ qt5ct_font_name='\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36'
++ printf %b '\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36'
/home/ordici/bin/unifetch: line 3826: warning: command substitution: ignored null byte in input
+ qt5ct_font_name='&MxPlus IBM VGA 8x16'
+ qt5ct_font_name='&MxPlus IBM VGA 8x16'
+ local 'pre_size=\0\0\0&\0M\0x\0P\0l\0u\0s\0 \0I\0\x42\0M\0 \0V\0G\0\x41\0 \0\x38\0x\0\x31\0\x36@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10'
+ local 'pre_size=(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10'
++ printf %b '(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10'
++ od -An -tu1 -N2
+ raw_size=('  40   0')
+ IFS=' '
+ local raw_size
/home/ordici/bin/unifetch: line 3837: 40   0: syntax error in expression (error token is "0")
+ printf '\e[?25h\e[?7h'
hayatehay commented 1 year ago

Running on Kunivalent 23.10.1 with the same config files (~/.config/unifetch/config.conf and ~/.xinitrc) did not show such problems.

unifetch-issue42

It could be a problem specific to openSUSE, so I'll give it a try there as well (but please forgive me for my report being delayed due to the midterm exams at school next week).

Verbose log is here → unifetch-issue42-kunivalent-23.10.1.log (GitHub Gist)