+
    âCëiî" ã                   óŽ  € ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIt^ RIt^ RIt^ RIt]P                   ! RR4       ]P                   ! RR4       ]P                   ! RR4       ]P                   ! RR	4       ^ R
IHt ^ RIHtHtHtHtHtHt ^ RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RI H t  ^RI!H!t! ^RI"H"t" ^RI#H#t# ^ RI$t$^ RI%t$^ RI&H't' ^ RI&t$^ RI(H)t)H*t*H+t+H,t,H-t- ^ RI.H/t/ ]P`                  Pb                  Pe                  RR7       ]Pf                  R%8  d   ]Ph                  ! 4        ]5! ^4      w  t6t7t8]9! ]5! ^4      4      w  t:t;^t<^t=]9! ]5! ^4      4      w  t>t?t@tAtB]5! ^4      w  tCtDtEtFRtGRtHRtI^tJ ! R R]	P–                  4      tK ! R R ]L4      tMR! tNR" tO ! R# R$]']4      tPR# )&é    N)ÚgettextÚGdkz4.0ÚGtkÚAdwÚ1ÚPackageKitGlibz1.0)r   )ÚGObjectr   r   ÚGioÚGLibr   )ÚDeb822SourceEntry)ÚSimpleGtkbuilderApp)Ú	DialogAdd)ÚDialogMirror)Ú
DialogEdit)ÚDialogEditDeb822)ÚDialogCacheOutdated)ÚDialogAddSourcesList)ÚUbuntuProPage)ÚSoftwareProperties)Úget_ua_statusÚget_ua_service_statusÚcurrent_distroÚis_current_distro_ltsÚmaybe_hint_dialog_window)ÚdetectT)Úset_as_defaultÚsecurityÚupdatesÚ	backportsc                   ó<   a € ] tR t^ut o R tR t]R 4       tRtV t	R# )ÚProcessc                ó    € \         P                  P                  ! V .VO5/ VB  \         P                  ! 4       w  V n        V n        R V n        R # ©N)Úmultiprocessingr!   Ú__init__ÚPipeÚ_pconnÚ_cconnÚ
_exception)ÚselfÚargsÚkwargss   &*,ÚN/usr/lib/python3/dist-packages/softwareproperties/gtk/SoftwarePropertiesGtk.pyr%   ÚProcess.__init__v   s>   € Ü×Ñ×(Ò(¨Ð?°Ò?¸Ò?Ü#2×#7Ò#7Ó#9Ñ ˆŒ�T”[ØˆŽó    c                ó   €  \         P                  P                  V 4       V P                  P	                  R 4       R #   \
         d5    \        P                  ! 4       pT P                  P	                  T4        R # i ; ir#   )r$   r!   Úrunr(   ÚsendÚ	ExceptionÚ	tracebackÚ
format_exc)r*   Útbs   & r-   r1   ÚProcess.runz   s\   € ð	!Ü×#Ñ#×'Ñ'¨Ô-Ø�K‰K×Ñ˜TÖ"øÜô 	!Ü×%Ò%Ó'ˆBØ�K‰K×Ñ˜R× ð	!ús   ‚:> ¾;A=Á<A=c                óÊ   € V P                   P                  4       '       d    V P                   P                  4       V n        V P                  e   \	        V P                  4      # R # r#   )r'   ÚpollÚrecvr)   r3   ©r*   s   &r-   Ú	exceptionÚProcess.exception�   sG   € à�;‰;×Ñ×ÒØ"Ÿk™k×.Ñ.Ó0ˆDŒOØ—‘Ò'Ü˜TŸ_™_Ó-Ð-ñ (r/   )r(   r)   r'   N)
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r%   r1   Úpropertyr<   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r-   r!   r!   u   s#   ø‡ € òò!ð ñ.ó ö.r/   r!   c                   ó:   a € ] tR t^‰t o RtRtRtRtRtR t	Rt
V tR# )ÚUpdateSubscriptionsFc                ó¦  € V P                   '       d   \        # V P                  '       d+   V P                  '       d   V P                  '       d   \
        # V P                  '       d+   V P                  '       d   V P                  '       g   \        # V P                  '       d+   V P                  '       g   V P                  '       g   \        # \        # r#   )ÚotherÚUPDATES_CUSTOMr   r   r   ÚUPDATES_ALLÚUPDATES_RECOMMENDEDÚUPDATES_SECURITYr;   s   &r-   Ú
get_statusÚUpdateSubscriptions.get_status�   st   € Ø�:�:ˆ:Ü!Ð!Ø�=�=ˆ=˜TŸ\Ÿ\˜\¨d¯n¯n¨nÜÐØ�]�]ˆ]˜tŸ|Ÿ|˜|°D·N·N°NÜ&Ð&Ø�]�]ˆ] 4§<§< <¸¿¿¸Ü#Ð#ÜÐr/   © N)r>   r?   r@   rA   r   r   r   rJ   ÚinconsistentrO   rC   rD   rE   s   @r-   rH   rH   ‰   s(   ø‡ € Ø€HØ€GØ€IØ€EØ€L÷	ð 	r/   rH   c                óX   € V P                   R8X  d   \        P                  ! R4       R# R# )zéLog an error if the DBus exception was raised because the user canceled
the authentication prompt shown when changing apt sources/configuration.

Return True if it is, so that calling code can do further processing,
False otherwise.
z6com.ubuntu.SoftwareProperties.PermissionDeniedByPolicyz4Authentication canceled, changes have not been savedTF)Ú_dbus_error_nameÚloggingÚerror)Údbus_exceptions   &r-   Ú'maybe_log_authentication_canceled_errorrX   œ   s(   € ð ×&Ñ&Ø>ô?ä�ŠÐLÔMÙÙr/   c                ó
  € \         P                  P                  V \        V4      \        V4      4      pVP	                  R\        R4      4       VP                  R4       VP                  RR 4       VP                  4        R# )zShow an error dialog.ÚokÚOKÚresponsec                 ó"   € V P                  4       # r#   )Úhide)ÚdÚrs   &&r-   Ú<lambda>Úerror.<locals>.<lambda>¯   s
   € ¨¯©¬r/   N)	r   ÚMessageDialogÚnewÚstrÚadd_responseÚ_Úset_close_responseÚconnectÚpresent)Úparent_windowÚsummaryÚmsgÚdlgs   &&& r-   rV   rV   ª   s^   € ä
×
Ñ
×
Ñ
 ¬s°7«|¼SÀ»XÓ
F€CØ×Ñ�Tœ1˜T›7Ô#Ø×Ñ˜4Ô Ø‡K�K�
Ñ1Ô2Ø‡K�K†Mr/   c                   óö  a € ] tR t^³t o RKR ltR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tRLR ltR tR tR tR tR tR tR tR tR t RMR lt!R  t"R! t#R" t$R# t%R$ t&R% t'R& t(R' t)R( t*R) t+R* t,R+ t-R, t.R- t/R. t0R/ t1R0 t2R1 t3R2 t4R3 t5R4 t6R5 t7R6 t8RMR7 lt9R8 t:R9 t;RMR: lt<R; t=R< t>R= t?R> t@R? tAR@ tB]CRA 4       tDRB tERMRC ltFRMRD ltGRE tHRF tIRG tJRH tKRI tLRJtMV tNR# )NÚSoftwarePropertiesGtkNc                ó  € \         P                  ! WVRR7       \        P                  P	                  R4       \
        P                  P                  4       pVP                  \
        P                  P                  4       \        P                  ! V \        P                  P                  VRR4      RR7       V P                  P!                  RV P"                  4       V P$                  P!                  RV P&                  4       V P(                  P!                  RV P*                  4       V P,                  P!                  RV P.                  4       V P0                  P!                  RV P2                  4       V P4                  P!                  RV P6                  4       V P8                  P!                  R	V P:                  4       V P<                  P!                  RV P>                  4       V P@                  P!                  RV PB                  4       V PD                  P!                  RV PF                  4       V'       d2   \I        V P                  4        V P                  PK                  V4       W n&        V'       du   VPN                  R
8w  dd   \I        V P                  4        \P        PR                  ! \U        VPN                  4      4      pV'       d    V P                  PK                  V4       \X        PZ                  P]                  4       pRV9   dF   \X        PZ                  P_                  R4      V n0        V P`                  Pc                  R4      V n2        M)R
V n0        ^ V n2        V Pf                  Pi                  R4       \j        Pl                  ! 4       pVPo                  RR4      p	\j        Pp                  ! V	R4      V n9        V Pr                  Pu                  RV Pv                  4       V Pr                  Pu                  RV Px                  4       V Pr                  Pu                  RV Pz                  4       V Pr                  Pu                  RV P|                  4       V Pr                  P                  4        RV n@        / V nA        V P…                  4        R
V nC        R
V nD        V P‹                  4        V P�                  4        V P�                  4        V P‘                  4        V P“                  4        V P•                  4        V P—                  4        V P™                  4        V P›                  4        V P�                  4        \Ÿ        4       '       d   V P¡                  4        V P¢                  P!                  RV P¤                  4       V'       dA   VP¦                  '       d/   V P¢                  P©                  \U        VP¦                  4      4       VR
8w  dv   \        P                  P«                  V4      \¬        P®                  P±                  R4      : \¬        P®                  P³                  R4      : 28w  d   V Pµ                  V4       V P                  P·                  ^^4       R
#     EL; i  \V         d    R
p EL¸i ; i    EL�; i)z’Provide a GTK based graphical user interface to configure
the used software repositories, corresponding authentication keys
and update automation T)ÚoptionsÚdatadirÚdeb822zsoftware-propertiesÚ
gtkbuilderzmain.ui)Údomainzclose-requestÚclickedzcursor-changedNzcom.ubuntu.update-notifierúregular-auto-launch-intervalFzcom.ubuntu.SoftwarePropertiesÚ/ÚSourcesListModifiedÚConfigModifiedÚKeysModifiedÚ
AuthFailedzswitch-pagezDir::EtczDir::Etc::sourcelist)\r   r%   r   ÚWindowÚset_default_icon_namer   ÚStyleManagerÚget_defaultÚset_color_schemeÚColorSchemeÚPREFER_LIGHTr   ÚosÚpathÚjoinÚwindow_mainri   Úon_close_requestÚbutton_closeÚon_close_buttonÚbutton_revertÚon_button_revert_clickedÚ
button_addÚon_add_clickedÚbutton_editÚon_edit_clickedÚbutton_removeÚon_remove_clickedÚtreeview_sourcesÚ"on_treeview_sources_cursor_changedÚbutton_auth_addÚadd_key_clickedÚbutton_auth_removeÚremove_key_clickedÚbutton_drivers_controlÚon_detect_drivers_cancel_retryr   Úset_transient_forrr   Útoplevelr   Úwindow_foreign_newÚintÚAttributeErrorr
   ÚSettingsÚlist_schemasrd   ÚsettingsÚget_intÚinitial_auto_launchÚcombobox_other_updatesÚset_sensitiveÚdbusÚ	SystemBusÚ
get_objectÚ	InterfaceÚbackendÚconnect_to_signalÚon_sources_list_modifiedÚon_config_modifiedÚon_keys_modifiedÚon_auth_failedÚReloadÚsuccessfully_detected_driversÚhandlersÚinit_apt_cacheÚpk_taskÚsearch_processÚinit_auto_updateÚinit_release_upgradesÚshow_auto_update_levelÚ	init_keysÚ	show_keysÚinit_isv_sourcesÚshow_isv_sourcesÚinit_distroÚshow_distroÚinit_driversr   Úinit_ubuntu_proÚnotebook_mainÚon_main_notebook_page_switchedÚopen_tabÚset_current_pageÚabspathÚapt_pkgÚconfigÚfind_dirÚfindÚ	open_fileÚset_default_size)
r*   rs   rr   ÚfileÚparentÚstyle_managerr�   Úall_schemasÚbusÚproxys
   &&&&&     r-   r%   ÚSoftwarePropertiesGtk.__init__µ   së  € ô 	×#Ò# DÀ7Ø+/õ	1ä�
