DragonFly On-Line Manual Pages
GTK-GNUTELLA(1) 1.1.6 GTK-GNUTELLA(1)
NAME
gtk-gnutella - A Gnutella client for Gtk+
SYNOPSIS
gtk-gnutella
DESCRIPTION
gtk-gnutella is a GTK+ Gnutella client for Unix. It supports both
searching and sharing with the 0.6 version of the Gnutella protocol and
includes support for numerous protocol improvements and additions that
have been added to the Gnutella network since.
The Gnutella network allows users to search for files and to advertise
files shared locally, but is not handling file transfers which is done
through HTTP. The addition of Gnutella-specific HTTP headers makes
each Gnutella client a powerful file swarmer where even firewalled
hosts can contribute.
Great care has been devoted into making gtk-gnutella powerful,
efficient and reliable.
OPTIONS
--compile-info
Tell gtk-gnutella to output a list of variables describing
compile-time configuration information that was gathered when
the program was built.
--daemonize
This options causes gtk-gnutella to become a daemon. It detaches
from the terminal (if started from one) and forks itself into
the background. It also changes it working directory to the root
directory i.e., "/" so that it doesn't block a mount point for
example. This is mainly meant for headless mode but you can also
use it if the Gtk+ GUI is enabled.
For example, if you do not start gtk-gnutella from a terminal
but from a window manager menu, there's little reason to not
daemonize gtk-gnutella. Thus you might want to add the
--daemonize option in this case.
Please note that when gtk-gnutella is started as a daemon all
output which is normally send to the standard output and
standard error output (usually your terminal or a common log
file such as ~/.xsession-errors), is sent to /dev/null. The
options --log-stderr and --log-stdout can be used to redirect
log output in this case.
--exec-on-crash path
Execute command specified in path when gtk-gnutella crashes.
--geometry
This option can be used to force the main window of the GUI to a
certain location on your screen and/or give it certain
dimensions.
For example, the following would position the window in the
lower right corner with a width of 800 pixels and a height of
600 pixels:
gtk-gnutella --geometry 800x600-0-0
Note that none of this can be guaranteed, your window manager
has the last word on this. This option is a traditional command-
line switch supported by most X11 applications.
--minimized
Launches gtk-gnutella with a minimized main window. Recommended
when starting gtk-gnutella in the background on login.
--help Show a summary of all supported options.
--log-stderr , --log-stdout
These options allow you to log everything which is written to
stderr respectively stdout to some files. A typical use would
look like this:
gtk-gnutella --daemonize \
--log-stderr ~/logs/gtkg.stderr \
--log-stdout ~/logs/gtkg.stdout
Redirecting these log messages also works without --daemonize.
Of course, log files can become large and you might want to
archive them or delete them periodically. After moving or
deleting the log files, you can send gtk-gnutella a SIGHUP
signal to create new log files.
--no-dbus
Disable notifications of gtk-gnutella events to D-BUS.
--no-restart
Prevents gtk-gnutella from auto-restarting itself when crashing
on a platform where core dumps are not possible or disabled.
--no-xshm
Disable MIT shared memory extension, when running with the X
graphical user-interface.
--pause-on-crash
Pause the process on crash, so that a debugger may be attached
to inspect the current state for instance.
--ping This option allows you to check whether gtk-gnutella is
currently running. This option returns with a success code when
gtk-gnutella is already running, and with a failure code when it
is not.
This allows you to use the following code to start gtk-gnutella
from a cron job or window manager menu and avoid starting it
twice:
gtk-gnutella --ping || gtk-gnutella
--restart-on-crash
Asks gtk-gnutella to auto-restart itself after crashing on a
platform where core dumps are allowed.
Regardless of core dumping options, --no-restart will always
prevent a restart whilst --restart-on-crash will always request
one if possible. It is not allowed to supply both options at
the same time.
--shell
When this option is used to connect to an already running
gtk-gnutella process over a local unix domain socket. This
socket is located at "$GTK_GNUTELLA_DIR/ipc/socket", thus
normally "~/.gtk-gnutella/ipc/socket". The socket is only
accessible by the user running gtk-gnutella which is enforced by
filesystem permissions. The socket is in a dedicated directory
because apparently not all systems honor the access permissions
on sockets as seen through the filesystem.
You can disable this feature by setting the property
"enable_local_socket" to FALSE. It is recommendable to use this
local socket whenever possible instead of the TCP socket to
access the shell interface remotely. The reason is that the
authentication token is passed non-encrypted over the network
and everyone who can sniff the network is able to connect to the
remote shell. This may not matter over the loopback interface or
a LAN, but it's a bad idea to use this over the Internet.
--version
Show the user-agent string used on the Gnutella network which
also holds the version information.
--topless
Starts gtk-gnutella without the graphical user-interface.
GETTING STARTED
When gtk-gnutella is first started, it will attempt to connect to a
well-known hosts server for some hosts to connect to. If you know a
host you want to connect to, you can enter it in the box on the
GnutellaNet tab and push the Add button. When first connecting to the
gnutella network, it can take some time to establish a stable
connection. Be patient.
SEARCHING
To search files just type your query in the search box at the top of
the screen. All searches, both active and inactive, are shown in the
sidebar.
You can have multiple searches running at once. To start another search
while the first one is running, simply enter another search term into
the edit box at the top of the window.
To stop a particular search and remove its tab from the search window,
select the search by clicking on its tab and click the "Close search"
button. If you want to clear the list for a particular search, but want
to continue to see new files that are received for this search, click
the "Clear results" button.
It is possible to apply filtering to search results using the filter
editor. Click on "Edit filters" to access the editor. Use of the
filtering editor goes beyond the scope of this man page, but there is a
tutorial on this topic on the gtk-gnutella homepage.
When you find a file that you want to download, select the file in the
list and click "Download selected". This file will be placed in the
download queue. On the downloads view you can watch the download
progress of the file(s) you are downloading.
It is also possible to select a bunch of files for downloading at once.
By holding down the control or shift keys while clicking files, you can
select several files and then click "Download selected" to put them all
in the download queue at once.
CONFIGURATION
Most of the configuration can be done via the "Preferences" window that
can be accesed using the "File -> Preferences" menu-option. You will
find several tabs there, each tab regrouping common information. But
some specific information pertaining to downloads or searches are
directly available on the "Downloads" and "Uploads" panes.
If you linger your mouse over each configuration parameter, a tooltip
window will popup explaining the meaning of that parameter. You may
have to press "Enter" after a text input, or move the focus to another
parameter to validate your entry. Items configured via spin buttons
normally take effect immediately, unless you type text instead of using
the spin buttons.
FILES
$GTK_GNUTELLA_DIR/config_gnet
Per-user configuration file, for core settings. This can be
edited when the program is not running, but it is best to use
the GUI to change configuration variables. gtk-gnutella saves
this file every time the program is exited normally.
$GTK_GNUTELLA_DIR/config_gui
GUI configuration. It is best to not edit this file.
$GTK_GNUTELLA_DIR/dmesh
This is where the download mesh is persisted. You don't need to
worry about this.
$GTK_GNUTELLA_DIR/dmesh_ban
This is where temporarily banned download mesh entries are
stored.
$GTK_GNUTELLA_DIR/done.namesize
This file holds the name and size of files completely downloaded
by gtk-gnutella and which will now be ignored.
$GTK_GNUTELLA_DIR/done.sha1
This file holds the SHA1 of files completely downloaded by
gtk-gnutella and which will now be ignored.
$GTK_GNUTELLA_DIR/downloads
This is where the download queue is persisted. Only the direct
downloads (i.e. non-pushed) can be saved, since they don't need
routing information.
$GTK_GNUTELLA_DIR/hosts
This is the host cache. This is saved by gtk-gnutella on exit
and should not be edited by hand.
$GTK_GNUTELLA_DIR/searches.xml
This is where the open searches and all the search filters are
saved.
$GTK_GNUTELLA_DIR/sha1_cache
This is where the cache of all the computed SHA1 is stored.
$GTK_GNUTELLA_DIR/tth_cache
This is the directory under which all the computed TTH trees are
stored. These files are binary data.
$GTK_GNUTELLA_DIR/upload_stats
This file keeps track of the upload statistics.
ENVIRONMENT
gtk-gnutella searches GTK_GNUTELLA_DIR for configuration files. If this
variable is not set, HOME is used instead. If HOME is not set, then no
configuration information will be saved when gtk-gnutella exits.
MAILING LISTS
There are a couple of mailing lists for gtk-gnutella. See
http://sourceforge.net/mail/?group_id=4467 for more info.
BUGS
gtk-gnutella is production-quality software, but still has minor bugs
and incomplete or missing features. But which software doesn't for its
authors?
There are probably other missing features that should be listed here.
A list of known bugs might be available at the gtk-gnutella web site
(see below.)
SEE ALSO
Additional information about gtk-gnutella and the latest version are
available at http://gtk-gnutella.sourceforge.net/
Additional information about gnutella is available at
http://www.the-gdf.org/ http://www.infoanarchy.org/en/Gnutella
http://rfc-gnutella.sourceforge.net/
AUTHORS
Yann Grossel wrote the original gtk-gnutella which was running as a
Gnutella 0.4 client in 2000.
Raphael Manfredi <Raphael_Manfredi@pobox.com> is the current maintainer
and project leader (since version 0.14, released early September 2001).
For support, please contact the developer list, which can be reached at
<gtk-gnutella-devel@lists.sourceforge.net>.
For a full list of contributors, open the "About" menu.
Brian St. Pierre <bstpierre@bstpierre.org> wrote the initial version of
this manpage.
COPYRIGHT
gtk-gnutella is Copyright (c) 2000, Yann Grossel, with additional
copyrights held by other contributors 2000-2014.
License to use and copy gtk-gnutella is given under the terms of the
GNU General Public License (GPL), version 2. Please see the file
COPYING in the distribution for complete information.
This manual page can also be redistributed under the same conditions as
gtk-gnutella itself.
Version November 2015 GTK-GNUTELLA(1)