-
Notifications
You must be signed in to change notification settings - Fork 416
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
The number of packages downloaded from the remote source is inconsistent with that of the local source. #2016
Comments
In addition, I found that even if I use the -c command to specify local resources, dnf will still look for it in the remote source |
Hello, I am not sure what do you want to achieve with the |
Thank you for your reply. local.repo is the configuration file I created locally. I created another folder localRPMS locally to store all the rpm packages, and then I used -c local.repo to download files from the localRPMS folder. But this way I was able to download the number of rpm packages that I was able to download unlike using a remote source, which had fewer weak dependency packages. If I use -C, then the resource is still downloaded from the remote source. |
I see, if Additionally, I observed that when running the first command you provided, the default |
Yes, when I run these two commands in turn, executing the first command does not download weak dependencies, but the second command does. In fact, these weak dependency packages are already downloaded in my environment. |
So, could you confirm whether the |
these are my configure /etc/dnf/dnf.conf /etc/yum.repos.d/remote.repo |
OK, I see another difference of your two provided use cases. The first one is running with |
when I use dnf install -b -c local.repo --installroot /usr1/k_root/ [package list] |
It might be useful to provide also the output of both commands used. Also with the second command I guess you want to use only the local repository, right? Then as described above, you need to disable the remote repositories. Or use |
Because of Information security, I can only provide two pictures as follows : |
You can verify this by providing --setopt=install_weak_deps=True for both commands and comparing the output. However, given the configuration file you provided, it appears that this is not the case. I'm still uncertain if the environment is the same in both use cases. All the packages from the connected and enabled repositories in the first use case should be identical to the downloaded ones in the second local use case. If there are any differences, it might impact the solver's decision, leading to different resolutions being offered to the user. |
Before I configured local.repo, I used dnf download * to download all rpm packages, and both commands were run on the same virtual machine and the environment was the same. In addition, through --setopt=install_weak_deps =False, the output results of the two methods are exactly the same, both are 424. I don’t know what causes the weak dependencies not to be downloaded when downloading the package list from the remote source. |
Well, there are edge cases when dnf download will not download all packages needed for installation - see issue #2002 . But to be sure about the root cause, I'm afraid we need more data. The best would be a reproducer of the issue. |
yes, I know. But the problem is still alive after I use the |
Just a long shot - dnf has a feature to autodetect weak dependencies that the user explicitly does not want on the system. This is to prevent re-installation of such weakdeps in case of upgrade. For details see |
The root cause of the problem is that the configuration of the remote source is incorrect. The XML file in the remote source fails to parse the weak dependency. |
When I configure both remote and local sources (where the rpm package for the local source is downloaded from the remote source using dnf download *) . When the same software package list is installed, the specified remote source cannot download weak dependencies, but the specified local source can download weak dependencies. The number of displayed software package lists is different. The number of software package lists using the remote source is 424, but the number of software package lists using the local source is 449. The missing 25 are weak dependencies.
dnf install --installroot /usr1/k_root/ [package list]
dnf install -c local.repo --installroot /usr1/k_root/ [package list]
The text was updated successfully, but these errors were encountered: