403Webshell
Server IP : 178.105.222.151  /  Your IP : 216.73.216.38
Web Server : nginx/1.28.3
System : Linux MNK 7.0.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Wed Apr 22 16:06:43 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.5.4
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/DistUpgrade/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/DistUpgrade/__pycache__/DistUpgradeQuirks.cpython-314.pyc
+
E�i�����^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIH	t	H
t
^RIHtHt^RI
Ht^RIHtHt^RIHtHt!RR]4tR#)	�N)�PIPE�Popen)�datetime�timezone)�gettext)�RiscvProfile�RiscvProfileException)�S390xGeneration�get_system_s390x_generationc�0a�]tRt^'toRtRtRtRtRtRt	Rt
RtR	tR
t
RtRtR
tRtRtRtRtRtRtRtRtRtRtRtRtRtRtR.RltRt R.Rlt!R.Rlt"R t#R!t$R"t%R#t&R$t'R/R%lt(R&t)R't*R(t+R)t,R*t-R+t.R,t/Vt0R-#)0�DistUpgradeQuirksa�
This class collects the various quirks handlers that can
be hooked into to fix/work around issues that the individual
releases have.

The following handlers are supported:
- PreCacheOpen: run *before* the apt cache is opened the first time
                to set options that affect the cache
- PostInitialUpdate: run *before* the sources.list is rewritten but
                     after an initial apt-get update
- PreDistUpgradeCache: run *right before* the dist-upgrade is
                       calculated in the cache
- PostDistUpgradeCache: run *after* the dist-upgrade was calculated
                        in the cache
- StartUpgrade: before the first package gets installed (but the
                download is finished)
- PostUpgrade: run *after* the upgrade is finished successfully and
               packages got installed
