I'm reporting a series of issues encountered while installing the PiSCSI v25.12.01 on a clean v24.04.01 installation, since we dont have a versions of PiSCSI-v25.12.01-armhf-lite.zip, to install. The installation via easyinstall.sh fails due to recent changes in Python package management, missing implicit dependencies, and version mismatches.
Environment:
- Hardware: Raspberry Pi 2 Model B (ARMv7)
- PiSCSI Board: 2.4a
- OS: Raspberry Pi OS Bullseye (Debian 11)
- PISCSI - v25.12.01
- Python version: 3.9.2
- Initial Pip version: 20.x (Updated to 25.3 during troubleshooting)
Identified Issues & Logs:
- Protobuf Version Mismatch (Critical) The latest protobuf (6.x) is automatically installed, but it is incompatible with the pre-generated _pb2.py files in the project.
- Error Log: TypeError: Descriptors cannot be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
- Solution: Force downgrade to protobuf==3.20.3.
- Missing Implicit Dependency (six) The python-pam module requires six to function, but it is not explicitly listed in requirements.txt, leading to a crash on startup.
- Error Log: File "/.../site-packages/pam/__internals.py", line 2, in import six ModuleNotFoundError: No module named 'six'
- Solution: Explicitly add six to the requirements.
- Venv Bootstrap Failure (ensurepip) The standard python3 -m venv venv command failed to bootstrap the environment correctly on this OS/Arch combination.
- Error Log: The virtual environment was not created successfully because ensurepip is not available.
- Solution: Created venv using --without-pip and installed pip manually via curl https://bootstrap.pypa.io/get-pip.py | python3.
- Pip Indexing Issues Older versions of Pip (standard on Bullseye) failed with IndexError when parsing the current requirements.txt.
- Solution: Upgraded Pip globally to 25.3 before environment setup.
Suggested Fixes for the Repository:
- Hard-pin protobuf==3.20.3 in python/web/requirements.txt.
- Add six and python-pam as explicit dependencies in requirements.txt.
- Update easyinstall.sh to ensure pip, setuptools, and wheel are upgraded inside the venv before installing other requirements.
Steps to Reproduce:
- Clean install using 2024-04-30-PiSCSI-v24.04.01-armhf-lite.zip with BalenaEtcher
- Configure the OLED option
- Before update version 24.04.01 works like a charm
- Attempted to install the new versions using the script
cd ~/piscsi
git pull
git checkout v25.12.01
./easyinstall.sh
- Observed failures during the environment setup and subsequent service crashes.
I'm reporting a series of issues encountered while installing the PiSCSI v25.12.01 on a clean v24.04.01 installation, since we dont have a versions of PiSCSI-v25.12.01-armhf-lite.zip, to install. The installation via easyinstall.sh fails due to recent changes in Python package management, missing implicit dependencies, and version mismatches.
Environment:
Identified Issues & Logs:
Suggested Fixes for the Repository:
Steps to Reproduce: