New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 726858 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug



Sign in to add a comment

Linux .deb package has the wrong libnss3 dependency

Project Member Reported by thestig@chromium.org, May 26 2017

Issue description

What steps will reproduce the problem?
(1) Download the Linux .deb package for 58.0.3029.110
(2) Run dpkg -I /path/to/google-chrome.deb
(3) Do the same for 59.0.3071.x and 60.x.

What is the expected result?

The "Depends:" line should have an entry for "libnss3 (>= 3.17.2)"

What happens instead?

It's missing in 59.0.3051.0 and newer.

This is most likely due to upgrading the sysroot in r459584. In M58, the Depends line had entries for the libnss3 dependency calculated by dpkg-shlibdeps, and the manually added ">= 3.17.2" entry. With the sysroot update, the version of dpkg used changed, and the new version generates a Depends line with only the dpkg-shlibdeps calculated libnss3 dependency entry, while ignoring the manually added entry.

As a result of the incorrect dependency, it is possible for a Linux machine to have an outdated version of libnss, and for Chrome M59 to install on such a machine. Once installed, a runtime check will prevent Chrome from launching. Whereas with M58, such a machine cannot install Chrome in the first place.
 
Labels: M-60
Project Member

Comment 2 by bugdroid1@chromium.org, May 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1c02ea390c65d2292b64ffbb57c4a4d4873c34b4

commit 1c02ea390c65d2292b64ffbb57c4a4d4873c34b4
Author: thestig <thestig@chromium.org>
Date: Sat May 27 01:36:57 2017

Linux: Make manual libnss3 version dependency work again.

When libnss3 is specified as a dependency both manually and via
dpkg-shlibdeps, only the dpkg-shlibdeps dependency actually makes it
into the .deb file's Depends section. To work around this, remove the
entry generated by dpkg-shlibdeps, after comparing it to expectations.

This used to work, but something changed during the Jessie sysroot
update.

BUG= 691261 , 726858 

Review-Url: https://codereview.chromium.org/2903253005
Cr-Commit-Position: refs/heads/master@{#475215}

[modify] https://crrev.com/1c02ea390c65d2292b64ffbb57c4a4d4873c34b4/chrome/installer/linux/debian/build.sh

Cc: pbomm...@chromium.org
Lei can we please get the fix merged to M59 ASAP, Since we are planning a Beta launch tomorrow.
Labels: Merge-Request-59
I have verified the 61.0.3113.0 .deb files have "libnss3 (>= 2:3.13.4-2~)" while 61.0.3114.0 and 3115 .deb files have "libnss3 (>= 3.17.2)".
Project Member

Comment 5 by sheriffbot@chromium.org, May 30 2017

Labels: -Merge-Request-59 Merge-Review-59 Hotlist-Merge-Review
This bug requires manual review: Only 6 days from stable, we might already have a stable candidate build
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), gkihumba@(ChromeOS), Abdul Syed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Review-59 Merge-Approved-59
Approving for M59. Confirmed, it's a safe merge and verified. 
Project Member

Comment 7 by bugdroid1@chromium.org, May 30 2017

Labels: -merge-approved-59 merge-merged-3071
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ce1be06c2ea023c7a41852a9002fdb5cc690bc80

commit ce1be06c2ea023c7a41852a9002fdb5cc690bc80
Author: Lei Zhang <thestig@chromium.org>
Date: Tue May 30 19:09:17 2017

M59: Linux: Make manual libnss3 version dependency work again.

When libnss3 is specified as a dependency both manually and via
dpkg-shlibdeps, only the dpkg-shlibdeps dependency actually makes it
into the .deb file's Depends section. To work around this, remove the
entry generated by dpkg-shlibdeps, after comparing it to expectations.

This used to work, but something changed during the Jessie sysroot
update.

BUG= 691261 , 726858 

