Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XMOTD(8)		    System Manager's Manual		      XMOTD(8)

NAME
       xmotd  -	 message-of-the-day  browser for X (and	dumb terminals,	VT100,
       etc.)

SYNOPSIS
       xmotd [X-toolkit	options] [xmotd-options] file [file2 ... ]

       xmotd [X-toolkit	options] [xmotd-options] directory

       or (in text-mode)

       xmotd [-stampfile stamp-file] [-wakeup sleep-period] file [file2	...]

DESCRIPTION
       xmotd is	a utility program (for X11 and dumb terminals) that can	be ex-
       ecuted during the login process to display pertinent messages (i.e. the
       message of the day) or to periodically check, while the user is	logged
       in,  whether  one  or more message files	have been modified and display
       them if they have. Under	X11, it	displays a customizable	bitmap in  the
       top-left	 corner.  It  provides	for  up	 to 3 lines of title-text (the
       length of the text depends on the size of the font chosen).  It	has  a
       "Dismiss" button	below the bitmap and a read-only text-widget that dis-
       plays  the  message  (or	 messages) of the day. The date	of the message
       (and optionally,	the filename) is displayed just	above the text.

       xmotd can be configured to run in various modes:	to always pop-up after
       login or	to pop-up only when the	motd changes;  to  pop-down  automati-
       cally  (without	user-intervention)  after a specified delay; to	run in
       the background and periodically check if	the motd has changed and  dis-
       play  it.  By default, xmotd displays a message only if the file(s) was
       updated since the last time the user read it.

       If xmotd	has to display more than one file,  the	 user  is  obliged  to
       press  the  "Next Message" button to view subsequent messages; the text
       of the button changes to	"Dismiss" when the last	message	is displayed.

       xmotd defaults to text-only mode	(output	to stdout when it cannot  con-
       nect to an X display. This mode is useful for running xmotd from	user's
       ~/.login	file in	cases where they can also login	via dialup.

       xmotd  can  display  messages marked-up with HTML and xpm colour	pixmap
       logos. Support for these	must be	configured at compile-time.

OPERATION
       xmotd is	usually	run from the system Xsession file via xdm(1), CDE  lo-
       gin  and/or  from  the  user's ~/.login file. At	sites where xdm	is not
       used, xmotd may be run from the user's ~/.xinitrc  where	 a  (possibly)
       malicious user may intentionally	or accidently remove the xmotd invoca-
       tion from the file.

       When  xmotd  first runs,	it creates a timestamp file (by	default	called
       .xmotd )	in the user's home-directory. On subsequent invocations, xmotd
       uses the	date of	this file to decide whether or not the message-of-the-
       day (motd) files	have been updated. If the date of  the	motd  file  is
       later  than  the	date on	the ~/.xmotd file, then	xmotd will display the
       motd file; otherwise it will silently exit (if there are	no more	 files
       to  be  displayed  and  if  -wakeup  was	 not  used). When invoked with
       -wakeup,	xmotd daemonizes itself	and goes to sleep  for	the  specified
       sleep-period,  periodically  waking-up to see if	the motds have changed
       and then	displaying them.

       By default, xmotd pops-down only	when the "Dismiss" button is  clicked;
       the rest	of the login-procedure then continues. This interactive	behav-
       iour can	be overriden so	xmotd will pop-down without user intervention,
       after a specified timeout period.

OPTIONS
       All  the	 standard  X options are valid.	In addition, the following op-
       tions, which may	also be	set as resources in the	app-defaults file (See
       RESOURCES), are available:

       -always

	       overrides xmotd default behavior; the  ~/.xmotd	time-stamp  is
	       ignored	and  the  message  (or	messages) is always displayed.
	       Zero-length (empty) files are displayed	when  this  option  is
	       specified.

       -atom atom-name

	       register	 xmotd with name atom-name. By default,	only one xmotd
	       is allowed to run (per user). You can permit multiple instances
	       of xmotd	to run by giving each instance an unique name.	 xmotd
	       will  intern an atom with the X server, that combines the atom-
	       name and	the user's login-id (e.g. "xmotd.elf"  ;  the  default
	       atom  name  is  "xmotd");  subsequent invocations of xmotd will
	       check if	this atom exists and exit if it	does.

       -bitmaplogo bitmap-filename

	       specifies that the bitmap bitmap-filename is to be displayed in
	       place of	the default bitmap, the	"X" logo.  Ideally, the	speci-
	       fied bitmap should have a width and height of  100  pixels.  If
	       xpm  support  is	compiled-in, xpm colour	pixmaps	may be substi-
	       tuted instead. See NOTES	for additional details.

       -browser	web-browser

	       specifies the path and filename of a  web-browser  to  be  used
	       when  an	 URL  is clicked (HTML version only). By default, web-
	       browser is "netscape". See NOTES	for additional details.

       -help

	       displays	command-line options usage.

       -paranoid

	       (used with -warnfile) displays the warning message uncondition-
	       ally at every login (even when there are	no messages to be dis-
	       played).

       -popdown	timeout

	       exit or pop-down	without	user intervention, timeout seconds af-
	       ter being invoked. The user can dismiss xmotd at	any  time  be-
	       fore the	timeout, by clicking on	the "Dismiss" button. This op-
	       tion  is	only valid at the initial login; it is ignored on sub-
	       sequent pop-ups when xmotd is invoked with -wakeup.

       -showfilename

	       displays	the filename of	the file currently being viewed	(as it
	       appears on the command-line), alongside the date.

       -stampfile stamp-filename

	       overrides the default timestamp filename,  ~/.xmotd,  and  uses
	       stamp-filename instead.

       -tail

	       display	the  end of a file; the	text is	automatically scrolled
	       so the end of the file is visible.

       -usedomains

	       uses local  domain-name	based  time-stamping  in  cases	 where
	       user's home-directories are shared (NFS mounted)	across various
	       domains.	  Time-stamps are created (and checked)	with appropri-
	       ate domain-names	appended.

       -warnfile warning-filename

	       specifies a file	containing a standard  message	used  to  warn
	       users  of  the  consequences  of	 deviance  and sundry unlawful
	       things they should not even think of  doing  on	your  network;
	       your network's rules of use, information	about disk quotas, mo-
	       dem charges and printer accounting fees (used with -paranoid).

       -wakeup sleep-period

	       causes  xmotd  to run in	the background and wakeup periodically
	       every sleep-period hours	to check whether the files  have  been
	       modified	and therefore need to be (re-)displayed. The sleep pe-
	       riod  is	 specified  as a floating point	number where the frac-
	       tional portion indicates	the number of minutes. For example,  a
	       sleep-period  of	 0.25  indicates 15 minutes (one quarter of an
	       hour) and a sleep-period	of  1.5	 indicates  one	 and  one-half
	       hours;  the  minimum  (enforced)	 sleep-period is 1 minute. The
	       -wakeup option is useful	at sites  where	 users	with  personal
	       workstations never log-out. See NOTES for additional details.

       file [file2 ... ]

	       one or more files to be displayed may be	specified. The file(s)
	       contain	the text of the	message(s) of the day. If HTML support
	       is compiled-in the motd files should be marked-up with HTML.

       directory

	       Instead of supplying one	or more	 files	on  the	 command-line,
	       xmotd may be supplied a directory containing file(s) to be dis-
	       played. xmotd will scan the directory and display all the files
	       contained  therein,  that need to be displayed. This feature is
	       useful when used	with the -wakeup option; upon waking-up, xmotd
	       will re-scan the	directory for any files	(including  new	 files
	       that have been subsequently added) that need to be displayed.

