Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 208380 - sys-cluster/heartbeat - make management GUI optional
Summary: sys-cluster/heartbeat - make management GUI optional
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Lowest enhancement (vote)
Assignee: Gentoo Cluster Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-01 03:01 UTC by Jerry McDonald
Modified: 2011-10-18 17:29 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch with the changes proposed in the bug report; update for new gentoo bindnow-flags methodology (heartbeat.patch,1.49 KB, patch)
2008-04-25 14:54 UTC, Jerry McDonald
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jerry McDonald 2008-02-01 03:01:40 UTC
Many server environments are "headless" systems without need for an X-server.  The current ebuilds for heartbeat IMO incorrectly force a pygtk dependency when the "management" USE flag is enabled.  The "management" use flag is used to pass the "--enable-mgmtd" flag to configure when building the heartbeat package.  This instructs the build to add the "mgmtd" program, which lets the server be administered (remotely with headless systems) with the haclient.py GUI (which is also built).  However, on a headless system, because of the forced dependency, the emerge adds 32 unnecessary packages, and ultimately fails with errors about package dependencies not being built with the "X" use flag.  The pygtk dependency is completely unnecessary for the mgmtd program to be added to the server, and removing it from the ebuild allows the emerge to complete without any unnecessary packages, or compile failures!

I believe the ebuild designer has incorrectly assumed that anyone who wants to run the GUI will only run it on the server being administered.  The pygtk dependency is indeed required for the GUI (but not for the server-side mgmtd!).  I cannot speak for others, but this is the second cluster environment I've built, which is headless and administered remotely, and has run afoul of this issue.  I can only assume that there are other server administrators who also run "headless" servers, who could also benefit from the following proposed fix:

I believe all ebuilds should be modified to remove the ">=dev-python/pygtk-2.4" dependency for the "management" USE flag (the build proceeds just fine without these dependencies).  Then a new USE flag (perhaps "management-gui"?) be added for the sole purpose of forcing the pygtk dependency to allow the GUI to be run locally.  The ebuild could then emit a warning when built with "management" and without "management-gui" that "management-gui" is required to run the GUI locally.

One other minor nit:  the "management" flag should also force the addition of the "haclient" group.  The GUI fails to connect to the server unless the user is a member of the "haclient" group.
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2008-02-01 08:43:39 UTC
Something required for properly working application is not "incorrectly forcing a  dependency." Fixing summary accordingly.
Comment 2 Jerry McDonald 2008-02-01 14:56:06 UTC
I don't agree.  I've got to go modify the ebuild and remove the dependency to be able to build a "properly working application", and I doubt others will know they can do this.  Unfortunately, the heartbeat developer has decided to put both the GUI and the management daemon under the same configure option, so we really don't have any way of "making the management GUI optional".  I think your title change and priority adjustments relegate this bug to something that cannot and will not get done.  If you don't think my bug report is valid, or of any use to others, just delete it.
Comment 3 Wolfram Schlich (RETIRED) gentoo-dev 2008-02-06 09:20:54 UTC
Jerry, I'll try to update my 2.1.3 ebuild at
http://overlays.gentoo.org/dev/wschlich/browser/testing/sys-cluster/heartbeat
in order to reflect the change you proposed. Thanks!
Comment 4 Jerry McDonald 2008-02-06 09:53:57 UTC
(In reply to comment #3)
> Jerry, I'll try to update my 2.1.3 ebuild at
> http://overlays.gentoo.org/dev/wschlich/browser/testing/sys-cluster/heartbeat
> in order to reflect the change you proposed. Thanks!
> 

Wolfram,

Thanks for looking at this.  I'm all set - I just hack the ebuild for my use - but maybe your changes will help someone else out.  I hope so!
Comment 5 Jerry McDonald 2008-04-25 14:54:47 UTC
Created attachment 150957 [details, diff]
Patch with the changes proposed in the bug report; update for new gentoo bindnow-flags methodology
Comment 6 WOLfgang Schricker 2009-05-12 21:34:00 UTC
(In reply to comment #5)
> Created an attachment (id=150957)

Hello, if I understand aright, on "real" cluster nodes I install with "+management -management-gui". On a X-workstation I must have "sys-cluster/heartbeat -management +management-gui" without a relevant 'ha.cf'?
Comment 7 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2011-10-18 17:29:54 UTC
+  18 Oct 2011; Kacper Kowalik <xarthisius@gentoo.org> -heartbeat-1.2.5.ebuild,
+  -heartbeat-1.2.5-r1.ebuild, -heartbeat-2.0.7-r2.ebuild,
+  -files/heartbeat-2.0.7-update-resources-failcount.patch,
+  -heartbeat-2.0.8.ebuild, -files/heartbeat-2.0.8-asneeded.patch,
+  -files/heartbeat-2.0.8-crm-assert.patch,
+  -files/heartbeat-2.0.8-crm-leaks.patch, -files/heartbeat-2.0.8-delay.patch,
+  -files/heartbeat-2.0.8-glibc.patch, -files/heartbeat-2.0.8-install_fix.patch,
+  -heartbeat-3.0.4-r1.ebuild:
+  Drop ancient and unusable versions of heartbeat-{1,2} since we have
+  heartbeat-3 stable