‰
×(Ñ(Ð)>Ô?ô ×(Ñ(×4Ñ4Ó6ˆØ×&Ñ&¤s§¡×'CÑ'CÔDä×$Ò$ TÜ%'§W¡W§\¡\°'¸<ÈÓ%SØ,Aõ	Cð 	×Ñ× Ñ  °$×2GÑ2GÔHà×Ñ×!Ñ! )¨T×-AÑ-AÔBØ×Ñ×"Ñ" 9¨d×.KÑ.KÔLà�‰×Ñ 	¨4×+>Ñ+>Ô?Ø×Ñ× Ñ  ¨D×,@Ñ,@ÔAØ×Ñ×"Ñ" 9¨d×.DÑ.DÔEØ×Ñ×%Ñ%Ð&6¸×8_Ñ8_Ô`à×Ñ×$Ñ$ Y°×0DÑ0DÔEØ×Ñ×'Ñ'¨	°4×3JÑ3JÔKà×#Ñ#×+Ñ+¨I°t×7ZÑ7ZÔ[çÜ$ T×%5Ñ%5Ô6ðØ× Ñ ×2Ñ2°6Ô:ð
 Œß�w×'Ñ'¨4Ô/Ü$ T×%5Ñ%5Ô6ð Ü×1Ò1´#°g×6FÑ6FÓ2GÓH�÷ ðØ×$Ñ$×6Ñ6°xÔ@ô
 —l‘l×/Ñ/Ó1ˆØ'¨;Ô6ÜŸL™L×,Ñ,Ð-IÓJˆDŒMà'+§}¡}×'<Ñ'<Ð=[Ó'\ˆDÕ$à ˆDŒMØ'(ˆDÔ$Ø×'Ñ'×5Ñ5°eÔ<ô �nŠnÓˆØ—‘Ð>ÀÓDˆÜ—~’~ eÐ-LÓMˆŒØ�‰×&Ñ&Ø! 4×#@Ñ#@ô	Bà�‰×&Ñ&Ø˜d×5Ñ5ô	7à�‰×&Ñ&Ø˜D×1Ñ1ô	3à�‰×&Ñ&Ø˜$×-Ñ-ô	/ð 	�‰×ÑÔð .3ˆÔ*ð ˆŒð 	×ÑÔàˆŒØ"ˆÔð 	×ÑÔØ×"Ñ"Ô$Ø×#Ñ#Ô%à�‰ÔØ�‰Ôà×ÑÔØ×ÑÔà×ÑÔØ×ÑÔà×ÑÔä ×"Ò"Ø× Ñ Ô"ð 	×Ñ×"Ñ" =°$×2UÑ2UÔVç�w×'×'Ð'Ø×Ñ×/Ñ/´°G×4DÑ4DÓ0EÔFð �DŒLÜ�G‰G�O‰O˜DÓ!¬w¯~©~×/FÑ/FÀzÕ/RÜ/6¯~©~×/BÑ/BÐCYÕ/Zð&\ô \à�N‰N˜4Ô ð 	×Ñ×)Ñ)¨!¨QÖ/øðÚûô "ô  Ø“ð ûð
Úús*   ÉY+ Ê")Y3 ËZ Ù+Y0Ù3ZÚZÚZc                óÊ   € V P                   '       d;   V P                   P                  4       '       d   V P                   P                  4        \        P                  ! V 4       R # r#   )r·   Úis_aliveÚ	terminater   Údo_shutdownr;   s   &r-   rØ   Ú!SoftwarePropertiesGtk.do_shutdown;  sB   € Ø××Ð 4×#6Ñ#6×#?Ñ#?×#AÒ#AØ×Ñ×)Ñ)Ô+Ü×'Ò'¨Ö-r/   c                óÖ   € W P                   8X  g   W P                  8X  d.   V P                  P                  R 4       V P	                  4        R# V P                  P                  R4       R# )FTN)Úvbox_driversÚ	vbox_authrŒ   Úset_visibleÚmaybe_detect_drivers)r*   ÚnotebookÚpageÚpage_nums   &&&&r-   rÄ   Ú4SoftwarePropertiesGtk.on_main_notebook_page_switched@  sK   € à×$Ñ$Ô$¨·±Ô(>Ø×Ñ×*Ñ*¨5Ô1Ø×%Ñ%Ö'à×Ñ×*Ñ*¨4Ö0r/   c                óH  € V P                   ;'       d    V P                   P                  4       pV P                  '       gb   V'       gX   \        P                  ! V P
                  R 7      pV P                  P                  \        R4      4       VP                  4        R# R# R# ))Útargetz"Searching for available drivers...N)
r·   rÖ   r³   Ú	threadingÚThreadÚdetect_driversÚlabel_driver_detailÚset_textrg   Ústart)r*   Úis_detecting_driversÚts   &  r-   rÞ   Ú*SoftwarePropertiesGtk.maybe_detect_driversH  sv   € Ø#×2Ñ2×UÐU°t×7JÑ7J×7SÑ7SÓ7UÐØ×2×2Ð2×6JÜ× Ò ¨×(;Ñ(;Ô<ˆAØ×$Ñ$×-Ñ-¬aÐ0TÓ.UÔVØ�G‰GŽIñ 7KÑ2r/   c                ój   € \         P                  ! 4       '       d   \         P                  ! 4        K2  R# )z(abstract interface to keep the UI alive N)r   Úevents_pendingÚmain_iterationr;   s   &r-   Úupdate_interfaceÚ&SoftwarePropertiesGtk.update_interfaceO  s"   € ä× Ò ×"Ò"Ü×ÒÖ ñ #r/   c                ó  € V P                  V P                  4       V P                  4       pV P                  P                  V4       V P                  P	                  RV P
                  4      V P                  V P                  &   R# )z>setup the widgets that allow configuring the release upgrades ÚchangedN)Úmaybe_disconnect_handlerÚcombobox_release_upgradesÚget_release_upgrades_policyÚ
set_activeri   Ú$on_combobox_release_upgrades_changedr´   )r*   Úis   & r-   r¹   Ú+SoftwarePropertiesGtk.init_release_upgradesT  sl   € à×%Ñ% d×&DÑ&DÔEØ×,Ñ,Ó.ˆØ×&Ñ&×1Ñ1°!Ô4à×+Ñ+×3Ñ3°IØ48×4]Ñ4]ó_ð 	�‰�d×4Ñ4Ó5r/   c                ó$  € \         P                  ! 4        \         P                  ! 4        \         P                  ! R 4      V n        \         P
                  ! V P                  4      V n        \         P                  ! V P                  4      V n        R # r#   )	rÈ   Úinit_configÚinit_systemÚCacheÚ	apt_cacheÚDepCacheÚdepcacheÚPackageRecordsÚrecordsr;   s   &r-   rµ   Ú$SoftwarePropertiesGtk.init_apt_cache\  sV   € Ü×ÒÔÜ×ÒÔÜ Ÿš tÓ,ˆŒÜ×(Ò(¨¯©Ó8ˆŒÜ×-Ò-¨d¯n©nÓ=ˆŽr/   c                óÐ   € \         P                  ! R 4      V n        \         P                  ! V P                  4      V n        \         P
                  ! V P                  4      V n        R # r#   )rÈ   rÿ   r   r  r  r  r  r;   s   &r-   Úupdate_apt_cacheÚ&SoftwarePropertiesGtk.update_apt_cachec  s>   € Ü Ÿš tÓ,ˆŒÜ×(Ò(¨¯©Ó8ˆŒÜ×-Ò-¨d¯n©nÓ=ˆŽr/   c                ó  € V P                  V P                  4       V P                  P                  4        V P                  P                  4       p/ V n        \        V4       F/  w  r#VP                  VP                  ^4      pW@P                  V&   K1  	  V P                  4       pWPP                  P                  4       9   gA   V^ 8”  d:   V P                  P                  \        R4      V,          4       WPP                  R&   V P                   F8  pV P                  V,          V8X  g   K  V P                  P                  V4        M	  V P                  P                  RV P                  4      V P                  V P                  &   R# )zASet up the widgets that allow to configure the update automation zEvery %s daysrô   Néÿÿÿÿ)rõ   Úcombobox_update_intervalÚshowÚ	get_modelÚcombobox_interval_mappingÚ	enumerateÚ	get_valueÚiterÚget_update_intervalÚvaluesÚappend_textrg   rø   ri   Ú#on_combobox_update_interval_changedr´   )r*   Úmodelrú   ÚrowÚvalueÚupdate_daysÚkeys   &      r-   r¸   Ú&SoftwarePropertiesGtk.init_auto_updateh  sJ  € à×%Ñ% d×&CÑ&CÔDØ×%Ñ%×*Ñ*Ô,ð
 ×-Ñ-×7Ñ7Ó9ˆØ)+ˆÔ&Ü! %Ö(‰HˆQà—O‘O C§H¡H¨aÓ0ˆEØ05×*Ñ*¨1Ó-ñ )ð ×.Ñ.Ó0ˆð ×<Ñ<×CÑCÓEÔEØ˜QŒØ×-Ñ-×9Ñ9¼!¸OÓ:LØ<Gõ;Hô Ià5@×.Ñ.¨rÑ2à×1Ô1ˆCØ×-Ñ-¨cÕ2°kÖAØ×-Ñ-×8Ñ8¸Ô=Ùñ 2ð ×*Ñ*×2Ñ2°9Ø37×3[Ñ3[ó]ð 	�‰�d×3Ñ3Ó4r/   c                ór   € V P                   P                  V4      pV'       d   VP                  V4       R # R # r#   )r´   ÚgetÚ
disconnect)r*   ÚownerÚhandlers   && r-   rõ   Ú.SoftwarePropertiesGtk.maybe_disconnect_handlerŠ  s,   € Ø—-‘-×#Ñ# EÓ*ˆßØ×Ñ˜WÖ%ñ r/   c                óº  € V P                  4        V P                  '       d‰   V P                  P                  R4      pV P                  P	                  4       p\        V4       FD  w  r4VP                  VP                  ^4      pW8X  g   K)  V P                  P                  V4        M	  V P                  V P                  4       V P                  P                  RV P                  4      V P                  V P                  &   V P                  V P                  4       V P                  P                  RV P                  4      V P                  V P                  &   R# )z>Represent the level of update automation in the user interfacerx   rô   N)Úset_security_update_levelr£   r¤   r¦   r  r  r  r  rø   rõ   Úcombobox_security_updatesri   Úset_sec_update_automation_levelr´   Ú!set_other_update_automation_level)r*   Úlevel_otherr  rú   r  Úlevels   &     r-   rº   Ú,SoftwarePropertiesGtk.show_auto_update_level�  s  € ð 	×&Ñ&Ô(ð �=�=ˆ=ØŸ-™-×/Ñ/Ð0NÓOˆKØ×/Ñ/×9Ñ9Ó;ˆEÜ% eÖ,‘�ØŸ™¨¯©°!Ó4�ØÖ'Ø×/Ñ/×:Ñ:¸1Ô=Ùñ	 -ð 	×%Ñ% d×&DÑ&DÔEà×+Ñ+×3Ñ3°IØ48×4XÑ4XóZð 	�‰�d×4Ñ4Ñ5ð 	×%Ñ% d×&AÑ&AÔBà×(Ñ(×0Ñ0°Ø15×1WÑ1WóYð 	�‰�d×1Ñ1Ó2r/   c                óø  € V P                  4       pVR8X  d   V P                  P                  R4       MV P                  P                  R4       V\        P                  8X  g   V\        P
                  8X  d   V P                  P                  ^ 4       R# V\        P                  8X  d   V P                  P                  ^4       R# V\        P                  8X  d   V P                  P                  ^4       R# R# )zHFetch the security level, Enable/Disable and set the value appropriatelyNFT)	Úget_update_automation_levelr$  r§   ÚsoftwarepropertiesÚUPDATE_MANUALÚUPDATE_NOTIFYrø   ÚUPDATE_DOWNLOADÚUPDATE_INST_SEC)r*   Ú	level_secs   & r-   r#  Ú/SoftwarePropertiesGtk.set_security_update_level©  s¿   € ð ×4Ñ4Ó6ˆ	Ø˜ÔØ×*Ñ*×8Ñ8¸Õ?à×*Ñ*×8Ñ8¸Ô>àÔ+×9Ñ9Ô9ØÔ/×=Ñ=Ô=Ø×*Ñ*×5Ñ5°aÖ8ØÔ,×<Ñ<Ô<Ø×*Ñ*×5Ñ5°aÖ8ØÔ,×<Ñ<Ô<Ø×*Ñ*×5Ñ5°aÖ8ñ =r/   c                ó|   € VP                  4       pV'       d$   VP                  V4       VP                  4       pK+  R # r#   )Úget_first_childÚremove)r*   ÚboxÚcs   && r-   Úremove_all_box_childrenÚ-SoftwarePropertiesGtk.remove_all_box_children»  s1   € Ø×ÑÓ!ˆßØ�J‰J�qŒMØ×#Ñ#Ó%ŠAñ r/   c                ó  € V P                   P                  \        R4      V P                  P                  P                  4       ,          4       V P                  P                  RV P                  4      V P                  V P                  &   V P                  V P                  4       V P                  P                  P                   F«  p\        R4      VP                  4       VP                  3,          p\         P"                  ! VR7      pWn        VP                  RV P&                  VP                  4      V P                  V&   V P                  P)                  V4       VP+                  4        K­  	  V P                  V P,                  4       V P                  P                  P.                   F·  pVP0                  R8X  d   K  RVP                  9   g   K)  \         P"                  ! VP2                  : RVP                  : R2R7      pWCn        VP                  RV P6                  V4      V P                  V&   V P,                  P)                  V4       VP+                  4        K¹  	  \9        4       p\;        4       '       g   R	pR	pM9\=        R
VR7      w  r‰\=        RVR7      w  r«\?        T;'       g    T
4      pRW›39   p\A        4       pV'       d`   \        R4      p VPC                  RR4      PE                  R4      w  rïp\F        PF                  PI                  VR4      PK                  4       pM\        R4      pVPP                  pV PR                  PU                  V4       Rp\F        PF                  PW                  4       PK                  4       pVV8¼  d`   V'       d6   VPX                  P[                  RR4      pRVP[                  RR4      ,          p\        R4      VP]                  R4      ,          pMfVV\F        P^                  ! ^<R7      ,
          8¼  d#   \        R4      VP]                  R4      ,          pM!\        R4      VP]                  R4      ,          pV P`                  P                  V4       V Pb                  PU                  RV: R \        R!4      : R"24       V Pb                  Pe                  T;'       d    V'       * 4       \        R#4      VP]                  R4      ,          pV Pf                  pV Pi                  V4       VP                  R$V Pj                  4      V P                  V&   \         Pl                  ! 4       pV Pn                  Pq                  VR%4       V Pn                  Ps                  VR&^ 4       V Pi                  V Pn                  4       V Pn                  P                  R$V Pt                  4      V P                  V Pn                  &   \         Pv                  ! \x        Pz                  \x        Pz                  \x        P|                  4      pV Pn                  P                  V4       V Pn                  P�                  V P‚                  ^4       R'#   \L         d    \O        R4       TPP                  p EL>i ; i)(z9Setup the user interface elements to represent the distroz%s SoftwareÚtoggledz%s (%s))Úlabelúdeb-srcÚproposedz (Ú)Fz	esm-infra)Ústatuszesm-appsÚenabledzExtended Security MaintenanceÚexpiresÚ Ú+z%Y-%m-%dT%H:%M:%Sz&Unable to determine UA contract expiryzBasic Security Maintenancezhttps://ubuntu.com/esmz LTSzhttps://ubuntu.com/%sÚ.Ú-z Ended %s - extend or upgrade nowz%x)Údaysz Ends %s - extend or upgrade soonzActive until %sz	<a href="z">u	   Extendâ€¦z</a>zEnded %srô   TÚtextN)BÚlabel_dist_nameÚ	set_labelrg   ÚdistroÚidÚ
capitalizeÚcheckbutton_source_coderi   Ú"on_checkbutton_source_code_toggledr´   r8  Úvbox_dist_compsÚsource_templateÚ
componentsÚget_descriptionÚnamer   ÚCheckButtonÚcompÚon_component_toggledÚappendr  Údev_boxÚchildrenÚtypeÚdescriptionÚtemplateÚon_checkbutton_child_toggledr   r   r   Úboolr   r  Ú	partitionÚdatetimeÚstrptimeÚdateÚ
ValueErrorÚprintÚeolÚlabel_esm_statusÚ
set_markupÚnowÚversionÚreplaceÚstrftimeÚ	timedeltaÚ	label_eolÚlabel_esm_subscriberÝ   Úcombobox_updates_subscriptionrõ   Ú(on_combobox_updates_subscription_changedÚCellRendererTextÚcombobox_serverÚ
pack_startÚadd_attributeÚon_combobox_server_changedÚ	ListStorer	   ÚTYPE_STRINGÚTYPE_BOOLEANÚ	set_modelÚset_row_separator_funcÚis_row_separator)r*   rV  r<  Úcheckboxr]  r@  Úesm_availableÚesm_enabledÚinfra_availableÚinfra_statusÚapps_availableÚapps_statusrK  Úeol_textÚdtÚ_sepÚ_tzÚeol_dateÚesm_urlÚtodayÚ
distro_verÚeol_expiry_textÚcomboboxÚcellÚserver_stores   &                        r-   r¿   Ú!SoftwarePropertiesGtk.init_distroÁ  s0  € ð 	×Ñ×&Ñ&¤q¨Ó'7¸$¿+¹+¿.¹.×:SÑ:SÓ:UÕ'UÔVð #×:Ñ:×BÑBÀ9ØCG×CjÑCjólð 	�‰�d×2Ñ2Ñ3ð
 	×$Ñ$ T×%9Ñ%9Ô:à—K‘K×/Ñ/×:Ô:ˆDô �i“L D×$8Ñ$8Ó$:¸D¿I¹IÐ#FÕFˆEÜ—’¨UÔ3ˆHà ŒMà&.×&6Ñ&6°yØ37×3LÑ3LØ37·9±9ó'>ˆD�M‰M˜(Ñ#ð × Ñ ×'Ñ'¨Ô1Ø�M‰MŽOñ ;ð  	×$Ñ$ T§\¡\Ô2àŸ™×3Ñ3×<Ô<ˆHà�}‰} 	Ô)ÙØ˜XŸ]™]Ö*ÜŸ?š?¸h×>RÔ>RØ>F¿m¼mð2Mô N�à$,Ô!à×$Ñ$ YØ%)×%FÑ%FØ%-ó/ð —‘˜hÑ'ð —‘×#Ñ# HÔ-Ø—‘–ñ =ô “ˆÜ$×&Ò&Ø %�Ø#‘ä2GÈÐ\bÔ2cÑ/�Ü0EÀjÐY_Ô0`Ñ-�Ü $ _×%FÐ%F¸Ó G�Ø'¨LÐ+FÑF�ÜÓ!ˆßÜÐ<Ó=�ð
	.ð )/¯
