NAME
nap, napping - Linux Napster Client
SYNTAX
nap <options>
napping
DESCRIPTION
Nap is a linux console napster client written by Kevin Sullivan and
improved by Peter Selinger and others. The advantage of nap over other
graphical clients like gnome-napster is that you can run it under
screen(1) on a remote host and disconnect from your session while nap
continues the downloads. You can later reconnect to your running client
even from another host and do more commands.
Napping is a helper application required by nap to send and reveive
ping packets. For napping to work it should be installed suid root.
For more information, please see the HTML documentation at
http://nap.sourceforge.net/userguide.html.
OPTIONS
-h, --help
Output help information and exit
-v, --version
print version info and exit
-b, --build
build library of your shared files to send to server (obsolete,
as nap will do this by default).
-B, --build-only
build library and exit
-N, --nobuild
do not build library, even if it is out of date
-m, --create
create a new account with the napster server (obsolete)
-r, --reconnect
keep reconnecting until server connection established
-a, --autorestart
automatically reconnect when connection to server lost
-q, --daemon
run without user interface; file sharing only
-t, --notitle
do not display the title bar (fixes messed-up displays)
-l, --nxterm
try using a terminal which is compatible with most systems
(fixes some messed-up displays)
-T, --transparent
use the terminal’s default background instead of black
-n, --noserver
start up without connecting to a server
-f <filename>, --config <filename>
specifies the config file to use (default ~/.nap/napconf)
-x <filename>, --log <filename>
log all transfers to a specific filename
-g <filename>, --logall <filename>
log everything to a specific filename
-s <server>, --server <server>
select a specific server (multiple -s opts possible)
-d <n>, --debug <n>
set debug level
-u <str>, --user <str>
specify napster username
-p <str>, --pass <str>
specify user’s password
-e <str>, --email <str>
specify user’s email address
-U <dir>, --upload <dir>
specify upload directory (multiple -U opts possible)
-D <dir>, --download <dir>
specify download directory
-I <dir>, --incomplete <dir>
specify directory for incomplete files
-P <n>[-<m>], --dataport <n>[-<m>]
specify port(s) to use for incoming upload requests
-C <n>, --connection <n>
specify connection speed number, according to the following
chart:
Connection | Number
-------------------
Unknown | 0
14.4 | 1
28.8 | 2
33.6 | 3
56.7 | 4
64K ISDN | 5
128K ISDN | 6
Cable | 7
DSL | 8
T1 | 9
T3 or > | 10
-M <n>, --maxuploads <n>
specify maximum number of simultaneous uploads
-o <var>=<value>, --option <var>=<value>
set user configuration variable
CONFIGURATION VARIABLES
Configuration variables can be set in the file ~/.nap/napconf, on the
command line via the -o option, or interactively via the /set command.
Here is an almost complete list of configuration variables:
user your napster username
pass your napster password - optional
email your napster email address
upload list of upload directories, separated by semicolons
download
your download directory
incomplete
your directory for incomplete files
connection
your connection speed (see -C option)
maxuploads
maximal number of simultaneous uploads allowed
maxupuser
maximum number of simultaneous uploads per user
maxdownloads
maximum number of simultaneous downloads allowed
maxdownuser
maximum number of simultaneous downloads per user
servers
list of servers, separated by semicolons (note: this is now
ignored and overwritten unless nometa is set)
dataport
port or range of ports to use for client-client connections. Set
this to 0 if you are behind a firewall
logfile
log file for transfer logs
logallfile
log file for logging everything
bandwidthdown
global bandwidth limit for downloads (in kB/s)
bandwidthdown1
download bandwidth limit per connection (in kB/s)
bandwidthup
global bandwidth limit for uploads (in kB/s)
bandwidthup1
upload bandwidth limit per connection (in kB/s)
announcepongs
should receipt of PONG packets be announced?
autopurge
time to delete stopped items from up- and download lists
autopurgeup
time to delete stopped items from upload list
autopurgedown
time to delete stopped items from download list
autoreply
a string to send as an automatic reply to incoming user messages
autorestart
automatically reconnect when connection to server lost?
connecttimeout
timeout after this many seconds while connecting to server
cursorfollowsscreen
should PgUp and PgDn move the screen, rather than the cursor, on
the search result screen?
debug debug level
identity
fake client id for fooling servers that refuse connections from
nap client
hash shall we calculate MD5 hashes? Note that most servers don’t use
them.
incompletesuffix
suffix to use for incomplete files
libraryfile
location of your library file
metaserver
URL of a napigator-style metaserver
metatimeout
timeout for connecting to metaserver
napping
relative or absolute filename of the napping program to use
newstimeout
timeout for retrieving news
noechosets
should the /set command be quiet?
nomasq should filename masquerading be disabled?
nometa skip connecting to metaserver on startup?
nonews do you want to skip news about new releases on startup?
noping do you want to disable pings?
noresultscreen
should search results be displayed on the main screen?
noscroll
should main screen not scroll to bottom automatically on output?
proxy URL of http proxy, if needed to access www through firewall
savechannels
should your open channels to be saved between sessions?
savepass
should password be saved in config file?
scrollsize
limit on the number of lines in main screen, or 0 for no limit
sdefaults
default keystrokes for search result screen appearance
sharetypes
semicolon-separated list of file extensions to share in addition
to mp3 files. Case insensitive. Use ’*’ for ’all files’.
showtoomanyuploads
display a message when upload limit is reached?
turdsize
size of the largest incomplete file which will be auto-removed
COMMANDS
Nap has an irc-like interface. Commands start with a slash "/". The two
most important commands are /search to start a search, and /reconnect
to cycle through the list of servers. Here is a complete list of
commands:
/about - Shows credits
/alias [name] [args] - Creates an alias, or lists current aliases
/aliaslist - Shows current list of aliases
/announce msg - Broadcasts a message to all users
/ban [user/IP] - Bans the specified user or IP, or lists banned users
/banlist - Prints a list of the current bans on the server
/block [IP] [reason] - Blocks the specified IP, or lists blocked users
/blocklist - Gives a list of current blocked users
/break - Breaks out of a loop
/browse user - Browses user’s files
/browse2 user - Directly browses user’s files
/cban [user] [reason] - Bans a user from a channel, or lists banned
users
/cbanlist - Returns a list of banned users in a channel
/chupload path - Changes your upload path (still need to /rebuild to
update your files)
/clear - Clears your screen buffer
/clearalias - Clears all aliases
/clearhandler - Clears all handlers
/clist - Gets a list of channels
/clist2 - Gets a list of channels (includes user created)
/cloak - Cloaks yourself
/conf config-string - Request a change in server configuration
variables
/cunban user [reason] - Unbans a user from a channel
/ddown number or range - Deletes downloads by number as returned from
/pdown
/dec - Decreases the variable by one
/debug level - Sets debug level
/disconnect - Disconnects you from the server
/dlul - Switches to the download/upload monitor screen
/dns host/IP - Attempts to resolve the specified address
/done - Ends an alias
/dtimer [num] - Delete the timed event with the given number
/dup number or range - Deletes uploads by number as returned from /pup
/echo text - Echos text to the screen
/eval name - Returns the value of a variable
/exec [-o] command - Executes a command from a shell and redirects the
input to the client
/fdown number or range - Gets information on the user as returned from
/pdown
/finger user - Gets information on the specified user
/force number or range - Forces download of queued items, overriding
download limit
/fup number or range - Gets information on the user as returned from
/pup
/g number or range - Gets files by number as returned from /search
/get number or range - Gets files by number as returned from /search
/getservers - Read server list from napigator-style metaserver
/gusers - Gets a global list of users
/handler [code] [args] - Adds a handler, or lists current handlers
/handlerlist - Returns a list of handlers created
/help command - Returns help on the specified command
/hotlist [user] - Adds a user to your hotlist, or shows current hotlist
/if (val op val) cmd - Compares two values
/ignore [user] - Ignores a user, or lists all ignored users
/ignoreclear - Clears your ignore list
/ignorelist - Lists ignored users
/inc var - Increases the variable by 1
/irc - No help available
/join [chan] - Joins the specified channel, or lists all channels
/kick user [reason] - Kicks a user from a channel
/kickall user [reason] - Kicks a user from all channels you and the
user are in
/kill user - Kills the specified user
/lastlog str - Returns all occurences of "str" that have been said or
printed
/loadalias [filename] - Loads a list of aliases from a file
/loadchannels [filename] - Reads channels from a filename and joins
them
/loadconfig [filename] - Loads a list of settings from a filename
/loadhandler [filename] - Loads a list of handlers from a filename
/me string - Does an emotion
/msg user msg - Sends the user the message specified
/muzzle user msg - Muzzles the user with the specified message
/names channel - Gets a list of channel users
/news - Checks for any news on the client
/noprint - Stops the client from echoing anything until the command
returns
/notify [user] - Adds a user to your hotlist, or shows current hotlist
/opsay msg - Broadcasts a message to all moderators/admins/elite
/part [chan/user] - Parts the specified or current channel or query
/pchans - Shows which channels you are on
/pdown [dqsf] - Gives a listing of your current downloads. Optional
flags select downloading, queued, succeeded, failed items.
/ping user - Pings a user
/psocks - Print the socket list (for debugging purposes)
/pup - Gives a listing of your current uploads
/purge - Removes all stopped items from upload and download lists
/purgedown - Removes all stopped items from download list
/purgeup - Removes all stopped items from upload list
/pvars - Prints the values of all variables currently set
/query user - Queries a user
/q - Closes the program
/quit - Closes the program
/rebuild - Rebuilds your library unconditionally. See also /update
/reconnect - Reconnects you to the next available server on the list
/reloadconfig-variable - Resets server configuration parameter to its
default value
/reloadm - Reloads the user command module (only if supported)
/repeat [min:sec] [cmd] - Initiates a timed event which repeats every
<min:sec> interval
/results - Switches to the search results screen
/retry number or range - Puts stopped downloads back in the download
queue
/retryall - Puts all stopped downloads back in the download queue
/savealias [filename] - Saves current aliases
/savechannels [filename] - Saves current channels to a filename
/saveconfig [filename] - Saves current settings to a filename
/savehandler [filename] - Saves current handlers to a filename
/say msg - Sends msg to the current channel
/search [-b>bitrate] [-c>speed] [-r>freq] [-s>size] [-d>duration] [-x
exclude]... [-t filetype] [-mmaxresults] [-l] [-p] [-f] query -
Searches the napster database
/serv [IP:port] - Connects to the specificed server and port, or shows
current server and port
/server [IP:port] - Connects to the specificed server and port, or
shows current server and port
/set [name] [value] - Sets a user variable, or prints current values
/setdataport user port - Sets a user’s data port
/setlevel channel level - ?
/setlinespeed user speed - Changes a user’s linespeed
/setpassword user password - Sets a user’s password
/setuserlevel user level - Changes a user’s userlevel
/sraw type string - Send raw command to the server
/stop - Returns from the current command and stops all processing on it
/sver - Returns the server version
/tell user msg - Sends the user the message specified
/timer min:sec cmd - Initiates a timer to execute in the specified time
/tlist - Prints out a list of the current timers
/topic channel topic - Changes a channel’s topic
/tquit - Quits when all remaining transfers have completed. Can be
canceled with /unquit
/unalias name - Removes an alias
/unban IP - Unbans the specified IP
/unblock IP - Unblocks the specified IP
/unhandler code - Removes a handler
/unhotlist user - Removes a user from your hotlist
/unignore user - Unignores a user
/unmuzzle user - Unmuzzles the user
/unnotify user - Removes a user from your hotlist
/unquit - Cancels the effect of /tquit
/unset name - Unsets a variable
/update - Rebuilds your library if necessary. See also /rebuild
/while (val op val) cmd - Keeps executing cmd while the comparison is
true
/whois user - Gets information on the specified user
/window - Enables/disables window mode
/wstats - No help available
SIGNALS
When nap receives a USR1 signal, it reconnects to a server. The
behavior is the same as if a /reconnect command had been issued.
FILES
/etc/naprc
$HOME/.nap/napconf
$HOME/.nap/aliases
AUTHORS
Nap was originally written by Kevin Sullivan <nite@gis.net>. It is
currently maintained by Peter Selinger
<selinger@users.sourceforge.net>. For the complete list of
contributors, see the file AUTHORS.
LICENSE
Copyright (c) 2000 Kevin Sullivan. All rights reserved.
Permission is granted to anyone to use this software for any purpose on
any computer system, and to alter it and redistribute it, subject to
the following restrictions:
1. The origin of this software must not be misrepresented, either by
explicit claim or by omission. Since few users ever read sources,
credits must also appear in the documentation.
2. Altered versions must be plainly marked as such, and must not be
misrepresented as being the original software. Since few users ever
read sources, credits must also appear in the documentation.
3. All advertising materials mentioning features or use of this
software must display the following acknowledgement: This product
includes software developed by Kevin Sullivan.
4. The name of the Author may not be used to endorse or promote
products derived from this software without specific prior written
permission.
5. This notice, and any references to this notice in the source,
documentation, or binary, may not be removed or altered.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ‘‘AS IS’’ AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.