O Nautilus é escrito em C. Eu não encontrei nenhuma referência a stat
syscall no código fonte, então não posso dizer com 100% de certeza que ele usa ou não.
O tipo de arquivo Mime é obtido através da função nautilus_file_get_mime_type
, que é muito referenciada em vários arquivos, como nautilus-mime-actions.c
, nautilus-properties-window.c
, nautilus-window-slots.c
e outros.
No entanto, não encontrei a definição dessa função, apenas atribuições:
$ grep -iR 'file_get_mime_type'
nautilus-canvas-view-container.c: mime_type = nautilus_file_get_mime_type (file);
nautilus-mime-actions.c: mime_type = nautilus_file_get_mime_type (file);
nautilus-mime-actions.c: mime_type_a = nautilus_file_get_mime_type (file_a);
nautilus-mime-actions.c: mime_type_b = nautilus_file_get_mime_type (file_b);
nautilus-mime-actions.c: mime_type = nautilus_file_get_mime_type (file);
nautilus-mime-actions.c: char *mime_type = nautilus_file_get_mime_type (parameters->file);
nautilus-mime-actions.c: mime_type = nautilus_file_get_mime_type (parameters_install->file);
nautilus-mime-actions.c: mime_type = nautilus_file_get_mime_type (parameters_install->file);
nautilus-mime-actions.c: mime_type = nautilus_file_get_mime_type (file);
nautilus-properties-window.c: ret = g_list_append (ret, nautilus_file_get_mime_type (NAUTILUS_FILE (l->data)));
nautilus-properties-window.c: mime_type = nautilus_file_get_mime_type (file);
nautilus-properties-window.c: mime_type = nautilus_file_get_mime_type (target_file);
nautilus-window-slot.c: mimetype = nautilus_file_get_mime_type (file);