- PostCleanup: run *after* the cleanup (orphaned etc) is finished
c��WnVPVnW n\RR.\RR7P4^,P
4Vn^VnRVn	RVn
RVnRVnR#)�unamez-rT)�stdout�universal_newlinesNF)
�
controller�_view�configrr�communicate�stripr�extra_snap_space�_poke�_snapstore_reachable�
_snap_list�_did_change_font)�selfrrs&&&�?/usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeQuirks.py�__init__�DistUpgradeQuirks.__init__=so��$���%�%��
����G�T�?�4�.2�4�4?�K�M�!�E�EJ�U�W�	
�
� !�����
�$)��!���� %���c��VPP'd\P!R4R#\P!R4VP4R#)z2run before the apt cache is opened the first time �)not running quirks in partialUpgrade modeNzrunning Quirks.PreCacheOpen)r�_partialUpgrade�logging�info�debug�_add_apport_ignore_list�rs&r�PreCacheOpen�DistUpgradeQuirks.PreCacheOpenJs=���?�?�*�*�*��L�L�D�E���
�
�3�4��$�$�&r c�4�VPP'd\P!R4R#\P!R4VP4VP
4VP4VP4VP4VP4VPPpVPV4VP4RV9d\P!R4R#VR,P'd[\P P#R4'g&\P P#R4'dVP%4VP&'dVP)4R#R#)z1run after the apt cache is opened the first time r"Nz running Quirks.PostInitialUpdate�snapd�'package required for Quirk not in cachez/run/snapd.socketz/run/snapd-snap.socket)rr#r$r%r&�_test_and_fail_on_rva23�_test_and_fail_without_cgroupv2�_test_and_fail_on_z13�_test_and_fail_on_pi_old_eeprom�;_test_and_fail_rabbitmq_server_installed_and_not_upgradable�_test_and_fail_on_tpm_fde�cache�_test_and_warn_if_ros_installed�#_maybe_prevent_flatpak_auto_removal�is_installed�os�path�exists�_checkStoreConnectivityr�_calculateSnapSizeRequirements�rr4s& r�PostInitialUpdate�#DistUpgradeQuirks.PostInitialUpdateUs���?�?�*�*�*��L�L�D�E���
�
�8�9��$�$�&��,�,�.��"�"�$��,�,�.��H�H�J��&�&�(����%�%���,�,�U�3��0�0�2��%���M�M�C�D����>�&�&�&������ 3�4�4������ 8�9�9��(�(�*��$�$�$��/�/�1�%r c�b�VPP'd\P!R4R#\P!R4VPP
pRV9d\P!R4R#VR,P'd#VP'dVP4RV9d:VR,P'd!VP4VP4RV9d.VR,P'dVP4R#R#R#)r"Nzrunning Quirks.PostUpgrader,r-�ubuntu-desktop-raspi�ubuntu-server-raspi)rr#r$r%r&r4r7r�_replaceDebsAndSnaps�_replace_fkms_overlay�_remove_z3fold�_add_kms_overlayr=s& r�PostUpgrade�DistUpgradeQuirks.PostUpgradexs����?�?�*�*�*��L�L�D�E���
�
�2�3����%�%���%���M�M�C�D����>�&�&�&������%�%�'�!�U�*��+�,�9�9�9��*�*�,��#�#�%� �E�)��*�+�8�8�8��%�%�'�9�*r c�R�VPP'd\P!R4R#\P!R4VP4\P!RR.4R# \d%p\P!RT24Rp?R#Rp?ii;i)r"Nzrunning Quirks.PostCleanup�snap�refreshzFailed to refresh snaps : )	rr#r$r%r&�_remove_apport_ignore_list�
subprocess�
check_call�	Exception)r�es& r�PostCleanup�DistUpgradeQuirks.PostCleanup�s}���?�?�*�*�*��L�L�D�E����
�
�2�3��'�'�)�	<��!�!�6�9�"5�6���	<��M�M�6�q�c�:�;�;��	<�s�A7�7B&�B!�!B&c�h�VPP'd\P!R4R#\P!R4VPP
pVP
4VP4VP4VP4VPV4R#)r"Nzrunning Quirks.StartUpgrade)rr#r$r%r&r4�_removeOldApportCrashes�_killUpdateNotifier�_pokeScreensaver�_set_generic_font�_disable_kdump_tools_on_installr=s& r�StartUpgrade�DistUpgradeQuirks.StartUpgrade�s|���?�?�*�*�*��L�L�D�E���
�
�3�4����%�%���$�$�&�� � �"�������� ��,�,�U�3r c��VPP'd\P!R4R#\P!R4VP4VP
4VP4R#)z.run right before calculating the dist-upgrade r"Nz"running Quirks.PreDistUpgradeCache)rr#r$r%r&�_maybe_remove_gpg_wks_server�_install_linux_sysctl_defaults�_force_dracut_installr(s&r�PreDistUpgradeCache�%DistUpgradeQuirks.PreDistUpgradeCache�sU���?�?�*�*�*��L�L�D�E���
�
�:�;��)�)�+��+�+�-��"�"�$r c���VPP'd\P!R4R#\P!R4VP4VP
4R#)z'run after calculating the dist-upgrade r"Nz#running Quirks.PostDistUpgradeCache)rr#r$r%r&�_install_linux_metapackage�+_switch_to_systemd_coredump_for_kde_flavorsr(s&r�PostDistUpgradeCache�&DistUpgradeQuirks.PostDistUpgradeCache�sI���?�?�*�*�*��L�L�D�E���
�
�;�<��'�'�)��8�8�:r c��\4pRF/pVP\P!RV,44K1	RpVF`pV'dMWVFMpVP	VP
4'gK&VP'gVP'dRpK^	Kb	V'dUVPP\R4\R44pV'gVPP4R#R#R#)z�
Test and warn if ROS is installed. A given ROS release only
supports specific Ubuntu releases, and can cause the upgrade
to fail in an overly-cryptic manner.
z
ros-[^\-]+-%sFTz-The Robot Operating System (ROS) is installeda	It appears that ROS is currently installed. Each ROS release is very strict about the versions of Ubuntu it supports, and Ubuntu upgrades can fail if that guidance isn't followed. Before continuing, please either uninstall ROS, or ensure the ROS release you have installed supports the version of Ubuntu to which you're upgrading.

For ROS 1 releases, refer to REP 3:
https://www.ros.org/reps/rep-0003.html

For ROS 2 releases, refer to REP 2000:
https://www.ros.org/reps/rep-2000.html

Are you sure you want to continue?N)�catkinzrosboost-cfg�roscleanzros-environmentz
ros-workspace)
�set�add�re�compile�match�namer7�marked_installr�askYesNoQuestion�_r�abort)rr4�ros_package_patterns�package_name�ros_is_installed�pkg�pattern�ress&&      rr5�1DistUpgradeQuirks._test_and_warn_if_ros_installed�s��� #�u��!�L�
!�$�$��
�
�+�l�:�;�
=�
!�!���C���/���=�=����*�*��'�'�'�3�+=�+=�+=�+/�(��	0�	���*�*�-�-��A�B��7�8�
9�C�����%�%�'��r c��RpRVPP9dR#VPPR,P'gR#\PPR4'gR#R
F^p\P!RV.\PR7pVPPR4P4'gK\RpM	\P!RPV'dR	MR
44V'gR#VPPR,PRR7RF�pW@PP9dKVPPV,P'gKN\P!RPV44VPPV,PRR7K�	VPPP!VP"P%4VP"P'VPP44R#)z�
If flatpak is installed, and there are either active remotes, or
flatpak apps installed, prevent flatpak's auto-removal on upgrade.
F�flatpakNz/usr/bin/flatpak)r�utf-8Tz-flatpak will{}be marked as manually installed� z NOT )�autoz'{} will be marked as manually installed)�remotes�list)zplasma-discover-backend-flatpakzgnome-software-plugin-flatpak)rr4r7r8r9r:rM�runrr�decoderr$r&�format�	mark_auto�commitr�getAcquireProgress�getInstallProgress)r�prevent_auto_removal�subcmd�rrvs&    rr6�5DistUpgradeQuirks._maybe_prevent_flatpak_auto_removal�s���
 %���D�O�O�1�1�1�����$�$�Y�/�<�<�<���w�w�~�~�0�1�1��)�F����'��0�%�?�?��A��x�x���w�'�-�-�/�/�'+�$��*�	�
�
�E��v�%9�c�w�G�	I�$�������i�(�2�2��2�>�5�C��/�/�/�/�/���?�?�(�(��-�:�:�:���M�M�C�!�6�#�;�
(��O�O�!�!�#�&�0�0�e�0�<�5�	
�����$�$��J�J�)�)�+��J�J�)�)�$�/�/�*?�*?�@�	
r c��RR.pRp\P!\PPV4RR7\	VR4;_uu_4pVFpVPVR24K	RRR4R# +'giR#;i \d(p\P!RTR	T24Rp?R#Rp?ii;i)
z/usr/libexec/tracker-extract-3z!/usr/sbin/update-apt-xapian-index�2/etc/apport/blacklist.d/upgrade-quirks-ignore-listT��exist_ok�w�
NzFailed to create �: )	r8�makedirsr9�dirname�open�writerOr$r&)r�ignore_listr9�f�binrPs&     rr'�)DistUpgradeQuirks._add_apport_ignore_list*s���,�/�
��
D��	;��K�K�������-��=��d�C���A�&�C��G�G�s�e�2�J�'�'�!������	;��M�M�-�d�V�2�a�S�9�:�:��	;�s6�A	B
�A9�/B
�9B
	�B
�
B
�
B?�B:�:B?c��Rp\P!V4R# \d(p\P!RTRT24Rp?R#Rp?ii;i)r�zFailed to remove r�N)r8�removerOr$r&)rr9rPs&  rrL�,DistUpgradeQuirks._remove_apport_ignore_list;sD��C��	;��I�I�d�O���	;��M�M�-�d�V�2�a�S�9�:�:��	;�s��A�A	�	Ac��\PPR4'd1\P!R4\
P!.RO4R#R#)zkill update-notifierz/usr/bin/killallzkilling update-notifierN)�killallz-qzupdate-notifier)r8r9r:r$r&rM�callr(s&rrU�%DistUpgradeQuirks._killUpdateNotifierCs7���7�7�>�>�,�-�-��M�M�3�4��O�O�@�A�.r c���\PPR4'd�\PP	R4'dk\
P!R4RpVR,
pVR,
p\P!VRR7Vn	\P!VP4R	#R	#R	# \\3d\
P!R4R	#i;i)
z/usr/bin/xdg-screensaver�DISPLAYz$setup poke timer for the screensaverzwhile true;z3 do /usr/bin/xdg-screensaver reset >/dev/null 2>&1;z sleep 30; doneT��shellz failed to setup screensaver pokeN)r8r9r:�environ�getr$r&rMrr�atexit�register�_stopPokeScreensaver�OSError�
ValueError�	exception)r�cmds& rrV�"DistUpgradeQuirks._pokeScreensaverJs����G�G�N�N�5�6�6��
�
���y�)�)��M�M�@�A��C��H�H�C��$�$�C�
F�'�-�-�c��>��
����� 9� 9�:�*�
7���Z�(�
F��!�!�"D�E�
F�s�6=B9�9'C$�#C$c���RpVPe=VPP4VPP4pRVnV# \d\P
!R4L,i;i)FNzfailed to stop screensaver poke)r�	terminate�waitr�r$r�)rrxs& rr��&DistUpgradeQuirks._stopPokeScreensaverWsg�����:�:�!�
E��
�
�$�$�&��j�j�o�o�'���D�J��
���
E��!�!�"C�D�
E�s�4A�!A3�2A3c	�8�RF\p\P!RV,4F8p\P!RV:RV:R24\P!V4K:	K^	R# \
d)p\P!RT,4Rp?R#Rp?ii;i)z9remove old apport crash files and whoopsie control files z/var/crash/*%sz
removing old z file '�'z+error during unlink of old crash files (%s)N)z.crashz.uploadz	.uploaded)�globr$r&r8�unlinkrO�warning)r�extr�rPs&   rrT�)DistUpgradeQuirks._removeOldApportCrashesbsp��	O�9�����#3�c�#9�:�A��M�M��a�"H�I��I�I�a�L�;�:���	O��O�O�I�A�M�N�N��	O�s�A"A&�&B�1B�Bc��Rp\PP4pRVR&\.RO\\VRR7P4p\P!RT^,\P4'd
RTn	R#\P!R	T^,\P4'Ed\P!R
4RpTPPpRT9ddTR,P 'dKTR,P"P$P'R4'g\P!R
4RpT'dM\)R4p\)R4pTP*PYx4TPP-4M�TP*P/\)R4\)R44pM�RT^,9dF\P!R4TP*P/\)R4\)R44pM=RT^,9dRp\P!R4M\P!R4T'gTPP-4R#R# \d,p\P!RT24RTn	Rp?R#Rp?ii;i)z9check for connectivity to the snap store to install snapsFzC.UTF-8�LANGT)r�stderr�envrz8Failed to check snap store connectivity, assuming none: Nz	^ \* PASSz^ \*.*unreachablezNo snap store connectivity�lxdz1:zlxd is installedz#Connection to the Snap Store faileda�You have the package lxd installed but your system is unable to reach the Snap Store. lxd is now provided via a snap and the release upgrade will fail if snapd is not functional. Please make sure you're connected to the Internet and update any firewall or proxy settings as needed so that you can reach api.snapcraft.io. If you are an enterprise with a firewall setup you may want to configure a Snap Store proxy.zConnection to Snap Store failedz�Your system does not have a connection to the Snap Store. For the best upgrade experience make sure that your system can connect to api.snapcraft.io.
Do you still want to continue with the upgrade?zerror: unknown commandz snap debug command not availablezOutdated snapd packagez�Your system does not have the latest version of snapd. Please update the version of snapd on your system to improve the upgrade experience.
Do you still want to continue with the upgrade?zerror: access deniedzNot running as root!z-Unhandled error connecting to the snap store.)rJr&�connectivity)r8r��copyrrrrOr$r&rrk�search�	MULTILINE�errorrr4r7�	candidate�version�
startswithrqrrrrp)	rrx�snap_env�	connectedrP�old_lxd_deb_installedr4�summary�msgs	&        rr;�)DistUpgradeQuirks._checkStoreConnectivityls'�����:�:�?�?�$��$����		��?��%)�x�15�7�7B�{�}�
��9�9�\�9�Q�<����>�>�(,�D�%��
�Y�Y�+�Y�q�\�2�<�<�
H�
H��M�M�6�7�$)�!��O�O�)�)�E���~���<�,�,�,��e��.�.�6�6�A�A�$�G�G��M�M�"4�5�,0�)�$��A�B���	.�
���
�
� � ��.����%�%�'��j�j�1�1��7�8��H�I���&��1��
5��M�M�<�=��*�*�-�-��*�+��D�E��C�$�y��|�
3��C��M�M�0�1��M�M�I�J���O�O�!�!�#���y�	��M�M�J�1�#�N�
�).�D�%���	�s�(J�K� K�Kc
��^RIp^RIp^RIHpVP	4VP
P
\R44VPP4EF8wrEVR,R8wdKRRRR	R
VR
,RVR,/pR.R
V./pVPPR\VPV4RR7R7pVPRR4VPRR4VPRVPP 4VPP#V4P%4p	VP'V	4p
\)V
R,^,R,R	,R,4pT;P2T,
unEK;	R# \*T\,3d#\.P0!RT,4EKri;i)rN)�URLErrorz"Calculating snap size requirements�command�installzinstance-keyzupgrade-size-check�action�download�snap-id�channel�context�actionsz)https://api.snapcraft.io/v2/snaps/refreshr|��encoding)�url�datazSnap-Device-Series�16zContent-typezapplication/jsonzSnap-Device-Architecture�resultsrJ�sizezFailed fetching size of snap %s)�json�urllib.request�urllib.errorr��_prepare_snap_replacement_datar�updateStatusrqr�items�request�Request�bytes�dumps�
add_headerr�arch�urlopen�read�loads�int�KeyErrorr�r$r&r)rr��urllibr�rJ�snap_objectr�r��req�responser%r�s&           rr<�0DistUpgradeQuirks._calculateSnapSizeRequirements�s�����)�
	
�+�+�-�	
�
�
����"F� G�H�!%���!6�!6�!8��D��9�%��2��� 4��*��;�y�1��;�y�1�	�F��2��F�8��D��.�.�(�(�?��4�:�:�d�+�g�>�)�@�C�
�N�N�/��6��N�N�>�+=�>��N�N�5�t���7K�7K�L�
�!�>�>�1�1�#�6�;�;�=���z�z�(�+���4�	�?�1�-�f�5�j�A�&�I�J��
�!�!�T�)�!�!�5"9��.�h�
�3�
��
�
�?�$�F�G��
�s�A(F�/G�Gc�*�VPP\R44VPP	4EF�wrVR,pVR8Xd<VR,pVPP\RV,44RVRWA.pMpVR8Xd1VPP\R	V,44RW1.pM9VPP\R
V,44RVRVR,V.pVPP4\P!V\PRR7pVPP4TP^8Xd\P!T:R
T:R24TR8XgEKVTR,'gEKhTPPPTR,4EK�	R# \Pd$\P!T:R
T:R24EK�i;i)z>install a snap and mark its corresponding package for removal zProcessing snap replacementsr��switchr�zswitching channel for snap %srJz	--channelr�zremoving snap %szinstalling snap %sT)r�checkz	 of snap z failedz
 succeededr��debN)rr�rqrr��
processEventsrMr�r�CalledProcessErrorr$r&�
returncoder�forced_obsoletes�append)rrJr�r�r��	popenargs�procs&      rrC�&DistUpgradeQuirks._replaceDebsAndSnaps�s����
�
����"@� A�B�"&���!6�!6�!8��D�!�)�,�G��(�"�%�i�0���
�
�'�'��5��<�=��$�W�k�7�I�	��H�$��
�
�'�'��*<�t�*C�(D�E�#�W�3�	��
�
�'�'��*>��*E�(F�G�#�W�(�+�i�*@�$�H�	�	
��
�
�(�(�*�!�~�~��%�?�?�� ���
�
�(�(�*����!�#��
�
�7�D�I�J��)�#��E�(:�(:����0�0�7�7��E�8J�K�;"9��.�0�0�
��
�
���F�G��
�s�AG�3H�Hc��\P!R4pVPV4pVPV4pV'dWV'dOVP^4:RVP^4:2pVP^4:RVP^4:2p\P
!RV:RV:24\PPW4^8�#)z"copied from ubuntu-drivers common z(.+)-([0-9]+)-(.+)�-z
Comparing z with )	rkrlrm�groupr$r&�apt�apt_pkg�version_compare)r�term1�term2rw�match1�match2s&&&   r�_is_greater_than�"DistUpgradeQuirks._is_greater_thans����*�*�1�2�����u�%�����u�%���f�%�|�|�A��%�|�|�A��0�E�%�|�|�A��%�|�|�A��0�E�	�
�
��u�=�>��{�{�*�*�5�8�1�<�<r c	��T;'dR;'gRp\P!R4p\P!R4pRpRpVEF=pRVP9gKRVP9gK*VP'gVP'gKPVPVP4p	V	'gKuVPPR,p
V	P^4:RV	P^4:2pVPVV4'gK�TpVPV
4pR	V
9d8V'd0R
V:RV	P^4:RVP^4:2pEK$R
V:RV	P^4:2pEK@	V#)zMGet the linux headers or linux metapackage
copied from ubuntu-drivers-common
z-headers�zlinux-image-(.+)-([0-9]+)-(.+)z
linux-(.+)zlinux-image�extra�Sourcerz-lts-�linux)
rkrlrnr7rormr��recordrr)
rr4�headers�suffixrw�source_pattern�metapackager�rvrm�source�current_version�match_sources
&&&          r�_get_linux_metapackage�(DistUpgradeQuirks._get_linux_metapackagesF���'�'�Z�-�-�2���*�*�=�>�����L�1�������C�����)�g�S�X�X�.E��%�%�%��);�);�);��
�
�c�h�h�/���5� �]�]�1�1�(�;�F�16���Q��16���Q��'A�O��,�,�_�-4�6�6�"1��'5�';�';�F�'C��"�f�,���,2�+0�;�;�q�>�+7�+=�+=�a�+@�+B�K��,2�+0�;�;�q�>�+;�K�C�H�r c�4�VPPpVPVR4pW!9d \P!RV,4R#W,P
'g3\P!RV,4RpVP
W#4R#R#)zZEnsure the linux metapackage is installed for the newest_kernel
installed. (LP: #1509305)
Fz$linux metapackage (%s) not availableNz installing linux metapackage: %sz8linux metapackage may have been accidentally uninstalled)rr4rr$r%r7�mark_install)rr4�linux_metapackage�reasons&   rrb�,DistUpgradeQuirks._install_linux_metapackage@s������%�%�� �7�7��u�E���)��L�L�?�*�+�
,���'�4�4�4��L�L�;�*�+�
,�O�F����0�9�	5r c�:�VPP'g\PPPR4'gNRpVR,
p\P!V4\PPPRR4R#R#R#)zHensure that on a desktop install recommends are installed
(LP: #759262)
zApt::Install-Recommendsz%Apt::Install-Recommends was disabled,z! enabling it just for the upgrade�1N)	r�
serverModerrr�find_br$r�ri)rr�s& r�+ensure_recommends_are_installed_on_desktops�=DistUpgradeQuirks.ensure_recommends_are_installed_on_desktopsSsr�����)�)�)��;�;�%�%�,�,�-F�G�G�=���:�:������$����"�"�&�&�'@�#�F�	H�*r c��VPRR4p\V\4'gV.pVFUpW0PP9dKV'd.VPPV,P
RJdKTR#	R#)zsHelper function that checks if the given deb2snap entry
has at least one metapkg which is installed on the system.
�metapkgNFT)r��
isinstancer�rr4r7)r�deb2snap_entry�metapkg_listr(s&&  r�_is_deb2snap_metapkg_installed�0DistUpgradeQuirks._is_deb2snap_metapkg_installed^sr��&�)�)�)�T�:���,��-�-�(�>�L�#�G��o�o�3�3�3����O�O�)�)�'�2�?�?�5�H���$�r c��^RIp/p/p\PP\PP	\PP\44R4p\VR4;_uu_4pVPVP44pRRR4XR,F�pVR,V,pVPV4'gK,VPRR4p	VPRR4PVPPR7p
VPR	R
4PVPPR7pVPRR
4pW�W�3W'&K�	VR,FypVR,V,p
V
PRR4p	VPV
4'gK>XPRR4PVPPR7p
W�3W7&K{	W#3# +'giELi;i \ d*p\"P$!RT,4Rp?Y#3#Rp?ii;i)rNz
deb2snap.jsonr��seededr��from_channelzstable/ubuntu-{FROM_VERSION})�FROM_VERSION�
to_channelzstable/ubuntu-{TO_VERSION})�
TO_VERSION�force_switchF�unseededz%error reading deb2snap.json file (%s))r�r8r9�joinr��abspath�__file__r�r�r�r,r�r�r�fromVersion�	toVersionrOr$r�)rr��seeded_snaps�unseeded_snaps�
deb2snap_pathr��d2srJ�seedr��	from_chan�to_chanr4�unseedrPs&              r�_parse_deb2snap_json�&DistUpgradeQuirks._parse_deb2snap_jsonqs�������-	I��G�G�L�L������������ 9�:���M��m�S�)�)�Q��j�j�����*��*��H�
�
���8�}�T�*���:�:�4�@�@���h�h�u�d�+��
!�H�H�"�2���&�!%���!<�!<�����(�(� �0���&�#���8�8���� $�x�x���>��&)�g�%L��"�-&�0�J�����Z���.���j�j���-���:�:�6�B�B�� �H�H�"�2���&�!%���!<�!<����),�'7��$�(��+�+�U*�)�)��N�	I��O�O�C�a�G�H�H��+�+��	I�s1�A2H�< G<�EH�<H
	�	H�I�H?�?Ic	�
�/VnVP4wrRp\P!RR.R\PR7P4pV'd�V^,P
R4^R#Uu.uFpVP
4^,NK	ppVFGpWa9gWb9dKRRVPP2RVPP2R	3W&KI	VPP\R
44VP4EF�wrgVwr�r�/p\P!RRV.R\PR7P4p
VPP4\P !RV
^,\P"4'd�\$P&!R
V,4\P !RV	,V
^,\P"4'g)\$P&!RV,4V'gEKRVR&M�VPP(pV'dAW�9gW�,P*'g#\$P&!RV:RV:R24EKu\P !RV
^,4pV'g!\$P&!RV,4EK�RVR&W�R&V^,VR&W�R&W�PV&EK�	VP4EF4wpwr�/p\P!RRV.R\PR7P4p
VPP4\P !RV
^,\P"4'gK�\$P&!R
V,4\P !RV	,V
^,\P"4'g!\$P&!RV,4EK	RVR&\P!RRV.R\PR7P4pVPP4V^,P
R4F�pVP
4p\-V4^8wdK%V^,pV^,pVP/VR,4'gKWVP
R4^,pVR8wgKxVV9gK�\$P&!RV:R V:R!24RVR&R"VR&M	W�PV&EK7	VP#uupi)$z�Helper function fetching all required info for the deb-to-snap
migration: version strings for upgrade (from and to) and the list
of snaps (with actions).
rrJr�T)rrr�Nzstable/ubuntu-FzChecking for installed snapsr%z^installed: zSnap %s is installedz^tracking:.*%sz+Snap %s is not tracking the release channelr�r�zDeb package z) is not installed. Skipping snap package z
 installationzsnap-id:\s*(\w*)z'Could not parse snap-id for the %s snapr�r�r�r�r��connections�:rzSnap z is being used by z. Switching it to stable track�stable���)rrCrMrrr�splitrr9r:rr�rqr�r�rkr�r�r$r&r4r7�lenr�)rr;r<�	snap_list�line�snaps_installedrJ�propsr�r0r2r4r��	snap_infor4rm�conns�conn�	conn_cols�plug�slot�	plug_snaps&                     rr��0DistUpgradeQuirks._prepare_snap_replacement_data�sx��
���'+�'@�'@�'B�$���	��$�$�f�f�%5�8<�,6�O�O�=�=H�[�]�	��,5�Q�<�+=�+=�d�+C�A�b�+I�K�+I�4� $�z�z�|�A���+I�
�K�(���'�4�+A���(����)D�)D�(E�F�(����)B�)B�(C�D��	*�L�&�	(�	
�
�
����"@� A�B�'�-�-�/�K�D�<A�9�S�
��K�"�(�(�&�&�$�)?�<@�0:���A�AL���
�
�J�J�$�$�&��y�y��)�A�,����E�E��
�
�4�t�;�<��y�y�!2�\�!A�!*�1��r�|�|�=�=��M�M�"O�$(�#)�*�(�!�)1��I�&����-�-���S�-�U�Z�5L�5L�5L��M�M�DG��#O�P���	�	�"5�y��|�D����M�M�"K�$(�#)�*��)2��I�&�%(�E�"�).�q���I�&�%/�	�"�$/�O�O�D�!�O0�P*8�)=�)=�)?�%�D�%�3��K�"�(�(�&�&�$�)?�<@�0:���A�AL���
�
�J�J�$�$�&��y�y��)�A�,����E�E��
�
�4�t�;�<��y�y�!2�\�!A�!*�1��r�|�|�=�=��M�M�"O�$(�#)�*��)1��I�&�#�(�(�&�-��)F�<@�0:���A�AL�����
�
�(�(�*�!�!�H�N�N�4�0�D� $�
�
��I��9�~��*� �$�Q�<�D�$�Q�<�D����t�c�z�2�2�$(�J�J�s�O�A�$6�	�$��+�$�N�:�#�M�M�-1�9�+>�?�6>�K�	�2�5=�K�	�2�!�!1�$)4����%�U*@�V�����EKs�8 Uc���Rp\P!V4pVR,VR,V3F�pVR,pVP4pVPRRR7P	4^,P4pVUu.uFpV'gK
VR8wgKVNK	p	pWy8Xd\P!RV4MQVPR	4p
V
PV4VPR
PV	4PR44R#	\P!R
V4R#uupi \dEK\d%p\P!RXY�4Rp?R#Rp?ii;i)zQYou may need to remove zswap.zpool=z3fold from cmdline.txt on your boot partition�new�currentzcmdline.txtr|�replace)�errorszzswap.zpool=z3foldzno z3fold usage found in %sz.txt.distUpgrader}Nz2failed to update kernel command line in %s: %s; %sz(failed to locate kernel command line; %s)�pathlib�Path�
read_bytesr��
splitlinesrJr$r��with_suffix�write_bytesr6�encode�FileNotFoundErrorr�r�)r�boot_dir�failure_action�	boot_root�	boot_path�cmdline_path�old_content�
old_params�param�
new_params�backup_path�excs&&          rrE� DistUpgradeQuirks._remove_z3foldsl��
%�	��L�L��*�	�#�e�+�Y��-B�I�N�I�
�(�=�8��*�5�5�7�� �&�&�w�y�&�A��Z�\�!�%�%*�U�W��",��!+����!&�*>�!>��E�!+���
�+��O�O�5�|�E�#/�":�":�;M�"N�K��+�+�K�8� �,�,�����,�3�3�G�<�>��/O�<	�
�
�@�$�	&��)��%�
���
��
�
�+�,8�#�O���
�sC�AD5�
D0�D0�D0�!A1D5�0D5�5E2�E2�
E2�E-�-E2c���VR,p\VRRR7;_uu_4pVPV4RRR4\TRRR7;_uu_4pTPT4RRR4R# +'giLC;i \d$p\P!RXYt4Rp?R#Rp?ii;i +'giR#;i \d$p\P!RY7T4Rp?R#Rp?ii;i)z.distUpgrader�r|r�Nz0unable to write boot config backup to %s: %s; %sz-unable to write new boot config to %s: %s; %s)r�r��IOErrorr$r�)r�
old_config�
new_config�boot_config_filenamerf�boot_backup_filenamer�ros&&&&&   r�_replace_pi_boot_config�)DistUpgradeQuirks._replace_pi_boot_configHs���	�#7�.�#H� ��*�C�'�B�B�a����
�#�C�	E��*�C�'�B�B�a����
�#�C�B�C�B���	��M�M�L�.��
E���	��
C�B�B���	E��M�M�I�.�^�
E�
E��	E�sh�B�A.�B�C�B2�$C�.A>	�9B�>B�B/�B*�*B/�2C	�=C�C�C4�C/�/C4c���Rp\PPVR4p\VRRR7;_uu_4pVP	4pRRR4RPRXPR	R
744pYe8Xd\P!RT4R#TPYVY24R# +'giLk;i \
d\P!RXT4R#i;i)zfYou may need to replace the vc4-fkms-v3d overlay with vc4-kms-v3d in config.txt on your boot partition�
config.txtr�r|r�N�+failed to open boot configuration in %s; %src3�"�TFspVPR4'd!RV,VPRR4,M6VPR4'gVP4R8Xd
RV,MTx�Ku	R#5i)zdtoverlay=vc4-fkms-v3dz0# changed by do-release-upgrade (LP: #1923673)
#�dtoverlay=vc4-kms-v3dzgpu_mem=z	start_x=1z1# disabled by do-release-upgrade (LP: #1923673)
#N)r�r[�rstrip��.0rMs& r�	<genexpr>�:DistUpgradeQuirks._replace_fkms_overlay.<locals>.<genexpr>gsz���
�>�����7�8�8�
@�$�F��L�L�1�3J�K�
L����z�*�*�d�k�k�m�{�.J�
A�4�G��	
�>�s�A=�6A=�(A=T)�keependsz3no fkms overlay or camera firmware line found in %s)r8r9r6r�r�rdr$r�r`r�rw)rrerfrur��boot_configrts&&     rrD�'DistUpgradeQuirks._replace_fkms_overlayYs���
?�	�	�#%�7�7�<�<��,�#G� ��*�C�'�B�B�a��f�f�h��C��W�W�
�$�.�.��.�=�
�
�
� �$��O�O�$�%9�
;���$�$��%9�	K�7C�B�� �	��M�M�G�.��
@��	�s.�6C�B.�C�.B>	�9C�>C�#C(�'C(c�Ha
a�Rp.ROo
\PPVR4p\VRRR7;_uu_4pVP	4pRRR4RoT
T3R	lpXP4Uu.uFqwP4NK	ppT!T4pRPR
T44p	Y�8Xd\P!RT4R#TPYYY24R# +'giL�;i \
d\P!RXT4R#i;iuupi)
zbYou may need to add dtoverlay=vc4-kms-v3d to an [all] section in config.txt on your boot partitionrrzr�r|r�Nr{c�N�Rp^p\V4F�wr4VP4pV'dpTpVPR4'dVu#VPR4'dVPR4'dVR8HpKoVPR4'dRpK�K�VR8HpK�	V#)Tr}�[�]�[all]zinclude F)�	enumerater~r��endswith)�lines�in_all�last�indexrMs&    r�find_insertion_point�@DistUpgradeQuirks._add_kms_overlay.<locals>.find_insertion_point�s����F��D�(��/����{�{�}��� �D����'>�?�?�#������-�-�$�-�-��2D�2D�!%��������4�4�"'��	5�"�W�_�F� 0� �Kr c�<�S!V4pW,PR4'dV#SWV%V# \dLi;i)r})r��
IndexError)r��insert_point�added_linesr�s& ��r�add_kms_overlay�;DistUpgradeQuirks._add_kms_overlay.<locals>.add_kms_overlay�sW���/��6�L�
��&�1�1�2I�J�J� �L�K�
0;�E�|�,��L��	�
��
�s�1�1�?�?c3�2"�TF
qR,x�K	R#5i)r�N�rs& rr��5DistUpgradeQuirks._add_kms_overlay.<locals>.<genexpr>�s���;�U�T�D�[�[�U�s�z)no addition of KMS overlay required in %s)z,# added by do-release-upgrade (LP: #2065051)r}zdisable_fw_kms_setup=1rz[pi3+]�dtoverlay=vc4-kms-v3d,cma-128rz[pi02]r�rr�)r8r9r6r�r�rdr$r�r`r~r�rw)rrerfrur�r�r�rMr�rtr�r�s&&        @@rrF�"DistUpgradeQuirks._add_kms_overlay~s���
3�	�
��	�#%�7�7�<�<��,�#G� ��*�C�'�B�B�a��f�f�h��C�	�0		�,7�+A�+A�+C�D�+C�4����+C��D���&���W�W�;�U�;�;�
��$��O�O�G�0�
2���$�$��%9�	K�eC�B�� �	��M�M�G�.��
@��	��PEs5�6C5�C"�C5�5D�"C2	�-C5�2C5�5#D�Dc�p�VPPpRpRpVF'pWA9gKW,P'gK%TpM	VfR#\P!RV4RV9dKVR,P'g0\P!R4VR,P4R#R#R#)z�
Force installation of dracut over initramfs-tools.

