Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

E: Unable to locate package libgconf-2-4 #27972

Closed
ChrisJBurns opened this issue Oct 4, 2023 · 14 comments
Closed

E: Unable to locate package libgconf-2-4 #27972

ChrisJBurns opened this issue Oct 4, 2023 · 14 comments
Labels
topic: installation Issue during installation or downloading Cypress

Comments

@ChrisJBurns
Copy link

Current behavior

We are trying to create a base image for all services that will be installing Cypress via npm, however, what worked before now doesn't work. Specifically, the package libgconf-2-4 cannot be installed which is a pre-req for us before we install Cypress.

Dockerfile code:

FROM internal.registry.com/ubuntu/ubuntu:23.10
RUN apt-get update \
     && apt-get -y install jq git python3 \
     # the following are system dependencies we have to install to support Cypress
     # https://docs.cypress.io/guides/getting-started/installing-cypress#Linux-Prerequisites
     libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb

Debug logs

We get the following errors

#0 0.105 Get:1 http://security.ubuntu.com/ubuntu mantic-security InRelease [90.7 kB]
#13 0.255 Get:2 http://archive.ubuntu.com/ubuntu mantic InRelease [255 kB]
#13 0.775 Get:3 http://archive.ubuntu.com/ubuntu mantic-updates InRelease [90.7 kB]
#13 0.892 Get:4 http://archive.ubuntu.com/ubuntu mantic-backports InRelease [90.7 kB]
#13 1.009 Get:5 http://archive.ubuntu.com/ubuntu mantic/main amd64 Packages [1812 kB]
#13 1.325 Get:6 http://archive.ubuntu.com/ubuntu mantic/multiverse amd64 Packages [293 kB]
#13 1.335 Get:7 http://archive.ubuntu.com/ubuntu mantic/restricted amd64 Packages [208 kB]
#13 1.346 Get:8 http://archive.ubuntu.com/ubuntu mantic/universe amd64 Packages [18.8 MB]
#13 2.625 Fetched 21.7 MB in 3s (8574 kB/s)
#13 2.625 Reading package lists...
#13 3.248 Reading package lists...
#13 3.837 Building dependency tree...
#13 3.955 Reading state information...
#13 3.963 E: Unable to locate package libgconf-2-4

Cypress Version

N\A

Node version

N\A

Package Manager

npm

Package Manager Version

N\A

Operating system

Linux

Operating System Version

Ubuntu

Other

No response

@ChrisJBurns ChrisJBurns added the topic: installation Issue during installation or downloading Cypress label Oct 4, 2023
@MikeMcC399
Copy link
Contributor

MikeMcC399 commented Oct 4, 2023

@ChrisJBurns

Does this relate to a beta build of Ubuntu 23.10?

https://wiki.ubuntu.com/Releases marks this as a future release planned for Oct 1012, 2023.

@ChrisJBurns
Copy link
Author

ChrisJBurns commented Oct 4, 2023

Ahhh good spot @MikeMcC399 . We use Renovate to let us know when new versions of our images are available, and it must have been a bit too quick with this one. I tell you what I'll do, because the Docker image for Ubuntu 23.10 is already available but may be doing some OS checks when pulling packages, I can wait until the 10th October and see if anything changes?

Will comment back on this ticket!

@jennifer-shehane
Copy link
Member

Closing since this does not appear to be related to something under Cypress's control.

@ChrisJBurns
Copy link
Author

@jennifer-shehane I'lll comment back on this ticket if the Ubuntu 23:10 doesn't work because I imagine it will affect the guidance on the Cypress website for Linux Ubuntu Pre req's.

@MikeMcC399
Copy link
Contributor

MikeMcC399 commented Oct 9, 2023

@ChrisJBurns

I looked into this issue and it appears that the Cypress dependency on libconf-2-4 was removed with the release of Cypress 3.5.0 on Oct 23, 2019. This release updated electron from 2.0.18 to 5.0.10.