Review-Url: https://codereview.chromium.org/2903253005
Cr-Original-Commit-Position: refs/heads/master@{#475215}
Review-Url: https://codereview.chromium.org/2910253002 .
Cr-Commit-Position: refs/branch-heads/3071@{#722}
Cr-Branched-From: a106f0abbf69dad349d4aaf4bcc4f5d376dd2377-refs/heads/master@{#464641}

[modify] https://crrev.com/ce1be06c2ea023c7a41852a9002fdb5cc690bc80/chrome/installer/linux/debian/build.sh

Waiting for 59.0.3071.82 to build now. Will request a M60 merge as well.
Project Member

Comment 9 by bugdroid1@chromium.org, May 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1c22d9bc4c094b6c20e096d4b1fd6bc906f066e9

commit 1c22d9bc4c094b6c20e096d4b1fd6bc906f066e9
Author: tyoshino <tyoshino@chromium.org>
Date: Wed May 31 05:18:29 2017

Revert of M59: Linux: Make manual libnss3 version dependency work again. (patchset #1 id:1 of https://codereview.chromium.org/2910253002/ )

Reason for revert:
Looks this broke the stable builder.

https://bugs.chromium.org/p/chromium/issues/detail?id=727996

Original issue's description:
> M59: Linux: Make manual libnss3 version dependency work again.
>
> When libnss3 is specified as a dependency both manually and via
> dpkg-shlibdeps, only the dpkg-shlibdeps dependency actually makes it
> into the .deb file's Depends section. To work around this, remove the
> entry generated by dpkg-shlibdeps, after comparing it to expectations.
>
> This used to work, but something changed during the Jessie sysroot
> update.
>
> BUG= 691261 , 726858 
>
> Review-Url: https://codereview.chromium.org/2903253005
> Cr-Original-Commit-Position: refs/heads/master@{#475215}
> Review-Url: https://codereview.chromium.org/2910253002 .
> Cr-Commit-Position: refs/branch-heads/3071@{#722}
> Cr-Branched-From: a106f0abbf69dad349d4aaf4bcc4f5d376dd2377-refs/heads/master@{#464641}
> Committed: https://chromium.googlesource.com/chromium/src/+/ce1be06c2ea023c7a41852a9002fdb5cc690bc80

TBR=thestig@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 691261 , 726858 

Review-Url: https://codereview.chromium.org/2913103003
Cr-Commit-Position: refs/branch-heads/3071@{#728}
Cr-Branched-From: a106f0abbf69dad349d4aaf4bcc4f5d376dd2377-refs/heads/master@{#464641}

[modify] https://crrev.com/1c22d9bc4c094b6c20e096d4b1fd6bc906f066e9/chrome/installer/linux/debian/build.sh

Sorry. I speculatively made the revert to make the release bot green, but it turned out to be wrong. See https://bugs.chromium.org/p/chromium/issues/detail?id=727996#c6.
That's fine. There was a pre-existing condition with a missing space. I'll try again.
Project Member

Comment 12 by bugdroid1@chromium.org, May 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c73405cbac5a361a4129200066007e1fde882484

commit c73405cbac5a361a4129200066007e1fde882484
Author: Lei Zhang <thestig@chromium.org>
Date: Wed May 31 08:11:36 2017

M59: Linux: Make manual libnss3 version dependency work again. (try 2)

When libnss3 is specified as a dependency both manually and via
dpkg-shlibdeps, only the dpkg-shlibdeps dependency actually makes it
into the .deb file's Depends section. To work around this, remove the
entry generated by dpkg-shlibdeps, after comparing it to expectations.

This used to work, but something changed during the Jessie sysroot
update.

BUG= 691261 , 726858 

Review-Url: https://codereview.chromium.org/2903253005
Cr-Original-Original-Commit-Position: refs/heads/master@{#475215}
Review-Url: https://codereview.chromium.org/2914763002 .
Cr-Commit-Position: refs/branch-heads/3071@{#730}
Cr-Branched-From: a106f0abbf69dad349d4aaf4bcc4f5d376dd2377-refs/heads/master@{#464641}

[modify] https://crrev.com/c73405cbac5a361a4129200066007e1fde882484/chrome/installer/linux/debian/build.sh

Labels: -Hotlist-Merge-Review Merge-Request-60
59.0.3071.84 has the correct libnss dependency. Merging to M60 next.
Project Member

Comment 14 by sheriffbot@chromium.org, Jun 1 2017

Labels: -Merge-Request-60 Hotlist-Merge-Approved Merge-Approved-60
Your change meets the bar and is auto-approved for M60. Please go ahead and merge the CL to branch 3112 manually. Please contact milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 15 by bugdroid1@chromium.org, Jun 1 2017

Labels: -merge-approved-60 merge-merged-3112
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e07fdaea3823ca6e88ab2dff92adbe9af1a6b31d

commit e07fdaea3823ca6e88ab2dff92adbe9af1a6b31d
Author: Lei Zhang <thestig@chromium.org>
Date: Thu Jun 01 05:56:03 2017

M60: Linux: Make manual libnss3 version dependency work again.

When libnss3 is specified as a dependency both manually and via
dpkg-shlibdeps, only the dpkg-shlibdeps dependency actually makes it
into the .deb file's Depends section. To work around this, remove the
entry generated by dpkg-shlibdeps, after comparing it to expectations.

This used to work, but something changed during the Jessie sysroot
update.

BUG= 691261 , 726858 

Review-Url: https://codereview.chromium.org/2903253005
Cr-Original-Commit-Position: refs/heads/master@{#475215}
Review-Url: https://codereview.chromium.org/2921593002 .
Cr-Commit-Position: refs/branch-heads/3112@{#80}
Cr-Branched-From: b6460e24cf59f429d69de255538d0fc7a425ccf9-refs/heads/master@{#474897}

[modify] https://crrev.com/e07fdaea3823ca6e88ab2dff92adbe9af1a6b31d/chrome/installer/linux/debian/build.sh

Status: Fixed (was: Assigned)
M60 merge did not have any conflicts.
Cc: ranjitkan@chromium.org
Labels: Needs-Feedback
Could some one please help us with the steps to verify it. We tried installing a deb package on Ubuntu 14.04 and on Debian OS, but were unable find the line "Depends:" with an entry for "libnss3"

Tried using chrome version 59.0.3071.86 build.

Thanks.!
Labels: TE-Verified-59.0.3071.86
Verified the issue with Chrome 59.0.3071.86 based on steps provided in bug report and below is the result :

Depends: gconf-service, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.15), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.1.4), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.11), libfreetype6 (>= 2.3.9), libgcc1 (>= 1:4.1.1), libgconf-2-4 (>= 3.2.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.28.0), libgtk-3-0 (>= 3.3.16), libnspr4 (>= 2:4.9-2~), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libstdc++6 (>= 4.8.1), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, ca-certificates, fonts-liberation, libappindicator1, libnss3 (>= 3.17.2), lsb-base (>= 4.1), xdg-utils (>= 1.0.2), wget
Labels: TE-Verified-60.0.3112.20
Verified the issue with Chrome 60.0.3112.20 based on steps provided in bug report and below is the result :

Depends: gconf-service, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.15), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.1.4), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.11), libgcc1 (>= 1:4.1.1), libgconf-2-4 (>= 3.2.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.28.0), libgtk-3-0 (>= 3.3.16), libnspr4 (>= 2:4.9-2~), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libstdc++6 (>= 4.8.1), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, ca-certificates, fonts-liberation, libappindicator1, libnss3 (>= 3.17.2), lsb-release, xdg-utils (>= 1.0.2), wget




Sign in to add a comment