boinc-manager needs /var/lib/boinc-client to launch
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
boinc (Debian) |
New
|
Unknown
|
|||
boinc (Ubuntu) |
Opinion
|
Undecided
|
Unassigned |
Bug Description
This stems from Bug #1250652
https:/
"When launching BOINC Manager from the Gnome menu it produces an error that it is unable to find /var/lib/
This is solved by removing the Path= variable from the .desktop file (and logging out/in).
[Desktop Entry]
Type=Application
Version=1.0
Exec=/usr/
Path=/var/
Icon=boincmgr-32
Categories=
Name=BOINC Manager
GenericName=BOINC monitor and control utility
GenericName[
GenericName[
GenericName[
Comment=Configure or monitor a BOINC core client
Comment[
Comment[de]=BOINC Basis Client konfigurieren oder überwachen
Comment[
HOWEVER:
This exists so that boincmgr can connect to the client automatically.
A better solution was a simple:
mkdir /var/lib/
Then boincmgr does not complain.
Unless there is some intelligence that the menu system can use to ignore the Path= if the directory does not exist, then it might be worth adding an empty /var/lib/
This is reproducible by installing boinc-manager with --no-install-
AFAIK upstream BOINC doesn't care about Gnome, Unity, etc. so it needs to be fixed Debian/Ubuntu end.
apport claims I'm not running the official version (I am) so that didn't work.
$ dpkg -s boinc-manager
Package: boinc-manager
Status: install ok installed
Priority: optional
Section: x11
Installed-Size: 4019
Maintainer: Ubuntu Developers <email address hidden>
Architecture: amd64
Source: boinc
Version: 7.0.24+dfsg-1
Depends: libc6 (>= 2.15), libgcc1 (>= 1:4.1.1), libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>= 2.10.0), libnotify4 (>= 0.7.0), libsqlite3-0 (>= 3.5.9), libstdc++6 (>= 4.1.1), libwxbase2.8-0 (>= 2.8.12.1), libwxgtk2.8-0 (>= 2.8.12.1)
Recommends: boinc-client, ia32-libs-gtk
Suggests: libgl1-mesa-glx, libxt6
Will look into this further and send upstream asap.
Changed in boinc (Debian): | |
status: | Unknown → New |
Manually creating a /var/lib/ boinc-client dir solves the bug, but if this is done by the package itself at install I wonder if apt will see this as a conflict with the boinc-client package, since both would create (and thus "own", apt-wise) the same dir.
Also, in boinc-client this dir is owned by a "boinc:boinc" user and group, so boinc-manager would probably have to mimic that too, which may lead to more conflicts.
Does anyone know how apt deals with packages that creates the same users, groups and dirs? A clumsy solution would be to create a "boinc-common" base package that creates this "infrastructure", and set both boinc-client and boinc-manager to depend on that.
Another completely different approach, and perhaps a better solution: if the problem is only the .desktop file that contains a Path= entry pointing to an nonexisting dir, what if instead of a Path= entry we use boincmgr --datadir /var/lib/ boinc-client in the Exec= entry? Gnome/Unity would not complain anymore, but would boincmgr complain if we use a nonexisting dir as datadir? Would it (a) bork (b) create the dir or (c) work just fine ? If (c), then problem solved. (b) is fine, as long as it doesn't conflict if/when boinc-client is installed later (will it change the ownership to boinc:boinc?). But, if (a), we have a problem :P