Skip to content

Conversation

@rzhao271
Copy link
Collaborator

This PR fixes #17142.

It's still in a real WIP state, though.
Based off of https://source.chromium.org/chromium/chromium/src/+/main:chrome/installer/linux/rpm/.

Questions:

  1. Do we need to port the update script?
  2. Is the requires field really supposed to have such a long list?

A screenshot showing the requires field of the rpm package spec with an auto-generated long list of dependencies

@rzhao271 rzhao271 self-assigned this Feb 18, 2022
@rzhao271 rzhao271 requested a review from deepak1556 February 18, 2022 20:45
@rzhao271 rzhao271 force-pushed the rzhao271/rpm-dependencies branch from 9d59930 to 6c1006f Compare February 19, 2022 02:03
@deepak1556 deepak1556 added this to the March 2022 milestone Feb 21, 2022
@ferdnyc
Copy link
Contributor

ferdnyc commented Feb 28, 2022

To answer the second question, it is not outside the realm of possibility. Here's the requires list for gnome-shell-41.4-1.fc35.x86_64:

$ rpm -q --requires gnome-shell
/usr/bin/python3
/usr/bin/sh
accountsservice-libs(x86-64)
at-spi2-atk(x86-64)
bolt(x86-64)
control-center
gdm-libs(x86-64)
geoclue2-libs(x86-64)
gjs(x86-64) >= 1.69.2
glib2(x86-64) >= 2.56.0
gnome-bluetooth(x86-64) >= 1:3.9.0
gnome-desktop3(x86-64) >= 3.35.91
gnome-settings-daemon(x86-64) >= 3.37.1
gobject-introspection(x86-64) >= 1.49.1
gsettings-desktop-schemas(x86-64) >= 41~alpha
gstreamer1(x86-64) >= 1.4.5
gstreamer1-plugins-good(x86-64)
gtk3(x86-64) >= 3.15.0
gtk4(x86-64) >= 4.0.0
highcontrast-icon-theme
ibus(x86-64) >= 1.5.2
libGLESv2.so.2()(64bit)
libX11.so.6()(64bit)
libXfixes.so.3()(64bit)
libatk-1.0.so.0()(64bit)
libatk-bridge-2.0.so.0()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.28)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.33)(64bit)
libc.so.6(GLIBC_2.34)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libcairo.so.2()(64bit)
libecal-2.0.so.1()(64bit)
libedataserver-1.2.so.26()(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libgcc_s.so.1(GCC_3.3.1)(64bit)
libgcr-base-3.so.1()(64bit)
libgdk-3.so.0()(64bit)
libgdk_pixbuf-2.0.so.0()(64bit)
libgio-2.0.so.0()(64bit)
libgirepository-1.0.so.1()(64bit)
libgjs.so.0()(64bit)
libglib-2.0.so.0()(64bit)
libgnome-autoar-0.so.0()(64bit)
libgnome-desktop-3.so.19()(64bit)
libgnome-shell-menu.so()(64bit)
libgnome-shell.so()(64bit)
libgnomekbd
libgobject-2.0.so.0()(64bit)
libgraphene-1.0.so.0()(64bit)
libgtk-3.so.0()(64bit)
libgtk-4.so.1()(64bit)
libgweather(x86-64) >= 40~alpha
libical-glib.so.3()(64bit)
libjson-glib-1.0.so.0()(64bit)
libjson-glib-1.0.so.0(libjson-glib-1.0.so.0)(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libm.so.6(GLIBC_2.29)(64bit)
libmutter-9.so.0()(64bit)
libmutter-clutter-9.so.0()(64bit)
libmutter-cogl-9.so.0()(64bit)
libmutter-cogl-pango-9.so.0()(64bit)
libnm.so.0()(64bit)
libnm.so.0(libnm_1_0_0)(64bit)
libnm.so.0(libnm_1_4_0)(64bit)
libnma(x86-64)
libpango-1.0.so.0()(64bit)
libpangocairo-1.0.so.0()(64bit)
libpolkit-agent-1.so.0()(64bit)
libpolkit-gobject-1.so.0()(64bit)
libpulse-mainloop-glib.so.0()(64bit)
libpulse-mainloop-glib.so.0(PULSE_0)(64bit)
libpulse.so.0()(64bit)
libpulse.so.0(PULSE_0)(64bit)
librsvg2(x86-64)
libsecret-1.so.0()(64bit)
libst-1.0.so()(64bit)
libsystemd.so.0()(64bit)
libsystemd.so.0(LIBSYSTEMD_209)(64bit)
libwayland-server.so.0()(64bit)
mutter(x86-64) >= 41.0
pipewire-gstreamer(x86-64)
polkit(x86-64) >= 0.100
python3(x86-64)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1
rpmlib(TildeInVersions) <= 4.10.0-1
rtld(GNU_HASH)
switcheroo-control
upower(x86-64)
xdg-desktop-portal-gtk >= 1.8.0
xdg-user-dirs-gtk

@rzhao271 rzhao271 force-pushed the rzhao271/rpm-dependencies branch from 0109606 to 2f77b9f Compare February 28, 2022 22:43
@rzhao271 rzhao271 marked this pull request as ready for review March 9, 2022 00:55
@rzhao271 rzhao271 force-pushed the rzhao271/rpm-dependencies branch from fc8fe92 to 925fa0a Compare March 10, 2022 23:18
Copy link
Collaborator

@deepak1556 deepak1556 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good mostly, requires some style changes.

@rzhao271 rzhao271 force-pushed the rzhao271/rpm-dependencies branch from 3c2a690 to a0d3da6 Compare March 16, 2022 21:54
Copy link
Collaborator

@deepak1556 deepak1556 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you also remove https://github.com/microsoft/vscode/blob/main/resources/linux/rpm/dependencies.json as part of this PR.

Almost to the finish line, some minor cleanups and should be good to land after build verification.

@rzhao271 rzhao271 force-pushed the rzhao271/rpm-dependencies branch from 7bac2ff to d91f1fc Compare March 17, 2022 15:43
Copy link
Collaborator

@deepak1556 deepak1556 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified dependencies change locally

👏

@deepak1556 deepak1556 merged commit d572d6e into main Mar 18, 2022
@deepak1556 deepak1556 deleted the rzhao271/rpm-dependencies branch March 18, 2022 04:57
@github-actions github-actions bot locked and limited conversation to collaborators May 2, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Missing dependencies in rpm package

4 participants