At present this is only used on the Raspberry Pi images. See
LP: #2148475 for further details.
Nz4Raspberry Pi seed detected (%s), switching to dracut�dracutzMarking dracut for installation)rBrA)rr4r7r$r&r)rr4�raspi_seeds�meta_pkgrvs&    rr^�'DistUpgradeQuirks._force_dracut_install�s������%�%��E�����C��|��
� 7� 7� 7�����
����
�
�B�H�	N��u��U�8�_�%A�%A�%A��M�M�;�<��(�O�(�(�*�&B�r c���RpVP'dR#VPPRR4R29dR#VPP4f\P
!R4R#RpVPPRR4P
R4pR	V9gR
V9dRpM	RV9dR
p\\.R3O4\V4,4pVPPRRVR.\PRR7pVPPR4PR4wrgpT;'gRp\V4\P
!RVRVRVRVR2	4VPPRRVRRVRVR2.4pVP"^8wd\P
!RVRV24R#RVn\$P&P)VPP+4R4p	\$P,!\$P&P/V	4RR7\0P2!V	4P5R R!7\$P6!V	VPP4VPP944V'dzR"p
\$P,!\$P&P/V
4RR7R#p\;V
R$4;_uu_4pVP=R%VR&VR'VRVR(VR)24RRR4R#R*p
\$P,!\$P&P/V
4RR7\;V
R$4;_uu_4pVP=R+VR,VRVR-24RRR4VPP?R..4VPP?R/\$P&PAV
4.4pVP"^8wd:\P
!R0\$P&PAV
4R124R#R# \ dRpEL�i;i +'giR#;i +'giL�;i)4z�Due to changes to the Ubuntu font we enable a generic font
(in practice DejaVu or Noto) during the upgrade.
See https://launchpad.net/bugs/2034986
�SansN�XDG_SESSION_TYPErz3Cannot determine non-root UID, will not change fontzorg.gnome.desktop.interface�XDG_CURRENT_DESKTOPrG�MATE�UKUIzorg.mate.interface�
X-Cinnamonzorg.cinnamon.desktop.interfacez/usr/bin/gsettingsr�z	font-namer|)rr�z'
r}�Ubuntu�11zSetting generic font z& during the upgrade. Original font is �.ri�"zFailed to change font to Tz!.config/upgrade-need-font-restorer�i�)�modez//etc/xdg/autostart/upgrade-restore-font.desktopz'$HOME/.config/upgrade-need-font-restorer�z�[Desktop Entry]
Name=Restore font after upgrade
Comment=Auto-generated by ubuntu-release-upgrader
Type=Application
Exec=sh -c 'if [ -e "z" ]; then gsettings set z font-name "z	";rm -f "z"; fi'
NoDisplay=true
z2/usr/lib/systemd/user/upgrade-restore-font.servicez�# Auto-generated by ubuntu-release-upgrader
[Unit]
Description=Restore font after upgrade
After=graphical-session.target dconf.service
ConditionPathExists=%h/.config/upgrade-need-font-restore

[Service]
Type=oneshot
ExecStart=/usr/bin/gsettings set z font-name 'zm'
ExecStart=/usr/bin/rm -f %h/.config/upgrade-need-font-restore

[Install]
WantedBy=graphical-session.target
z
daemon-reload�enablezFailed to enable z%. Font will not be restored on reboot)r�tty)�Budgie�LXQtr�r�r��XFCE)!rr�get_user_env�get_user_uidr$r&rJ�boolri�run_as_userrMrrr�
rpartitionr�r�r�r8r9r6�
get_user_homer�r�r]r^�touch�chown�get_user_gidr�r��systemctl_as_user�basename)r�	temp_font�schema�desktops�
use_autostartr��fontrqr��need_font_restore_file�autostart_file�flagr��	unit_files&             rrW�#DistUpgradeQuirks._set_generic_font�s��
�	�� � � ���?�?�'�'�(:�B�?�;�N�
��?�?�'�'�)�1��M�M�E�
�
�.���?�?�/�/�!�2�
�
�%��*�	�
�X���8�!3�)�F�
�X�
%�5�F���H�I��(�m�
�
�
�

�O�O�'�'�
!�5��x�+�
'��?�?��	
(�
���(�(�.�.��0�;�;�C�@���$����x��	���I�	�
�
�-�i�[��$��@3�37�&��$��q�B�	C�
�O�O�'�'� �%�F�8��1�Y�K�q���a�0�)
�
��
�<�<�1���M�M�5�i�[��$��H�I�� $���"$������O�O�)�)�+�/�"
��	���B�G�G�O�O�$:�;�d�K����+�,�2�2��2�>�
���"��O�O�(�(�*��O�O�(�(�*�	
��N�N��K�K�������7�$�G�<�D��n�c�*�*�a����-�.2�F�2J��h�l�4�&��$��8�"�V�$'�
'�	�+�
�I�	�
���B�G�G�O�O�I�.��>�
�)�S�
!�
!�Q�
�G�G�4��(�-��v�Q�t�f�56�6�
�"�&	
���)�)�?�*;�<��O�O�-�-�
�r�w�w�'�'�	�2�3�
��
�<�<�1���M�M�-�b�g�g�.>�.>�y�.I�-J�K@�@�
A���a�	��D�	��D+�*�
��"�
!�s*�P?�"Q�9Q'�?
Q�Q�Q$	�'Q7	c��VPPPpVR,P'gR#VR,PpVUUu.uF&wr4VP
P'gK$VNK(	ppp\T4'g�\P!R4TPPR,PRR7\P!TPP4PTPPR,4R#R#uuppi \dR#i;i)ze
Prevent postfix from being unnecessarily installed, and leading to a
debconf prompt (LP: #2060578).
zgpg-wks-serverNzmail-transport-agentzENo mail-transport-agent installed, marking gpg-wks-server for removalF��auto_fix)rr4�_cache�current_ver�
provides_list�
parent_pkgr��anyr$r%�mark_deleter�ProblemResolver�protect)rr4�provides_mtarq�ver�
installed_mtas&     rr\�.DistUpgradeQuirks._maybe_remove_gpg_wks_serverfs�����%�%�,�,��	��)�*�6�6�6�� �!7�8�F�F�L�%1��%1�	��1��>�>�-�-���\�
���=�!�!��L�L�5�
�

�O�O�!�!�"2�3�?�?��?�O������� 5� 5�6�>�>����%�%�&6�7�
�"�����	��	�s.�D6�D6�!D0�;D0�D6�0D6�6E�Ec�:�\P!4pVPVPP4;'gRp\
P!4pTP4R# \d%p\P!RT24Rp?R#Rp?ii;i \dpp\P!RT24TPP\RT24\R44TPP4Rp?R#Rp?ii;i)z�
With release Ubuntu 25.10 we have raised the ISA profile requirement
on RISC-V to RVA23U64. Prevent systems that don't implement RVA23U64
from upgrading beyond Ubuntu 24.04 LTS.
�next releasez
RVA23 check: N�%Sorry, cannot upgrade this system to z�On Ubuntu 25.10 and later, RISC-V systems are required to support the RVA23U64 profile, but your system does not. Please, see https://discourse.ubuntu.com/t/questing-quokka-release-notes for more information.)�distro_info�UbuntuDistroInfor�r�toDistr�read_cpuinfor	r$r&�assert_rva23_readyr�rrqrr)r�dir��cpuinfo�exs&    rr.�)DistUpgradeQuirks._test_and_fail_on_rva23�s����
)�
)�
+���*�*�T�_�_�3�3�4�F�F���	�"�/�/�1�G�	$��&�&�(���%�	��M�M�M�"��.�/���	��%�
	$��M�M�M�"��.�/��J�J����;�G�9�E���J��	