EXAMPLES
       Give  xmotd  a geometry option to tell it to pop-up at a	location other
       than 0,0	and read-in the	 message-of-the-day  from  the	file  /usr/lo-
       cal/motd:

	  xmotd	-geometry +20+20 /usr/local/motd

       Use  a  bigger  window (900x600)	and automatically position it (at top-
       left corner at 20,20), always pop-up xmotd displaying the  contents  of
       /usr/local/motd,	 ignoring  the user's ~/.xmotd timestamp-file and pop-
       down after 20 seconds:

	  xmotd	-geom 900x600+20+20 -always -popdown 20	/usr/local/motd

       Use a custom bitmap in the file /usr/local/xmotd.bm:

	  xmotd	-geom +5+5 -bitmaplogo /usr/local/xmotd.bm /usr/local/motd

       In the following	example, all the files in /usr/local/messages/ will be
       checked for modification	times greater than  the	 time-stamp  and  only
       those  files  will be displayed and every eight and a half hours, xmotd
       will check if any files have changed (or	new ones  added)  and  display
       them if necessary:

	  xmotd	-geom +5+5 -wakeup 8.5 /usr/local/messages/

       To  display a warning-message every time	the user logs-in (even when no
       messages	need to	be displayed), and to display  the  filenames  of  the
       files being viewed, use:

	  xmotd	-geom +5+5 -warnfile /usr/local/WARNING	-paranoid \
	     -showfilename /usr/local/motds/

       X resources may be changed from the command-line	using the -xrm option.
       This example (typed as a	single line) illustrates how xmotd can be cus-
       tomized exclusively from	the command-line:

	   xmotd -always \
	       -xrm "*title.label: Top 10 Disk Hogs\n As of midnight\n " \
	       -xrm "*title.foreground:	yellow"	\
	       -xrm "*form.background: red" \
	       -xrm "*title.background:	red" \
	       -xrm "*logo.background: pink" \
	       -xrm "*text*font: -adobe-times-bold-*-normal-*-*-180-*" \
	       -geometry 500x650-1-1 \
	       -bitmaplogo /usr/common/choke.xbm
	       -popdown	10 \
	       /usr/common/accounting/top &

