Hello everyone,
I’m running a Raspberry Pi 4 with DietPi (Debian trixie, 64-bit / arm64), and I recently ran into issues with Node.js/npm.
While troubleshooting, I noticed that my system has both arm64 and armhf architectures enabled:
In addition, there are several :armhf packages installed, including essential libraries such as:
libc6:armhf
libgcc-s1:armhf
When I tried to remove them, apt correctly prevented it because they are marked as essential packages.
My questions:
Is it normal/expected for DietPi to have both arm64 and armhf architectures enabled?
Is there an official recommendation on whether armhf should be kept or removed?
If cleanup is recommended: what is the safe way to do this without breaking the system?
Can this multiarch setup cause issues with Node.js/npm (e.g. conflicts between apt packages and NodeSource installations)?
Background:
I encountered a broken npm installation (missing modules) and started investigating possible architecture conflicts.
Thanks in advance for your help!
That has nothing to do with DietPi. I don’t think you’re using a real 64-bit system. It’s probably a 32-bit image with a 32-bit userland and a kernel that’s being forced to run in 64-bit mode via a configuration parameter.
Unfortunately, you forgot to fill in the troubleshooting template and simply deleted it. Otherwise, we would already have a bit more information about your system. Could you please fill in the following?
Required
DietPi version | cat /boot/dietpi/.version
Distro version | echo $G_DISTRO_NAME $G_RASPBIAN
Kernel version | uname -a
Architecture | dpkg --print-architecture
SBC model | echo $G_HW_MODEL_NAME or (EG: RPi3)
And if it is indeed a real 64-bit image, you added the 32-bit architecture manually yourself.