�
�O�O�!�!�#�#��
	$�s1�A.�B �.B�9B�B� D�+A$D�Dc�v�VPPR8wdR#\4pVf\P!R4R#V\
P8�d\P!R4R#VPP\R4\R44VPP4R#)z�
With release Ubuntu 26.04 we have raised the ISA generation
requirement on s390x to z15. Prevent systems that are below z15
from upgrading beyond Ubuntu 25.10.
�s390xNz3s390x generation check: cannot determine generationz2s390x generation check: generation is z15 or newerz5Sorry, cannot upgrade this system to Ubuntu 26.04 LTSz�On Ubuntu 26.04 and later, s390x systems are required to be z15 or newer, but your system is not. Please, see https://discourse.ubuntu.com/t/resolute-raccoon-release-notes for more information.)rr�rr$r&r
�Z15rr�rqrr)r�
generations& rr0�'DistUpgradeQuirks._test_and_fail_on_z13�s����?�?���7�*��-H�-J�
����M�M�E�
�
���,�,�,��M�M�D�
�
��
�
���
�G�
�
�G�
�	
	
�	
�����r c�l�VPPR9dR#\P!V4p\	VR,P4P
R4PR44p\;QJdRV4F'gKRM	RM
!RV44'gR#RV9dRR	rTM
R
V9dRRrTMR#\P!V\PR
7p^RIpTR,R,R,pTPRTP44^,p	Y�8�dR#TP P#\%R4\%R4P'YeR74TPP)4R# \dR#i;i \dLyi;i)z�
Ubuntu 26.04 has minimum EEPROM requirements, partly for the "tryboot"
facility of the bootloader (for the Pi 4) and partly for kernel version
7 compatibility (for the Pi 5).