RESOURCES
       editres(1) may be used to edit resources. The application class-name is
       XMotd.

       The  resource: XMotd*Always (set	to either True or False) is equivalent
       to the -always command-line option.

       The resource: XMotd*Atom	(set to	the name of the	atom xmotd  is	regis-
       tered with) is equivalent to the	-atom command-line option.

       The  resource:  XMotd*BitmapLogo	 (set  to the path and filename	of the
       bitmap/pixmap-file) is equivalent to the	-bitmaplogo  command-line  op-
       tion.

       The  resource:  XMotd*Browser  (set  to	the  path  and filename	of the
       browser to be used when users click on an URL (HTML version  only))  is
       equivalent to the -browser command-line option.

       The  resource:  XMotd*Paranoid (set to True/False) is equivalent	to the
       -paranoid command-line option.

       The resource: XMotd*Popdown (set	to the number of seconds)  is  equiva-
       lent to the -popdown command-line option.

       The resource: XMotd*UseDomains (set to True/False) is equivalent	to the
       -usedomains command-line	option.

       The  resource:  XMotd*ShowFilename (set to True/False) is equivalent to
       the -showfilename command-line option.

       The resource: XMotd*Warnfile (set to the	path and filename of the warn-
       ing-file) is equivalent to the -warnfile	command-line option.

       The resource: XMotd*Tail	(set to	True/False) is equivalent to the -tail
       command-line option.

       The resource: XMotd*Wakeup (set to an floating-point number  represent-
       ing hours) is equivalent	to the -wakeup command-line option.

       The  resource:  XMotd*title.label (set to a possibly multi-line string)
       may be used to customize	the title.

       By default, the title is	the single  line:"Message  Of  The  Day\n\n\n"
       (the 2-character	sequence, "\n",	indicates a carriage-return).

       For example, if you want	a 2 line title that reads:

		This is	the
	     Message of	the Day

       the resource can	be specified as:

	      *title.label: \	    This is the\nMessage of the	Day\n\n

       Note that the first backslash quotes the	leading	spaces that indent the
       words, "This is the".

WIDGET HIERARCHY
       The widget hierarchy is as follows (Class-name &	object-name):
       XMotd xmotd
	       Form form
		   Label logo
		   Label title
		   Label hline
		   Label info
		   Command quit
		   Text	text	 OR	 Html text

FILES
       $ProjectRoot/lib/X11/xdm/Xsession

       (where $ProjectRoot is /usr/X11R6 or, perhaps /usr/X11).

       For systems running CDE put a script that invokes xmotd in /etc/dt/con-
       fig/Xsession.d/

       $HOME/.xmotd (default timestamp filename)

       $HOME/.login

SEE ALSO
       X(1),  xdm(1), editres(1), login(1), xv(l), gimp(l), xpaint(l), cat(1),
       less(l)

