Pi-Tool icon indicating copy to clipboard operation
Pi-Tool copied to clipboard

Support a multiple partition system

Open chevalier-m opened this issue 5 years ago • 3 comments

Hello.

My pi uses an external usb drive as the main drive, which is partitioned in 3 partitions, respectively mounted in / /home and /opt. The installation of the .deb file fails due to: error creating hard link './opt/Cooler Master Pi Tool/public/cm_logo_outline.png': Invalid cross-device link I've tried placing the .deb file in every partition but it just doesn't do the trick, I suspect the creation of a hardlink is responsible in between /usr/bin/pi-something and /opt/Cooler Master Stuff/etc.

It would be great to fix this as it probably is not an uncommon setup, and I am wondering the reason behind the usage of hardlinking in our case, especially directly in the dpkg process.

Thanks.

EDIT: More logs:

Get:1 /tmp/pi-tool.deb pi-tool armhf 0.3.1 [71,5 MB]
(Reading database ... 159764 files and directories currently installed.)
Preparing to unpack /tmp/pi-tool.deb ...
Unpacking pi-tool (0.3.1) ...
dpkg: error processing archive /tmp/pi-tool.deb (--unpack):
 error creating hard link './opt/Cooler Master Pi Tool/public/cm_logo_outline.png': Invalid cross-device link
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
 /tmp/pi-tool.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

PS: Releasing the binaries themselves could be a solution as well.

chevalier-m avatar Jan 25 '21 17:01 chevalier-m

On the other hand, the installer prints out a successful message even if the installation errors out, would be great to forward the return code and inform the user that something actually has gone wrong.

chevalier-m avatar Jan 25 '21 17:01 chevalier-m

You could always extract the .deb via dpkg-deb --extract /path/to/deb, install potential dependencies and try to run the binary.

C0D3-M4513R avatar Jan 25 '21 18:01 C0D3-M4513R

That's right. But I really believe releasing the binary in a conventionnal process would be a sweed addition, for everyone not running apt for instance, other OSes, scripting purposes, and so on. The fact that the release only focuses on one arm platform should reduce the hassle as well.

chevalier-m avatar Feb 02 '21 08:02 chevalier-m