No description
Find a file
Darin Adler b1943a3cb2 Bonobo objects own themselves, so we should not do a ref/sink on them.
* libnautilus-extensions/nautilus-undo-context.c:
	(nautilus_undo_context_new): Bonobo objects own themselves, so we
	should not do a ref/sink on them.
	* libnautilus-extensions/nautilus-undo-manager.c:
	(nautilus_undo_manager_new): Bonobo objects own themselves, so we
	should not do a ref/sink on them.
	* src/nautilus-application.c: (nautilus_application_initialize):
	Move global preferences initialization to main with other
	initialize calls.
	(nautilus_application_new): Bonobo objects own themselves, so we
	should not do a ref/sink on them.
	(nautilus_application_destroy): Unref the undo manager to fix a
	leak.
	* src/nautilus-main.c: (main): Move global preferences
	initialization to main with other initialize calls.

	* nautilus.spec.in: Added "-k" to build commands so we get more
	information about what failed when failing to build via
	RPM. Failures are still failures, we just see more of what's
	failing.

	* components/help/converters/gnome-db2html2/sect-elements.c:
	(sect_entry_end_element):
	* components/help/converters/gnome-db2html2/toc-elements.c:
	(toc_title_start_element):
	* components/image-viewer/nautilus-image-view.c:
	(init_server_factory):
	* components/rpmview/nautilus-rpm-view-install.c:
	(nautilus_rpm_view_install_package_callback),
	(nautilus_rpm_view_uninstall_package_callback):
	* components/services/install/command-line/eazel-alt-install-corba.
	c: (main):
	* components/services/install/command-line/eazel-alt-install.c:
	(main):
	* components/services/install/command-line/eazel-install.c:
	(generate_new_package_list), (fetch_remote_package_list), (main):
	* components/services/install/command-line/eazel-package-query.c:
	(main):
	* components/services/install/command-line/eazel-revert.c: (main):
	* components/services/install/command-line/eazel-uninstall.c:
	(main):
	* components/services/install/lib/eazel-install-object.c:
	(eazel_install_fetch_remote_package_list):
	* components/services/install/lib/eazel-install-protocols.c:
	(eazel_install_fetch_file), (eazel_install_fetch_package):
	* components/services/install/lib/eazel-install-rpm-glue.c:
	(install_new_packages), (eazel_install_download_packages),
	(uninstall_packages), (eazel_install_start_transaction),
	(eazel_install_add_to_rpm_set),
	(eazel_install_check_if_related_package):
	* components/services/install/nautilus-view/nautilus-service-instal
	l-view.c: (nautilus_service_install_preflight_check):
	* components/services/install/nautilus-view/nautilus-service-instal
	l.c: (nautilus_service_install_view_install_package_callback),
	(nautilus_service_install_view_uninstall_package_callback):
	* components/services/install/server/main.c: (main):
	* components/services/summary/nautilus-view/nautilus-summary-view.c
	: (generate_startup_form), (generate_summary_form),
	(generate_service_entry_row):
	* components/services/time/command-line/main.c: (main):
	* components/services/time/service/main.c: (main):
	* components/services/trilobite/libtrilobite/trilobite-core-utils.c
	: (trilobite_init):
	* components/services/trilobite/libtrilobite/trilobite-root-client.
	c: (trilobite_root_client_initialize):
	* components/services/trilobite/libtrilobite/trilobite-service-pass
	wordquery.c: (trilobite_passwordquery_initialize):
	* components/services/trilobite/libtrilobite/trilobite-service.c:
	(trilobite_service_initialize):
	* components/services/trilobite/sample/command-line/main.c: (main):
	* components/services/trilobite/sample/service/main.c: (main):
	* components/shell/shell.c:
	* components/tree/nautilus-tree-model.c:
	(nautilus_tree_model_monitor_add),
	(nautilus_tree_model_root_node_file_monitor):
	* components/tree/nautilus-tree-view.c:
	* libnautilus-extensions/nautilus-directory-async.c:
	(get_filter_options_for_directory_count):
	* libnautilus-extensions/nautilus-file-utilities.c:
	(nautilus_uri_is_local_scheme), (nautilus_handle_trailing_slashes):
	* libnautilus-extensions/nautilus-icon-dnd.c:
	(drag_data_received_callback):
	* libnautilus-extensions/nautilus-icon-text-item.c: (iti_event):
	* libnautilus-extensions/nautilus-list.c:
	(nautilus_list_ensure_drag_data), (nautilus_list_get_drop_action),
	(nautilus_list_drag_data_received):
	* libnautilus-extensions/nautilus-scalable-font.c:
	(initialize_global_stuff_if_needed):
	* libnautilus-extensions/nautilus-undo-signal-handlers.c:
	(editable_register_edit_undo):
	* src/file-manager/fm-icon-view.c:
	(context_menu_layout_radio_item_callback):
	* src/file-manager/nautilus-indexing-info.c:
	(update_progress_display):
	* src/nautilus-switchable-search-bar.c:
	(nautilus_switchable_search_bar_set_mode):
	Got rid of all uses of == TRUE and != TRUE, since they are dangerous.
	Got rid of all uses of == FALSE and != FALSE, since they lead to use
	of == TRUE and != TRUE.
