A computer-implemented method for managing device drivers comprising: requesting , by a computing device , one or more drivers for one or more devices connectable to the computing device , comprising: compiling a list of device drivers stored on the computing device , wherein the list includes at least a first device driver for a disconnected device and a second device driver for a second device, wherein the list of device drivers further includes first driver version information and second device driver version information; and creating a system specification that includes at least the list of stored device drivers and an identification of a targeted device, wherein the targeted device has not previously been connected to the computing device ; sending the system specification to an update service ; receiving , from the update service , a device driver update set based on the system specification , wherein at least one driver in the update set is the first driver for the disconnected device, wherein the disconnected device is a device that is disconnected from the computing device at the time of the request; installing , by the computing device , the first device driver for the disconnected device and a third device driver for the targeted device on the computing device ; and performing, by the computing device , operations to activate the first device driver for use for the disconnected device when the disconnected device is detected by the computing device . requesting , by a computing device , one or more drivers for one or more devices connectable to the computing device , comprising: compiling a list of device drivers stored on the computing device , wherein the list includes at least a first device driver for a disconnected device and a second device driver for a second device, wherein the list of device drivers further includes first driver version information and second device driver version information; and creating a system specification that includes at least the list of stored device drivers and an identification of a targeted device, wherein the targeted device has not previously been connected to the computing device ; sending the system specification to an update service ; compiling a list of device drivers stored on the computing device , wherein the list includes at least a first device driver for a disconnected device and a second device driver for a second device, wherein the list of device drivers further includes first driver version information and second device driver version information; and creating a system specification that includes at least the list of stored device drivers and an identification of a targeted device, wherein the targeted device has not previously been connected to the computing device ; sending the system specification to an update service ; receiving , from the update service , a device driver update set based on the system specification , wherein at least one driver in the update set is the first driver for the disconnected device, wherein the disconnected device is a device that is disconnected from the computing device at the time of the request; installing , by the computing device , the first device driver for the disconnected device and a third device driver for the targeted device on the computing device ; and performing, by the computing device , operations to activate the first device driver for use for the disconnected device when the disconnected device is detected by the computing device . <EOS>