LP: #2130734
LP: #2146383
N�
compatible�c3�B"�TFqPR4x�K	R#5i)sraspberrypi,N)r�)r��ss& rr��DDistUpgradeQuirks._test_and_fail_on_pi_old_eeprom.<locals>.<genexpr>�s���I�j��|�|�O�4�4�j�s�TFsbrcm,bcm2711i՞�ci.� sbrcm,bcm2712iO��giO� )�tz�chosen�
bootloaderzbuild-timestampz>Iz'Newer Raspberry Pi boot EEPROM requireda\For Ubuntu 26.04, this Raspberry Pi requires the boot EEPROM to be dated at least {minimum_dt:%c %Z} or later. If you wish to proceed with the upgrade, once this upgrader exits, run "sudo rpi-eeprom-update -a" and reboot. Afterwards, you should be able to proceed with this upgrade. Please see https://launchpad.net/bugs/{bug} for more information.)�
minimum_dt�bug)�armhf�arm64)rr�r]r^rir_r~rJr�r�
fromtimestampr�utcrd�struct�unpackrr�rqr�rr)
r�dt_dir�dtr��
minimum_builtr�r�r��timestamp_node�builts
&&        rr1�1DistUpgradeQuirks._test_and_fail_on_pi_old_eeprom�sy���?�?���'9�9��
�\�\�&�
!��	P���\�!�:�:�<���u�
�e�e�E�l�L�J�
�3�I�j�I�3�3�3�I�j�I�I�I���*�,�%/��s� �J�.�%/��s��!�/�/�
�(�,�,�O�J�	�	� �8�m�l�:�=N�N�N��M�M�$��(A�(A�(C�D�Q�G�E��%��&�	
�
�
���
�9�
�
�I�
��f�
�f�4�
	
�	
�������O!�	��	��&!�	��	�s#�>F�2>F%�F"�!F"�%F3�2F3c�6�\PPR4'd�RVPP9d�VPPR,P
'd�\P!R4\P!4pVPVPP4;'gRpVPP\RV24\R44VPP4R#R#R#R#)z
LP: #2065229
z/snap/pc-kernelzubuntu-desktop-minimalzDetected TPM FDE systemr�r�z�Upgrades for desktop systems running TPM FDE are not currently supported. Please see https://launchpad.net/bugs/2065229 for more information.N)r8r9r:rr4r7r$r&r�r�r�r�rr�rqrr)rr�r�s&  rr3�+DistUpgradeQuirks._test_and_fail_on_tpm_fdes���

�G�G�N�N�,�-�-�$����(=�(=�=��O�O�!�!�":�;�H�H�H��M�M�3�4��-�-�/�B��j�j����!7�!7�8�J�J�N�G��J�J����;�G�9�E���,��	

�
�O�O�!�!�#�%
I�
>�
.r c�^�RV9dR#VR,pVP'd\P!R4R#VP'd_\P!R4\P
!RRR7pVPpV^8wd\P!RV24R#R#R#)	z0Disable kdump-tools if installed during upgrade.zkdump-toolsNz-kdump-tools already installed. Not disabling.z1installing kdump-tools due to upgrade. Disabling.zOecho "kdump-tools kdump-tools/use_kdump boolean false" | debconf-set-selectionsTr�z-kdump-tools debconf-set-selections returned: )r7r$r%rorMr�r�r&)rr4rvr��ret_codes&&   rrX�1DistUpgradeQuirks._disable_kdump_tools_on_install's�����%���M�"�������L�L�H�I��
�
�
�
��L�L�L�M��>�>�0���D����H��1�}��
�
�&�&.�Z�1��� r c�^�VPPR8wdR#RVPP9duVPPR,P'gF\P
!R4VPPR,P
RR7R#R#R#)z
LP: #2089759 �oracularNzlinux-sysctl-defaultsz Installing linux-sysctl-defaultsFr�)r�fromDistr4r7r$r&rr(s&rr]�0DistUpgradeQuirks._install_linux_sysctl_defaultsDs����?�?�#�#�z�1��
$�t���'<�'<�<����%�%�&=�>�K�K�K��M�M�<�=��O�O�!�!�"9�:�G�G��
H�
�	L�
=r c��VPPpR
pRpVF'pWA9gKW,P'gK%TpM	VfR#\P!RV4RV9dIVR,P'd0\P!R4VR,PRR7RV9dIVR,P'g0\P!R4VR,P
RR7W,P'g0\P!R	V4W,P4R#R#)z�
For Kubuntu and Ubuntu Studio, switch from apport-core-dump-handler
to systemd-coredump. These flavors use DrKonqi for crash handling
which requires systemd-coredump.
Nz7KDE flavor detected (%s), switching to systemd-coredumpzapport-core-dump-handlerz,Marking apport-core-dump-handler for removalFr�zsystemd-coredumpz)Marking systemd-coredump for installationz/Re-marking %s for upgrade after coredump switch)zkubuntu-desktopzubuntustudio-desktop-core)	rr4r7r$r&r�r�marked_upgrade�mark_upgrade)rr4�kde_flavor_pkgsr�rvs&    rrc�=DistUpgradeQuirks._switch_to_systemd_coredump_for_kde_flavorsTs�����%�%��
����"�C��|��
� 7� 7� 7����#�
����
�
�E��	
�
'�%�/��,�-�:�:�:��M�M�H�I��,�-�9�9�5�9�I�
�%�'��(�)�6�6�6��M�M�E�F��$�%�2�2�E�2�B���-�-�-��M�M�A�8�
�
�O�(�(�*�	.r c���\R4;_uu_4pVP4pRRR4XF1pVP4P4wrErgr�Ye3R8XgK0R#	VPP\R4\R44VPP4R# +'giL�;i \d\
P!RTR24K�i;i)z�
Starting in 26.04 LTS, systemd requires cgroupv2 unified hierarchy,
and will refuse to start under other configurations which were
previously allowed.
z/proc/mountsNzcould not parse z from /proc/mounts, ignoringz1Cannot upgrade without unified cgroupv2 hierarchyz�Beginning with Ubuntu 26.04 LTS, it is required that the system is booted with a unified cgroupv2 hierarchy, but this system is not.

See https://discourse.ubuntu.com/t/resolute-raccoon-release-notes for more information.)�cgroup2z/sys/fs/cgroup)r��	readlinesrrJr�r$r�rr�rqrrr)
rr��mountsrM�what�where�fs�opts�a�bs
&         rr/�1DistUpgradeQuirks._test_and_fail_without_cgroupv2�s����.�
!�
!�Q��[�[�]�F�"��D�
�04�
�
��0B�0B�0D�-��b���{�;�;���	
�
�
���
�C�
�
�)�
�		
�	
������;"�
!���
����&�t�f�,H�I���	
�s�B.�"C�.B>	�%C*�)C*c��^RIpVPPR8wdR#RVPP9d.VPPR,P'gR#\
P!.ROR^\
PR7pVPVPPR44pXUu/uFpVR
,VR,R8HbK	ppVP+4UUu0uFwrhV'gKVkK	p	pp0Rmp
0Rmp\-W�P/4,4pV
P1V	4'd V'dgVP1V	4'gN\#R4p\#R
4pVP$P'WE4VPP)4R#R#R# \\
P\TP3df\P !R4\#R4p\#R	4pTP$P'YE4TPP)4EL�i;iuupiuuppi)zf
RabbitMQ can only be upgraded to 4.X (the version in resolute) if a set
of feature flags is enabled.
N�resolutezrabbitmq-serverT)r��timeoutrr|z&Failed to query RabbitMQ feature flagszUnable to upgrade RabbitMQz�The RabbitMQ feature flags could not be detected.

Please follow the instructions at https://discourse.ubuntu.com/t/77271 to prepare RabbitMQ for the upgrade, then retry.rn�state�enabledz�Your RabbitMQ server installation requires manual preparation before it can be upgraded to the newer version.

 Please follow the instructions at https://discourse.ubuntu.com/t/77271 to prepare RabbitMQ for the upgrade, then retry.)z/usr/sbin/rabbitmqctlz--formatterr��list_feature_flags>�restart_streams�stream_filtering�stream_update_config_command�$stream_sac_coordinator_unblock_group>�mqtt_v5�rabbit_mqtt_qos0_queue�delete_ra_cluster_mqtt_node)r�rr�r4r7rMr�rr�rr�r��SubprocessError�UnicodeDecodeError�JSONDecodeErrorr$r�rqrr�rrr�r��keys�issubset)
rr��result�	raw_flagsr��messager��
feature_flagsr�
enabled_flags�core_required_flags�mqtt_required_flags�has_mqtts
&            rr2�MDistUpgradeQuirks._test_and_fail_rabbitmq_server_installed_and_not_upgradable�s��
	��?�?�!�!�Z�/��
����!6�!6�6��O�O�!�!�"3�4�A�A�A��	$��^�^����!���
�F��
�
�6�=�=�#7�#7��#@�A�I�("�
�!��
��L�4��=�I�5�5�!�	�
�"/�!4�!4�!6�
�!6�
���
�D�!6�	�
�
��
��
�+�.@�.@�.B�B�C��%�-�-�m�<�<�
�1�:�:�=�I�I��4�5�G��/��G�
�J�J���W�.��O�O�!�!�#�J�X��[
��&�&��� � �	
�	$�
���F�G��4�5�G��/��G�
�J�J���W�.��O�O�!�!�#�	$��"
��
s&�-AF?�I�7I�I�?BI�I)	rrrrrrrrrN)z/boot/firmware)z/proc/device-tree)1�__name__�
__module__�__qualname__�__firstlineno__�__doc__rr)r>rGrQrYr_rdr5r6r'rLrUrVr�rTr;r<rCrrrbr%r,rCr�rErwrDrFr^rWr\r.r0r1r3rXr]rcr/r2�__static_attributes__�__classdictcell__)�
__classdict__s@rr
r
's�����*
&�'�!2�F(�.<�"4� 
%�	;�-(�^0
�d;�";�B�F�	�O�F$�P&*�P"L�H=� .�`:�&	G��&4,�lr�h+&�ZE�"#K�JFK�P+�2EA�N!�F!$�F" �H: �x$�6�:� 1+�f# �JV$�V$r r
)rr�r�r�r$r8rkrMr]rrrr�DistUpgradeGettextrrqrr	r
r�objectr
r�r r�<module>r>s?��,�
����	�	���"�'�,�?�K�[$��[$r 

Youez - 2016 - github.com/yon3zu
LinuXploit