2000-09-28 17:18:12 +00:00
components Bonobo objects own themselves, so we should not do a ref/sink on them. 2000-09-28 17:18:12 +00:00
cut-n-paste-code Fixed bug bug 3264 (Tree view shows no branches for directories, 2000-09-26 00:52:22 +00:00
data Fixed dumb typo. 2000-09-27 00:15:56 +00:00
docs *** empty log message *** 2000-09-18 21:32:17 +00:00
helper-utilities Fix function prototype problem with PAM on Linux. 2000-09-12 02:54:07 +00:00
icons Added a few more sizes to my folder icons. Document icons coming soon! 2000-09-28 02:08:31 +00:00
idl Changes caused by the festival of renaming in OAF. 2000-08-12 02:39:11 +00:00
libnautilus Fixed bug 1275, that sidebar panels don't have defaults per user level. 2000-09-27 19:19:33 +00:00
libnautilus-adapter Some work towards 1994. 2000-09-15 08:33:12 +00:00
libnautilus-extensions Bonobo objects own themselves, so we should not do a ref/sink on them. 2000-09-28 17:18:12 +00:00
libnautilus-private Bonobo objects own themselves, so we should not do a ref/sink on them. 2000-09-28 17:18:12 +00:00
librsvg Dont install the test programs. 2000-09-27 21:32:29 +00:00
nautilus-installer Adding scroll bar capabilities to various sections and cleaning up the box 2000-09-26 22:15:45 +00:00
po Translations from Keld 2000-09-28 17:15:00 +00:00
src Bonobo objects own themselves, so we should not do a ref/sink on them. 2000-09-28 17:18:12 +00:00
test Rename NAUTILUS_FILE_ATTRIBUTE_FAST_MIME_TYPE to 2000-09-27 22:00:49 +00:00
tools Fix more storage leaks. 2000-09-27 00:07:33 +00:00
.cvsignore Some generated file names changed, so these must change too. 2000-07-14 22:56:20 +00:00
acconfig.h Now Time in the About box (when it was build not current) 2000-08-05 01:34:57 +00:00
AUTHORS Fixed bug 2243 (trash window name should be "Trash" 2000-09-18 19:04:06 +00:00
autogen.sh Finish the hack to not make people get gnome.m4 from gnome-libs any more. 2000-02-23 19:06:47 +00:00
ChangeLog Bonobo objects own themselves, so we should not do a ref/sink on them. 2000-09-28 17:18:12 +00:00
ChangeLog-20000414 Added appropriate copyright notices. 2000-04-14 06:40:27 +00:00
ChangeLog-20000625 New script to make sure we're giving credit appropriately - should be run 2000-09-24 17:32:34 +00:00
ChangeLog-20000831 New script to make sure we're giving credit appropriately - should be run 2000-09-24 17:32:34 +00:00
check-config-h.pl Added "." parameter to "find" so it works with non-GNU versions of find. 2000-05-09 00:57:17 +00:00
check-FIXME.pl Removed some special-case file names that aren't needed any more. 2000-09-05 22:56:38 +00:00
check-headers-in-Makefile.pl Another try at fixing the Tinderbox. 2000-09-15 17:39:49 +00:00
check-POTFILES.pl Another try at fixing the Tinderbox. 2000-09-15 17:39:49 +00:00
check-signals.pl Wrote a script to check for people who forget to call 2000-08-03 18:40:39 +00:00
check-THANKS.pl New script to make sure we're giving credit appropriately - should be run 2000-09-24 17:32:34 +00:00
configure.in Add support for using a debuggable version of the beast. 2000-09-27 21:27:31 +00:00
COPYING.LIB Just adding copyright/license notices, and a copy of the LGPL. 1999-12-07 19:59:42 +00:00
CVSVERSION New file, used to detect whether we are configuring a cvs version or a 2000-08-08 01:36:50 +00:00
HACKING Fixed bug 2210 (GNOME is referred to as Gnome in the about dialog). It was 2000-08-18 18:44:37 +00:00
MAINTAINERS Changed to the new Nautilus list instead of the old secret list. 2000-04-27 22:54:19 +00:00
Makefile.am New IDL interface for the special adapter component that will be used to 2000-09-07 00:57:04 +00:00
nautilus-clean.sh Finally fixed bug 1994; in the process I think I also ended up 2000-09-20 19:15:23 +00:00
nautilus.desktop Add Japanese entry. 2000-09-19 03:18:35 +00:00
nautilus.png Made NautilusFile async. like NautilusDirectory already was. 2000-06-20 22:09:36 +00:00
nautilus.spec.in Bonobo objects own themselves, so we should not do a ref/sink on them. 2000-09-28 17:18:12 +00:00
NEWS add news from latest PR1 release. make dnd do real file operations from 2000-08-29 03:12:36 +00:00
README Remove instances of libwww, as it's no longer required. 2000-09-18 18:24:05 +00:00
RENAMING Fixed bug 1653 (new menu layout). View menu now contains 2000-08-24 18:45:29 +00:00
RPMs-README Fixed bug 1891 (calling set_title before report_load_underway has 2000-08-11 21:33:11 +00:00
THANKS New script to make sure we're giving credit appropriately - should be run 2000-09-24 17:32:34 +00:00
TODO Added an empty file to fix the build (required since Elliot added it to 2000-07-13 23:10:07 +00:00

This file contains build instructions for Nautilus, the GNOME shell
and file manager.

====================
0: Table of contents
====================

0: Table of contents
1: Hacking
2: Introduction
3: Distribution-specific notes
4: Compiling
5: Running

==========
1: Hacking
==========

If you would like to hack on Nautilus, or have patches, please send
mail to the Nautilus maintainer: Darin Adler <darin@eazel.com>.
Patches should also be sent to the Nautilus mailing list:
<nautilus-list@lists.eazel.com>

The HACKING file contains other things you should know when hacking on
Nautilus and when contributing code. Please, make sure you check the
coding style document in docs/style-guide.html and other documents
found in the "docs" directory.

===============
2: Introduction
===============

To build Nautilus without interfering with an existing Gnome install,
you will need to build several components either from CVS or from 
tarballs into a separate prefix. Detailed instructions on how
to accomplish this are available in section 4.

==============================
3: Distribution-specific notes
==============================

The following describes the libraries that Nautilus hackers use for
development and what we have tested with. At the moment, we make no
guarantees one way or another about whether Nautilus will work with
other versions.

You will also need the library package that is associated with each
development package, these versions are for Red Hat 6.2 and Debian
"potato":

library         Red Hat                   Debian                          approx. version
--------------  ------------------------  ------------------------------  ------------------
audiofile       audiofile-devel-0.1.9-3   libaudiofile-dev (0.1.9-0.1)    0.1.9
libc            glibc-devel-2.1.3-15      libc6-dev (2.1.3-10)            2.1.3
libc++          egcs-c++-1.1.2-30         libstdc++2.10-dev (2.95.2-12)   2.9.0, 2.10
libjpeg         libjpeg-devel-6b-10       libjpeg62-dev (6b-1.2)          6b 1.0-1.2
libpng          libpng-devel-1.0.5-3      libpng2-dev (1.0.5-1)           1.0.5
libtiff         libtiff-devel-3.5.4-5     libtiff3g-dev (3.5.4-5)         3.5.4
libungif        libungif-devel-4.1.0-4    libungif3g-dev (3.0-3)          3.0 or 4.1.0
Xlib            XFree86-devel-3.3.6-20    xlib6g-dev (3.3.6-7)            3.3.6
zlib            zlib-devel-1.1.3-6        zlib1g-dev (1.1.3-5)            1.1.3

Other modules for Red Hat users: either 6.1 or 6.2

        - For most modules, the versions in Red Hat 6.1 or 6.2 will do (listed above).
        - ORBit requires popt-1.5, which can be fetched from:

        ftp://ftp.valinux.com/pub/mirrors/redhat/rawhide/i386/RedHat/RPMS/popt-1.5-0.45.i386.rpm
        ftp://ftp.valinux.com/pub/mirrors/redhat/redhat/redhat-6.2/i386/RedHat/RPMS/popt-1.5-0.48.i386.rpm

Other modules for Debian users: using potato, or possibly woody

If you need to get a copy of popt from source: 

        CVSROOT=:pserver:anonymous@cvs.rpm.org:/cvs/devel
        The default password is a carriage return.  You should do a cvs co popt

============
4: Compiling
============

First, make sure you have installed the packages detailed below. If
you are running GNOME from binaries (Helix Code or your native
distribution binaries), please make sure you have installed the
corresponding development packages.  (i.e.: the *-devel packages which
provide the necessary C header files.

Then, make sure you have no old version of the packages nautilus
depends on on your system. You can check the version of the relevant
packages by trying to execute "package-config --version" (ie:
gnome-config --version will report gnome-libs version, gconf-config
--version will report gconf's version).

        Compiling from tarballs.
        ------------------------
If you are compiling from tarballs, (ie: using released versions of
nautilus and the relevant packages), you want to follow the
instructions below.

The following lists the packages and the versions they should report.

    module             version            configure options      dist.
    ------             ------             -----------------      -----
    popt:              <1.5, but not from GNOME CVS, see below>  RH6.2
    glib:              1.2.8                                     HC1.2
    gtk+:              1.2.8                                     HC1.2
    imlib:             1.9.8.1                                   HC1.2
    gnome-xml:         1.8.1                                     HC1.2
    ORBit:             0.5.3                                     HC1.2
    gnome-libs:        1.2.4              --enable-prefer-db1    HC1.2
    gnome-http:        1.0.6
    oaf:               0.5.0
    gconf:             0.8
    gdk-pixbuf:        0.8.0              --enable-canvas-pixbuf
    gnome-print:       0.20.0
    control-center     1.2.0
    gnome-vfs:         HEAD
    bonobo:            0.17
    libglade:          0.14
    libunicode:        0.4
    eog:               0.3                --with-bonobo
    medusa:            0.2
    nautilus:          0.1

RH6.2 == Version from Red Hat 6.2 OK
HC1.2 == Version from Helix Code Gnome 1.2 OK

If you are running Helix Code's GNOME, you should not need recompile
the packages marked "HC1.2" provided you have installed the
corresponding development packages.

We assume you want to install these packages in another prefix than
/usr since you want to keep a working system. For the following, we
assume you are installing in /usr/local. ie: ${prefix}=/usr/local

Redefine your PATH env variable: 
        export PATH=$PATH:${prefix}/bin
Redefine your LD_LIBRARY_PATH env variable: 
        export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${prefix}/lib
Redefine your GNOME_PATH env variable: 
        export GNOME_PATH=$GNOME_PATH:${prefix}

In the order defined above and with the specific options detailed
above, you should run the configure scripts with: "./configure
--prefix=${prefix} --special-options" Then, run make; get root and run
make install.

You should get a running nautilus soon after. :)

        Compiling from cvs.
        -------------------
Compiling from cvs usually requires more work and some packages may
not compile. Do so at your own risk!!

The following lists the packages and the versions that are required.

    module             branch             configure options      dist.
    ------             ------             -----------------      -----
    popt:              <1.5, but not from GNOME CVS, see below>  RH6.2
    glib:              glib-1-2                                  HC1.2
    gtk+:              gtk-1-2                                   HC1.2
    imlib:             HEAD                                      HC1.2
    gnome-xml:         LIB_XML_1_BRANCH
    ORBit:             orbit-stable-0-5
    gnome-libs:        gnome-libs-1-0     --enable-prefer-db1    HC1.2
    gnome-http:        HEAD
    oaf:               HEAD
    gconf:             GCONF_0_8 
    gdk-pixbuf:        HEAD               --enable-canvas-pixbuf
    gnome-print:       GNOME_PRINT_0_20
    control-center     control-center-1-0
    gnome-vfs:         HEAD
    bonobo:            BEFORE_NEW_UI_HANDLER_1
    libunicode:        HEAD
    libglade:          HEAD
    eog:               BEFORE_NEW_UI_HANDLER_1   --with-bonobo
    xpdf:              BEFORE_NEW_UI_HANDLER_1
    medusa:            HEAD
    nautilus:          HEAD

RH6.2 == Version from Red Hat 6.2 OK
HC1.2 == Version from Helix Code Gnome 1.2 OK

One difference between tarball and cvs compilation is that when you
get stuff from cvs, you don't get a configure script. This script has
to be generated.  This script is usually generated with the help of
another script available from cvs named "autogen.sh". For those
interested, "autogen.sh" will run in turn aclocal, automake, autoconf
and configure. You thus need versions of the GNU tools for the
following packages:

        package         version       command
        -------         -------       -------
        automake        1.4           automake --version
        autoconf        2.13          autoconf --version

Earlier versions might work but no one has tested them.

Once you have these tools, you need to follow the compilation
instructions detailed above for tarballs but instead of running
"./configure --stuff", you will run "./autogen.sh --stuff" Using this
also requires you to create the ${prefix}/share/aclocal directory
before compiling any package and setup the following env variable:

        export ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I ${prefix}/share/aclocal"

Besides these differences, building from CVS should be otherwise
like building from released packages as described above.

===============================
5: Issues when running Nautilus
===============================

There's a script named nautilus-clean.sh, at the top level of the
Nautilus sources. If OAF or GConf changes, you may need to run this
script to get Nautilus to work properly. One way to invoke it is
like this:

        ./nautilus-clean.sh -x