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
   executed  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
   displays 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
   automatically  (without  user-intervention) after a specified delay; to
   run in the background and periodically check if the  motd  has  changed
   and  display  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
   connect  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.

   This version of xmotd cannot display messages marked-up with  HTML  and
   xpm   colour   pixmap  logos,  because  the  code  that  provided  that
   functionality does not comply with Debian Free Software Guidelines.

OPERATION

   xmotd is usually run from the system  Xsession  file  via  xdm(1),  CDE
   login  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  accidentally  remove the xmotd
   invocation 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
   behaviour  can  be  overridden  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
   options,  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
           specified  bitmap should have a width and height of 100 pixels.
           If xpm support  is  compiled-in,  xpm  colour  pixmaps  may  be
           substituted instead. See NOTES for additional details.

   -help

           displays command-line options usage.

   -paranoid

           (used    with   -warnfile)   displays   the   warning   message
           unconditionally at every login (even when there are no messages
           to be displayed).

   -popdown timeout

           exit  or  pop-down  without  user intervention, timeout seconds
           after being invoked. The user can dismiss  xmotd  at  any  time
           before  the  timeout, by clicking on the "Dismiss" button. This
           option is only valid at the initial login;  it  is  ignored  on
           subsequent 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
           appropriate 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,
           modem   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
           period  is  specified  as  a  floating  point  number where the
           fractional  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
           displayed. 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/local/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
   customized 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
   registered 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
   option.

   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
   equivalent 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
   warning-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
   representing 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/config/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
   appropriate 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
   timeout 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
   TakeConsole has changed ownership of the console.

BUGS

   There  are  no  provisions  for  displaying embedded images in the HTML
   version 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
   maintainer.

   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
   support 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,
   provided  that the above copyright notice appear in all copies and that
   both that  copyright  notice  and  this  permission  notice  appear  in
   supporting documentation.

   This  application  is  presented  as  is without any implied or written
   warranty.

   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
   MERCHANTABILITY  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.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.