This repository has been archived by the owner on Mar 3, 2023. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Requirements for Contributing a Bug Fix
Identify the Bug
First reported in atom/ci#90, it seems that we aren't reporting the correct dependencies list in our
.deb
package files.Description of the Change
This PR:
gconf2
andgconf-service
dependencies withlibgconf-2-4 (>= 3.2.5) | libgconf2-4
webupd8
package of Atom at the time, these were likely mistaken attempts at the correct dependency.electron-installer-debian
listslibgconf-2-4 | libgconf2-4
, we are using the slightly more restrictive version range from Chrome 64.0.3282.167-1 documented here.libudev0 | libudev1
dependencylibcap2
dependencyAlternate Designs
The first point there is a mistake that definitely should be requested. The latter two removals of
libudev0 | libudev1
andlibcap2
could simply be left in though as it's possible some other part requires them.Possible Drawbacks
One of the removed dependencies may actually be required, leading to systems that don't have them installed from some other source having issues running Atom without manual installation of the dependencies first.
Verification Process
I manually ran through the dependencies that would be generated by electron-installer-debian for an Electron 2.x application and came up with the following list:
libgtk-3-0
libnotify4
libnss3
libxss1
libxtst6
xdg-utils
libgconf-2-4 | libgconf2-4
kde-cli-tools
kde-runtime
trash-cli
libglib2.0-bin
gvfs-bin
Excluding the dependencies listed in that for a generic Electron application we are left with:
libcurl3 | libcurl4
dugite
, see Add libcurl3 and libcurl4 as deps for .deb package #18201git
libxkbfile1
atom-keymap
/keyboard-layout
, see Add additional dependencies for linux #16812 (comment)libasound2 (>= 1.0.16)
libx11-xcb1
# From Chrome .deb, see Add additional dependencies for linux #16812 (comment)libgcrypt11 | libgcrypt20
python
After reviewing the list of dependencies and making the changes in this PR I ran through the build process manually in an
atom/atom-docker-ci
build instance and got a package with the following dependencies:This has not been tested in a full Debian based linux distribution, only minimal ones within Docker!
Release Notes
N/A