©
°9¸bÓ(A×(KÑ(KÈCÓ(P™˜ #Ü#+×#4Ñ#4×#=Ñ#=ØÐ 3ó$ç™$›&ñ !ô Ð9Ó:�Ø!Ÿ:™:�Ø×Ñ×(Ñ(¨Ô2Ø*ˆÜ×!Ñ!×%Ñ%Ó'×,Ñ,Ó.ˆØ�HÔß à%+§^¡^×%;Ñ%;¸FÀBÓ%G˜
Ø"9¸J×<NÑ<NÈsÐTWÓ<XÕ"X˜Ü"#Ð$FÓ"GÈ(×J[ÑJ[Ð\`ÓJaÕ"a‘Ø�h¤×!3Ò!3¸Ô!<Õ<Ô<Ü"#Ð$FÓ"GÈ(×J[ÑJ[Ð\`ÓJaÕ"a‘ä"#Ð$5Ó"6¸×9JÑ9JÈ4Ó9PÕ"P�Ø�‰× Ñ  Ô1Ø× Ñ ×+Ò+Û+2´A°k¶NÐCô	
ð 	× Ñ ×,Ñ,Ø×1Ð1 k¤/ô	
ô ˜J›-¨(×*;Ñ*;¸DÓ*AÕAˆð ×5Ñ5ˆØ×%Ñ% hÔ/Ø"*×"2Ñ"2Ø�t×DÑDó#Fˆ�‰�hÑô ×#Ò#Ó%ˆØ×Ñ×'Ñ'¨¨dÔ3Ø×Ñ×*Ñ*¨4°¸Ô;Ø×%Ñ% d×&:Ñ&:Ô;Ø.2×.BÑ.B×.JÑ.JÈ9Ø;?×;ZÑ;Zó/\ˆ�‰�d×*Ñ*Ñ+ä—}’}¤W×%8Ñ%8Ü%,×%8Ñ%8Ü%,×%9Ñ%9ó;ˆð 	×Ñ×&Ñ& |Ô4Ø×Ñ×3Ñ3°D×4IÑ4IÈ1ÖMøô[ "ô .ÜÐFÔGØ#)§:¡:›ð.ús   Ë!AY$ Ù$"Z
Ú	Z
c                óÄ   € V P                    FO  pVP                  V P                   V,          4      '       g   K-  VP                  V P                   V,          4       KQ  	  R # r#   )r´   Úhandler_is_connectedÚhandler_block©r*   Úwidgets   & r-   Úblock_handlersÚ$SoftwarePropertiesGtk.block_handlers5  sA   € Ø—m”mˆFØ×*Ñ*¨4¯=©=¸Õ+@×AÔAØ×$Ñ$ T§]¡]°6Õ%:Ö;ó $r/   c                óÄ   € V P                    FO  pVP                  V P                   V,          4      '       g   K-  VP                  V P                   V,          4       KQ  	  R # r#   )r´   r’  Úhandler_unblockr”  s   & r-   Úunblock_handlersÚ&SoftwarePropertiesGtk.unblock_handlers:  sA   € Ø—m”mˆFØ×*Ñ*¨4¯=©=¸Õ+@×AÔAØ×&Ñ& t§}¡}°VÕ'<Ö=ó $r/   c                óx  € V P                  4        V P                  P                  4       pV'       dR   V P                  VP                  4      w  r#VP                  V4       VP                  V4       VP                  4       pKY  V P                  P                  4       pV'       dR   V P                  VP                  4      w  r#VP                  V4       VP                  V4       VP                  4       pKY  \        4       pV P                  P                  P                   F±  pVP                  R8X  d   K  VP                   P#                  R4      R,          pV P                  V4      w  r#V;P$                  V,          un        V'       g   Kn  V\&        8X  d
   RVn        K‚  V\*        8X  d
   RVn        K–  V\.        8X  d
   RVn        Kª  RVn        K³  	  VP5                  4       pV P6                  pVP9                  4       p	V\:        8X  d!    V	P=                  \?        \:        4      4       M. V	PG                  V	P=                  \?        \:        4      4      4       VP                  V4       VPI                  VP$                  '       * 4       \K        V P                  PL                  4      ^8  dS   V P6                  PI                  R4       V P                  PI                  R4       V PN                  PI                  R4       M6V P                  PI                  R4       V PN                  PI                  R4       V PQ                  4       p
V
R8X  d   V PN                  P                  R4       MtV
R8X  d8   V PN                  P                  R4       V PN                  P                  R4       M6V PN                  P                  R4       V PN                  P                  R4       V PR                  P9                  4       pVPU                  4        . pV P                  PW                  4        F¦  w  rÞpVPC                  WÞR.4       WÞ.V PX                  9   d   V PX                  PG                  WÞ.4       MVR8w  d   VPC                  WÞ.4       VR8X  g   Kj  \K        V4      ^,
          V n-        V PR                  P                  V PZ                  4       K¨  	  V PX                   F  w  rÞVPC                  WÞR.4       K  	  WÀn,        V P                  P                  P\                  '       d1   VPC                  . RO4       VPC                  \E        R4      RR.4       V P_                  4        V P`                  Pb                  R8X  g   V P`                  Pd                  R8X  Edb   \g        RV P                  PL                  ,          4       \g        R	V P                  Ph                  ,          4       \g        R
4       V P                  Pj                   F  pV Pm                  V4       K  	  \g        R4       V P                  Pn                   F  pV Pm                  V4       K  	  \g        R4       V P                  Pp                   F  pV Pm                  V4       K  	  \g        R4       V P                  Pr                   F  pV Pm                  V4       K  	  \g        R4       V Pt                   F  pV Pm                  V4       K  	  R# R#   \@         d     T	PC                  \E        R4      .4        ELËi ; i  \@         d     ELÝi ; i)z(Fill the distro user interface with lifer=  rF  TÚCustomFNúOther...zENABLED COMPS: %szINTERNET COMPS: %szMAIN SOURCESzCHILD SOURCESzSOURCE CODE SOURCESzDISABLED SOURCESÚISVr
  )ÚsepNT);r–  rY  r4  Úget_comp_child_stater]  rø   Úset_inconsistentÚget_next_siblingrP  Úget_comp_download_staterV  rH   rK  rQ  rZ  r[  rT  ÚsplitrR   ÚPOCKET_SECURITYr   ÚPOCKET_UPDATESr   ÚPOCKET_BACKPORTSr   rJ   rO   rp  r  rK   Úget_iter_from_stringre   rd  rX  rg   r5  r§   ÚlenÚenabled_compsrN  Úget_source_code_staters  ÚclearÚget_server_listÚseen_serverÚactive_serverÚ
mirror_setrš  rr   ÚdebugÚmassive_debugre  Údownload_compsÚmain_sourcesÚprint_source_entryÚchild_sourcesÚsource_code_sourcesÚdisabled_sourcesÚsourceslist_visible)r*   r}  ÚactiverR   Úsubscriptionsr]  Úpocketr@  r�  r  Úsource_code_stater�  Úseen_server_newrT  ÚuriÚsources   &               r-   rÀ   Ú!SoftwarePropertiesGtk.show_distro?  s¢  € à×ÑÔð —<‘<×/Ñ/Ó1ˆßØ%)×%>Ñ%>¸x×?PÑ?PÓ%QÑ"ˆVØ×Ñ Ô'Ø×%Ñ% lÔ3Ø×0Ñ0Ó2ŠHð ×'Ñ'×7Ñ7Ó9ˆßà%)×%AÑ%AÀ(Ç-Á-Ó%PÑ"ˆVØ×%Ñ% lÔ3Ø×Ñ Ô'Ø×0Ñ0Ó2ŠHô ,Ó-ˆØŸ™×3Ñ3×<Ô<ˆHà�}‰} 	Ô)ÙØ—]‘]×(Ñ(¨Ó-¨bÕ1ˆFØ%)×%>Ñ%>¸xÓ%HÑ"ˆVØ×&Ò&¨,Õ6Õ&ß‰vØœ_Ô,Ø-1�MÖ*Øœ~Ô-Ø,0�MÖ)ØÔ/Ô/Ø.2�MÖ+à*.�MÖ'ñ =ð" ×)Ñ)Ó+ˆØ×5Ñ5ˆØ×"Ñ"Ó$ˆØ”^Ô#ð,Ø×*Ñ*¬3¬~Ó+>Õ?ðØ—‘˜U×7Ñ7¼¼NÓ8KÓLÔMð 	×Ñ˜FÔ#Ø×Ñ =×#=Ñ#=Ô=Ô>ô ˆt�{‰{×(Ñ(Ó)¨AÔ-Ø×.Ñ.×<Ñ<¸UÔCØ�L‰L×&Ñ& uÔ-Ø×(Ñ(×6Ñ6°uÕ=à�L‰L×&Ñ& tÔ,Ø×(Ñ(×6Ñ6°tÔ<ð !×6Ñ6Ó8ÐØ Ô$Ø×(Ñ(×9Ñ9¸$Õ?Ø $Ô&Ø×(Ñ(×3Ñ3°DÔ9Ø×(Ñ(×9Ñ9¸%Õ@à×(Ñ(×3Ñ3°EÔ:Ø×(Ñ(×9Ñ9¸%Ô@ð ×+Ñ+×5Ñ5Ó7ˆØ×ÑÔØˆØ#'§;¡;×#>Ñ#>Ö#@ÑˆT˜Ø×Ñ ¨EÐ 2Ô3Øˆ{˜d×.Ñ.Ô.Ø× Ñ ×'Ñ'¨¨Õ4Ø˜”Ø×&Ñ&¨ {Ô3Ø˜Ž~Ü%(¨Ó%6¸Õ%:�Ô"Ø×$Ñ$×/Ñ/°×0BÑ0BÖCñ $Að  ×+Ô+‰KˆTØ×Ñ ¨EÐ 2Ö3ñ ,à*Ôð �;‰;×&Ñ&×1×1Ð1Ø×ÑÒ 3Ô4Ø×Ñ¤ :£°°eÐ <Ô=ð 	×ÑÔð �<‰<×Ñ Ô%¨¯©×)CÑ)CÀtÕ)KÜÐ%¨¯©×(AÑ(AÕAÔBÜÐ&¨¯©×)CÑ)CÕCÔDÜ�.Ô!ØŸ+™+×2Ô2�Ø×'Ñ'¨Ö/ñ 3ä�/Ô"ØŸ+™+×3Ô3�Ø×'Ñ'¨Ö/ñ 4äÐ'Ô(ØŸ+™+×9Ô9�Ø×'Ñ'¨Ö/ñ :äÐ$Ô%ØŸ+™+×6Ô6�Ø×'Ñ'¨Ö/ñ 7ä�%ŒLØ×2Ô2�Ø×'Ñ'¨Ö/ó 3ñ! *Løôs ô ,Ø—‘œa ›k˜]×+ð,ûô
 ô Úðús$   È[= È.-\* Û=&\'Ü&\'Ü*\9Ü8\9c                óž  a a€ SP                  4       pRpV^ 8X  d   \        P                  pM/V^8X  d   \        P                  pMV^8X  d   \        P                  p VS P                  4       8w  d?   V3R lpV V3R lpSP                  R4       S P                  P                  VVVR7       R# R#   \        P                   d†   p\        T4      '       dj   S P                  S P                  ,          pS P                  P                  T4       S P                  4        S P                  P!                  T4        Rp?R#  Rp?R# Rp?ii ; i)zOCall the backend to set the security update automation level to the given
valuec                  ó*   <€ S P                  R 4       R# ©TN©r§   ©r•  s   €r-   r   ÚFSoftwarePropertiesGtk.set_sec_update_automation_level.<locals>.handlerÇ  s   ø€ Ø×(Ñ(¨Ö.r/   c                 ó°   <€ SP                  R 4       \        V \        P                  4      '       d$   \	        V 4      '       d   SP                  4        R# V hrÅ  )r§   Ú
isinstancer¨   ÚDBusExceptionrX   rº   ©Úer*   r•  s   &€€r-   Úon_errorÚGSoftwarePropertiesGtk.set_sec_update_automation_level.<locals>.on_errorÊ  sC   ø€ Ø×(Ñ(¨Ô.ä! !¤T×%7Ñ%7×8Ò8ÜBÀ1×EÒEØ ×7Ñ7Ô9Ù"Ø�Gr/   F©Úreply_handlerÚerror_handlerNr
  )Ú
get_activer,  r.  r/  r0  r+  r§   r¬   ÚSetUpdateAutomationLevelr¨   rË  rX   r´   r$  r“  r#  r™  )r*   r•  ÚindexÚstater   rÎ  rÍ  Úcombo_handlers   ff      r-   r%  Ú5SoftwarePropertiesGtk.set_sec_update_automation_level¹  s  ù€ ð ×!Ñ!Ó#ˆØˆØ�AŒ:Ü&×4Ñ4‰EØ�aŒZÜ&×6Ñ6‰EØ�aŒZÜ&×6Ñ6ˆEð	NØ˜×8Ñ8Ó:Ô:õ/öð ×$Ñ$ UÔ+Ø—‘×5Ñ5°eØDKØDLð 6ö Nñ ;øô$ ×!Ñ!ô 	NÜ6°q×9Ò9Ø $§¡¨d×.LÑ.LÕ M�Ø×.Ñ.×<Ñ<¸]ÔKØ×.Ñ.Ô0Ø×.Ñ.×>Ñ>¸}×MÒMõ	 :ûð	Nús   ÁAB2 Â2EÃA4EÅEc                ó°   € VP                  4       pV P                  P                  4       pW2,          ^,          pV P                  P	                  RV4       R# )zBSet the other update automation level to the given value via gconfrx   N)rÓ  r¦   r  r£   Úset_int)r*   r•  rÕ  r  rG  s   &&   r-   r&  Ú7SoftwarePropertiesGtk.set_other_update_automation_levelß  sD   € à×!Ñ!Ó#ˆØ×+Ñ+×5Ñ5Ó7ˆà�|˜A�ˆØ�‰×ÑÐ<¸dÖCr/   c                ó$   € VP                  W#4      # )z$Check if a given row is a separator )r  )r*   r  r  Úcolumns   &&&&r-   r|  Ú&SoftwarePropertiesGtk.is_row_separatorç  s   € à�‰˜tÓ,Ð,r/   c                ó    a a€ SP                  4       pV3R lpVV 3R lpSP                  R4       S P                  P                  W#VR7       R# )z set the release upgrades policy c                  ó*   <€ S P                  R 4       R# rÅ  rÆ  )r�  s   €r-   r   ÚKSoftwarePropertiesGtk.on_combobox_release_upgrades_changed.<locals>.handlerï  s   ø€ Ø×"Ñ" 4Ö(r/   c                 ó°   <€ SP                  R 4       \        V \        P                  4      '       d$   \	        V 4      '       d   SP                  4        R# V hrÅ  )r§   rÊ  r¨   rË  rX   r¹   )rÍ  r�  r*   s   &€€r-   rÎ  ÚLSoftwarePropertiesGtk.on_combobox_release_upgrades_changed.<locals>.on_errorò  sC   ø€ Ø×"Ñ" 4Ô(ä˜!œT×/Ñ/×0Ò0Ü:¸1×=Ò=Ø×.Ñ.Ô0ÙØˆGr/   FrÐ  N)rÓ  r§   r¬   ÚSetReleaseUpgradesPolicy)r*   r�  rú   r   rÎ  s   ff   r-   rù   Ú:SoftwarePropertiesGtk.on_combobox_release_upgrades_changedë  sH   ù€ à×ÑÓ!ˆõ	)ö	ð 	×Ñ˜uÔ%Ø�‰×-Ñ-¨aØ<Dð 	.ö 	Fr/   c                óô  a a€ SP                  4       pV\        8w  d?   SP                  4       p VP                  VP	                  \        \        4      4      4       SP                  R 4       VV 3R lp V\        8X  d)   V! \        R4       V! \        R4       V! \        R4       MeV\        8X  d)   V! \        R4       V! \        R4       V! \        R 4       M2V\        8X  d(   V! \        R4       V! \        R 4       V! \        R 4       S P                  P                  P                    FY  pVP"                  R8X  d   K  VP$                  P'                  R4      R,          pV\        \        \        39  g   KP  V! VR 4       K[  	  SP                  R4       R#   \         d     ELOi ; i  \(        P*                   d   p\-        T4      '       g   Th Rp?LRRp?ii ; i  SP                  R4       i ; i)Fc                 ó.  <aa€ \         P                  ! 4       oR oVV3R lpRP                  SP                  P                  V 4      pV'       dO   \
        P                  ! RP                  V4      4       SP                  P                  VSP                  VR7       MM\
        P                  ! RP                  V4      4       SP                  P                  VSP                  VR7       SP                  4        SP                  4        S'       d   ShR # )Nc                 ó,   <€ V oSP                  4        R # r#   ©Úquit)rÍ  r<   Úloops   &€€r-   rÎ  ÚnSoftwarePropertiesGtk.on_combobox_updates_subscription_changed.<locals>._toggle_child_source.<locals>.on_error  s   ø€ à�	Ø—	‘	–r/   z{}-{}zenabling {}rÐ  zdisabling {})r   ÚMainLoopÚformatrK  ÚcodenamerU   Úinfor¬   ÚEnableChildSourcerê  ÚDisableChildSourceÚpopdownr1   )r½  rA  rÎ  rÁ  r<   rë  r�  r*   s   &&  @@€€r-   Ú_toggle_child_sourceÚ\SoftwarePropertiesGtk.on_combobox_updates_subscription_changed.<locals>._toggle_child_source
  sÓ   ú€ Ü—=’=“?ˆDØˆIöð
 —^‘^ D§K¡K×$8Ñ$8¸&ÓAˆFßÜ—’˜]×1Ñ1°&Ó9Ô:Ø—‘×.Ñ.¨vØ=A¿Y¹YØ=Eð /õ Gô —’˜^×2Ñ2°6Ó:Ô;Ø—‘×/Ñ/°Ø>B¿i¹iØ>Fð 0ô Hð ×ÑÔØ�H‰HŒJßØ�ñ r/   Tr=  rF  Nr
  )rÓ  rK   r  r5  r©  re   rd  r§   rL   r¦  r§  r¨  rM   rN   rK  rQ  rZ  r[  rT  r¥  r¨   rË  rX   )r*   r�  rÕ  r  rô  r]  r½  rÍ  s   ff      r-   rq  Ú>SoftwarePropertiesGtk.on_combobox_updates_subscription_changedÿ  s™  ù€ Ø×#Ñ#Ó%ˆØ”NÔ"Ø×&Ñ&Ó(ˆEðØ—‘˜U×7Ñ7¼¼NÓ8KÓLÔMð 	×Ñ˜uÔ%ö	 ð4	)ØœÔ#Ù$¤_°dÔ;Ù$¤^°TÔ:Ù$Ô%5°tÕ<ØÔ-Ô-Ù$¤_°dÔ;Ù$¤^°TÔ:Ù$Ô%5°uÕ=ØÔ*Ô*Ù$¤_°dÔ;Ù$¤^°UÔ;Ù$Ô%5°uÔ=Ø ŸK™K×7Ñ7×@Ô@�Ø—=‘= IÔ-ÙØ!Ÿ™×,Ñ,¨SÓ1°"Õ5�Ø¤/´>ÔCSÐ!TÖTÙ(¨°Ö7ñ Að ×"Ñ" 4Ö(øôm ô Úðûôd ×!Ñ!ô 	Ü:¸1×=Ò=Ø�ô >ûð	ûð ×"Ñ" 4Õ(úsB   ¯-F Á5DF/ Å=F/ ÆF,Æ+F,Æ/G!ÇGÇG$ ÇG!Ç!G$ Ç$G7c                óª  a a€ SP                  4       S P                  8X  d   R# SP                  4       pSP                  4       pVP	                  V^4      pVP	                  V^ 4      p V\        R4      8X  dF   \        S P                  S P                  S P                  4      pVV 3R lpVP                  V4       R# VR8w  dY   \        S P                  P                  4      ^ 8”  d3   SP                  4       S n        S P                  P                  V4       R# R# R#   \        P                    d   p\#        T4      '       g   Th Rp?R# Rp?ii ; i)zO
Replace the servers used by the main and update sources with
the selected one
Nrž  c                 óö   <€  V '       d   SP                   P                  V 4       R # SP                  SP                  4       R #   \        P
                   d   p\        T4      '       g   Th R p?R # R p?ii ; ir#   )r¬   ÚChangeMainDownloadServerrø   r°  r¨   rË  rX   )ÚurlrÍ  r�  r*   s   & €€r-   Ú_on_mirror_selectedÚMSoftwarePropertiesGtk.on_combobox_server_changed.<locals>._on_mirror_selectedM  s]   ø€ ð$ßØ ŸL™L×AÑAÀ#ÖFà$×/Ñ/°×0BÑ0BÖCøÜ×-Ñ-ô $ÜFÀq×IÒIØ"#˜Gõ  Jûð$ús!   ƒA ‹A ¨A ÁA8ÁA3Á3A8)rÓ  r°  r  Úget_active_iterr  rg   r   rˆ   rs   rK  rj   rª  Úused_serversr¬   rù  r¨   rË  rX   )	r*   r�  r�  r  rÀ  rT  Údialogrû  rÍ  s	   ff       r-   rv  Ú0SoftwarePropertiesGtk.on_combobox_server_changed=  s  ù€ ð
 ×ÑÓ  D×$6Ñ$6Ô6ÙØ×)Ñ)Ó+ˆØ×'Ñ'Ó)ˆØ×$Ñ$ T¨1Ó-ˆØ×%Ñ% d¨AÓ.ˆð	Ø”q˜“}Ô$Ü% d×&6Ñ&6Ø&*§l¡lØ&*§k¡kó3�ö$ð —‘Ð2Ö3Ø˜”¤ T§[¡[×%=Ñ%=Ó!>ÀÔ!BØ%-×%8Ñ%8Ó%:�Ô"Ø—‘×5Ñ5°cÖ:ñ "C‘øô ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús    Á)AD Â>AD ÄEÄ4EÅEc                ó  €  VP                  4       R8X  d   V P                  P                  V4       R# V P                  P                  V4       R#   \        P
                   d   p\        T4      '       g   Th Rp?R# Rp?ii ; i)zc
Sync the components of all main sources (excluding cdroms),
child sources and source code sources
TN)rÓ  r¬   ÚEnableComponentÚDisableComponentr¨   rË  rX   )r*   ÚcheckbuttonrV  rÍ  s   &&& r-   rW  Ú*SoftwarePropertiesGtk.on_component_toggledb  sg   € ð
	Ø×%Ñ%Ó'¨4Ô/Ø—‘×,Ñ,¨TÖ2à—‘×-Ñ-¨dÖ3øÜ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús   ‚0A ´A ÁBÁ&A?Á?Bc                ó6  €  VP                  4       R8X  d(   V P                  P                  VP                  4       R# V P                  P	                  VP                  4       R#   \
        P                   d   p\        T4      '       g   Th Rp?R# Rp?ii ; i)zD
Enable or disable a child repo of the distribution main repository
FN)rÓ  r¬   rò  rT  rñ  r¨   rË  rX   )r*   r  r]  rÍ  s   &&& r-   r^  Ú2SoftwarePropertiesGtk.on_checkbutton_child_toggledp  so   € ð	Ø×%Ñ%Ó'¨5Ô0Ø—‘×/Ñ/°·±Ö>à—‘×.Ñ.¨x¯}©}Ö=øÜ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús   ‚:A% ¾%A% Á%BÁ:BÂBc                ó
  €  VP                  4       R8X  d   V P                  P                  4        R# V P                  P                  4        R#   \        P
                   d   p\        T4      '       g   Th Rp?R# Rp?ii ; i)z2Disable or enable the source code for all sources TN)rÓ  r¬   ÚEnableSourceCodeSourcesÚDisableSourceCodeSourcesr¨   rË  rX   )r*   r  rÍ  s   && r-   rO  Ú8SoftwarePropertiesGtk.on_checkbutton_source_code_toggled}  sc   € ð	Ø×%Ñ%Ó'¨4Ô/Ø—‘×4Ñ4Ö6à—‘×5Ñ5Ö7øÜ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús   ‚/A ³A ÁBÁ$A=Á=Bc                ó  € V P                  4       pVP                  4       V8w  d-    V P                  P                  VP                  4       4       R# R#   \        P
                   d   p\        T4        Rp?R# Rp?ii ; i)z4The user clicked on the popcon paritipcation button N)Úget_popcon_participationrÓ  r¬   ÚSetPopconPariticipationr¨   rË  rX   )r*   r•  Ú	do_popconrÍ  s   &&  r-   Úon_checkbutton_popcon_toggledÚ3SoftwarePropertiesGtk.on_checkbutton_popcon_toggledˆ  sk   € ð ×1Ñ1Ó3ˆ	Ø×ÑÓ )Ô+ð;Ø—‘×4Ñ4°V×5FÑ5FÓ5HÖIñ ,øô ×%Ñ%ô ;Ü7¸×:Ò:ûð;ús   §)A ÁA?Á)A:Á:A?c                ó(  a €  \        S P                  S P                  S P                  S P                  S P
                  V4      pV 3R lpVP                  V4       R#   \        P                   d   p\        T4      '       g   Th Rp?R# Rp?ii ; i)zAShow a confirmation for adding the channels of the specified filec                 óÀ   <€ V \         8X  d   . SP                  n        V \        \         39   d0   V F'  pSP                  P                  \        V4      4       K)  	  R # R # r#   )ÚRESPONSE_REPLACEÚsourceslistÚlistÚRESPONSE_ADDr¬   ÚAddSourceFromLinere   )ÚresÚnew_sourcesrÁ  r*   s   && €r-   Ú_on_add_sources_responseÚASoftwarePropertiesGtk.open_file.<locals>._on_add_sources_response›  sM   ø€ ØÔ*Ô*Ø,.�D×$Ñ$Ô)Øœ<Ô)9Ð:Ô:Û"-˜ØŸ™×6Ñ6´s¸6³{ÖCó #.ñ ;r/   N)
r   rˆ   r  Úrender_sourceÚget_comparablers   rj   r¨   rË  rX   )r*   rÎ   rÿ  r  rÍ  s   f&   r-   rÌ   ÚSoftwarePropertiesGtk.open_file’  s   ø€ ð	Ü)¨$×*:Ñ*:Ø*.×*:Ñ*:Ø*.×*<Ñ*<Ø*.×*=Ñ*=Ø*.¯,©,Ø*.ó0ˆFõDð �N‰NÐ3Ö4øÜ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús   ƒAA ÁBÁ3BÂBc                ó:   € V P                   P                  4        R # r#   )rˆ   r^   r;   s   &r-   r^   ÚSoftwarePropertiesGtk.hide¦  s   € Ø×Ñ×ÑÖr/   c                óŠ   € VP                  V\        4      P                  4       P                  VP                  4       4      R8H  # )é   r
  )r  ÚCOLUMN_DESCÚlowerrË   )r*   ÚstorerÝ  r  r  Údatas   &&&&&&r-   Úsource_search_functionÚ,SoftwarePropertiesGtk.source_search_function©  s2   € à�‰˜t¤[Ó1×7Ñ7Ó9×>Ñ>¸s¿y¹y»{ÓKÈrÑQÐQr/   c                óž  € \         P                  ! \        P                  \        P                  \        P
                  \        P                  \        P                  4      V n        V P                  P                  V P                  4       V P                  P                  V P                  \        4       \         P                  ! 4       pVP                  R^4       VP                  R^4       \         P                  ! \        R4      V\         R7      pVP#                  R4       \         P$                  ! 4       pVP                  R^4       VP                  R^4       V P'                  V4       VP)                  RV P*                  4      V P,                  V&   \         P                  ! \        R4      V\.        R7      p\         P                  ! 4       pVP                  R^4       VP                  R^4       \         P                  ! \        R4      V\         R7      pVP#                  R4       \         P$                  ! 4       pVP                  R^4       VP                  R^4       V P'                  V4       VP)                  RV P*                  V P                  4      V P,                  V&   \         P                  ! \        R4      V\.        R7      pV P                  P1                  V4       V P                  P1                  V4       V P                  P3                  \         4       V P                  P5                  V P6                  R	4       R	# )
z+
Read all valid sources into our ListStore
ÚxpadÚypadzSoftware Sources©Úmarkupiè  r;  ÚActive)r»  N)r   rw  r	   ry  rx  ÚTYPE_PYOBJECTÚsource_storer”   rz  r{  Úis_separatorÚSTORE_SEPARATORrr  Úset_propertyÚTreeViewColumnrg   r$  Úset_max_widthÚCellRendererTogglerõ   ri   Úon_isv_source_toggledr´   ÚCOLUMN_ACTIVEÚappend_columnÚset_search_columnÚset_search_equal_funcr(  )r*   Ú	cell_descÚcol_descÚcell_toggleÚ
col_actives   &    r-   r½   Ú&SoftwarePropertiesGtk.init_isv_sources­  s’  € ô  ŸMšM¬'×*>Ñ*>Ü*1×*=Ñ*=Ü*1×*?Ñ*?Ü*1×*>Ñ*>Ü*1×*>Ñ*>ó	@ˆÔð
 	×Ñ×'Ñ'¨×(9Ñ(9Ô:Ø×Ñ×4Ñ4°T×5FÑ5FÜ5Dô	Fô ×(Ò(Ó*ˆ	Ø×Ñ˜v qÔ)Ø×Ñ˜v qÔ)Ü×%Ò%¤aÐ(:Ó&;¸YÜ-8ô:ˆà×Ñ˜tÔ$ä×,Ò,Ó.ˆØ× Ñ  ¨Ô+Ø× Ñ  ¨Ô+Ø×%Ñ% kÔ2Ø%0×%8Ñ%8¸Ø26×2LÑ2Ló&Nˆ�‰�kÑ"ä×'Ò'¬¨(«°[Ü/<ô>ˆ
ô ×(Ò(Ó*ˆ	Ø×Ñ˜v qÔ)Ø×Ñ˜v qÔ)Ü×%Ò%¤aÐ(:Ó&;¸YÜ-8ô:ˆà×Ñ˜tÔ$ä×,Ò,Ó.ˆØ× Ñ  ¨Ô+Ø× Ñ  ¨Ô+Ø×%Ñ% kÔ2Ø%0×%8Ñ%8¸Ø26×2LÑ2LØ26×2CÑ2Có&Eˆ�‰�kÑ"ô ×'Ò'¬¨(«°[Ü/<ô>ˆ
ð 	×Ñ×+Ñ+¨JÔ7Ø×Ñ×+Ñ+¨HÔ5à×Ñ×/Ñ/´Ô<Ø×Ñ×3Ñ3°D×4OÑ4OÐQUÖVr/   c                ó(   € V P                  V4       R# )ú4Open the edit dialog if a channel was double clickedN)r‘   ©r*   Útreeviewr†   rÝ  s   &&&&r-   Úon_isv_source_activateÚ,SoftwarePropertiesGtk.on_isv_source_activateç  s   € à×Ñ˜XÖ&r/   c                óJ  € \         P                  ! R4       VP                  \        V4      34      pVP	                  V\
        4      p V P                  P                  \        V4      4       R#   \        P                   d   p\        T4      '       g   Th Rp?R# Rp?ii ; i)z&Enable or disable the selected channelg333333Ó?N)ÚtimeÚsleepÚget_iterrŸ   r  ÚSTORE_SOURCEr¬   ÚToggleSourceUsere   r¨   rË  rX   )r*   r?  r†   r&  r  Úsource_entryrÍ  s   &&&&   r-   r8  Ú+SoftwarePropertiesGtk.on_isv_source_toggledë  sz   € ô 	�
Š
�3Œà�~‰~œs 4›y˜lÓ+ˆØ—‘ t¬\Ó:ˆð	Ø�L‰L×(Ñ(¬¨\Ó):Ö;øÜ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús   Á	$A/ Á/B"ÂBÂB"c                ó2  € \         P                  ! \        4      V n        V P                  P                  V P                  4       \         P                  ! 4       p\         P                  ! \        R4      V^ R7      pV P                  P                  V4       R# )z:Setup the user interface parts needed for the key handlingÚKeyr-  N)
r   rw  re   Ú
keys_storeÚtreeview_authrz  rr  r5  rg   r:  )r*   ÚtrÚkeys_cols   &  r-   r»   ÚSoftwarePropertiesGtk.init_keysý  sd   € äŸ-š-¬Ó,ˆŒØ×Ñ×$Ñ$ T§_¡_Ô5Ü×!Ò!Ó#ˆÜ×%Ò%¤a¨£h°¸1Ô=ˆØ×Ñ×(Ñ(¨Ö2r/   c                ó8   € V P                   P                  V4      # r#   )r¬   ÚAddKeyFromData)r*   Úkeydatas   &&r-   Úadd_key_from_dataÚ'SoftwarePropertiesGtk.add_key_from_data  s   € Ø�|‰|×*Ñ*¨7Ó3Ð3r/   c                óz  €  V P                   P                  4        V P
                  '       d'   V P
                  P                  RV P                  4       V P                  4        V P                  P                  R4       RV n        R#   \        P                   d   p\	        T4      '       g   Th Rp?L™Rp?ii ; i)z6Restore the source list from the startup of the dialogNrx   F)r¬   ÚRevertr¨   rË  rX   r£   rÚ  r¥   rº   rŒ   r§   Úmodified_sourceslist)r*   ÚbuttonrÍ  s   && r-   r�   Ú.SoftwarePropertiesGtk.on_button_revert_clicked  s’   € ð	Ø�L‰L×ÑÔ!ð �=�=ˆ=Ø�M‰M×!Ñ!Ð"@À$×BZÑBZÔ[Ø×#Ñ#Ô%Ø×Ñ×(Ñ(¨Ô/Ø$)ˆÖ!øô ×!Ñ!ô 	Ü:¸1×=Ò=Ø�ô >ûð	ús   ‚B ÂB:ÂB5Â5B:c                óf   € \         P                  ! 4        V P                  P                  R4       R# )z=The config was changed and now needs to be saved and reloadedTN)rÈ   rý   rŒ   r§   r;   s   &r-   r¯   Ú(SoftwarePropertiesGtk.on_config_modified  s"   € ä×ÒÔØ×Ñ×(Ñ(¨Ö.r/   c                ó&   € V P                  4        R# )z5The apt keys have changed and need to be redisplayed N)r¼   r;   s   &r-   r°   Ú&SoftwarePropertiesGtk.on_keys_modified  s   € à�‰Ör/   c                óª   € V P                  4        V P                  4        V P                  4        V P                  P	                  R4       RV n        R# )zCThe sources list was changed and now needs to be saved and reloadedTN)Úreload_sourceslistrÀ   r¾   rŒ   r§   r^  r;   s   &r-   r®   Ú.SoftwarePropertiesGtk.on_sources_list_modified  sB   € à×ÑÔ!Ø×ÑÔØ×ÑÔØ×Ñ×(Ñ(¨Ô.Ø$(ˆÖ!r/   c                óf   € V P                  4        V P                  4        V P                  4        R# )z$send when the authentication failed N)r®   r¯   r°   r;   s   &r-   r±   Ú$SoftwarePropertiesGtk.on_auth_failed'  s(   € ð 	×%Ñ%Ô'Ø×ÑÔ!Ø×ÑÖr/   c                óÌ  € V P                   P                  4        V P                  4        FC  pV P                  V4      pV P                   P	                  VP
                  '       * VVRR.4       KE  	  V P                  P                  4       w  r4\        V P                   4      ^8  g   Vf9   V P                  P                  R4       V P                  P                  R4       R# R# )z\Show the repositories of independent software vendors in the
third-party software tree view FTN)r1  r­  Úget_isv_sourcesr  rX  Údisabledr”   Ú
get_cursorrª  r’   r§   r�   )r*   rÁ  ÚcontentsÚpath_xÚpath_ys   &    r-   r¾   Ú&SoftwarePropertiesGtk.show_isv_sources/  sÁ   € ð 	×Ñ×ÑÔ!à×*Ñ*Ö,ˆFØ×)Ñ)¨&Ó1ˆHØ×Ñ×$Ñ$¨&¯/©/Ô&9¸8Ø&,¨e°Tð&;ö <ñ -ð
  ×0Ñ0×;Ñ;Ó=ÑˆÜˆt× Ñ Ó! AÔ%¨ªØ×Ñ×,Ñ,¨UÔ3Ø×Ñ×*Ñ*¨5Ö1ñ *8r/   c                ó|   €  VP                  W#4      #   \         d   p\        RT,          4        Rp?R# Rp?ii ; i)z/Return true if the selected row is a separator zis_seperator returned '%s' NF)r  r3   re  )r*   r  r  rÝ  rÍ  s   &&&& r-   r2  Ú"SoftwarePropertiesGtk.is_separator>  s7   € ð	Ø—?‘? 4Ó0Ð0øÜô 	ÜÐ/°!Õ3Ô4Ýûð	ús   ‚ “;ž6¶;c                óh  € V P                   P                  4        V P                  P                  4        Fy  p\        P
                  ! V4      pVP                  R ^4      w  r#V'       d%   V P                   P                  RV RV 2.4       KY  V P                   P                  RV R2.4       K{  	  R# )Ú
ú<b>z</b>
z</b>
No detailsN)rR  r­  Úapt_keyr  r   Úmarkup_escape_textr¥  rX  )r*   ÚkeyringÚfilenameÚdetailss   &   r-   r¼   ÚSoftwarePropertiesGtk.show_keysF  s�   € Ø�‰×ÑÔØ—|‘|×(Ñ(Ö*ˆGÜ×-Ò-¨gÓ6ˆGØ '§¡¨d°AÓ 6ÑˆHßØ—‘×&Ñ&¨#¨h¨Z°v¸g¸YÐ(GÐ'HÖIà—‘×&Ñ&¨#¨h¨ZÐ7GÐ(HÐ'IÖJó +r/   c                óì   a a€ S P                   P                  4       pVR8w  dQ   S P                  V,          pV3R lpV V3R lpSP                  R4       S P                  P                  W4VR7       R# R# )z4Set the update automation interval to the chosen onec                  ó*   <€ S P                  R 4       R# rÅ  rÆ  rÇ  s   €r-   r   ÚJSoftwarePropertiesGtk.on_combobox_update_interval_changed.<locals>.handlerV  s   ø€ Ø×$Ñ$ TÖ*r/   c                 ó°   <€ SP                  R 4       \        V \        P                  4      '       d$   \	        V 4      '       d   SP                  4        R# V hrÅ  )r§   rÊ  r¨   rË  rX   r¸   rÌ  s   &€€r-   rÎ  ÚKSoftwarePropertiesGtk.on_combobox_update_interval_changed.<locals>.on_errorY  sC   ø€ Ø×$Ñ$ TÔ*ä˜a¤×!3Ñ!3×4Ò4Ü>¸q×AÒAØ×-Ñ-Ô/ÙØ�r/   FrÐ  Nr
  )r  rÓ  r  r§   r¬   ÚSetUpdateInterval)r*   r•  rú   r  r   rÎ  s   ff    r-   r  Ú9SoftwarePropertiesGtk.on_combobox_update_interval_changedP  sj   ù€ à×)Ñ)×4Ñ4Ó6ˆØ�Œ7Ø×2Ñ2°1Õ5ˆEõ+öð × Ñ  Ô'Ø�L‰L×*Ñ*¨5Ø9Að +ö Cñ! r/   c                ó¢   a € \        S P                  S P                  S P                  S P                  4      pV 3R lpVP                  V4       R# )zDShow a dialog that allows to enter the apt line of a to be used repoc                 ó¨   <€ Ve    SP                   P                  V4       R # R #   \        P                   d   p\	        T4        R p?R # R p?ii ; ir#   )r¬   r  r¨   rË  rX   )Úresponse_idÚraw_apt_linerÍ  r*   s   && €r-   Ú_on_dialog_responseÚASoftwarePropertiesGtk.on_add_clicked.<locals>._on_dialog_responsej  sH   ø€ ØÒ'ð?Ø—L‘L×2Ñ2°<Ö@ñ (øô ×)Ñ)ô ?Ü;¸A×>Ò>ûð?ús   ‡& ¦A»AÁAN)r   rˆ   r  rs   rK  rj   )r*   r•  rÿ  rˆ  s   f&  r-   r�   Ú$SoftwarePropertiesGtk.on_add_clickedf  s;   ø€ ä˜4×+Ñ+¨T×-=Ñ-=¸t¿|¹|ÈTÏ[É[ÓYˆõ	?ð 	�‰Ð*Ö+r/   c                ó´  a aa€ S P                   P                  4       pVP                  4       w  r4V'       g   R# VP                  V\        4      o\        S\        4      '       d.   \        S P                  S P                  SS P                  4      oM,\        S P                  S P                  SS P                  4      oVVV 3R lpSP                  V4       R# )z#Show a dialog to edit an ISV sourceNc                 ó  <€ V \         P                  P                  8X  d<    SP                  P	                  \        S4      \        SP                  4      4       R # R #   \        P                   d   p\        T4        R p?R # R p?ii ; ir#   )
r   ÚResponseTyper[   r¬   ÚReplaceSourceEntryre   Únew_source_entryr¨   rË  rX   )r†  rÍ  rÿ  Úold_source_entryr*   s   & €€€r-   Ú_on_edit_responseÚ@SoftwarePropertiesGtk.on_edit_clicked.<locals>._on_edit_response�  sm   ø€ Øœc×.Ñ.×1Ñ1Ô1ð?Ø—L‘L×3Ñ3´CÐ8HÓ4IÜ47¸×8OÑ8OÓ4PöRñ 2øô ×)Ñ)ô ?Ü;¸A×>Ò>ûð?ús   ¢8A ÁB	Á3BÂB	)r”   Úget_selectionÚget_selectedr  ÚLIST_ENTRY_OBJrÊ  r   r   rˆ   r  rs   r   rj   )r*   r•  Úselr  r  r‘  rÿ  r�  s   f&    @@r-   r‘   Ú%SoftwarePropertiesGtk.on_edit_clickeds  s«   ú€ à×#Ñ#×1Ñ1Ó3ˆØ×(Ñ(Ó*‰ˆßÙØ Ÿ?™?¨4´Ó@ÐäÐ&Ô(9×:Ò:Ü% d×&6Ñ&6¸×8HÑ8HØ&6¸¿¹óF‰Fô   × 0Ñ 0°$×2BÑ2BØ 0°$·,±,ó@ˆF÷	?ð 	�‰Ð(Ö)r/   c                ól   € V P                   P                  R4      R8X  d   V P                  V4       R# R# )rC  Ú	sensitiveTN)r�   Úget_propertyr‘   rD  s   &&&&r-   Úon_isv_source_activatedÚ-SoftwarePropertiesGtk.on_isv_source_activatedŒ  s0   € ð ×Ñ×(Ñ(¨Ó5¸Ô=Ø× Ñ  Ö*ñ >r/   c                ó^  € V P                   P                  4       pV'       g   R# VP                  4       w  r4V'       g9   V P                  P	                  R4       V P
                  P	                  R4       R# V P
                  P	                  R4       V P                  P	                  R4       R# )zYset the sensitiveness of the edit and remove button
corresponding to the selected channelNFT)r”   r“  r”  r�   r§   r’   )r*   rE  r–  r  r  s   &&   r-   r•   Ú8SoftwarePropertiesGtk.on_treeview_sources_cursor_changed’  s„   € ð ×#Ñ#×1Ñ1Ó3ˆßÙØ×(Ñ(Ó*‰ˆßà×Ñ×*Ñ*¨5Ô1Ø×Ñ×,Ñ,¨UÔ3Ùà×Ñ×(Ñ(¨Ô.Ø×Ñ×&Ñ& tÖ,r/   c                óz  € V P                   P                  4       pV P                   P                  4       w  r4VP                  V4      pV'       d>   VP	                  V\
        4      p V P                  P                  \        V4      4       R# R#   \        P                   d   p\        T4        Rp?R# Rp?ii ; i)zRemove the selected sourceN)r”   r  rm  rK  r  r•  r¬   ÚRemoveSourcere   r¨   rË  rX   )r*   r•  r  r†   rÝ  r  rN  rÍ  s   &&      r-   r“   Ú'SoftwarePropertiesGtk.on_remove_clicked¢  s‘   € à×%Ñ%×/Ñ/Ó1ˆØ×.Ñ.×9Ñ9Ó;‰ˆØ�~‰~˜dÓ#ˆßØ Ÿ?™?¨4´Ó@ˆLð;Ø—‘×)Ñ)¬#¨lÓ*;Ö<ñ øô ×%Ñ%ô ;Ü7¸×:Ò:ûð;ús   Á'$B ÂB:Â$B5Â5B:c                óŠ  a € \         P                  ! \        R4      R7      pR\        P                  9   dj   \        P
                  P                  R\        P                  R,          ,          4      pVP                  \        P                  P                  V4      4       V 3R lpVP                  S P                  RV4       R# )zPProvide a file chooser that allows to add the gnupg of a trusted
software vendorz
Import key)ÚtitleÚ	SUDO_USERz~%sc                 ó¢  <€  V P                  V4      pT'       g   R # TP                  4       pT'       g   R #  SP                  P                  T4      '       g,   \        SP                  \        R4      \        R4      4       R # R #   \        P                   d     R # i ; i  \        P                   d   p\        T4        R p?R # R p?ii ; i)NzError importing selected filezCThe selected file may not be a GPG key file or it might be corrupt.)Úopen_finishr   ÚErrorÚget_pathr¬   ÚAddKeyrV   rˆ   rg   r¨   rË  rX   )rÿ  ÚresultÚselected_fileÚ	file_pathrÍ  r*   s   &&   €r-   Ú_on_open_finishedÚ@SoftwarePropertiesGtk.add_key_clicked.<locals>._on_open_finished·  s³   ø€ ðØ &× 2Ñ 2°6Ó :�÷ !ÙØ%×.Ñ.Ó0ˆIßÙð;à—|‘|×*Ñ*¨9×5Ò5Ü˜$×*Ñ*ÜÐ;Ó<Üð 6ó 7ö8ñ 6øô —:‘:ô âðûô ×%Ñ%ô ;Ü7¸×:Ò:ûð;ús.   ƒB ¹ B# Á)B# ÂB ÂB Â#CÂ8C	Ã	CN)r   Ú
FileDialogrg   r…   Úenvironr†   Ú
expanduserÚset_initial_folderr
   ÚFileÚnew_for_pathÚopenrˆ   )r*   r•  Úfile_dialogÚhomer­  s   f&   r-   r—   Ú%SoftwarePropertiesGtk.add_key_clicked®  s‚   ø€ ô —n’n¬1¨\«?Ô;ˆàœ"Ÿ*™*Ô$Ü—7‘7×%Ñ% e¬b¯j©j¸Õ.EÕ&EÓFˆDØ×*Ñ*¬3¯8©8×+@Ñ+@ÀÓ+FÔGõ	;ð* 	×Ñ˜×)Ñ)¨4Ð1BÖCr/   c                ó  € V P                   P                  4       pVP                  4       w  r4VR8X  d   R# VP                  V^ 4      p V P                  P                  VP                  R^4      ^ ,          P                  RR4      P                  RR4      4      '       g,   \        V P                  \        R4      \        R4      4       R# R#   \        P                   d   p\        T4      '       g   Th Rp?R# Rp?ii ; i)z$Remove a trusted software vendor keyNru  rv  rC  z</b>zError removing the keyzGThe key you selected could not be removed. Please report this as a bug.)rS  r“  r”  r  r¬   Ú	RemoveKeyr¥  rk  rV   rˆ   rg   r¨   rË  rX   )r*   r•  Ú	selectionr  Úa_iterr  rÍ  s   &&     r-   r™   Ú(SoftwarePropertiesGtk.remove_key_clickedÎ  sß   € à×&Ñ&×4Ñ4Ó6ˆ	Ø#×0Ñ0Ó2‰ˆØ�TŒ>ÙØ�o‰o˜f aÓ(ˆð	Ø—<‘<×)Ñ)¨#¯)©)°D¸!Ó*<¸QÕ*?×*GÑ*GÈÈrÓ*R×*ZÑ*ZÐ[aÐceÓ*f×gÒgÜ�d×&Ñ&ÜÐ0Ó1Üð 7ó 8ö9ñ høô
 ×!Ñ!ô 	Ü:¸1×=Ò=Ø�õ >ûð	ús   Á	AC Â!)C ÃDÃ#C<Ã<Dc                ó(   € V P                  V4       R# )zClose the window if requestedT)r‹   r”  s   &&r-   r‰   Ú&SoftwarePropertiesGtk.on_close_requestß  s   € à×Ñ˜VÔ$ár/   c                óò   a € V 3R lpS P                   R8X  dO   S P                  P                  R8X  d4   \        S P                  VS P
                  4      pVP                  4        R# S P                  4        R# )zeShow a dialog that a reload of the channel information is required
only if there is no parent definedc                  ó(   <€ S P                  4        R # r#   ré  r;   s   €r-   Ú_on_doneÚ7SoftwarePropertiesGtk.on_close_button.<locals>._on_doneè  s   ø€ Ø�I‰IŽKr/   TFN)r^  rr   Ú	no_updater   rˆ   rs   rj   rê  )r*   r•  rÂ  r_   s   f&  r-   r‹   Ú%SoftwarePropertiesGtk.on_close_buttonå  sT   ø€ õ	ð ×%Ñ%¨Ô-Ø—‘×&Ñ&¨%Ô/Ü# D×$4Ñ$4°hÀÇÁÓMˆAØ�I‰IŽKà�I‰IŽKr/   c                ó:  € V P                   P                  R 4       V P                  P                  R 4       V P                  P                  R 4       V P                  P                  R4       V P
                  P                  R4       V P
                  P                  R4       V P                  P                  \        R4      4       V\        P                  P                  8X  d6   VP                  R4      pV P
                  P                  VR,          4       R# R# )FTzApplying changes...Ú
percentageg      Y@N)Úbutton_driver_revertrÝ   Úbutton_driver_applyÚbutton_driver_restartÚbutton_driver_cancelÚprogress_barÚlabel_driver_actionrJ  rg   Ú
packagekitÚProgressTypeÚ
PERCENTAGErš  Úset_fraction)r*   ÚprogressÚptyper'  Ú
prog_values   &&&& r-   Úon_driver_changes_progressÚ0SoftwarePropertiesGtk.on_driver_changes_progressò  sÖ   € à×!Ñ!×-Ñ-¨eÔ4Ø× Ñ ×,Ñ,¨UÔ3Ø×"Ñ"×.Ñ.¨uÔ5Ø×!Ñ!×-Ñ-¨dÔ3Ø×Ñ×%Ñ% dÔ+Ø×Ñ×%Ñ% dÔ+à× Ñ ×*Ñ*¬1Ð-BÓ+CÔDØ”J×+Ñ+×6Ñ6Ô6Ø!×.Ñ.¨|Ó<ˆJØ×Ñ×*Ñ*¨:¸Õ+=Ö>ñ 7r/   c                ó„  €  V P                   P                  V4       V'       gÊ   V P                  P                  R4       V P                  4        V P                  4        V P                  4        V P                  4        V P                  P                  R4       V P                  P                  R4       V P                   P                  R4       V P"                  P%                  R4       R# R#   \         dE   pT P                  4        \	        T P
                  \        R 4      \        T4      4        Rp?ELRp?ii ; i)zError while applying changesNFT)r¶   Úgeneric_finishr3   Úon_driver_changes_revertrV   rˆ   rg   re   rÌ  rÝ   Úclear_changesr  Úset_driver_action_statusÚ"update_label_and_icons_from_statusrÈ  rÉ  rË  Úscrolled_window_driversr§   )r*   rÁ  rª  Úinstalls_pendingrÍ  s   &&&& r-   Úon_driver_changes_finishÚ.SoftwarePropertiesGtk.on_driver_changes_finish   s÷   € ð	OØ�L‰L×'Ñ'¨Ô/÷  Ø×Ñ×)Ñ)¨%Ô0Ø×ÑÔ Ø×!Ñ!Ô#Ø×)Ñ)Ô+Ø×3Ñ3Ô5Ø×%Ñ%×1Ñ1°$Ô7Ø×$Ñ$×0Ñ0°Ô6Ø×%Ñ%×1Ñ1°%Ô8Ø×(Ñ(×6Ñ6°tÖ<ñ  øô ô 	OØ×)Ñ)Ô+Ü�$×"Ñ"¤AÐ&DÓ$EÄsÈ1Ãv×NÒNûð	Oús   ‚C0 Ã0D?Ã;9D:Ä:D?c           
     ó  € \         P                  ! 4       V n        . p. pR pV P                   Få  pVP                  '       d¦   VP                  V P                  V P                  V4      4       RVP                  9   dh   RpV P                  V P                  VR4       FB  pVP                  '       g   K  VP                  V P                  V P                  V4      4       KD  	  K¸  Kº  VP                  V P                  V P                  V4      4       Kç  	  \        P                  ! 4       V n         V'       dM   R pV'       d   RpV P                  P                  VR RV P                  V P                  RV P                  V4       V'       d{   V'       d5   . pV F,  p	V	P!                  R4      ^ ,          p
VP                  V
4       K.  	  V P                  P#                  VV P                  V P                  RV P                  R 4       V P$                  P'                  R 4       V P(                  P'                  R 4       V P*                  P'                  R 4       R#   \,         d&   p\/        RP1                  T4      4        Rp?R# Rp?ii ; i)FÚnvidiaTNÚ;z;Warning: install transaction not completed successfully: {}r#   )rÎ  ÚTaskr¶   Údriver_changesÚcurrent_verrX  Úget_package_idr   rT  Úget_dependenciesr
   ÚCancellableÚcancellableÚremove_packages_asyncrÕ  rß  r¥  Úinstall_packages_asyncrÈ  r§   rÉ  rÝ  r3   re  rî  )r*   r_  ÚinstallsÚremovalsÚ
has_nvidiaÚpkgÚdeprÞ  Ú
to_installÚitemrT  rÍ  s   &&          r-   Úon_driver_changes_applyÚ-SoftwarePropertiesGtk.on_driver_changes_apply  s  € Ü!—’Ó(ˆŒØˆØˆàˆ
Ø×&Ô&ˆCØ��ˆØ—‘ × 3Ñ 3°D·N±NÀCÓ HÔIð ˜sŸx™xÔ'Ø!%�JØ#×4Ñ4°T·^±^ÀSÈ(ÖS˜ØŸ?Ÿ?š?Ø$ŸO™O¨D×,?Ñ,?ÀÇÁÐPSÓ,TÖUó  Tñ (ð —‘ × 3Ñ 3°D·N±NÀCÓ HÖIñ 'ô Ÿ?š?Ó,ˆÔð 	[ßØ#(Ð ßØ'+Ð$Ø—‘×2Ñ2°8Ø!Ø Ø ×,Ñ,Ø ×;Ñ;Ø$Ø ×9Ñ9Ø,ô÷ ßØ!#�JÛ (˜Ø#Ÿz™z¨#›¨qÕ1˜Ø"×)Ñ)¨$Ö/ñ !)ð —‘×3Ñ3°HØ×(Ñ(Ø×7Ñ7Ø Ø×5Ñ5Øôð ×%Ñ%×3Ñ3°EÔ:Ø×$Ñ$×2Ñ2°5Ô9Ø×(Ñ(×6Ñ6°uÖ=øÜô 	[ÜÐO×VÑVÐWXÓY×ZÒZûð	[ús2   Ä1I Ä9	I ÅA	I ÆI ÆCI ÉJ
É%JÊJ
c                óH  € V P                    F  pVP                  R 4       K  	  V P                   F'  pV P                  V,          pVP                  R 4       K)  	  V P                  4        V P                  P                  R4       V P                  P                  R4       R# )TFN)Úno_drvrø   Úorig_selectionrÚ  rÈ  r§   rÉ  )r*   rŒ   r_  Úaliass   &&  r-   rÙ  Ú.SoftwarePropertiesGtk.on_driver_changes_revertH  s†   € ð —k”kˆFØ×Ñ˜dÖ#ñ "ð ×(Ô(ˆEØ×(Ñ(¨Õ/ˆFØ×Ñ˜dÖ#ñ )ð 	×ÑÔà×!Ñ!×/Ñ/°Ô6Ø× Ñ ×.Ñ.¨uÖ5r/   c                óZ   € V P                   P                  4        V P                  4        R # r#   )rê  ÚcancelrÚ  )r*   Úbutton_cancels   &&r-   Úon_driver_changes_cancelÚ.SoftwarePropertiesGtk.on_driver_changes_cancelX  s    € Ø×Ñ×ÑÔ!Ø×ÑÖr/   c                ó  € R \         P                  9   d   \         P                  R ,          pMRpVR8X  d@   \         P                  P                  R4      '       d   \        P
                  ! RR.4       R# VR8X  d?   \         P                  P                  R4      '       d   \        P
                  ! R.4       R# VR	8X  dA   \         P                  P                  R
4      '       d   \        P
                  ! R.4       R# R# R# )ÚXDG_CURRENT_DESKTOPÚUnknownzubuntu:GNOMEz/usr/bin/gnome-session-quitzgnome-session-quitz--rebootÚXFCEz/usr/bin/xfce4-session-logoutzxfce4-session-logoutÚLXQtz/usr/bin/lxqt-leavez
lxqt-leaveN)r…   r°  r†   ÚexistsÚ
subprocessÚcall)r*   Úbutton_restartÚdesktops   && r-   Úon_driver_restart_clickedÚ/SoftwarePropertiesGtk.on_driver_restart_clicked\  s°   € Ø ¤B§J¡JÔ.Ü—j‘jÐ!6Õ7‰GàˆGà�~Ô%Ü—‘—‘Ð<×=Ò=ä�OŠOÐ1°:Ð>Ö?Ø˜ÔÜ�g‰g�n‰nÐ<×=Ò=Ü�OŠOÐ3Ð4Ö5Ø˜ÔÜ�g‰g�n‰nÐ2×3Ò3Ü�OŠO˜\˜NÖ+ñ 4ñ  r/   c                ó"   € / V n         . V n        R # r#   )rø  rå  r;   s   &r-   rÚ  Ú#SoftwarePropertiesGtk.clear_changesm  s   € Ø ˆÔØ ˆÖr/   c                óò  € \         P                  ! \        R4      RR7      V n        V P                  P	                  RV P
                  4       \         P                  ! \        R4      RR7      V n        V P                  P	                  RV P                  4       \         P                  ! \        R4      RR7      V n        V P                  P	                  RV P                  4       \         P                  ! \        R4      RR7      V n
        V P                  P	                  RV P                  4       V P                  P                  R4       V P                  P                  R4       V P                  P                  R4       V P                  P                  R4       V P                  P                  R4       V P                  P                  R4       V P                  P                  V P                  4       V P                  P                  V P                  4       V P                  P                  V P                  4       V P                  P                  V P                  4       \         P                   ! 4       V n        V P                  P%                  V P"                  V P&                  4       V P"                  P)                  \         P*                  P,                  4       V P"                  P/                  \         P*                  P0                  4       V P"                  P3                  R4       V P"                  P                  R4       / V n        . V n        / V n        . V n        ^ V n        RV n        R	# )
zAdditional Drivers tabÚRe_vertT)r<  Úuse_underlinerw   z_Apply ChangesÚ_Cancelz_Restart...FN) r   ÚButtonrg   rÈ  ri   rÙ  rÉ  rô  rË  rþ  rÊ  r
  r§   rÝ   Úbox_driver_actionrX  ÚProgressBarrÌ  Úinsert_child_afterrÍ  Ú
set_valignÚAlignÚCENTERÚ
set_halignÚSTARTÚset_hexpandÚdevicesrå  rø  r÷  Únonfree_driversÚui_buildingr;   s   &r-   rÁ   Ú"SoftwarePropertiesGtk.init_driversq  sz  € ô %(§J¢J´Q°y³\ÐQUÔ$VˆÔ!Ø×!Ñ!×)Ñ)¨)°T×5RÑ5RÔSÜ#&§:¢:´AÐ6FÓ4GÐW[Ô#\ˆÔ Ø× Ñ ×(Ñ(¨°D×4PÑ4PÔQÜ$'§J¢J´Q°y³\ÐQUÔ$VˆÔ!Ø×!Ñ!×)Ñ)¨)°T×5RÑ5RÔSÜ%(§Z¢Z´a¸Ó6FÐVZÔ%[ˆÔ"Ø×"Ñ"×*Ñ*¨9°d×6TÑ6TÔUØ×!Ñ!×/Ñ/°Ô6Ø×!Ñ!×-Ñ-¨dÔ3Ø× Ñ ×.Ñ.¨uÔ5Ø× Ñ ×,Ñ,¨TÔ2Ø×!Ñ!×-Ñ-¨eÔ4Ø×"Ñ"×.Ñ.¨uÔ5Ø×Ñ×%Ñ% d×&>Ñ&>Ô?Ø×Ñ×%Ñ% d×&?Ñ&?Ô@Ø×Ñ×%Ñ% d×&@Ñ&@ÔAØ×Ñ×%Ñ% d×&?Ñ&?Ô@äŸOšOÓ-ˆÔØ×Ñ×1Ñ1°$×2CÑ2CÀT×E]ÑE]Ô^Ø×Ñ×$Ñ$¤S§Y¡Y×%5Ñ%5Ô6Ø×Ñ×$Ñ$¤S§Y¡Y§_¡_Ô5Ø×Ñ×%Ñ% dÔ+Ø×Ñ×%Ñ% eÔ,àˆŒØ ˆÔØ ˆÔð ˆŒØ ˆÔØ ˆÖr/   c                ó¼   € V P                   P                  4       '       d   V P                   P                  4        MV P                  4        V P	                  4        R # r#   )r·   rÖ   r×   rÞ   Úupdate_drivers_control_button)r*   r_  s   &&r-   r›   Ú4SoftwarePropertiesGtk.on_detect_drivers_cancel_retryš  sA   € Ø×Ñ×'Ñ'×)Ò)Ø×Ñ×)Ñ)Õ+à×%Ñ%Ô'Ø×*Ñ*Ö,r/   c                óÚ   € V P                   P                  4       '       d'   V P                  P                  \	        R 4      4       R# V P                  P                  \	        R4      4       R# )ÚCancelÚRetryN)r·   rÖ   rš   rJ  rg   r;   s   &r-   r!  Ú3SoftwarePropertiesGtk.update_drivers_control_button¡  sG   € Ø×Ñ×'Ñ'×)Ò)Ø×'Ñ'×1Ñ1´!°H³+Ö>à×'Ñ'×1Ñ1´!°G³*Ö=r/   c                óÔ   € \         P                  ! 4        \         P                  ! 4        \         P                  ! R 4      p\        P
                  ! V4      pV P                  V4       R # r#   )rÈ   rý   rþ   rÿ   r   Úsystem_device_driversÚ
put_nowait)ÚqueueÚcacher  s   &  r-   Úwrapper_system_device_driversÚ3SoftwarePropertiesGtk.wrapper_system_device_drivers§  sF   € ä×ÒÔÜ×ÒÔÜ—’˜dÓ#ˆÜ×.Ò.¨uÓ5ˆØ×Ñ˜Ö!r/   c                ór  a a€ \         P                  ! 4       p\        \        P                  V3R 7      S n        S P
                  P                  4        \        P                  ! V 3R l4       Ro S P
                  P                  4        S P
                  P                  '       d   S P
                  P                  hS P
                  P                  ^ 8X  d   VP                  4       S n        MNS P
                  P                  \        ) 8X  d   \        R4      oM"\!        RS P
                  P                   24      h\        P                  ! VV 3R l4       R#   \          dT   p\        R4      o\"        P$                  ! RT4       \&        P(                  ! \&        P*                  ! 4       !    Rp?LvRp?ii ; i))rä   r+   c                  ó$   <€ S P                  4       # r#   )r!  r;   s   €r-   ra   Ú6SoftwarePropertiesGtk.detect_drivers.<locals>.<lambda>·  s   ø€ ˜d×@Ñ@ÔBr/   Nz%The search for drivers was cancelled.zExit code: z.An error occurred while searching for drivers.z;An error occurred while searching for drivers.Exception: %sc                  ó&   <€ SP                  S 4      # r#   )Úon_detect_drivers_done)rV   r*   s   €€r-   ra   r0  Ð  s   ø€ ˜d×9Ñ9¸%Ô@r/   )r$   ÚQueuer!   rp   r,  r·   rê   r   Úidle_addr‡   r<   ÚexitcodeÚ
get_nowaitr  ÚSIGTERMrg   r3   rU   rV   ÚsysÚ
excepthookÚexc_info)r*   r*  rÍ  rV   s   f  @r-   rç   Ú$SoftwarePropertiesGtk.detect_drivers¯  sG  ù€ ä×%Ò%Ó'ˆÜ%Ü(×FÑFØ�ô
ˆÔð 	×Ñ×!Ñ!Ô#Ü�ŠÔBÔCØˆð	,Ø×Ñ×$Ñ$Ô&Ø×"Ñ"×,×,Ð,Ø×)Ñ)×3Ñ3Ð4Ø×"Ñ"×+Ñ+¨qÔ0Ø$×/Ñ/Ó1�•ð ×$Ñ$×-Ñ-´'°Ô9ÜÐAÓB‘ä +¨d×.AÑ.A×.JÑ.JÐ-KÐ LÓMÐMô 	�ŠÕ@ÖAøô ô 	,äÐFÓGˆEÜ�MŠMð *Ø+,ô.ô
 �NŠNœCŸLšL›N×+ûð	,ús,   Á05E Â&AE Ã-+E Ä"E ÅF6Å#A	F1Æ1F6c                óÌ   € Vf5   RV n         V P                  P                  R4       V P                  4        R # V P                  P                  V4       V P                  4        R # )NTF)r³   rš   r§   Úshow_driversrè   ré   r!  )r*   Úerrs   &&r-   r2  Ú,SoftwarePropertiesGtk.on_detect_drivers_doneÒ  sR   € ØŠ;Ø15ˆDÔ.Ø×'Ñ'×5Ñ5°eÔ<Ø×ÑÔÙà× Ñ ×)Ñ)¨#Ô.Ø×*Ñ*Ö,r/   c                óF  € V P                   '       d   R # R pV'       d~   V P                  V,          p \        P                  ! V P                  V4      pV P                  V,          pV'       d.   VP                  '       g   V P
                  P                  V4       VP                  4       '       dr   W@P
                  9   d   V P
                  P                  V4       VeB   W P                  9   d2   WP                  V,          Jd   V P
                  P                  V4       MŠW@P
                  9   d   V P
                  P                  V4       W P                  9  d   WP                  V&   Ve>   W@P
                  9  d.   VP                  '       d   V P
                  P                  V4       V P                  P                  \        V P
                  4      4       V P                  P                  \        V P
                  4      4       R #   \        \        3 d     ELƒi ; ir#   )r  r   r   Úget_linux_modules_metapackageræ  rå  rX  ÚKeyErrorÚ	TypeErrorrÓ  r5  rø  rÈ  r§   r_  rÉ  )r*   r_  ÚmodaliasÚpkg_namerð  Úmodules_packageÚmodules_package_objs   &&&&   r-   Úon_driver_selection_changedÚ1SoftwarePropertiesGtk.on_driver_selection_changedÜ  sŸ  € Ø××ÐÙàˆßØ—.‘. Õ*ˆCðÜ"(×"FÒ"FÀtÇ~Á~ÐW_Ó"`�Ø&*§n¡n°_Õ&EÐ#ß"Ð+>×+J×+JÐ+JØ×'Ñ'×.Ñ.Ð/BÔCð ×Ñ×ÒØ×)Ñ)Ô)Ø×#Ñ#×*Ñ*¨3Ô/à’Ø× 3Ñ 3Ô3Ø×&9Ñ&9¸(Õ&CÓCØ×#Ñ#×*Ñ*¨3Ô/øà×)Ñ)Ô)Ø×#Ñ#×*Ñ*¨3Ô/ð ×2Ñ2Ô2Ø06×#Ñ# HÑ-à’Ø×2Ñ2Ô2ØŸŸ˜Ø×#Ñ#×*Ñ*¨3Ô/à×!Ñ!×/Ñ/´°T×5HÑ5HÓ0IÔJØ× Ñ ×.Ñ.¬t°D×4GÑ4GÓ/HÖIøô3 œiÐ(ô Úðús   ³;H Á/H ÂH ÈH ÈH c           
     óz  € R\        R4      R3R\        R4      R3R\        R4      R3R	\        R
4      R3/pR/ R/ R/ R	/ /pRpRp VR,          '       d   RRRR\        R4      //VR&   TR,           EFž  pTR,          T,          pRp TR,          '       d   TR,          '       d   RpRp	 TR,          '       d   Rp	Rp T P                  T,          p
T
P                  pT P                  P                  T
4      pTe]   T P                  P                  TP                  ^ ,          4       \        R4      P                  T P                  P                  T4      pM\        R4      P                  T4      p TR,          '       d   \        R4      pM\        R4      pTR8X  d   \        R4      pM\        R4      pTP                  YÞR7      pRpT	'       g   TR,          '       g   TpT'       d   RpRpY8,          P                  TRTRTRT	/4       EK¡  	  T'       g"   RpT'       g   RpRRTR\        R4      //TR	&   MST'       gL   R FE  pTT,           F5  pTT,          T,          R,          '       g   K"  RTT,          T,          R&   K7  	  KG  	  T F>  pTT,           F.  pTT,          T,          R,          '       g   K"  TT,          w  ppK0  	  K@  	  XXT3#   \         d     ELi ; i  \         d     ELQi ; i  \         d     ELMi ; i  \         d     \        RP                  Yg4      4        EKÇ  i ; i) a#  Get various device data used to build the GUI.

return a tuple of (overall_status string, icon, drivers dict).
the drivers dict is using this form:
  {"recommended/alternative": {pkg_name: {
                                            'selected': True/False
                                            'description': 'description'
                                            'builtin': True/False
                                          }
                               }}
   "manually_installed": {"manual": {'selected': True, 'description': description_string}}
   "no_driver": {"no_driver": {'selected': True/False, 'description': description_string}}

   Please note that either manually_installed and no_driver are set to None if not applicable
   (no_driver isn't present if there are builtins)
Úrecommendedz,This device is using the recommended driver.zrecommended-driverÚalternativez+This device is using an alternative driver.zother-driverÚmanually_installedz1This device is using a manually-installed driver.Ú	no_driverzThis device is not working.zdisable-deviceFÚmanual_installTÚselectedr\  z*Continue using a manually installed driverÚdriversÚfrom_distroÚbuiltinzUsing {} from {}zUsing {}zHWARNING: a driver ({}) doesn't have any available package associated: {}Úfreezopen sourceÚproprietaryz&{base_description} ({licence}, tested)z{base_description} ({licence}))Úbase_descriptionÚlicencezDo not use the device)rK  rL  )rg   rB  r   ræ  r  Úget_candidate_verr  ÚlookupÚ	file_listrî  Ú
short_descre  Ú
setdefault)r*   ÚdeviceÚpossible_overall_statusÚreturned_driversÚhave_builtinÚone_selectedÚpkg_driver_nameÚcurrent_driverÚdriver_statusrS  rð  Ú	installedÚ	candidater\  rW  Úbase_stringrP  ÚsectionrE  ÚkeysÚoverall_statusÚicons   &&                    r-   Úgather_device_dataÚ(SoftwarePropertiesGtk.gather_device_data  s‡  € ð& œAÐLÓMÐOcÐdØœAÐKÓLÈnÐ]Ø ¤1Ð%XÓ#YÐ[iÐ"jØœ!Ð9Ó:Ð<LÐMð	#
Ðð *¨2¨}¸bÐBVÐXZÐ\gÐikÐlÐØˆØˆð	ØÐ&×'Ô'Ø:>ÀÈTØ:GÌÐKwÓIxðAzð :{Ð Ð!5Ñ6ð
  & i×0Ñ0ˆOØ# IÕ.¨Õ?ˆNð *ˆMðØ! -×0Ô0°^ÀM×5RÔ5RØ$1�Mð ˆGðØ! )×,Ô,Ø"�GØ#'�LðØ—n‘n _Õ5�ØŸO™O�	Ø ŸM™M×;Ñ;¸CÓ@�	àÒ(Ø—L‘L×'Ñ'¨	×(;Ñ(;¸AÕ(>Ô?Ü"#Ð$6Ó"7×">Ñ">¸t¿|¹|×?VÑ?VÐXgÓ"h‘Kä"# J£-×"6Ñ"6°Ó"G‘Kð ˜f×%Ô%Ü˜MÓ*‘ä˜MÓ*�à Ô-ÜÐ HÓI‘äÐ @ÓA�Ø%×,Ñ,¸kÐ,Ó[ˆKàˆHßÐ#3Ð4H×#IÔ#IØ$�ßØ#�HØ#'�LàÕ+×6Ñ6°ÈÐU]ØIVÐXcØIRÐT[ðI]÷ ^ñi  1÷r ØˆHßØ�Ø-1°JÀØ4AÄ1ÐE\ÓC]ð4_ð -`Ð˜[Ò)÷  Û=�GØ$4°W×$=Ð$=˜Ø+¨GÕ4°XÕ>¸y×IÖIØNRÐ,¨WÕ5°hÕ?À
ÓKó %>ñ  >ó (ˆGØ(¨×1Ð1�Ø# GÕ,¨TÕ2°:×>Ö>Ø-DÀWÕ-MÑ*�^¢Tó 2ñ (ð
  Ð&6Ð7Ð7øôa ô 	Úð	ûô ô Úðûô ô Úðûô ô ÜÐ`×gÑgÐhwó  Iô  JÛðús[   Á#K Â	K,Â'K,Â,K>Â;K>Ã BLÅLËK)Ë(K)Ë,K;Ë:K;Ë>LÌLÌ%L:Ì9L:c                ó¨	  € V P                   P                  V P                  4       V P                  '       g'   V P                  P                  \        R 4      4       R# V P                   P                  V P                  4       RV n        / V n        \        V P                  P                  4       4       EFè  pV P                  V P                  V,          4      w  r#p\        P                  ! 4       pVP                  \        P                  P                   4       VP#                  \        P                  P$                  4       VP'                  V4       \        P(                  ! ^\        P*                  P,                  R7      pVP/                  V4       \        P(                  ! ^\        P*                  P0                  R7      pVP/                  V4       \        P2                  P5                  RP7                  V P                  V,          P9                  R\        R4      4      V P                  V,          P9                  R\        R4      4      4      4      pVP#                  \        P                  P                   4       VP/                  V4       \        P2                  P5                  RP7                  V4      4      pVP#                  \        P                  P                   4       VP;                  R4       VP/                  V4       WX3V P                  V&   Rp	R EF[  p
WJ,           EFJ  p\        P<                  P?                  WJ,          V,          R,          4      pV	'       d   VPA                  V	4       MTp	VP/                  V4       VPC                  WJ,          V,          R,          4       V
R
8X  d   V PD                  P/                  V4       V
R9   g1   RWJ,          V,          9   d;   WJ,          V,          R,          '       d   VPG                  RV PH                  V4       MVPG                  RV PH                  W4       VR	,          '       g   EK/  V
R	8w  g   EK9  VPK                  R4       EKM  	  EK^  	  V P                   P/                  V4       EKë  	  RV n        V P                   PM                  4        V PO                  4        R# )z No additional drivers available.NT)ÚspacingÚorientationz{}: {}Úvendorr  r  ú<small>{}</small>rM  rN  r\  rP  rS  r;  F)rK  rL  rM  rN  )rM  rN  )(Úbox_driver_detailr5  Úbuttonbox_driver_detailr  rè   ré   rg   r  Údynamic_device_statusÚsortedri  rl  r   ÚImager  r  r  r  r  Úset_from_icon_nameÚBoxÚOrientationÚ
HORIZONTALrX  ÚVERTICALÚLabelrd   rî  r  Úset_use_markuprU  Únew_with_labelÚ	set_grouprø   r÷  ri   rH  r§   r  rÛ  )r*   r]  rj  rk  rQ  rd  Ú
device_boxÚdevice_detailr•  Úoption_grouprh  ÚdriverÚradio_buttons   &            r-   r=  Ú"SoftwarePropertiesGtk.show_driversv  s²  € Ø×Ñ×%Ñ% d×&BÑ&BÔCØ�|�|ˆ|à×$Ñ$×-Ñ-¬aÐ0RÓ.SÔTÙà×"Ñ"×)Ñ)¨$×*BÑ*BÔCØˆÔØ%'ˆÔ"Ü˜TŸ\™\×.Ñ.Ó0×1ˆFØ.2×.EÑ.EÀdÇlÁlÐSYÕFZÓ.[Ñ+ˆ^ 7äŸIšI›KˆMØ×$Ñ$¤S§Y¡Y§_¡_Ô5Ø×$Ñ$¤S§Y¡Y×%5Ñ%5Ô6Ø×,Ñ,¨TÔ2ÜŸš¨¼¿¹×8RÑ8RÔSˆJØ×Ñ˜mÔ,ÜŸGšG¨A¼3¿?¹?×;SÑ;SÔTˆMØ×Ñ˜mÔ,ä—Y‘Y—]‘] 8§?¡?°4·<±<ÀÕ3G×3KÑ3KÈHÔVWÐXaÓVbÓ3cÐei×eqÑeqÐrxÕey×e}Ñe}ð  Fô  HIð  JSó  HTó  fUó  $Vó  WˆFØ×ÑœcŸi™iŸo™oÔ.Ø× Ñ  Ô(Ü—Y‘Y—]‘]Ð#6×#=Ñ#=¸nÓ#MÓNˆFØ×ÑœcŸi™iŸo™oÔ.Ø×!Ñ! $Ô'Ø× Ñ  Ô(Ø2?Ð1HˆD×&Ñ& vÑ.àˆLä\�Ø%×.Ñ.�FÜ#&§?¡?×#AÑ#AÀ'ÕBRÐSYÕBZÐ[hÕBiÓ#j�Lß#Ø$×.Ñ.¨|Õ<à'3˜Ø!×(Ñ(¨Ô6Ø ×+Ñ+¨GÕ,<¸VÕ,DÀZÕ,PÔQà +Ô-ØŸ™×*Ñ*¨<Ô8ØÐ"EÔEÈ)ÐW^ÕWgÐhnÕWoÔJoÐt{õ  uEð  FLõ  uMð  NW÷  uXô  uXØ$×,Ñ,¨Y¸×8XÑ8XÐZ`Õaà$×,Ñ,¨Y¸×8XÑ8XÐZ`ÔiØÐ3×4×4¸ÐDX×9XØ$×2Ñ2°5×9ô! /ñ ]ð& ×"Ñ"×)Ñ)¨*×5ñU 2ðX !ˆÔØ×Ñ×#Ñ#Ô%Ø×%Ñ%Ö'r/   c                ó  € V P                    Fn  pV P                  V P                   V,          4      w  r#pV P                  V,          w  rVVP                  V4       VP	                  RP                  V4      4       Kp  	  R# )zBUpdate the current label and icon, computing the new device statusrr  N)r  rl  ru  rx  rJ  rî  )r*   r]  rj  rk  rQ  rd  r•  s   &      r-   rÜ  Ú8SoftwarePropertiesGtk.update_label_and_icons_from_status°  sl   € ð —l”lˆFØ.2×.EÑ.EÀdÇlÁlÐSYÕFZÓ.[Ñ+ˆ^ 7Ø&*×&@Ñ&@ÀÕ&HÑ#ˆ]à×,Ñ,¨TÔ2Ø×ÑÐ0×7Ñ7¸ÓGÖHó #r/   c                ó0  € \         P                  P                  R 4      '       dB   V P                  P	                  \        R4      4       V P                  P                  R4       R# ^ V n        V P                   F“  pV P                  V,          R,           Fr  pV P                  V,          pV P                  V,          R,          V,          R,          '       d   KF  VP                  '       g   KZ  V P                  ^,           V n        Kt  	  K•  	  V P                  ^ 8”  dQ   V P                  P	                  \        P                  ! RRV P                  4      RV P                  /,          4       R# V P                  P	                  \        R	4      4       R# )
z/var/run/reboot-requiredz@You need to restart the computer to complete the driver changes.TNrQ  rT  z$%(count)d proprietary driver in use.z%%(count)d proprietary drivers in use.Úcountz"No proprietary drivers are in use.)r…   r†   r  rÍ  rJ  rg   rÊ  rÝ   r  r  r   ræ  r   Úngettext)r*   r]  rE  rð  s   &   r-   rÛ  Ú.SoftwarePropertiesGtk.set_driver_action_statusº  s3  € ä�G‰G�N‰NÐ5×6Ò6Ø×$Ñ$×.Ñ.¬qÐ1sÓ/tÔuØ×&Ñ&×2Ñ2°4Ô8Ùà ˆÔØ—l”lˆFØ ŸL™L¨Õ0°×;Ð;�Ø—n‘n XÕ.�Ø—|‘| FÕ+¨IÕ6°xÕ@À×HÖHÈSÏ_Ï_Ê_Ø+/×+?Ñ+?À!Õ+C�DÖ(ó <ñ #ð ×Ñ !Ô#Ø×$Ñ$×.Ñ.¬w×/?Ò/?Ø/UØ/VØ/3×/CÑ/Có0Eð 3:¸4×;OÑ;OÐ1Põ	0Qö Rð ×$Ñ$×.Ñ.¬qÐ1UÓ/VÖWr/   c                ó&   € \        V 4      V n        R # r#   )r   Úubuntu_pro_pager;   s   &r-   rÂ   Ú%SoftwarePropertiesGtk.init_ubuntu_proÑ  s   € Ü,¨TÓ2ˆÖr/   )r°  r   r¬   rÉ  rË  rÊ  rÈ  rê  r  r  r  rå  ru  r´   r¥   rR  r^  r÷  r  rr   rø  r¶   rÌ  r  r·   r¯  r£   r1  r³   rŽ  r  )NNNN)r   r#   )Or>   r?   r@   rA   r%   rØ   rÄ   rÞ   rñ   r¹   rµ   r  r¸   rõ   rº   r#  r8  r¿   r–  rš  rÀ   r%  r&  r|  rù   rq  rv  rW  r^  rO  r  rÌ   r^   r(  r½   rF  r8  r»   rZ  r�   r¯   r°   r®   r±   r¾   r2  r¼   r  r�   r‘   r›  r•   r“   r—   r™   r‰   r‹   rÕ  rß  rô  rÙ  rþ  r
  rÚ  rÁ   r›   r!  Ústaticmethodr,  rç   r2  rH  rl  r=  rÜ  rÛ  rÂ   rC   rD   rE   s   @r-   rp   rp   ³   s¥  ø‡ € ôD0òL.ò
1òò!ò
_ò>ò>ò
 ]òD&ò
Yò49ò$&òrNòh<ò
>ò
x0òt$NòLDô-òFò(<)ò|òJòò	ò;òò( ôRò8Wòt'òò$3ò4ò*ò/ò
ò)ò ò2òòKòCò,,ò*ò2+ò-ò 
;òDò@ò"òô?ò=ò"5[ôn6ò ò,ò"!ò'!òR-ò>ð ñ"ó ð"ò!BôF-ô&JòPp8òd8(òtIòX÷.3ð 3r/   rp   )é   é	   r#  )QrÈ   ra  r¨   Ú	dbus.glibÚdbus.mainloop.glibr   rg   r…   r  r$   rU   r4   rå   r8  rI  ÚgiÚrequire_versionÚgi.repositoryr   rÎ  r	   r   r   r
   r   r   Úaptsources.sourceslistr   r   r   r   r   r   r   r   r   r,  Úsoftwareproperties.distroÚ%softwareproperties.SoftwarePropertiesr   Úsoftwareproperties.gtk.utilsr   r   r   r   r   ÚUbuntuDriversr   ÚmainloopÚglibÚDBusGMainLoopÚpyglib_versionÚthreads_initÚrangeÚLIST_MARKUPÚLIST_ENABLEDr•  r  r9  r$  r  r  ÚSTORE_ACTIVEÚSTORE_DESCRIPTIONrL  r3  ÚSTORE_VISIBLErL   rM   rN   rK   r¦  r§  r¨  r7  r!   ÚobjectrH   rX   rV   rp   rQ   r/   r-   Ú<module>r©     s­  ðó6 Û Û Û Û Ý  Û Û 	Û Û Û Û Û Û 
Û ã 	Ø × Ò �5˜%Ô  Ø × Ò �5˜%Ô  Ø × Ò �5˜#Ô Ø × Ò Ð# UÔ +Ý 6ß ;× ;å 4å 4Ý  Ý &Ý "Ý .Ý 4Ý 6Ý (ã Û  Ý DÛ ,÷õ õ !Ø ‡�× Ñ ×  Ñ  °Ð  Ô 5à×Ñ˜Ô"Ø×ÒÔá.3°A«hÑ +€ˆl˜Nñ
 	‰ˆq‹ƒNñØØð Ð Ø€ñ 	‰ˆq‹ƒNñØØØØØñ 
ˆ!ƒHñØØØØð €Ø€ØÐ à
€ô.ˆo×%Ñ%ô .ô(˜&ô ò&òô_3Ð.Ð0Cö _3r/   