Annotation of freem/doc/freem.1, revision 1.6

1.1       snw         1: .\" To display this man page, either:
                      2: .\"   1) Install this file along with the other subject.1 files in your
                      3: .\"      system's man1 directory (usually this is /usr/man/man1) and
                      4: .\"      enter the command:
1.3       snw         5: .\"        man freem
1.1       snw         6: .\"   or
                      7: .\"   2) Specify the input (this file) and the output (your favorite pager)
                      8: .\"      explicitly.  For example, if this file is in your current working
                      9: .\"      directory, you can use the following to view the formatted man page
                     10: .\"      using the "less" pager:
1.3       snw        11: .\"        man ./freem.1 | less
1.1       snw        12: .\"
                     13: .\" To print this man page to a PostScript printer:
1.3       snw        14: .\"   man -t ./freem.1 | lpr
1.1       snw        15: .\"
1.6     ! snw        16: .\"   $Id: freem.1,v 1.5 2025/04/04 12:49:19 snw Exp $
1.1       snw        17: .\"    FreeM man page
                     18: .\"
                     19: .\"  
1.2       snw        20: .\"   Author: Serena Willis <snw@coherent-logic.com>
1.1       snw        21: .\"    Copyright (C) 1998 MUG Deutschland
1.3       snw        22: .\"    Copyright (C) 2020, 2025 Coherent Logic Development LLC
1.1       snw        23: .\"
                     24: .\"
                     25: .\"   This file is part of FreeM.
                     26: .\"
                     27: .\"   FreeM is free software: you can redistribute it and/or modify
                     28: .\"   it under the terms of the GNU Affero Public License as published by
                     29: .\"   the Free Software Foundation, either version 3 of the License, or
                     30: .\"   (at your option) any later version.
                     31: .\"
                     32: .\"   FreeM is distributed in the hope that it will be useful,
                     33: .\"   but WITHOUT ANY WARRANTY; without even the implied warranty of
                     34: .\"   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     35: .\"   GNU Affero Public License for more details.
                     36: .\"
                     37: .\"   You should have received a copy of the GNU Affero Public License
                     38: .\"   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
                     39: .\"
1.5       snw        40: .\"   $Log: freem.1,v $
1.6     ! snw        41: .\"   Revision 1.5  2025/04/04 12:49:19  snw
        !            42: .\"   Dollar signs cut off in ENVIRONMENT sections of both man pages
        !            43: .\"
1.5       snw        44: .\"   Revision 1.4  2025/04/03 15:56:41  snw
                     45: .\"   Add fmadm man page to CVS
                     46: .\"
1.1       snw        47: .\"
1.3       snw        48: .TH freem 1 "3 April 2025" FreeM "FreeM User Manual"
1.1       snw        49: .SH NAME
                     50: freem
                     51: .SH SYNOPSIS
                     52: .B freem [OPTION...]
                     53: .SH DESCRIPTION
                     54: The
                     55: .B freem
                     56: program runs an instance of
                     57: .IR "FreeM"
                     58: \.
                     59: 
                     60: FreeM is an implementation of the MUMPS programming language, began by the efforts of the mysterious Shalom ha-Ashkenaz. In response to InterSystems' spree of buying up all competing MUMPS implementations, Shalom gifted FreeM to MUG Deutschland in 1998, in hopes that the MUMPS community would turn it into a viable, freely available, and fully-featured MUMPS implementation.
                     61: 
                     62: After years of dormancy, the FreeM project has been resurrected, and under the stewardship of Coherent Logic Development and a small core team of contributors, work is proceeding towards completing the original FreeM team's goals, and much more.
                     63: 
                     64: More information is available at https://freem.coherent-logic.com/
                     65: 
                     66: Please see the FreeM texinfo documentation for language, database, and administration details ("info freem").
                     67: .SH OPTIONS
                     68: .TP
                     69: \-h, --help
1.3       snw        70: Display a list of freem command-line flags
1.1       snw        71: .TP
                     72: \-i, --import
1.3       snw        73: Imports UNIX environment variables as M locals
                     74: .TP
                     75: \-e <environment-name>, --environment=<environment-name>
                     76: Sets active environment to <environment-name> (DEFAULT if unspecified)
1.1       snw        77: .TP
                     78: \-f, --filter
1.3       snw        79: Allows M code to be used as a filter
1.1       snw        80: .TP
                     81: \-n <NAMESPACE>, --namespace=<NAMESPACE>
1.3       snw        82: Selects <NAMESPACE> as the startup namespace instead of USER
1.1       snw        83: .TP
                     84: \-q, --quiet
1.3       snw        85: Sisables startup messages and prompt string
1.1       snw        86: .TP
1.3       snw        87: \-r <LABEL^ROUTINE>, --routine=<LABEL^ROUTINE>
                     88: Executes <LABEL^ROUTINE> on startup instead of entering direct mode
                     89: \-s <standard>, --standard=<standard>
                     90: Restricts access to FreeM vendor extensions not present in relevant standards*. In this flag, <standard> can be:
                     91:  - M77
                     92:  - M84
                     93:  - M90
                     94:  - M95
                     95:  - MDS
                     96:  - M5
                     97:  - FREEM
1.1       snw        98: .TP
                     99: \-v, --version
1.3       snw       100: Display FreeM version information
1.1       snw       101: .TP
                    102: \-x <MCODE>, --execute=<MCODE>
