--- gio/gnextstepsettingsbackend.m
+++ gio/gnextstepsettingsbackend.m	2025-10-25 19:46:25.000000000 +0800
@@ -345,7 +345,12 @@
 
           g_variant_builder_init_static (&builder, type);
 
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
           for(key in object)
+#else
+          NSEnumerator *enumerator = [object objectEnumerator];
+          while((key = [enumerator nextObject]))
+#endif
             {
               GVariant *name;
               id value;
@@ -381,7 +386,12 @@
           value_type = g_variant_type_element (type);
           g_variant_builder_init_static (&builder, type);
 
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
           for(value in object)
+#else
+          NSEnumerator *enumerator = [object objectEnumerator];
+          while((value = [enumerator nextObject]))
+#endif
             {
               GVariant *variant = g_nextstep_settings_backend_get_g_variant (value, value_type);
 

--- gio/gosxappinfo.m
+++ gio/gosxappinfo.m	2025-10-25 19:50:02.000000000 +0800
@@ -318,6 +318,7 @@
   CFURLRef app_url;
   NSBundle *bundle;
 
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
   CFArrayRef urls = LSCopyApplicationURLsForBundleIdentifier (bundle_id, NULL);
   if (urls)
     {
@@ -329,6 +330,9 @@
       CFRelease (urls);
     }
   else
+#else
+  if (LSFindApplicationForInfo (kLSUnknownCreator, bundle_id, NULL, NULL, &app_url) == kLSApplicationNotFoundErr)
+#endif
     {
 #ifdef G_ENABLE_DEBUG /* This can fail often, no reason to alloc strings */
       gchar *id_str = create_cstr_from_cfstring (bundle_id);
@@ -746,7 +750,11 @@
   gchar *mime_type;
   CFStringRef type;
   NSBundle *bundle;
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
   CFURLRef bundle_id;
+#else
+  CFStringRef bundle_id;
+#endif
 
   mime_type = g_content_type_get_mime_type (content_type);
   if (g_str_has_prefix (mime_type, "x-scheme-handler/"))
@@ -761,7 +769,11 @@
 
   type = create_cfstring_from_cstr (content_type);
 
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
   bundle_id = LSCopyDefaultApplicationURLForContentType (type, kLSRolesAll, NULL);
+#else
+  bundle_id = LSCopyDefaultRoleHandlerForContentType (type, kLSRolesAll);
+#endif
   CFRelease (type);
 
   if (!bundle_id)
@@ -770,7 +782,11 @@
       return NULL;
     }
 
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
   bundle = get_bundle_for_url (bundle_id);
+#else
+  bundle = get_bundle_for_id (bundle_id);
+#endif
   CFRelease (bundle_id);
 
   if (!bundle)
