Table of Contents
nap, napping - Linux Napster Client
nap <options>
napping
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.
- -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 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
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
When
nap receives a USR1 signal, it reconnects to a server. The behavior is the
same as if a /reconnect command had been issued.
/etc/naprc
$HOME/.nap/napconf
$HOME/.nap/aliases
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.
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.
Table of Contents