1.3       snw       103: Execute M code <MCODE> on startup
                    104: .TP
                    105: \-d, --daemon
                    106: Run the FreeM daemon (one and only one FreeM daemon must always be running for each configured environment)
                    107: .TP
                    108: \-k, --nofork
                    109: Run the FreeM daemon in foreground (requires --daemon)
                    110: .TP
                    111: \-S <BYTES>, --shmsize=<BYTES>
                    112: Sets the size of the shared memory segment where FreeM stores the job table, lock table, and IPC table.
                    113:  - Each concurrent job takes 1024 bytes (1 page) of shared memory
                    114:  - Each LOCK takes 2048 bytes (2 pages) of shared memory
                    115:  - Each IPC takes 1024 bytes (1 page) of shared memory
1.1       snw       116: .SH "RETURN VALUES"
                    117: Returns 0 for non-error condition.
                    118: .SH FILES
                    119: .TP
1.3       snw       120: env.conf
                    121: The FreeM environment catalog. Normally located in $PREFIX/etc/freem/env.conf
                    122: .TP
1.1       snw       123: freem.conf
1.3       snw       124: The FreeM configuration file. Normally located in $PREFIX/etc/freem/<environment-name>/freem.conf.
1.1       snw       125: .SH ENVIRONMENT
1.3       snw       126: .TP
1.5       snw       127: $DISPLAY
1.3       snw       128: Determines the value of the $PDISPLAY intrinsic special variable. This determines the X11 display used by the M Windowing API. Only applies when FreeM is built with the '--enable-mwapi' configuration option.
                    129: .TP
1.5       snw       130: $TERM
1.3       snw       131: Used by the ^$DEVICE structured system variable to provide the TERMID value for I/O channel 0.
1.6     ! snw       132: .TP
        !           133: $FREEM_LOG_THRESHOLD_FILE
        !           134: Overrides the configured threshold at which log messages are written to files in /var/log/freem, corresponding to the log_threshold_file environment setting in $PREFIX/etc/env.conf. The default value is "info".
        !           135: .TP
        !           136: $FREEM_LOG_THRESHOLD_SYSLOG
        !           137: Overrides the configured threshold at which log messages are sent to the syslog facility on systems that support it, corresponding to the log_threshold_syslog environment setting in $PREFIX/etc/env.conf. The default value is "info".
        !           138: .TP
        !           139: $FREEM_LOG_THRESHOLD_STDERR
        !           140: Overrides the configured threshold at which log messages are sent to stderr, corresponding to the log_threshold_stderr environment setting in $PREFIX/etc/env.conf. The default value is "warning".
        !           141: .SH LOG THRESHOLD VALUES
        !           142: This section details the valid values for each of the $FREEM_LOG_THRESHOLD_* environment variables, and each value indicates a minimum diagnostic level at which the indicated class of message will be delivered through the selected mechanism. All messages with an equal or higher diagnostic level than the class indicated will be delivered, i.e., if "warning" is selected, messages with a diagnostic class of warning, error, and fatal will be delivered through the selected mechanism.
        !           143: 
        !           144: Valid values for each of these environment variables are as follows:
        !           145: .TP
        !           146: debug
        !           147: Messages useful mostly for developers contributing to FreeM itself. Will produce a high volume of log messages, and is likely to impact system performance. Not recommended for production usage.
        !           148: .TP
        !           149: info
        !           150: Includes messages of an informational nature. Will produce a moderately high volume of log messages. For heavily multi-user and multi-process systems, it is recommended to use "warning" instead.
        !           151: .TP
        !           152: warning
        !           153: Includes warning messages. These indicate conditions (including retries when attempting to acquire semaphores) that warrant further investigation by the system operator, but do not typically prevent applications from running.
        !           154: .TP
        !           155: error
        !           156: Includes error messages. This class of messages indicates that a recoverable error has occurred in the FreeM engine. Warrants immediate attention by the system operator.
        !           157: .TP
        !           158: fatal
        !           159: Includes messages indicating errors that are not recoverable. If this class of message occurs, the process that triggered the message has terminated abnormally. Requires immediate system operator intervention, and can indicate gross misconfiguration of the FreeM engine or the host operating system environment, or even a FreeM bug.
        !           160: 
1.1       snw       161: .SH BUGS
1.3       snw       162: Check the issue tracker at https://bugs.coherent-logic.com for more detailed information on current bugs.
1.1       snw       163: .SH AUTHOR
                    164: Provided by Shalom ha-Ashkenaz, 1998/06/18 CE, to the stewardship of the
                    165: MUG Deutschland. The GUMP (Generic Universal M Project) took over after this point,
1.2       snw       166: and ownership of the original SourceForge project was handed over to Serena Willis of
1.1       snw       167: Coherent Logic Development LLC in 2014.
                    168: .br
                    169: The author's identity is a mystery.  Can anyone shed light on this?
                    170: .br
                    171: 
                    172: .br
                    173: Man page written by Ron Fox (rfox@dls.queens.org)
                    174: .br
1.2       snw       175: Maintained and updated by Serena Willis (snw@coherent-logic.com)
1.1       snw       176: .SH COPYRIGHT
                    177: 
                    178: Copyright (C) 1998 MUG Deutschland
                    179: .br
1.4       snw       180: Copyright (C) 2025 Coherent Logic Development LLC
                    181: 
                    182: Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover texts, and with no Back-Cover Texts.
1.1       snw       183: 
                    184: .SH "SEE ALSO"
                    185: .BR fmadm (8)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>