prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Please remove packagekit from GNOME profile
  Speaking as the maintainer of GNOME on Arch, please remove packagekit from the `gnome` profile.
  
  It's split out from the rest of gnome-software for a reason - packagekit is utterly unsupported. I've never seen it work reliably and it breaks our assumptions about user attention during upgrades.
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `profiles/gnome.py`
  Content:
  ```
  1 # A desktop environment using "Gnome"
  2 
  3 import archinstall
  4 
  5 is_top_level_profile = False
  6 
  7 # Note: GDM should be part of the gnome group, but adding it here for clarity
  8 __packages__ = [
  9 	"gnome",
  10 	"gnome-tweaks",
  11 	"gdm",
  12 	"gnome-software-packagekit-plugin",
  13 ]
  14 
  15 
  16 def _prep_function(*args, **kwargs):
  17 	"""
  18 	Magic function called by the importing installer
  19 	before continuing any further. It also avoids executing any
  20 	other code in this stage. So it's a safe way to ask the user
  21 	for more input before any other installer steps start.
  22 	"""
  23 
  24 	# Gnome optionally supports xorg, we'll install it since it also
  25 	# includes graphic driver setups (this might change in the future)
  26 	profile = archinstall.Profile(None, 'xorg')
  27 	with profile.load_instructions(namespace='xorg.py') as imported:
  28 		if hasattr(imported, '_prep_function'):
  29 			return imported._prep_function()
  30 		else:
  31 			print('Deprecated (??): xorg profile has no _prep_function() anymore')
  32 
  33 
  34 # Ensures that this code only gets executed if executed
  35 # through importlib.util.spec_from_file_location("gnome", "/somewhere/gnome.py")
  36 # or through conventional import gnome
  37 if __name__ == 'gnome':
  38 	# Install dependency profiles
  39 	archinstall.storage['installation_session'].install_profile('xorg')
  40 
  41 	# Install the GNOME packages
  42 	archinstall.storage['installation_session'].add_additional_packages(__packages__)
  43 
  44 	archinstall.storage['installation_session'].enable_service('gdm')  # Gnome Display Manager
  45 # We could also start it via xinitrc since we do have Xorg,
  46 # but for gnome that's deprecated and wayland is preferred.
  47
  ```
  
  Path: `profiles/kde.py`
  Content:
  ```
  1 # A desktop environment using "KDE".
  2 
  3 import archinstall
  4 
  5 is_top_level_profile = False
  6 
  7 __packages__ = [
  8 	"plasma-meta",
  9 	"konsole",
  10 	"kwrite",
  11 	"dolphin",
  12 	"ark",
  13 	"sddm",
  14 	"plasma-wayland-session",
  15 	"egl-wayland",
  16 	"packagekit-qt5",
  17 ]
  18 
  19 
  20 # TODO: Remove hard dependency of bash (due to .bash_profile)
  21 
  22 
  23 def _prep_function(*args, **kwargs):
  24 	"""
  25 	Magic function called by the importing installer
  26 	before continuing any further. It also avoids executing any
  27 	other code in this stage. So it's a safe way to ask the user
  28 	for more input before any other installer steps start.
  29 	"""
  30 
  31 	# KDE requires a functioning Xorg installation.
  32 	profile = archinstall.Profile(None, 'xorg')
  33 	with profile.load_instructions(namespace='xorg.py') as imported:
  34 		if hasattr(imported, '_prep_function'):
  35 			return imported._prep_function()
  36 		else:
  37 			print('Deprecated (??): xorg profile has no _prep_function() anymore')
  38 
  39 
  40 """
  41 def _post_install(*args, **kwargs):
  42 	if "nvidia" in _gfx_driver_packages:
  43 		print("Plasma Wayland has known compatibility issues with the proprietary Nvidia driver")
  44 	print("After booting, you can choose between Wayland and Xorg using the drop-down menu")
  45 	return True
  46 """
  47 
  48 # Ensures that this code only gets executed if executed
  49 # through importlib.util.spec_from_file_location("kde", "/somewhere/kde.py")
  50 # or through conventional import kde
  51 if __name__ == 'kde':
  52 	# Install dependency profiles
  53 	archinstall.storage['installation_session'].install_profile('xorg')
  54 
  55 	# Install the KDE packages
  56 	archinstall.storage['installation_session'].add_additional_packages(__packages__)
  57 
  58 	# Enable autostart of KDE for all users
  59 	archinstall.storage['installation_session'].enable_service('sddm')
  60
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/profiles/gnome.py b/profiles/gnome.py
  --- a/profiles/gnome.py
  +++ b/profiles/gnome.py
  @@ -8,8 +8,7 @@
   __packages__ = [
   	"gnome",
   	"gnome-tweaks",
  -	"gdm",
  -	"gnome-software-packagekit-plugin",
  +	"gdm"
   ]
   
   
  diff --git a/profiles/kde.py b/profiles/kde.py
  --- a/profiles/kde.py
  +++ b/profiles/kde.py
  @@ -12,8 +12,7 @@
   	"ark",
   	"sddm",
   	"plasma-wayland-session",
  -	"egl-wayland",
  -	"packagekit-qt5",
  +	"egl-wayland"
   ]
  
verification_info: {"golden_diff": "diff --git a/profiles/gnome.py b/profiles/gnome.py\n--- a/profiles/gnome.py\n+++ b/profiles/gnome.py\n@@ -8,8 +8,7 @@\n __packages__ = [\n \t\"gnome\",\n \t\"gnome-tweaks\",\n-\t\"gdm\",\n-\t\"gnome-software-packagekit-plugin\",\n+\t\"gdm\"\n ]\n \n \ndiff --git a/profiles/kde.py b/profiles/kde.py\n--- a/profiles/kde.py\n+++ b/profiles/kde.py\n@@ -12,8 +12,7 @@\n \t\"ark\",\n \t\"sddm\",\n \t\"plasma-wayland-session\",\n-\t\"egl-wayland\",\n-\t\"packagekit-qt5\",\n+\t\"egl-wayland\"\n ]\n", "issue": "Please remove packagekit from GNOME profile\nSpeaking as the maintainer of GNOME on Arch, please remove packagekit from the `gnome` profile.\r\n\r\nIt's split out from the rest of gnome-software for a reason - packagekit is utterly unsupported. I've never seen it work reliably and it breaks our assumptions about user attention during upgrades.\n", "before_files": [{"content": "# A desktop environment using \"Gnome\"\n\nimport archinstall\n\nis_top_level_profile = False\n\n# Note: GDM should be part of the gnome group, but adding it here for clarity\n__packages__ = [\n\t\"gnome\",\n\t\"gnome-tweaks\",\n\t\"gdm\",\n\t\"gnome-software-packagekit-plugin\",\n]\n\n\ndef _prep_function(*args, **kwargs):\n\t\"\"\"\n\tMagic function called by the importing installer\n\tbefore continuing any further. It also avoids executing any\n\tother code in this stage. So it's a safe way to ask the user\n\tfor more input before any other installer steps start.\n\t\"\"\"\n\n\t# Gnome optionally supports xorg, we'll install it since it also\n\t# includes graphic driver setups (this might change in the future)\n\tprofile = archinstall.Profile(None, 'xorg')\n\twith profile.load_instructions(namespace='xorg.py') as imported:\n\t\tif hasattr(imported, '_prep_function'):\n\t\t\treturn imported._prep_function()\n\t\telse:\n\t\t\tprint('Deprecated (??): xorg profile has no _prep_function() anymore')\n\n\n# Ensures that this code only gets executed if executed\n# through importlib.util.spec_from_file_location(\"gnome\", \"/somewhere/gnome.py\")\n# or through conventional import gnome\nif __name__ == 'gnome':\n\t# Install dependency profiles\n\tarchinstall.storage['installation_session'].install_profile('xorg')\n\n\t# Install the GNOME packages\n\tarchinstall.storage['installation_session'].add_additional_packages(__packages__)\n\n\tarchinstall.storage['installation_session'].enable_service('gdm')  # Gnome Display Manager\n# We could also start it via xinitrc since we do have Xorg,\n# but for gnome that's deprecated and wayland is preferred.\n", "path": "profiles/gnome.py"}, {"content": "# A desktop environment using \"KDE\".\n\nimport archinstall\n\nis_top_level_profile = False\n\n__packages__ = [\n\t\"plasma-meta\",\n\t\"konsole\",\n\t\"kwrite\",\n\t\"dolphin\",\n\t\"ark\",\n\t\"sddm\",\n\t\"plasma-wayland-session\",\n\t\"egl-wayland\",\n\t\"packagekit-qt5\",\n]\n\n\n# TODO: Remove hard dependency of bash (due to .bash_profile)\n\n\ndef _prep_function(*args, **kwargs):\n\t\"\"\"\n\tMagic function called by the importing installer\n\tbefore continuing any further. It also avoids executing any\n\tother code in this stage. So it's a safe way to ask the user\n\tfor more input before any other installer steps start.\n\t\"\"\"\n\n\t# KDE requires a functioning Xorg installation.\n\tprofile = archinstall.Profile(None, 'xorg')\n\twith profile.load_instructions(namespace='xorg.py') as imported:\n\t\tif hasattr(imported, '_prep_function'):\n\t\t\treturn imported._prep_function()\n\t\telse:\n\t\t\tprint('Deprecated (??): xorg profile has no _prep_function() anymore')\n\n\n\"\"\"\ndef _post_install(*args, **kwargs):\n\tif \"nvidia\" in _gfx_driver_packages:\n\t\tprint(\"Plasma Wayland has known compatibility issues with the proprietary Nvidia driver\")\n\tprint(\"After booting, you can choose between Wayland and Xorg using the drop-down menu\")\n\treturn True\n\"\"\"\n\n# Ensures that this code only gets executed if executed\n# through importlib.util.spec_from_file_location(\"kde\", \"/somewhere/kde.py\")\n# or through conventional import kde\nif __name__ == 'kde':\n\t# Install dependency profiles\n\tarchinstall.storage['installation_session'].install_profile('xorg')\n\n\t# Install the KDE packages\n\tarchinstall.storage['installation_session'].add_additional_packages(__packages__)\n\n\t# Enable autostart of KDE for all users\n\tarchinstall.storage['installation_session'].enable_service('sddm')\n", "path": "profiles/kde.py"}], "after_files": [{"content": "# A desktop environment using \"Gnome\"\n\nimport archinstall\n\nis_top_level_profile = False\n\n# Note: GDM should be part of the gnome group, but adding it here for clarity\n__packages__ = [\n\t\"gnome\",\n\t\"gnome-tweaks\",\n\t\"gdm\"\n]\n\n\ndef _prep_function(*args, **kwargs):\n\t\"\"\"\n\tMagic function called by the importing installer\n\tbefore continuing any further. It also avoids executing any\n\tother code in this stage. So it's a safe way to ask the user\n\tfor more input before any other installer steps start.\n\t\"\"\"\n\n\t# Gnome optionally supports xorg, we'll install it since it also\n\t# includes graphic driver setups (this might change in the future)\n\tprofile = archinstall.Profile(None, 'xorg')\n\twith profile.load_instructions(namespace='xorg.py') as imported:\n\t\tif hasattr(imported, '_prep_function'):\n\t\t\treturn imported._prep_function()\n\t\telse:\n\t\t\tprint('Deprecated (??): xorg profile has no _prep_function() anymore')\n\n\n# Ensures that this code only gets executed if executed\n# through importlib.util.spec_from_file_location(\"gnome\", \"/somewhere/gnome.py\")\n# or through conventional import gnome\nif __name__ == 'gnome':\n\t# Install dependency profiles\n\tarchinstall.storage['installation_session'].install_profile('xorg')\n\n\t# Install the GNOME packages\n\tarchinstall.storage['installation_session'].add_additional_packages(__packages__)\n\n\tarchinstall.storage['installation_session'].enable_service('gdm')  # Gnome Display Manager\n# We could also start it via xinitrc since we do have Xorg,\n# but for gnome that's deprecated and wayland is preferred.\n", "path": "profiles/gnome.py"}, {"content": "# A desktop environment using \"KDE\".\n\nimport archinstall\n\nis_top_level_profile = False\n\n__packages__ = [\n\t\"plasma-meta\",\n\t\"konsole\",\n\t\"kwrite\",\n\t\"dolphin\",\n\t\"ark\",\n\t\"sddm\",\n\t\"plasma-wayland-session\",\n\t\"egl-wayland\"\n]\n\n\n# TODO: Remove hard dependency of bash (due to .bash_profile)\n\n\ndef _prep_function(*args, **kwargs):\n\t\"\"\"\n\tMagic function called by the importing installer\n\tbefore continuing any further. It also avoids executing any\n\tother code in this stage. So it's a safe way to ask the user\n\tfor more input before any other installer steps start.\n\t\"\"\"\n\n\t# KDE requires a functioning Xorg installation.\n\tprofile = archinstall.Profile(None, 'xorg')\n\twith profile.load_instructions(namespace='xorg.py') as imported:\n\t\tif hasattr(imported, '_prep_function'):\n\t\t\treturn imported._prep_function()\n\t\telse:\n\t\t\tprint('Deprecated (??): xorg profile has no _prep_function() anymore')\n\n\n\"\"\"\ndef _post_install(*args, **kwargs):\n\tif \"nvidia\" in _gfx_driver_packages:\n\t\tprint(\"Plasma Wayland has known compatibility issues with the proprietary Nvidia driver\")\n\tprint(\"After booting, you can choose between Wayland and Xorg using the drop-down menu\")\n\treturn True\n\"\"\"\n\n# Ensures that this code only gets executed if executed\n# through importlib.util.spec_from_file_location(\"kde\", \"/somewhere/kde.py\")\n# or through conventional import kde\nif __name__ == 'kde':\n\t# Install dependency profiles\n\tarchinstall.storage['installation_session'].install_profile('xorg')\n\n\t# Install the KDE packages\n\tarchinstall.storage['installation_session'].add_additional_packages(__packages__)\n\n\t# Enable autostart of KDE for all users\n\tarchinstall.storage['installation_session'].enable_service('sddm')\n", "path": "profiles/kde.py"}]}