Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1695713 - HP plugin does not install on Silverblue [NEEDINFO]
Summary: HP plugin does not install on Silverblue
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: hplip
Version: 29
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Zdenek Dohnal
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-04-03 16:31 UTC by Marek Kašík
Modified: 2019-04-08 08:21 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
zdohnal: needinfo? (walters)


Attachments (Terms of Use)

Description Marek Kašík 2019-04-03 16:31:21 UTC
Description of problem:
When trying to install HP plugin for HP LaserJet P1006 it fails because it can not write into /usr/lib/ which is readonly.
It should store the data and libraries somewhere in /var/ (maybe /var/opt/hplip/) and access them there.


Version-Release number of selected component (if applicable):
hplip-3.18.12-6


How reproducible:
Always


Steps to Reproduce:
1. hp-plugin -i on Silverblue


Actual results:
"error: Plugin installation failed"


Expected results:
The installation suceed


Additional info:
This was originally reported here: https://teams.fedoraproject.org/project/silverblue/us/45

Comment 1 Zdenek Dohnal 2019-04-04 07:45:40 UTC
Hi Marek!

thank you for reporting the issue! Unfortunately, IMO it is not possible to solve it in hplip open-sourced code.

What really happens during plugin installation is that hp-plugin just download .run file which is in fact python script + proprietary shared libraries, and runs the python script, which tries to put libraries in predefined places (predefined only in that outside script) - and if it fails, it cleans up after itself (so I cannot even try to put the libraries into different places - they are gone at the time when processing is back in open-sourced hplip) and returns only true/false into open sourced hplip...

Is not there any way how to solve it on Silverblue side or in packaging? (like defining some %ghost files with libraries names where libraries should be...)

Comment 2 Zdenek Dohnal 2019-04-05 08:36:37 UTC
Hi Colin and Owen!

I do not have any experience with Fedora Silverblue and I was told you are right people to ask - would you mind helping me with the issue? Is there a way how to add these proprietary shared libraries into dirs where hplip expects them, because open-sourced hplip does not have any power to influence where downloaded script wants to put shared libraries?

hp-plugin does this:
- downloads .run file
- run 'sh .run file'

Plugin itself is python script+config file with paths+shared libs, python script tries to put libraries into paths defined in config file.

Comment 3 Colin Walters 2019-04-05 13:12:22 UTC
It needs to drop content in `/opt` (which is really `/var/opt` on OSTree systems), or `/usr/local/` (`/var/usrlocal` on OSTree systems) etc.
If it needs to enable systemd units, that still goes in `/etc.

Comment 4 Zdenek Dohnal 2019-04-08 08:21:16 UTC
(In reply to Colin Walters from comment #3)
> It needs to drop content in `/opt` (which is really `/var/opt` on OSTree
> systems), or `/usr/local/` (`/var/usrlocal` on OSTree systems) etc.
> If it needs to enable systemd units, that still goes in `/etc.

That's the problem, I cannot choose where to put content, because it is done in external (to which I do not have access) script with hard-coded paths. Is there a way how can I put those libraries where hplip expects them?


Note You need to log in before you can comment on or make changes to this bug.