MHWD sets environment.syncPackageManagerDatabase to false even if no sync has taken place #65

Closed
opened 2020-09-15 08:46:54 +00:00 by ghost · 13 comments
ghost commented 2020-09-15 08:46:54 +00:00 (Migrated from gitlab2.manjaro.org)

This happens when mhwd installs video-modesetting as part of the nvidia+intel prime drivers. IMO this issue is critical since it was shipped in Manjaro 20.1 and prevents prime (nvidia+intel. amd+nvidia is fine) configs from being installed correctly on live systems.

This happens when mhwd installs video-modesetting as part of the nvidia+intel prime drivers. IMO this issue is critical since it was shipped in Manjaro 20.1 and prevents prime (nvidia+intel. amd+nvidia is fine) configs from being installed correctly on live systems.
ghost commented 2020-09-15 09:08:17 +00:00 (Migrated from gitlab2.manjaro.org)

mentioned in merge request !127

mentioned in merge request !127
ghost commented 2020-09-15 09:08:56 +00:00 (Migrated from gitlab2.manjaro.org)

changed the description

changed the description
philm commented 2020-09-15 09:12:54 +00:00 (Migrated from gitlab2.manjaro.org)

@TotallyNotElite be more specific. What happens on INTEL-NVIDIA systems, no drivers get installed at all?

@TotallyNotElite be more specific. What happens on INTEL-NVIDIA systems, no drivers get installed at all?
ghost commented 2020-09-15 09:18:13 +00:00 (Migrated from gitlab2.manjaro.org)

Greetings, the following series of events unfolds:

  1. Mhwd collects a list of MHWD config dependencies, it finds video-modesetting to be a requirement
  2. Mhwd gets a list of packages that need to be installed. In case of video-modesetting, no packages need to be installed.
  3. Mhwd sets environment.syncPackageManagerDatabase to false, even tho the sync never happened in the first place.
  4. Mhwd continues its normal process of installing the original config (nvidia+intel)
  5. Pacman fails to install the required packages because the sync never happened, because video-modesetting had an empty package list.

Fix is here: https://gitlab.manjaro.org/applications/mhwd/-/merge_requests/50

Greetings, the following series of events unfolds: 1. Mhwd collects a list of MHWD config dependencies, it finds video-modesetting to be a requirement 2. Mhwd gets a list of packages that need to be installed. In case of video-modesetting, no packages need to be installed. 3. Mhwd sets environment.syncPackageManagerDatabase to false, even tho the sync never happened in the first place. 4. Mhwd continues its normal process of installing the original config (nvidia+intel) 5. Pacman fails to install the required packages because the sync never happened, because video-modesetting had an empty package list. Fix is here: https://gitlab.manjaro.org/applications/mhwd/-/merge_requests/50
ghost commented 2020-09-15 09:19:34 +00:00 (Migrated from gitlab2.manjaro.org)

So yes, essentially no drivers get installed.

So yes, essentially no drivers get installed.
philm commented 2020-09-15 09:19:45 +00:00 (Migrated from gitlab2.manjaro.org)

On Live-Systems we don't sync the databases at all. It defied the purpose of the local database. We have a static snapshot of the extramodules and all needed dependencies on the local database/repo on disk. If we would sync it will download packages from the Internet which won't match to the kernel on disk. So this needs to be handled differently with Offline approach in mind.

On Live-Systems we don't sync the databases at all. It defied the purpose of the local database. We have a static snapshot of the extramodules and all needed dependencies on the local database/repo on disk. If we would sync it will download packages from the Internet which won't match to the kernel on disk. So this needs to be handled differently with Offline approach in mind.
ghost commented 2020-09-15 09:21:31 +00:00 (Migrated from gitlab2.manjaro.org)

Incorrect. A sync is still required, but the sync takes place from the local disk. This works correctly without an internet connection.

Incorrect. A sync is still required, but the sync takes place from the local disk. This works correctly without an internet connection.
ghost commented 2020-09-15 09:22:31 +00:00 (Migrated from gitlab2.manjaro.org)

I'll test if my fixed version works correctly on a live version without internet access, give me 10 minutes.

I'll test if my fixed version works correctly on a live version without internet access, give me 10 minutes.
philm commented 2020-09-15 09:25:13 +00:00 (Migrated from gitlab2.manjaro.org)

OK, let me know the outcome. Also with internet connection if it tries to download new packages. Most likely change to unstable branch to have newer extramodules available.

OK, let me know the outcome. Also with internet connection if it tries to download new packages. Most likely change to **unstable** branch to have newer extramodules available.
ghost commented 2020-09-15 09:30:01 +00:00 (Migrated from gitlab2.manjaro.org)

Just confirmed it works correctly with my modified mhwd package. Tested without an internet connection by running mhwd-live as root. The mhwd-live.log file and pacman.log file confirm my hypothesis.

Just confirmed it works correctly with my modified mhwd package. Tested without an internet connection by running mhwd-live as root. The mhwd-live.log file and pacman.log file confirm my hypothesis.
ghost commented 2020-09-15 09:31:28 +00:00 (Migrated from gitlab2.manjaro.org)

Also with internet connection if it tries to download new packages.

I think you are mistaken about this. Mhwd-live will never access the internet to download packages, it will always use the local cache in mhwdfs.sfs.

> Also with internet connection if it tries to download new packages. I think you are mistaken about this. Mhwd-live will never access the internet to download packages, it will always use the local cache in mhwdfs.sfs.
ghost commented 2020-09-15 18:03:36 +00:00 (Migrated from gitlab2.manjaro.org)

Also with internet connection if it tries to download new packages.

No, how could it? It only knows about a single repo:
image

> Also with internet connection if it tries to download new packages. No, how could it? It only knows about a single repo: ![image](/uploads/d23c0d548b45b6fa9bd811648dffff3a/image.png)
philm commented 2020-09-15 18:40:03 +00:00 (Migrated from gitlab2.manjaro.org)

mentioned in commit e64a3d8250

mentioned in commit e64a3d82509b4d51a34df2a386ba8237d0c38add
philm (Migrated from gitlab2.manjaro.org) closed this issue 2020-09-15 18:40:03 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
applications/mhwd#65
No description provided.