prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Change "Import Games" to something more clear (like "Configure library importing")
  I personally feel like the current name for that menu is confusing, misleading and does't represent its actual purpose. I personally think something like "Configure library importing" will describe the menu much better, but if you disagree, any suggestions are appreciated.
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `lutris/gui/sync.py`
  Content:
  ```
  1 import gi
  2 gi.require_version('Gtk', '3.0')
  3 from gi.repository import Gtk, Gio
  4 
  5 from lutris.gui.widgets.utils import get_runner_icon
  6 from lutris.gui.dialogs import NoticeDialog
  7 from lutris.services import get_services
  8 from lutris.settings import read_setting, write_setting
  9 from lutris.util.jobs import AsyncCall
  10 
  11 
  12 class ServiceSyncRow(Gtk.HBox):
  13 
  14     def __init__(self, service):
  15         super(ServiceSyncRow, self).__init__()
  16         self.set_spacing(20)
  17 
  18         self.identifier = service.__name__.split('.')[-1]
  19         name = service.NAME
  20 
  21         icon = get_runner_icon(self.identifier)
  22         self.pack_start(icon, False, False, 0)
  23 
  24         label = Gtk.Label(xalign=0)
  25         label.set_markup("<b>{}</b>".format(name))
  26         self.pack_start(label, True, True, 0)
  27 
  28         actions = Gtk.VBox()
  29         self.pack_start(actions, False, False, 0)
  30 
  31         sync_switch = Gtk.Switch()
  32         sync_switch.set_tooltip_text("Sync when Lutris starts")
  33         sync_switch.props.valign = Gtk.Align.CENTER
  34         sync_switch.connect('notify::active', self.on_switch_changed)
  35         if read_setting('sync_at_startup', self.identifier) == 'True':
  36             sync_switch.set_state(True)
  37         actions.pack_start(sync_switch, False, False, 0)
  38 
  39         sync_button = Gtk.Button("Sync")
  40         sync_button.set_tooltip_text("Sync now")
  41         sync_button.connect('clicked', self.on_sync_button_clicked, service.sync_with_lutris)
  42         actions.pack_start(sync_button, False, False, 0)
  43 
  44     def on_sync_button_clicked(self, button, sync_method):
  45         AsyncCall(sync_method, callback=self.on_service_synced)
  46 
  47     def on_service_synced(self, caller, data):
  48         parent = self.get_toplevel()
  49         if not isinstance(parent, Gtk.Window):
  50             # The sync dialog may have closed
  51             parent = Gio.Application.get_default().props.active_window
  52         NoticeDialog("Games synced", parent=parent)
  53 
  54     def on_switch_changed(self, switch, data):
  55         state = switch.get_active()
  56         write_setting('sync_at_startup', state, self.identifier)
  57 
  58 
  59 class SyncServiceDialog(Gtk.Dialog):
  60 
  61     def __init__(self, parent=None):
  62         Gtk.Dialog.__init__(self, title="Import local games", parent=parent)
  63         self.connect("delete-event", lambda *x: self.destroy())
  64         self.set_border_width(10)
  65         self.set_size_request(512, 0)
  66 
  67         box_outer = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=6)
  68         self.get_content_area().add(box_outer)
  69 
  70         description_label = Gtk.Label()
  71         description_label.set_markup("You can import games from local game sources, \n"
  72                                      "you can also choose to sync everytime Lutris starts")
  73         box_outer.pack_start(description_label, False, False, 5)
  74 
  75         separator = Gtk.Separator()
  76         box_outer.pack_start(separator, False, False, 0)
  77 
  78         for service in get_services():
  79             sync_row = ServiceSyncRow(service)
  80             box_outer.pack_start(sync_row, False, True, 0)
  81         box_outer.show_all()
  82
  ```
  --- 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/lutris/gui/sync.py b/lutris/gui/sync.py
  --- a/lutris/gui/sync.py
  +++ b/lutris/gui/sync.py
  @@ -59,7 +59,7 @@
   class SyncServiceDialog(Gtk.Dialog):
   
       def __init__(self, parent=None):
  -        Gtk.Dialog.__init__(self, title="Import local games", parent=parent)
  +        Gtk.Dialog.__init__(self, title="Configure local game import", parent=parent)
           self.connect("delete-event", lambda *x: self.destroy())
           self.set_border_width(10)
           self.set_size_request(512, 0)
  @@ -68,8 +68,8 @@
           self.get_content_area().add(box_outer)
   
           description_label = Gtk.Label()
  -        description_label.set_markup("You can import games from local game sources, \n"
  -                                     "you can also choose to sync everytime Lutris starts")
  +        description_label.set_markup("You can choose which local game sources will get synced each\n"
  +                                     "time Lutris starts, or launch an immediate import of games.")
           box_outer.pack_start(description_label, False, False, 5)
   
           separator = Gtk.Separator()
  