Although the Ubuntu 23.10 version is still in beta and has not been formally released yet, it is already frozen. https://answers.launchpad.net/ubuntu/mantic/arm64/libgconf2-dev/3.2.6-8ubuntu1 shows Status: Deleted and therefore libconf-2-4 can not be expected to ship with this latest upcoming Ubuntu release.

https://packages.ubuntu.com/search?keywords=libgconf-2-4 shows the releases where it is included and this does not include mantic / future 23.10.

This is now a documentation issue for Getting Started > Installing Cypress > System requirements > Linux Prerequisites > Ubuntu/Debian where it gives the following instructions:

apt-get install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb

It looks to me very much like the package libgconf-2-4 can simply be removed from the list of packages.

@MikeMcC399
Copy link
Contributor

@MikeMcC399
Copy link
Contributor

@ChrisJBurns

because the Docker image for Ubuntu 23.10 is already available but may be doing some OS checks when pulling packages, I can wait until the 10th October and see if anything changes?

On https://hub.docker.com/_/ubuntu the mantic image is tagged along with devel so that would not yet be the final release

image

@ChrisJBurns
Copy link
Author

Hi @MikeMcC399

Thanks for the investigation on this! I'm just confirming with my team on if they use versions of Cypress later than 3.5.0 and then will be removing that dependency from our Docker builds. I expect they are, if they're not we will revert the Ubuntu version back to 22.

Good thing is, the docs have been updated in relation to this issue which is great! I believe we can close this now if you're happy? On our side, we will either update Cypress so we don't need the dependency, or we will downgrade Ubuntu if we do.

@ChrisJBurns
Copy link
Author

Our UI engineers have confirmed we are using Cypress 12.x.x, so I will remove that dependency from the Dockerfile. Thanks @MikeMcC399 ! Although I wonder if there are other dependencies in the docs that may not be needed now?

@MikeMcC399
Copy link
Contributor

MikeMcC399 commented Oct 10, 2023

@ChrisJBurns

Unless you have a specific need to be on the latest Ubuntu version it is often better for testing to settle on the LTS version, which will be Ubuntu 22.04 for a while.

According to https://ubuntu.com/about/release-cycle I would expect 24.04 to be released next year and to take over the LTS role from 22.04.

Although I wonder if there are other dependencies in the docs that may not be needed now?

That is possible. I only looked at the one dependency causing an issue and I'm not the Subject Matter Expert on this. That would be a separate documentation question for the Cypress team to answer.

Edit: I took a brief look and didn't see any others which needed to be removed. Note that some of the packages may be installed already by default, depending what options are chosen when the operating system is installed.

@ChrisJBurns
Copy link
Author

ChrisJBurns commented Oct 10, 2023

Yep, we've added a renovate rule to ignore 23 releases for further upgrades. Can confirm our Docker builds successfully also!
I don;t have privs to close this, but am happy for it to be closed!

@MikeMcC399
Copy link
Contributor

@ChrisJBurns

Yep, we've added a renovate rule to ignore 23 releases for further upgrades. Can confirm our Docker builds successfully also!
I don;t have privs to close this, but am happy for it to be closed!

It sounds like you're now in great shape! 🎉

Actually this issue is already closed, but not locked, so there is nothing more to do here!

@MikeMcC399
Copy link
Contributor

The Cypress documentation section Getting Started > Installing Cypress > System requirements > Linux Prerequisites > Ubuntu/Debian has been updated to remove the obsolete libgconf-2-4 packages and it now recommends:

apt-get install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libnss3 libxss1 libasound2 libxtst6 xauth xvfb

for Ubuntu/Debian

and this should be fine for all supported versions of Ubuntu from 20.04 LTS up to and including yesterday's 23.10 release.

The Ubuntu 23.10 version ("Mantic Minotaur") was announced released on Oct 12, 2023.

@lbraz-c24h
Copy link

Yep, we've added a renovate rule to ignore 23 releases for further upgrades. Can confirm our Docker builds successfully also! I don;t have privs to close this, but am happy for it to be closed!

How did you remove it with dockerfile?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: installation Issue during installation or downloading Cypress
Projects
None yet
Development

No branches or pull requests

4 participants