Re: Help with hacking Nautilus



> Bogdan Butnaru escribió:
>> On 10/21/07, Nelson Benítez León <gnel cenobioracing com> wrote:
>>> Bogdan Butnaru escribió:
>>>> I'd like to do a bit of hacking on Nautilus, starting with a few small
>>>> tweaks to the way icons are displayed. I found my way pretty easily to
>>>> what I need to change, but it seems that the changes I make aren't
>>>> working, and now I'm stuck at debugging.
>>> [...]
>>> are you using the gnome-session-remove command that's mentioned
>>> here[1]?
>>> if not then system wide nautilus keeps re-spawning...
>>>
>>> [1]
>>> http://mail.gnome.org/archives/nautilus-list/2004-October/msg00194.html
>>
>> You're right, I thought I had that done, but didn't really. Great, now
>> I can see the changes I did, they seem to work correctly.
>>
>> Two questions next:
>> (1) After I do some testing, if I run the normal Nautilus again, it
>> starts respawning again on kill. Does it attach itself to the session
>> each time it's run? (It seems so, if I run it with --sm-disable it
>> stops respawning.) Why doesn't the hacked Nautilus do that?
>
> Because when NAUTILUS_DEBUG is defined then nautilus doesn't attach to
> session manager.
>
>>
>> (2) When I start the hacked Nautilus, I get all sorts of assertions
>> and warnings. Normal Nautilus doesn't do that, and I'm sure my changes
>> are not to blame. See a list of outputs at the bottom. Am I running it
>> wrong?
>>
>> -- Bogdan Butnaru â?? bogdanb gmail com
>> "I think I am a fallen star, I should wish on myself." â?? O.
>>
>> [normal Nautilus:]
>> bogdanb arioch:~/code/nautilus/nautilus-2.20.0$ nautilus --sm-disable
>> Initializing gnome-mount extension
>> [Ctrl-C]
>>
>> [the hacked version:]
>> bogdanb arioch:~/code/nautilus/nautilus-2.20.0$ src/nautilus
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-shell-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_widget_show: assertion
>> `GTK_IS_WIDGET (widget)' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_table_attach: assertion
>> `GTK_IS_WIDGET (child)' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-spatial-window-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_widget_hide: assertion
>> `GTK_IS_WIDGET (widget)' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-shell-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_widget_show: assertion
>> `GTK_IS_WIDGET (widget)' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_table_attach: assertion
>> `GTK_IS_WIDGET (child)' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-navigation-window-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_table_attach: assertion
>> `GTK_IS_WIDGET (child)' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_widget_show: assertion
>> `GTK_IS_WIDGET (widget)' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_toolbar_insert: assertion
>> `GTK_IS_TOOLBAR (toolbar)' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_toolbar_insert: assertion
>> `GTK_IS_TOOLBAR (toolbar)' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-directory-view-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-icon-view-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-directory-view-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-icon-view-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_ui_manager_add_ui: assertion
>> `merge_id > 0' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_ui_manager_add_ui: assertion
>> `merge_id > 0' failed
>>
>> ** (lt-nautilus:7131): WARNING **: Unable to load ui file
>> nautilus-desktop-icon-view-ui.xml
>>
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **:
>> gtk_ui_manager_add_ui_from_string: assertion `buffer != NULL' failed
>>
>> (lt-nautilus:7131): Gtk-CRITICAL **: gtk_widget_show: assertion
>> `GTK_IS_WIDGET (widget)' failed
>> [Ctrl-C]
>
> I can't recall it now, and I'm not in linux right now but I think hacked
> nautilus will look for those ui files in their system wide location, so
> you have to copy them there, but I'm not sure so maybe someone else
> could clarify it.

 Yesterday I built nautilus in gutsy and I've figured this out, to avoid
those messages you have to copy the xml ui files in src/ and
src/file-manager to $PREFIX/share/nautilus/ui/ directory, you have to
create that directory if it doesn't exist, by default when you build 
nautilus the $PREFIX is /usr/local so I made the following:

sudo cp src/*.xml /usr/local/share/nautilus/ui/
sudo cp src/file-manager/*.xml /usr/local/share/nautilus/ui/

and now I don't get those messages...



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]