verification_info: {"golden_diff": "diff --git a/lutris/gui/sync.py b/lutris/gui/sync.py\n--- a/lutris/gui/sync.py\n+++ b/lutris/gui/sync.py\n@@ -59,7 +59,7 @@\n class SyncServiceDialog(Gtk.Dialog):\n \n     def __init__(self, parent=None):\n-        Gtk.Dialog.__init__(self, title=\"Import local games\", parent=parent)\n+        Gtk.Dialog.__init__(self, title=\"Configure local game import\", parent=parent)\n         self.connect(\"delete-event\", lambda *x: self.destroy())\n         self.set_border_width(10)\n         self.set_size_request(512, 0)\n@@ -68,8 +68,8 @@\n         self.get_content_area().add(box_outer)\n \n         description_label = Gtk.Label()\n-        description_label.set_markup(\"You can import games from local game sources, \\n\"\n-                                     \"you can also choose to sync everytime Lutris starts\")\n+        description_label.set_markup(\"You can choose which local game sources will get synced each\\n\"\n+                                     \"time Lutris starts, or launch an immediate import of games.\")\n         box_outer.pack_start(description_label, False, False, 5)\n \n         separator = Gtk.Separator()\n", "issue": "Change \"Import Games\" to something more clear (like \"Configure library importing\")\nI personally feel like the current name for that menu is confusing, misleading and does't represent its actual purpose. I personally think something like \"Configure library importing\" will describe the menu much better, but if you disagree, any suggestions are appreciated.\n", "before_files": [{"content": "import gi\ngi.require_version('Gtk', '3.0')\nfrom gi.repository import Gtk, Gio\n\nfrom lutris.gui.widgets.utils import get_runner_icon\nfrom lutris.gui.dialogs import NoticeDialog\nfrom lutris.services import get_services\nfrom lutris.settings import read_setting, write_setting\nfrom lutris.util.jobs import AsyncCall\n\n\nclass ServiceSyncRow(Gtk.HBox):\n\n    def __init__(self, service):\n        super(ServiceSyncRow, self).__init__()\n        self.set_spacing(20)\n\n        self.identifier = service.__name__.split('.')[-1]\n        name = service.NAME\n\n        icon = get_runner_icon(self.identifier)\n        self.pack_start(icon, False, False, 0)\n\n        label = Gtk.Label(xalign=0)\n        label.set_markup(\"<b>{}</b>\".format(name))\n        self.pack_start(label, True, True, 0)\n\n        actions = Gtk.VBox()\n        self.pack_start(actions, False, False, 0)\n\n        sync_switch = Gtk.Switch()\n        sync_switch.set_tooltip_text(\"Sync when Lutris starts\")\n        sync_switch.props.valign = Gtk.Align.CENTER\n        sync_switch.connect('notify::active', self.on_switch_changed)\n        if read_setting('sync_at_startup', self.identifier) == 'True':\n            sync_switch.set_state(True)\n        actions.pack_start(sync_switch, False, False, 0)\n\n        sync_button = Gtk.Button(\"Sync\")\n        sync_button.set_tooltip_text(\"Sync now\")\n        sync_button.connect('clicked', self.on_sync_button_clicked, service.sync_with_lutris)\n        actions.pack_start(sync_button, False, False, 0)\n\n    def on_sync_button_clicked(self, button, sync_method):\n        AsyncCall(sync_method, callback=self.on_service_synced)\n\n    def on_service_synced(self, caller, data):\n        parent = self.get_toplevel()\n        if not isinstance(parent, Gtk.Window):\n            # The sync dialog may have closed\n            parent = Gio.Application.get_default().props.active_window\n        NoticeDialog(\"Games synced\", parent=parent)\n\n    def on_switch_changed(self, switch, data):\n        state = switch.get_active()\n        write_setting('sync_at_startup', state, self.identifier)\n\n\nclass SyncServiceDialog(Gtk.Dialog):\n\n    def __init__(self, parent=None):\n        Gtk.Dialog.__init__(self, title=\"Import local games\", parent=parent)\n        self.connect(\"delete-event\", lambda *x: self.destroy())\n        self.set_border_width(10)\n        self.set_size_request(512, 0)\n\n        box_outer = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=6)\n        self.get_content_area().add(box_outer)\n\n        description_label = Gtk.Label()\n        description_label.set_markup(\"You can import games from local game sources, \\n\"\n                                     \"you can also choose to sync everytime Lutris starts\")\n        box_outer.pack_start(description_label, False, False, 5)\n\n        separator = Gtk.Separator()\n        box_outer.pack_start(separator, False, False, 0)\n\n        for service in get_services():\n            sync_row = ServiceSyncRow(service)\n            box_outer.pack_start(sync_row, False, True, 0)\n        box_outer.show_all()\n", "path": "lutris/gui/sync.py"}], "after_files": [{"content": "import gi\ngi.require_version('Gtk', '3.0')\nfrom gi.repository import Gtk, Gio\n\nfrom lutris.gui.widgets.utils import get_runner_icon\nfrom lutris.gui.dialogs import NoticeDialog\nfrom lutris.services import get_services\nfrom lutris.settings import read_setting, write_setting\nfrom lutris.util.jobs import AsyncCall\n\n\nclass ServiceSyncRow(Gtk.HBox):\n\n    def __init__(self, service):\n        super(ServiceSyncRow, self).__init__()\n        self.set_spacing(20)\n\n        self.identifier = service.__name__.split('.')[-1]\n        name = service.NAME\n\n        icon = get_runner_icon(self.identifier)\n        self.pack_start(icon, False, False, 0)\n\n        label = Gtk.Label(xalign=0)\n        label.set_markup(\"<b>{}</b>\".format(name))\n        self.pack_start(label, True, True, 0)\n\n        actions = Gtk.VBox()\n        self.pack_start(actions, False, False, 0)\n\n        sync_switch = Gtk.Switch()\n        sync_switch.set_tooltip_text(\"Sync when Lutris starts\")\n        sync_switch.props.valign = Gtk.Align.CENTER\n        sync_switch.connect('notify::active', self.on_switch_changed)\n        if read_setting('sync_at_startup', self.identifier) == 'True':\n            sync_switch.set_state(True)\n        actions.pack_start(sync_switch, False, False, 0)\n\n        sync_button = Gtk.Button(\"Sync\")\n        sync_button.set_tooltip_text(\"Sync now\")\n        sync_button.connect('clicked', self.on_sync_button_clicked, service.sync_with_lutris)\n        actions.pack_start(sync_button, False, False, 0)\n\n    def on_sync_button_clicked(self, button, sync_method):\n        AsyncCall(sync_method, callback=self.on_service_synced)\n\n    def on_service_synced(self, caller, data):\n        parent = self.get_toplevel()\n        if not isinstance(parent, Gtk.Window):\n            # The sync dialog may have closed\n            parent = Gio.Application.get_default().props.active_window\n        NoticeDialog(\"Games synced\", parent=parent)\n\n    def on_switch_changed(self, switch, data):\n        state = switch.get_active()\n        write_setting('sync_at_startup', state, self.identifier)\n\n\nclass SyncServiceDialog(Gtk.Dialog):\n\n    def __init__(self, parent=None):\n        Gtk.Dialog.__init__(self, title=\"Configure local game import\", parent=parent)\n        self.connect(\"delete-event\", lambda *x: self.destroy())\n        self.set_border_width(10)\n        self.set_size_request(512, 0)\n\n        box_outer = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=6)\n        self.get_content_area().add(box_outer)\n\n        description_label = Gtk.Label()\n        description_label.set_markup(\"You can choose which local game sources will get synced each\\n\"\n                                     \"time Lutris starts, or launch an immediate import of games.\")\n        box_outer.pack_start(description_label, False, False, 5)\n\n        separator = Gtk.Separator()\n        box_outer.pack_start(separator, False, False, 0)\n\n        for service in get_services():\n            sync_row = ServiceSyncRow(service)\n            box_outer.pack_start(sync_row, False, True, 0)\n        box_outer.show_all()\n", "path": "lutris/gui/sync.py"}]}