@@ -181,8 +181,10 @@ def assign_device(args):
181181 options ['identity' ] = 'any'
182182 assignment .options = options
183183 vm .devices [args .devclass ].assign (assignment )
184- if vm .is_running () and not assignment .attached :
185- print ("Assigned. Now you can manually attach device or restart domain." )
184+ if vm .is_running () and not assignment .attached and not args .quiet :
185+ print ("Assigned. To attach you can now restart domain or run: \n "
186+ f"\t qvm-{ assignment .devclass } attach { vm } "
187+ f"{ assignment .backend_domain } :{ assignment .ident } " )
186188
187189
188190def unassign_device (args ):
@@ -194,17 +196,18 @@ def unassign_device(args):
194196 device = args .device
195197 assignment = qubesadmin .devices .DeviceAssignment .from_device (
196198 device , frontend_domain = vm )
197- vm .devices [args .devclass ].unassign (assignment )
198- if assignment .attached :
199- print ("Unassigned. Now you can manually detach device "
200- "or restart domain." )
199+ _unassign_and_show_message (assignment , vm , args )
201200 else :
202- for device_assignment in (
203- vm .devices [args .devclass ].get_assigned_devices ()):
204- vm .devices [args .devclass ].unassign (device_assignment )
205- if device_assignment .attached :
206- print ("Unassigned. Now you can manually detach device "
207- "or restart domain." )
201+ for assignment in vm .devices [args .devclass ].get_assigned_devices ():
202+ _unassign_and_show_message (assignment , vm , args )
203+
204+
205+ def _unassign_and_show_message (assignment , vm , args ):
206+ vm .devices [args .devclass ].unassign (assignment )
207+ if assignment .attached and not args .quiet :
208+ print ("Unassigned. To detach you can now restart domain or run: \n "
209+ f"\t qvm-{ assignment .devclass } detach { vm } "
210+ f"{ assignment .backend_domain } :{ assignment .ident } " )
208211
209212
210213def info_device (args ):
0 commit comments