Open mariobrostech opened 3 years ago
Does the package produce different results when installed in Add / Remove Programs?
I'm not sure why there are two URLS. It might just be for tracking purposes.
For "silent" switches, you can try using the Windows Package Manager Manifest Creator. I wouldn't necessarily "submit" the manifest because you might want more/better metadata, but you could use it to see if it can detect the installer type based on parsing the .exe.
Does the package produce different results when installed in Add / Remove Programs?
I'm not sure why there are two URLS. It might just be for tracking purposes.
For "silent" switches, you can try using the Windows Package Manager Manifest Creator. I wouldn't necessarily "submit" the manifest because you might want more/better metadata, but you could use it to see if it can detect the installer type based on parsing the .exe.
The two packages are for different devices, one for notebook and the other is for PC. So the problem is can winget detect device.
These should not be needed as in order for you to install Nvidia Drivers you NEED the Nvidia Experience installed any way for the drivers to be installed.
@mddtest That's not true, please see the article here that shows the installation process without GeForce Experience.
Does the package produce different results when installed in Add / Remove Programs? I'm not sure why there are two URLS. It might just be for tracking purposes. For "silent" switches, you can try using the Windows Package Manager Manifest Creator. I wouldn't necessarily "submit" the manifest because you might want more/better metadata, but you could use it to see if it can detect the installer type based on parsing the .exe.
The two packages are for different devices, one for notebook and the other is for PC. So the problem is can winget detect device.
@lychichem As I said initially, though, the file hashes are exactly the same, so unless there's an online component in the installer (which, for the record, I don't believe there is), this could just be for tracking purposes, as denelon suggested earlier. Regardless, I'll have to test the desktop drivers on my laptop at some point to prove this theory.
Does the package produce different results when installed in Add / Remove Programs? I'm not sure why there are two URLS. It might just be for tracking purposes. For "silent" switches, you can try using the Windows Package Manager Manifest Creator. I wouldn't necessarily "submit" the manifest because you might want more/better metadata, but you could use it to see if it can detect the installer type based on parsing the .exe.
The two packages are for different devices, one for notebook and the other is for PC. So the problem is can winget detect device.
@lychichem As I said initially, though, the file hashes are exactly the same, so unless there's an online component in the installer (which, for the record, I don't believe there is), this could just be for tracking purposes, as denelon suggested earlier. Regardless, I'll have to test the desktop drivers on my laptop at some point to prove this theory.
I see. As far as I know, some driver packages include all the driver file for all devices and select the files to install base on certain .inf files (The .exe is actually a detector and an inf file selector). Maybe it's same for the Nvidia driver.
Does the package produce different results when installed in Add / Remove Programs? I'm not sure why there are two URLS. It might just be for tracking purposes. For "silent" switches, you can try using the Windows Package Manager Manifest Creator. I wouldn't necessarily "submit" the manifest because you might want more/better metadata, but you could use it to see if it can detect the installer type based on parsing the .exe.
The two packages are for different devices, one for notebook and the other is for PC. So the problem is can winget detect device.
@lychichem As I said initially, though, the file hashes are exactly the same, so unless there's an online component in the installer (which, for the record, I don't believe there is), this could just be for tracking purposes, as denelon suggested earlier. Regardless, I'll have to test the desktop drivers on my laptop at some point to prove this theory.
I see. As far as I know, some driver packages include all the driver file for all devices and select the files to install base on certain .inf files (The .exe is actually a detector and an inf file selector). Maybe it's same for the Nvidia driver.
Yeah, this is definitely something I'll need to look into and test out some more. Thanks for your help, though!
I'm stuck here as it doesn't seem to run in unattended mode - all manifests must run in unattended mode without requiring the user's attention:
Also, the validation pipelines are running on virtual machines, and to have NVIDIA drivers installed since there's a compatibility check in the installer, it would fail as there's no NVIDIA GPU attached in the VMs.
Related to https://github.com/microsoft/winget-pkgs/pull/10113#issuecomment-832827727:
We've been discussing how we're going to deal with this class of scenarios. I don't think we anticipated needing custom hardware to validate packages.
from @denelon
I'm stuck here as it doesn't seem to run in unattended mode - all manifests must run in unattended mode without requiring the user's attention:
Also, the validation pipelines are running on virtual machines, and to have NVIDIA drivers installed since there's a compatibility check in the installer, it would fail as there's no NVIDIA GPU attached in the VMs.
Related to #10113 (comment):
We've been discussing how we're going to deal with this class of scenarios. I don't think we anticipated needing custom hardware to validate packages.
from @denelon
Thanks for your help! I find it weird that the self-extracting package won't run unattended, though. Is the installer using a 7-Zip-like self-executing executable, or does this appear to be a more custom solution? I'm a novice when it comes to unattended installations, but I'm pretty sure 7-Zip executables can be executed automatically. If it's a custom solution, though, that would definitely throw a wrench into this situation... How could the GeForce Experience application run unattended while the standalone driver package couldn't? Maybe this is unrelated, so please correct me if this is the case, but I don't see why one tool would differ from the other in such a way. Again, thanks for your help, and I'm interested to hear your thoughts on this :)
I'm stuck here as it doesn't seem to run in unattended mode - all manifests must run in unattended mode without requiring the user's attention:
Also, the validation pipelines are running on virtual machines, and to have NVIDIA drivers installed since there's a compatibility check in the installer, it would fail as there's no NVIDIA GPU attached in the VMs.
Related to #10113 (comment):
We've been discussing how we're going to deal with this class of scenarios. I don't think we anticipated needing custom hardware to validate packages.
from @denelonThanks for your help! I find it weird that the self-extracting package won't run unattended, though. Is the installer using a 7-Zip-like self-executing executable, or does this appear to be a more custom solution? I'm a novice when it comes to unattended installations, but I'm pretty sure 7-Zip executables can be executed automatically. If it's a custom solution, though, that would definitely throw a wrench into this situation... How could the GeForce Experience application run unattended while the standalone driver package couldn't? Maybe this is unrelated, so please correct me if this is the case, but I don't see why one tool would differ from the other in such a way. Again, thanks for your help, and I'm interested to hear your thoughts on this :)
The installer of the driver is just a self-extract package. It extracts itself to a directory and run setup.exe. The GeForce experience installer is a program packaged using 7z format, it can automatically release to temp directory and run installer then remove temp directory. It can also accept parameters. So, the installers are different.
@lychichem Got it, thanks for the explanation. So, is the consensus right now that this can't be done?
The way I understand https://nvidia.custhelp.com/app/answers/detail/a_id/2985/~/how-can-i-perform-a-silent-install-of-the-gpu-driver is that the initial unpacking step cannot be performed silently, unfortunately. Maybe winget could support it in the future if it adds support for extracting installers from ZIP/self-extracting files.
@chausner Ok, that's understandable, and thanks for clarifying all of this for me.
@denelon What would you suggest doing from here? I can either close the issue outright, or you can tag it with Blocking-Issue
. I'm fine with either, just let me know what you decide.
Thank you to everyone who participated in this thread for your help and clarification!
@mariobrostech I added "Blocking-Issue". I think keeping the issue open this way is a better way to avoid others having to go through all of the challenges with this one. Thank you for the effort and for your contributions!
š Hey everyone, I just discovered that the Nvidia installer now supports full silent installs. I made a draft pull request here: https://github.com/microsoft/winget-pkgs/pull/110618
Testing this is obviously challenging since it relies on certain hardware. I also provided a list of things that I am unsure about. I would be very grateful for any help in this matter.
Does the install require the hardware to be present?
Does the install require the hardware to be present?
Yes, unfortunately the installer will fail when it doesn't find a compatible GPU while installing. I guess there could be a command line argument to bypass that, but nothing stands out to me in that regard (there is a list in the PR comment).
Hello @mariobrostech,
This package appears to require specific hardware.
This package is blocked until support for specific hardware requirements is implemented in:
Be sure to add your š to the issue to help raise the priority and avoid posting "Me too!" messages to respect those who have subscribed to the issue.
Template: msftbot/blockingIssue/hardwareDependency
Do you know what error would be thrown by the installer if the hardware isn't present?
We should add that to an expected return code.
Package Requested
Manifests:
Desktop:
Laptop:
Notes:
Thanks in advance!