NOTES
       The -always option is considered	fascist; it  is	 provided  merely  for
       completeness and	for testing purposes.

       If  xpm	support	 is  compiled-in,  xmotd  -help	 will  print the words
       "bitmap/pixmap"	for  the  -bitmaplogo  description  instead  of	  just
       "bitmap".

       Under dumb-terminal mode, all command-line options are ignored with the
       exception  of  -stampfile and -wakeup; the -always option is equivalent
       to cat'ing the motd from	the ~/.login file; and -popdown	is not	really
       relevant.  Both -warnfile and -paranoid may be simulated	with appropri-
       ate cat(1) and more(1) commands.

       xmotd processes invoked with -wakeup will continue sleeping, "S"	in the
       ps(1) status field, after the user has logged-out until the sleep time-
       out expires. Only when xmotd wakes-up, will it detect that the user has
       logged-out and exit. xmotd's logout-detection  routine  relies  on  the
       xdm(1)  support	scripts	GiveConsole (which chown's /dev/console	to the
       user) and TakeConsole (which chown's /dev/console back to root) setting
       the correct permissions	and  ownership	on  /dev/console.  When	 xmotd
       wakes-up, it attempts to	open(2)	/dev/console for reading; if this open
       fails,  it  is an indication that the user has logged out because Take-
       Console has changed ownership of	the console.

       The -browser option was originally called -netscape; it was renamed  to
       be more generic.	When initially run, the	browser	is invoked as:

	   netscape %s

       where  %s is replaced by	the selected URL. Subsequent URLs will be dis-
       played in the already running browser using the syntax:

	   netscape -remote openURL(%s)

       You may substitute a browser of your choice for netscape,  if  it  sup-
       ports this syntax.

BUGS
       There are no provisions for displaying embedded images in the HTML ver-
       sion  of	 xmotd	(until a stable	XmHTML widget is available, or perhaps
       when xmotd is ported to the GTK).

       At least	one other.

QUOTES
		       ...and our lives	are forever changed
			     we	will never be the same
		       the more	you change the less you	feel

		      --Tonight, tonight,
		      "Mellon Collie And The Infinite Sadness"
		      Billy Corgan, The	Smashing Pumpkins

		    Omnia mutantur, nos	et mutamur in illis.
		 (All things change, and we change with	them).

		      --Matthias Borbonius:
		      Deliciae Poetarum	Germanorum, i. 685

			To everything there is a season,
		   And a time to every purpose under heaven.

		      --Ecclesiastes 3:1-4

AUTHORS
       Luis Fernandes <elf@ee.ryerson.ca> is  the  primary  author  and	 main-
       tainer.

       Richard	Deal  <rdeal@atl.lmco.com>  contributed	the directory-scanning
       code.

       Stuart A. Harvey	<sharvey@primenet.com>	contributed  the  URL  support
       code for	the HTML version.

       David  M. Ronis <ronis@onsager.chem.mcgill.ca> contributed code to sup-
       port xpm	logos.

COPYRIGHT
       Copyright 1993 (as xbanner, no public release)

       Copyright 1994-97, 1999,	 2001, 2003 Luis A. Fernandes

       Permission to use, copy,	hack, and distribute  this  software  and  its
       documentation  for  any purpose and without fee is hereby granted, pro-
       vided that the above copyright notice appear in	all  copies  and  that
       both  that  copyright  notice and this permission notice	appear in sup-
       porting documentation.

       This application	is presented as	is without any implied or written war-
       ranty.

       This program is free software; you can redistribute it and/or modify it
       under the terms of the GNU General Public License as published  by  the
       Free  Software Foundation; either version 2 of the License, or (at your
       option) any later version.

       This program is distributed in the hope that it	will  be  useful,  but
       WITHOUT	ANY  WARRANTY;	without	 even  the  implied  warranty  of MER-
       CHANTABILITY or FITNESS FOR A PARTICULAR	PURPOSE.  See the GNU  General
       Public License for more details.

       You should have received	a copy of the GNU General Public License along
       with this program; if not, write	to the Free Software Foundation, Inc.,
       675 Mass	Ave, Cambridge,	MA 02139, USA.

       The  HTML widget	Copyright 1993,	Board of Trustees of the University of
       Illinois. See the file libhtmlw/HTML.c for the  complete	 text  of  the
       NCSA copyright.

       NOTE:  THE  HTML	WIDGET IS NOT DISTRIBUTED IN THE "LITE"	VERSION	OF THE
       xmotd DISTRIBUTION, WHICH IS THEREFORE FULLY COMPLIANT WITH THE GPL.

X11 Release 6.4			  Nov 24 1999			      XMOTD(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xmotd&sektion=8&manpath=FreeBSD+Ports+15.0>

home | help