1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396
|
TTIIRRCC SSoouurrccee PPaacckkaaggee DDeessccrriippttiioonn
_P_l_e_a_s_e _r_e_a_d _t_h_i_s _d_o_c_u_m_e_n_t _i_n _e_n_t_i_t_y _b_e_f_o_r_e _c_o_n_f_i_g_u_r_i_n_g_, _b_u_i_l_d_i_n_g
_a_n_d _i_n_s_t_a_l_l_i_n_g _t_h_e _c_l_i_e_n_t
AAbbssttrraacctt
This is release 1.1 of token's IRC client for UNIX1 and
similar systems.
TIRC comes without warranty. Please see the file ``COPY-
RIGHT'' for the copyright statement, the usage and distribu-
tion license and the warranty disclaimer.
Since I wrote this program for myself, I am quite
reluctant to add "improvements" that reflect the personal
taste of other people (but not mine). TIRC isn't a do-it-
all tool for IRC and I place stability and efficiency higher
than featurism. If you don't like it, use ircII or what-
ever. Nevertheless, I am grateful for bug reports which you
may send (no corefiles or similar heavy-weighted junk!) to
token@mayn.de.
Please read the file ``FAQ'' for answers to some frequently
asked questions.
TIRC is written for and tested on the following sys-
tems: FreeBSD 2.1 and higher, OpenBSD 2.1, NetBSD 1.2, AIX
4.x, IRIX 5.3, DEC Unix 3.x and 4.0, Solaris 2.5, RedHat,
SuSe and Slackware GNU/- Linux, and works on some more.
Look at the file ``Ported'' for a complete listing of envi-
ronments where TIRC has been successfully run on.
TIRC now uses a Gnu autoconf generated configure script and
has been enhanced to be a bit more portable. See the build-
ing section below.
The source code is written in portable C style and the oper-
ating system should at best exhibit some 4.4BSD or SVR4 and
POSIX behaviour. The source should translate with pre-Stan-
dard compilers (K&R Unix compilers like those derived from
pcc) as well as with (ANSI/ISO) Standard C compilers.
____________________
1UNIX is a registered trademark of The Open Group.
HHiigghhlliigghhttss
(features that other clients probably don't have):
+o Comfortable backscroll buffers with regex search mecha-
nism in multiple screen regions
+o Full ircd 2.9 support
+o DCC RESUME (mIRC compatible)
+o vi-like editor line and general usage (rudimentary sup-
port for emacs users exists, too)
+o Multiple pages that contain window regions
+o Nickname completion
+o DCC is handled by child processes, allowing faster
response in the master client, higher DCC throughput and
scheduling of the DCC processes
+o Efficient flood protection with source-mask detection and
ignore, you can't get flooded off with this client
+o ChanOp-On-Demand facility; yes this is bot-like but it's
the smallest evil (compared to autoop and other stupid
things)
+o URL catcher with html generation
+o Functionality that elsewhere needs to be implemented in
scripts is hardcoded, no need for a scripting language
(bot operating system, yuck)
+o Fast terminal-i/o, no curses bugs (doesn't use curses for
tty i/o)
+o Terminal ANSI-colour support, freely configurable
+o Fast and pretty small, doesn't eat much resources, nei-
ther on disk nor when executing
+o Relatively clean implementation (ISO-C and POSIX compli-
ance when possible, regularly linted and checked for mem-
ory leaks)
+o All you need is a single binary (and probably a personal
tirc config-file, easy setup on boxes where you have no
administrational access)
+o Comprehensive, well commented source code under BSD-style
license (freely distributable and usable)
BBuuiillddiinngg
TIRC 0.47-alpha and higher is using a Gnu autoconf con-
figure script for automated build-file adaptation. To cre-
ate Makefile, config.h etc., and compile all features, issue
% ..//ccoonnffiigguurree ----wwiitthh--aallll
in the source directory. The _-_-_h_e_l_p parameter shows you
what options configure understands.
The following configure options might be interesting:
_-_-_e_n_a_b_l_e_-_d_e_b_u_g
builds a version with debug code and debug info and
TTIIRRCC SSoouurrccee DDiissttrriibbuuttiioonn RREEAADDMMEE
extra warnings at compile time.
_-_-_w_i_t_h_-_b_u_n_d_l_e_d_-_r_e_g_e_x
uses Henry Spencer's regular expression functions, which
implement POSIX-style extended regexps. These will be used
automatically if your system only has the ancient
re_comp/re_exec functions. But also when you only have the
(also old) regcmp/regex functions, you might want to use
Spencer's stuff, since regcmp/regex are only basic regular
expressions. POSIX-style systems usually have a modern reg-
comp/regexec implementation. Note: the regular expression
routines in the linux runtime library are very slow and not
entirely POSIX compatible. Although TIRC doesn't make heavy
use of regex, you might want to use the bundled regex lib if
you can take the increased executable size. This probably
has been fixed in newer library releases.
_-_-_w_i_t_h_-_g_n_u_-_r_e_g_e_x
This is for linking TIRC with the GNU regular expression
functions which are mostly POSIX. You can get the GNU regex
lib from prep.ai.mit.edu or a mirror site and try with that
one. Build the regex object file (regex.o) and copy regex.o
and regex.h into the TIRC source directory. Then specify
--with-gnu-regex with configure and TIRC will link against
regex.o. You should only do this if for some reason the
system does not have proper regex functions and the bundled
regex lib won't compile.
_-_-_p_r_e_f_i_x_=_P_R_E_F_I_X
specifies where the installation will take place; For
example if you want to install to /usr/contrib (instead of
/usr/local, which is the default), specify --pre-
fix=/usr/contrib and the TIRC executable will land in
/usr/contrib/bin whereas the manpage will be stored in
/usr/contrib/man/man1.
_-_-_w_i_t_h_-_a_n_s_i_-_c_o_l_o_u_r_s
ANSI terminal char cell colourization support (see the
COLOUR command).
_-_-_w_i_t_h_-_d_l_m_o_d
Allows runtime-loading, binding and unloading of shared
libraries through the /dlmod command. Not supported on all
platforms.
_-_-_w_i_t_h_-_l_i_n_u_x_-_g_l_i_b_c On Gnu/Linux systems that use the new
generic gnu libc library instead of the traditional linux-
specific gnu libc5, the System V IPC header files sys/ipc.h
and sys/shm.h may be broken. Specifying this option enables
a workaround.
_-_-_w_i_t_h_-_a_l_l
Currently equivalent to --with-ansi-colours --with-
TTIIRRCC SSoouurrccee DDiissttrriibbuuttiioonn RREEAADDMMEE
dlmod.
There're other switches which are explained in configure's
help output.
If configure succeeded in throwing together a Makefile
and config.h (if not, tell me), issue
% mmaakkee ddeeppeenndd
to create the dependencies.
If your mkdep does everything else but create nice dependen-
cies, or if your system lacks mkdep, configure will decide
to use the bundled mkdep.sh script (which was borrowed from
the 4.4BSD-Lite2 distribution).
If you successfully updated the dependencies, try to compile
the client:
% mmaakkee cclleeaann aallll
*crunch* *crunch* *crunch*
*plonk*
% _
If that worked, you might have to get superuser (if you want
to install system-wide) and type:
# mmaakkee iinnssttaallll
which will copy the executable and the manual page to their
target location. If you're using the csh or tcsh and have
added the tirc program to your path, you have to type
"rehash" so that the shell finds the new binary.
In case you don't have a BSD-compatible install utility,
configure will use the bundled install-sh script, which was
taken from X11R5.
TIRC looks for a global startup file
``/usr/local/share/tircrc''. This file is not automatically
generated by ``make install'' and isn't required for running
the client. However, it may be useful to provide all users
on the system with some default settings (which can be over-
ridden by a .tircrc file in their home directories).
Please read the manual page if you are new to TIRC. You can
get help on commands and keybindings inside TIRC with the
/help command.
If you're upgrading from an earlier version of TIRC, please
have a look at the Changelog file to see what has changed.
TTIIRRCC SSoouurrccee DDiissttrriibbuuttiioonn RREEAADDMMEE
DDoonn''tt aasskk ffoorr tthheessee
Things that are different from other irc clients but
will never be implemented/changed (until you do it for your-
self):
+o mIRC lameness like inline colour support
+o proprietary scripting language like in ircII
+o automatic kicks, protection and other automatisms which
influence other users
+o notify (it polls the server periodically - sucks)
+o xdcc (use ftp or normal dcc, irc isn't an interface to a
warez repository)
+o CTCP USERINFO (stupid)
+o DCC TALK (use talk(1) instead)
NNoonn--ttrriivviiaall mmooddiiffiiccaattiioonnss oonn tthhee TTIIRRCC ssoouurrccee
If you want to add your own stuff to TIRC, or change
the source and redistribute your modifications, you're wel-
come to do so. However, certain rules should be followed.
First, please distinguish your version from the original (by
changing the origin identifier to the global version string
in v.h).
Second, make it clear in the documentation material that
yours is not the original version of TIRC.
Third, never remove or change any copyrights on existing
files. Don't incorporate copyrighted source that does not
allow free usage and distribution.
Then, if you want, contact me to get the RCS tree of the
source (the source archive is actually not the entire source
tree, it lacks the RCS files).
You're encouraged to check-in your versions as a side-
tree, also with the possibility of later merging with the
original tree. If you don't do this but use your own kind
of versioning (or seperate RCS/ SCCS tree), please leave the
RCS stamps of the last original source version in the files
(probably change the $Id to something like $token or simi-
lar). This assures that other people can easily track the
source when they have the original RCS files.
NOTE: unfortunately I lost the rcs tree sometime back in
1998; since the source ought to be retired sometime anyways
(going to 2.0) I didn't want to setup another tree for this
source.
Of course you can always propose modifications for merging
into the main source.
TTIIRRCC SSoouurrccee DDiissttrriibbuuttiioonn RREEAADDMMEE
AAcckknnoowwlleeddggeemmeennttss
Richard C. (rjc@rasi.demon.co.uk) has contributed
dynamically loadable modules support using the system's
dynamic link interface, and other ideas.
Thanks to Michal Listos for testing many alpha releases and
reporting a lot of bugs at an early stage of development
(since 0.28-alpha or sth.).
Vadim Kolontsov has contributed patches.
Thanks to the other people who helped improving the client
by proposing new functionality, notifying me about bug-fixes
and simply testing the thing.
The work of Henry Spencer (free posix regex library), Theo
de Raadt (snprintf.c), the Free Software Foundation (auto-
conf) and the University of California at Berkeley
(mkdep.sh, strtoul.c, regex) is highly appreciated.
RReessoouurrcceess
You can get the latest version of this software via
anonymous ftp from the host ftp.mayn.de, in the directory
/pub/unix/software/Network/Irc/tirc. Log in with ``ftp'' as
username and your complete e-mail address as password.
There's a mailing list for general discussion on the
TIRC program. It is quite low traffic and open to everyone
who's interested.
To subscribe, send e-mail to tirc-subscribe@mayn.de, subject
and body are irrelevant. The list distribution address is
tirc@mayn.de.
To unsubscribe, send mail to tirc-unsubscribe@mayn.de. It
is NOT allowed to send commercial advertisement or other
spam (chain letters etc.) to the list.
TTIIRRCC SSoouurrccee DDiissttrriibbuuttiioonn RREEAADDMMEE
|