Closed Bug 1588166 Opened 2 years ago Closed 1 year ago

CentOS 8: missing python-dbus package

Categories

(Firefox Build System :: Bootstrap Configuration, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(firefox78 fixed)

RESOLVED FIXED
mozilla78
Tracking Status
firefox78 --- fixed

People

(Reporter: WeirdAl, Assigned: WeirdAl)

References

()

Details

Attachments

(2 files)

Attached file Dockerfile

The python-dbus package is currently unavailable for CentOS 8. I don't know anything about it. Is there something that can be done?

Steps to reproduce:
(1) Download the attached Dockerfile to a new directory.
(2) cd to that directory.
(3) podman build .

Executing as root: dnf install -y alsa-lib-devel dbus-glib-devel glibc-static gtk2-devel libstdc++-static libXt-devel nasm pulseaudio-libs-devel wireless-tools-devel yasm gcc-c++ gtk3-devel python-dbus
Last metadata expiration check: 0:02:59 ago on Fri Oct 11 17:30:46 2019.
No match for argument: glibc-static
No match for argument: libstdc++-static
No match for argument: nasm
No match for argument: wireless-tools-devel
No match for argument: yasm
Package gcc-c++-8.2.1-3.5.el8.x86_64 is already installed.
No match for argument: python-dbus
Error: Unable to find a match
Traceback (most recent call last):
File "bootstrap.py", line 194, in <module>
sys.exit(main(sys.argv))
File "bootstrap.py", line 185, in main
dasboot.bootstrap()
File "/tmp/tmpONP2PU/mozboot/bootstrap.py", line 449, in bootstrap

File "/tmp/tmpONP2PU/mozboot/centosfedora.py", line 125, in install_browser_packages
File "/tmp/tmpONP2PU/mozboot/centosfedora.py", line 139, in ensure_browser_packages
File "/tmp/tmpONP2PU/mozboot/base.py", line 366, in dnf_install
File "/tmp/tmpONP2PU/mozboot/base.py", line 354, in run_as_root
File "/usr/lib64/python2.7/subprocess.py", line 190, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '[u'dnf', u'install', u'-y', u'alsa-lib-devel', u'dbus-glib-devel', u'glibc-static', u'gtk2-devel', u'libstdc++-static', u'libXt-devel', u'nasm', u'pulseaudio-libs-devel', u'wireless-tools-devel', u'yasm', u'gcc-c++', u'gtk3-devel', u'python-dbus']' returned non-zero exit status 1
Error: error building at STEP "RUN /usr/bin/python2.7 bootstrap.py --no-interactive --application-choice=browser": error while running runtime: exit status 1

After a couple of changes to the Dockerfile:
RUN dnf install -y 'dnf-command(config-manager)'
RUN dnf config-manager --set-enabled PowerTools
RUN dnf install -y epel-release python2

it gets closer, but still misses python-dbus and wireless-tools-devel.

As far as I can see the need for python-dbus probably went away in Bug 1328153 and Bug 1464834

(In reply to Alex Vincent [:WeirdAl] from comment #1)

it gets closer, but still misses python-dbus and wireless-tools-devel.
Trinity R14 has wireless-tools-devel for CentOS 8

Okay, so if I remove those three lines (2 in centosfedora.py, 1 in debian.py) then I should be good to go?

(In reply to Alex Vincent [:WeirdAl] from comment #4)

Okay, so if I remove those three lines (2 in centosfedora.py, 1 in debian.py) then I should be good to go?
Unless you can see use of dbus in python anywhere, I'm no expert on use of dbus in python.

OpenSUSE also have one:
https://searchfox.org/mozilla-central/source/python/mozboot/mozboot/opensuse.py#38

I know absolutely nothing about python-dbus. Not even if Phabricator would catch a configuration bustage from me removing those lines...

See bug 1325272 and bug 981146 why python-dbus is installed by bootstrap. The commands running that code, are now using python3, though.

So converting to use the python3-dbus packages should be safe then.

(In reply to Mike Hommey [:glandium] from comment #7)

See bug 1325272 and bug 981146 why python-dbus is installed by bootstrap. The commands running that code, are now using python3, though.

The notifier now uses notify-send, see Bug 1328153

Assignee: nobody → ajvincent
Status: NEW → ASSIGNED

Also see Bug 1330023 about switching bootstrap to require the correct packages for notify-send instead of python-dbus

Phabricator assigned this to me just because I jumped the gun and tried to figure out some kind of fix, one I can't test until tomorrow anyway. I have no idea what I'm really doing.

OK, a CentOS 8 build of mozilla-central with the python-dbus code references removed compiles and launches cleanly. So: how should I really do this patch?

Attachment #9147504 - Attachment description: Summary: Replace python-dbus with python3-dbus. → Remove python-dbus build dependency.
Attachment #9147504 - Attachment description: Remove python-dbus build dependency. → Remove python-dbus build dependency. (notify-send replaced it and it's no longer needed.)
Pushed by rmaries@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/abd60784e8c3
Remove python-dbus build dependency.  (notify-send replaced it and it's no longer needed.) r=glandium
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla78
You need to log in before you can comment on or make changes to this bug.