1. Incorporate Nickolay's ammended patches for Russian screenmap support

as per Andrey's letter.  Make a few modifications for correctness.

2. Add Language menu back to first menu - it was too buried in the
   Options menu.

3. Add size information to all distributions.

4. Add a compat20 distribution (we need to make one of these!!  Any takers?  Please?)

Submitted by:	Nickolay N. Dudorov <nnd@gw.itfs.nsk.su> & jkh
This commit is contained in:
Jordan K. Hubbard 1995-05-19 16:58:58 +00:00
parent 87b47edc82
commit c10caaad51
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=8629
17 changed files with 353 additions and 253 deletions

View File

@ -29,6 +29,12 @@ BOOTS=${.CURDIR}/../../sys/i386/boot/biosboot/obj
BOOTS=${.CURDIR}/../../sys/i386/boot/biosboot
.endif
.if exists(${.CURDIR}/../../share/syscons/scrnmaps/obj)
MKSCRNMAP=${.CURDIR}/../../share/syscons/scrnmaps/obj/koi8-r2cp866.mk
.else
MKSCRNMAP=${.CURDIR}/../../share/syscons/scrnmaps/koi8-r2cp866.mk
.endif
makedevs.c: dev2c.sh Makefile rtermcap
rm -f makedevs.tmp
mkdir -p dev
@ -70,10 +76,14 @@ makedevs.c: dev2c.sh Makefile rtermcap
&& file2c 'const u_char font_cp850_8x16[] = {' '};' \
< cp850-8x16 >> makedevs.tmp
rm cp850-8x16
uudecode < ${.CURDIR}/../../share/syscons/fonts/koi8-r-8x16.fnt \
&& file2c 'const u_char font_koi8_r_8x16[] = {' '};' \
< koi8-r-8x16 >> makedevs.tmp
rm koi8-r-8x16
uudecode < ${.CURDIR}/../../share/syscons/fonts/cp866-8x16.fnt \
&& file2c 'const u_char font_cp866_8x16[] = {' '};' \
< cp866-8x16 >> makedevs.tmp
rm cp866-8x16
${MKSCRNMAP} koi8-r2cp866 \
&& file2c 'const u_char koi8_r2cp866[] = {' '};' \
< koi8-r2cp866 >> makedevs.tmp
rm koi8-r2cp866
mv makedevs.tmp makedevs.c
rtermcap: ${.CURDIR}/rtermcap.c

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: dist.c,v 1.6 1995/05/17 14:39:40 jkh Exp $
* $Id: dist.c,v 1.7 1995/05/18 09:01:52 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -138,6 +138,7 @@ static Distribution DistTable[] = {
{ "src/", &Dists, DIST_SRC, SrcDistTable },
{ "des", &Dists, DIST_DES, NULL },
{ "compat1x", &Dists, DIST_COMPAT1X, NULL },
{ "compat20", &Dists, DIST_COMPAT20, NULL },
{ "xf86311/", &Dists, DIST_XF86, XF86DistTable },
{ NULL },
};

View File

@ -11,8 +11,9 @@
#define DIST_DES 0x0040
#define DIST_INFO 0x0080
#define DIST_COMPAT1X 0x0100
#define DIST_XF86 0x0200
#define DIST_COMMERCIAL 0x0400
#define DIST_COMPAT20 0x0200
#define DIST_XF86 0x0400
#define DIST_COMMERCIAL 0x0800
#define DIST_ALL 0x0FFF
/* Canned distribution sets */
@ -23,7 +24,7 @@
(_DIST_DEVELOPER | DIST_XF86)
#define _DIST_USER \
(DIST_BIN | DIST_MANPAGES | DIST_DICT | DIST_COMPAT1X)
(DIST_BIN | DIST_MANPAGES | DIST_DICT | DIST_COMPAT1X | DIST_COMPAT2X)
#define _DIST_XUSER \
(_DIST_USER | DIST_XF86)

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: lang.c,v 1.2 1995/05/05 23:47:41 jkh Exp $
* $Id: lang.c,v 1.3 1995/05/18 15:29:44 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -43,11 +43,14 @@
#include "sysinstall.h"
u_char default_scrnmap[256];
void
lang_set_Danish(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("da_DK.ISO8859-1");
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
}
@ -57,8 +60,8 @@ lang_set_Dutch(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("nl_NL.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}
void
@ -66,8 +69,8 @@ lang_set_English(char *str)
{
systemChangeFont(font_cp850_8x16);
systemChangeLang("en_US.ISO8859-1");
systemChangeTerminal("cons25", termcap_cons25,
"cons25-m", termcap_cons25_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25", termcap_cons25, "cons25-m", termcap_cons25_m);
}
void
@ -75,8 +78,8 @@ lang_set_French(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("fr_FR.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}
void
@ -84,8 +87,8 @@ lang_set_German(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("de_DE.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}
void
@ -93,18 +96,18 @@ lang_set_Italian(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("it_IT.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}
/* Someday we will have to do a lot better than this */
/* Someday we will have to do a lot better than this for Kanji text! */
void
lang_set_Japanese(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("ja_JP.ROMAJI");
systemChangeTerminal("cons25", termcap_cons25,
"cons25-m", termcap_cons25_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25", termcap_cons25, "cons25-m", termcap_cons25_m);
}
void
@ -112,17 +115,17 @@ lang_set_Norwegian(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("no_NO.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}
void
lang_set_Russian(char *str)
{
systemChangeFont(font_koi8_r_8x16);
systemChangeFont(font_cp866_8x16);
systemChangeLang("ru_SU.KOI8-R");
systemChangeTerminal("cons25r", termcap_cons25r,
"cons25r-m", termcap_cons25r_m);
systemChangeScreenmap(koi8_r2cp866);
systemChangeTerminal("cons25r", termcap_cons25r, "cons25r-m", termcap_cons25r_m);
}
void
@ -130,8 +133,8 @@ lang_set_Spanish(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("es_ES.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}
void
@ -139,6 +142,6 @@ lang_set_Swedish(char *str)
{
systemChangeFont(font_iso_8x16);
systemChangeLang("sv_SV.ISO8859-1");
systemChangeTerminal("cons25l1", termcap_cons25l1,
"cons25l1-m", termcap_cons25l1_m);
systemChangeScreenmap(default_scrnmap);
systemChangeTerminal("cons25l1", termcap_cons25l1, "cons25l1-m", termcap_cons25l1_m);
}

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: menus.c,v 1.15 1995/05/17 14:39:54 jkh Exp $
* $Id: menus.c,v 1.16 1995/05/18 09:02:00 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -64,6 +64,8 @@ option by pressing enter. If you'd like a shell, press ESC", /* prompt */
DMENU_DISPLAY_FILE, (void *)"usage.hlp", 0, 0 },
{ "Doc", "More detailed documentation on FreeBSD.", /* D */
DMENU_SUBMENU, (void *)&MenuDocumentation, 0, 0 },
{ "Language", "Set your preferred language.", /* L */
DMENU_SUBMENU, (void *)&MenuOptionsLanguage, 0, 0 },
{ "Options", "Select various options for this utility.", /* O */
DMENU_SUBMENU, (void *)&MenuOptions, 0, 0 },
{ "Proceed", "Go to the installation menu", /* P */
@ -133,7 +135,7 @@ to be in experimental status at this time.", /* prompt */
DMENU_CALL, (void *)lang_set_Japanese, 0, 0 },
{ "Norwegian", "Norwegian language and character set (ISO-8859-1)", /* N */
DMENU_CALL, (void *)lang_set_Norwegian, 0, 0 },
{ "Russian", "Russian language and character set (cp866-8x14)", /* R */
{ "Russian", "Russian language and character set (CP866)", /* R */
DMENU_CALL, (void *)lang_set_Russian, 0, 0 },
{ "Spanish", "Spanish language and character set (ISO-8859-1)", /* S */
DMENU_CALL, (void *)lang_set_Spanish, 0, 0 },
@ -267,16 +269,16 @@ method.",
"media.hlp",
{ { "CDROM", "Install from a FreeBSD CDROM",
DMENU_CALL, (void *)mediaSetCDROM, 0, 0 },
{ "Floppy", "Install from a floppy disk set",
DMENU_CALL, (void *)mediaSetFloppy, 0, 0 },
{ "DOS", "Install from a DOS partition",
DMENU_CALL, (void *)mediaSetDOS, 0, 0 },
{ "Tape", "Install from SCSI or QIC tape",
DMENU_CALL, (void *)mediaSetTape, 0, 0 },
{ "FTP", "Install from an Internet FTP server",
DMENU_CALL, (void *)mediaSetFTP, 0, 0 },
{ "File System", "Install from a UFS or NFS mounted distribution",
DMENU_CALL, (void *)mediaSetFS, 0, 0 },
{ "Floppy", "Install from a floppy disk set",
DMENU_CALL, (void *)mediaSetFloppy, 0, 0 },
{ "FTP", "Install from an Internet FTP server",
DMENU_CALL, (void *)mediaSetFTP, 0, 0 },
{ "Tape", "Install from SCSI or QIC tape",
DMENU_CALL, (void *)mediaSetTape, 0, 0 },
{ NULL } },
};
@ -290,19 +292,19 @@ type of system in question. If you would prefer to pick and choose\n\
the list of distributions yourself, simply select \"custom\".",
"Press F1 for more information on the various distributions",
"dist_types.hlp",
{ { "Developer", "Includes full sources, binaries and doc but no games.",
{ { "Developer", "Full sources, binaries and doc but no games [48MB]",
DMENU_CALL, (void *)distSetDeveloper, 0, 0 },
{ "X-Developer", "Same as above, but includes XFree86.",
{ "X-Developer", "Same as above, but includes XFree86 [73MB]",
DMENU_CALL, (void *)distSetXDeveloper, 0, 0 },
{ "User", "General user. Binaries and doc but no sources.",
{ "User", "Average user - binaries and doc but no sources [19MB]",
DMENU_CALL, (void *)distSetUser, 0, 0 },
{ "X-User", "Same as above, but includes XFree86.",
{ "X-User", "Same as above, but includes XFree86 [45MB]",
DMENU_CALL, (void *)distSetXUser, 0, 0 },
{ "Minimal", "The smallest configuration possible.",
{ "Minimal", "The smallest configuration possible [15MB]",
DMENU_CALL, (void *)distSetMinimum, 0, 0 },
{ "Everything", "The entire source and binary distribution.",
{ "Everything", "All sources, binaries and XFree86 binaries [80MB]",
DMENU_CALL, (void *)distSetEverything, 0, 0 },
{ "Custom", "Specify your own distribution set",
{ "Custom", "Specify your own distribution set [?]",
DMENU_SUBMENU, (void *)&MenuDistributions, 0, 0 },
{ NULL } },
};
@ -315,27 +317,29 @@ of the most generally useful distributions are already checked, and\n\
selecting OK at this stage will chose them as defaults.",
"Press F1 for a more complete description of these distributions.",
"distribution_types.hlp",
{ { "*bin", "Binary base distribution (required)",
{ { "*bin", "Binary base distribution (required) [15MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_BIN, 0 },
{ "commercial", "Commercial demos and shareware",
{ "commercial", "Commercial demos and shareware [10MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMMERCIAL, 0 },
{ "compat1x", "FreeBSD 1.x binary compatability package",
{ "compat1x", "FreeBSD 1.x binary compatability package [2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMPAT1X, 0 },
{ "DES", "DES encryption code and sources",
{ "compat20", "FreeBSD 2.0 binary compatability package [2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMPAT20, 0 },
{ "DES", "DES encryption code and sources [.3MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_DES, 0 },
{ "dict", "Spelling checker disctionary files",
{ "dict", "Spelling checker disctionary files [1.3MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_DICT, 0 },
{ "games", "Games and other amusements (non-commercial)",
{ "games", "Games and other amusements (non-commercial) [2.8MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_GAMES, 0 },
{ "info", "GNU info files",
{ "info", "GNU info files [1.2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_INFO, 0 },
{ "*man", "System manual pages - strongly recommended",
{ "*man", "System manual pages - strongly recommended [2.8MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_MANPAGES, 0 },
{ "proflibs", "Profiled versions of the libraries",
{ "proflibs", "Profiled versions of the libraries [.9MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_PROFLIBS, 0 },
{ "src", "Sources for everything but DES",
{ "src", "Sources for everything but DES [25MB]",
DMENU_CALL, (void *)distSetSrc, 0 },
{ "XFree86", "The XFree86 3.1.1L distribution",
{ "XFree86", "The XFree86 3.1.1L distribution [?]",
DMENU_SUBMENU, (void *)&MenuXF86, 0 },
{ NULL } },
};
@ -344,39 +348,38 @@ DMenu MenuSrcDistributions = {
DMENU_MULTIPLE_TYPE | DMENU_SELECTION_RETURNS,
"Select the sub-components of src you wish to install.",
"Please check off those portions of the FreeBSD source tree\n\
you wish to install. A brief description of each source\n\
hierarchy is contained in parenthesis below.",
you wish to install.",
"Press F1 for a more complete description of distributions.",
"distribution_types.hlp",
{ { "base", "Base src directory (top-level files in /usr/src)",
{ { "base", "top-level files in /usr/src [300K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_BASE, 0 },
{ "gnu", "/usr/src/gnu (user software from the GNU Project)",
{ "gnu", "/usr/src/gnu (software from the GNU Project) [42MB]]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_GNU, 0 },
{ "etc", "/usr/src/etc (miscellaneous system files)",
{ "etc", "/usr/src/etc (miscellaneous system files) [460K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_ETC, 0 },
{ "games", "/usr/src/games (games)",
{ "games", "/usr/src/games (diversions) [7.8MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_GAMES, 0 },
{ "include", "/usr/src/include (header files)",
{ "include", "/usr/src/include (header files) [467K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_INCLUDE, 0 },
{ "lib", "/usr/src/lib (system libraries)",
{ "lib", "/usr/src/lib (system libraries) [9.2MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LIB, 0 },
{ "libexec", "/usr/src/libexec (various system programs)",
{ "libexec", "/usr/src/libexec (system programs) [1.2MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LIBEXEC, 0 },
{ "lkm", "/usr/src/lkm (Loadable Kernel Modules)",
{ "lkm", "/usr/src/lkm (Loadable Kernel Modules) [193K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LKM, 0 },
{ "release", "/usr/src/release (release-generation tools)",
{ "release", "/usr/src/release (release-generation tools) [533K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_RELEASE, 0 },
{ "sbin", "/usr/src/sbin (system binaries)",
{ "sbin", "/usr/src/sbin (system binaries) [1.3MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SBIN, 0 },
{ "share", "/usr/src/share (documents and shared files)",
{ "share", "/usr/src/share (documents and shared files) [10MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SHARE, 0 },
{ "sys", "/usr/src/sys (FreeBSD kernel)",
{ "sys", "/usr/src/sys (FreeBSD kernel) [13MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SYS, 0 },
{ "ubin", "/usr/src/usr.bin (user binaries)",
{ "ubin", "/usr/src/usr.bin (user binaries) [13MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_UBIN, 0 },
{ "usbin", "/usr/src/usr.sbin (aux system binaries)",
{ "usbin", "/usr/src/usr.sbin (aux system binaries) [14MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_USBIN, 0 },
{ "XFree86", "XFree86 3.1.1L source + contrib distribution",
{ "XFree86", "XFree86 3.1.1L source + contrib distribution [200MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_XF86, 0 },
{ NULL } },
};
@ -428,13 +431,13 @@ Those deemed most generally useful are already checked off for you.",
NULL,
{ { "*bin", "X client applications and shared libs [4MB].",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_BIN, 0 },
{ "*lib", "Data files needed at runtime [0.6MB]",
{ "*lib", "Data files needed at runtime [600K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_LIB, 0 },
{ "xicf", "Customizable xinit runtime configuration file [0.1MB]",
{ "xicf", "Customizable xinit runtime configuration file [100K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_XINIT, 0 },
{ "xdcf", "Customizable xdm runtime configuration file [0.1MB]",
{ "xdcf", "Customizable xdm runtime configuration file [100K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_XDMCF, 0 },
{ "doc", "READMEs and XFree86 specific man pages [0.5MB]",
{ "doc", "READMEs and XFree86 specific man pages [500K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_DOC, 0 },
{ "*man", "Man pages (except XFree86 specific ones) [1.2MB]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_MAN, 0 },
@ -442,7 +445,7 @@ Those deemed most generally useful are already checked off for you.",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_PROG, 0 },
{ "link", "X Server reconfiguration kit [7.8MB]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_LINK, 0 },
{ "pex", "PEX fonts and libs needed by PEX apps [0.5MB]",
{ "pex", "PEX fonts and libs needed by PEX apps [500K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_PEX, 0 },
{ NULL } },
};
@ -477,27 +480,27 @@ it is recommended that try the SVGA or VGA16 servers (the VGA16 and\n\
Mono servers are also particularly well-suited to most LCD displays).",
"xservers.hlp",
"Press F1 for more information on the various X server types",
{ { "*SVGA", "Standard VGA or Super VGA display",
{ { "*SVGA", "Standard VGA or Super VGA display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_SVGA, 0 },
{ "VGA16", "Standard 16 color VGA display",
{ "VGA16", "Standard 16 color VGA display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_VGA16, 0 },
{ "Mono", "Standard Monochrome display",
{ "Mono", "Standard Monochrome display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MONO, 0 },
{ "8514", "8-bit (256 color) IBM 8514 or compatible card.",
{ "8514", "8-bit (256 color) IBM 8514 or compatible card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_8514, 0 },
{ "AGX", "8-bit AGX card",
{ "AGX", "8-bit AGX card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_AGX, 0 },
{ "Mch3", "8 and 16-bit (65K color) for ATI Mach32 card.",
{ "Mch3", "8 and 16-bit (65K color) for ATI Mach32 card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MACH32, 0 },
{ "Mch8", "8-bit ATI Mach8 card.",
{ "Mch8", "8-bit ATI Mach8 card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MACH8, 0 },
{ "P9K", "8, 16, and 24-bit color for Weitek P9000 based boards",
{ "P9K", "8, 16, and 24-bit color for Weitek P9000 based boards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_P9000, 0 },
{ "S3", "8, 16 and 24-bit color for S3 based boards",
{ "S3", "8, 16 and 24-bit color for S3 based boards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_S3, 0 },
{ "W32", "8-bit Color for ET4000/W32, /W32i and /W32p cards.",
{ "W32", "8-bit Color for ET4000/W32, /W32i and /W32p cards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_W32, 0 },
{ "nest", "A nested server for testing purposes",
{ "nest", "A nested server for testing purposes [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_NEST, 0 },
{ NULL } },
};
@ -529,8 +532,6 @@ When you're done setting options, please select Cancel.",
NULL,
{ { "Ftp Options", "Ftp options menu",
DMENU_SUBMENU, (void *)&MenuOptionsFTP, 0, 0 },
{ "Language", "Select your preferred language",
DMENU_SUBMENU, (void *)&MenuOptionsLanguage, 0, 0 },
{ "NFS Secure", "NFS server talks only on a secure port",
DMENU_SET_VARIABLE, (void *)"nfsServerSecure=yes", 0, 0 },
{ "NFS Slow", "User is using a slow PC or ethernet card",
@ -549,13 +550,13 @@ DMenu MenuOptionsFTP = {
to deal with it? You have several choices:",
NULL,
NULL,
{ { "Ftp Retry", "On transfer failure, retry same host",
{ { "FTP Retry", "On transfer failure, retry same host",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=loop", 0, 0 },
{ "Ftp Reselect", "On transfer failure, ask for another host",
{ "FTP Reselect", "On transfer failure, ask for another host",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=reselect", 0, 0 },
{ "Ftp Abort", "On transfer failure, abort installation",
{ "FTP Abort", "On transfer failure, abort installation",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=abort", 0, 0 },
{ "Ftp passive", "Use \"passive mode\" for firewalled ftp",
{ "FTP passive", "Use \"passive mode\" for firewalled FTP",
DMENU_SET_VARIABLE, (void *)"ftpPassive=yes", 0, 0 },
{ NULL } },
};

View File

@ -4,7 +4,7 @@
* This is probably the last attempt in the `sysinstall' line, the next
* generation being slated to essentially a complete rewrite.
*
* $Id: sysinstall.h,v 1.18 1995/05/17 14:39:56 jkh Exp $
* $Id: sysinstall.h,v 1.19 1995/05/18 15:29:45 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -281,7 +281,9 @@ extern const char termcap_cons25l1[];
extern const char termcap_cons25l1_m[];
extern const u_char font_iso_8x16[];
extern const u_char font_cp850_8x16[];
extern const u_char font_koi8_r_8x16[];
extern const u_char font_cp866_8x16[];
extern const u_char koi8_r2cp866[];
extern u_char default_scrnmap[];
/* media.c */
extern int mediaSetCDROM(char *str);

View File

@ -4,15 +4,16 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: system.c,v 1.17 1995/05/18 17:49:09 jkh Exp $
* $Id: system.c,v 1.18 1995/05/19 04:17:38 jkh Exp $
*
* Jordan Hubbard
*
* My contributions are in the public domain.
*
* Parts of this file are also blatently stolen from Poul-Henning Kamp's
* previous version of sysinstall, and as such fall under his "BEERWARE"
* license, so buy him a beer if you like it! Buy him a beer for me, too!
* previous version of sysinstall, and as such fall under his "BEERWARE license"
* so buy him a beer if you like it! Buy him a beer for me, too!
* Heck, get him completely drunk and send me pictures! :-)
*/
#include "sysinstall.h"
@ -46,6 +47,8 @@ systemWelcome(void)
void
systemInitialize(int argc, char **argv)
{
int i;
signal(SIGINT, SIG_IGN);
globalsInit();
@ -75,6 +78,9 @@ systemInitialize(int argc, char **argv)
setbuf(stderr, 0);
}
for(i = 0; i < 256; i++)
default_scrnmap[i] = i;
if (set_termcap() == -1) {
printf("Can't find terminal entry\n");
exit(-1);
@ -236,6 +242,8 @@ void
systemChangeTerminal(char *color, const u_char c_term[],
char *mono, const u_char m_term[])
{
extern void init_acs(void);
if (OnVTY) {
if (ColorDisplay) {
setenv("TERM", color, 1);
@ -258,6 +266,16 @@ systemChangeTerminal(char *color, const u_char c_term[],
}
}
void
systemChangeScreenmap(const u_char newmap[])
{
if (OnVTY) {
if (ioctl(0, PIO_SCRNMAP, newmap) < 0)
msgConfirm("Sorry! Unable to load the screenmap for %s",
getenv("LANG"));
}
}
/* Execute a system command, with varargs */
int
vsystem(char *fmt, ...)

View File

@ -29,6 +29,12 @@ BOOTS=${.CURDIR}/../../sys/i386/boot/biosboot/obj
BOOTS=${.CURDIR}/../../sys/i386/boot/biosboot
.endif
.if exists(${.CURDIR}/../../share/syscons/scrnmaps/obj)
MKSCRNMAP=${.CURDIR}/../../share/syscons/scrnmaps/obj/koi8-r2cp866.mk
.else
MKSCRNMAP=${.CURDIR}/../../share/syscons/scrnmaps/koi8-r2cp866.mk
.endif
makedevs.c: dev2c.sh Makefile rtermcap
rm -f makedevs.tmp
mkdir -p dev
@ -70,10 +76,14 @@ makedevs.c: dev2c.sh Makefile rtermcap
&& file2c 'const u_char font_cp850_8x16[] = {' '};' \
< cp850-8x16 >> makedevs.tmp
rm cp850-8x16
uudecode < ${.CURDIR}/../../share/syscons/fonts/koi8-r-8x16.fnt \
&& file2c 'const u_char font_koi8_r_8x16[] = {' '};' \
< koi8-r-8x16 >> makedevs.tmp
rm koi8-r-8x16
uudecode < ${.CURDIR}/../../share/syscons/fonts/cp866-8x16.fnt \
&& file2c 'const u_char font_cp866_8x16[] = {' '};' \
< cp866-8x16 >> makedevs.tmp
rm cp866-8x16
${MKSCRNMAP} koi8-r2cp866 \
&& file2c 'const u_char koi8_r2cp866[] = {' '};' \
< koi8-r2cp866 >> makedevs.tmp
rm koi8-r2cp866
mv makedevs.tmp makedevs.c
rtermcap: ${.CURDIR}/rtermcap.c

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: menus.c,v 1.15 1995/05/17 14:39:54 jkh Exp $
* $Id: menus.c,v 1.16 1995/05/18 09:02:00 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -64,6 +64,8 @@ option by pressing enter. If you'd like a shell, press ESC", /* prompt */
DMENU_DISPLAY_FILE, (void *)"usage.hlp", 0, 0 },
{ "Doc", "More detailed documentation on FreeBSD.", /* D */
DMENU_SUBMENU, (void *)&MenuDocumentation, 0, 0 },
{ "Language", "Set your preferred language.", /* L */
DMENU_SUBMENU, (void *)&MenuOptionsLanguage, 0, 0 },
{ "Options", "Select various options for this utility.", /* O */
DMENU_SUBMENU, (void *)&MenuOptions, 0, 0 },
{ "Proceed", "Go to the installation menu", /* P */
@ -133,7 +135,7 @@ to be in experimental status at this time.", /* prompt */
DMENU_CALL, (void *)lang_set_Japanese, 0, 0 },
{ "Norwegian", "Norwegian language and character set (ISO-8859-1)", /* N */
DMENU_CALL, (void *)lang_set_Norwegian, 0, 0 },
{ "Russian", "Russian language and character set (cp866-8x14)", /* R */
{ "Russian", "Russian language and character set (CP866)", /* R */
DMENU_CALL, (void *)lang_set_Russian, 0, 0 },
{ "Spanish", "Spanish language and character set (ISO-8859-1)", /* S */
DMENU_CALL, (void *)lang_set_Spanish, 0, 0 },
@ -267,16 +269,16 @@ method.",
"media.hlp",
{ { "CDROM", "Install from a FreeBSD CDROM",
DMENU_CALL, (void *)mediaSetCDROM, 0, 0 },
{ "Floppy", "Install from a floppy disk set",
DMENU_CALL, (void *)mediaSetFloppy, 0, 0 },
{ "DOS", "Install from a DOS partition",
DMENU_CALL, (void *)mediaSetDOS, 0, 0 },
{ "Tape", "Install from SCSI or QIC tape",
DMENU_CALL, (void *)mediaSetTape, 0, 0 },
{ "FTP", "Install from an Internet FTP server",
DMENU_CALL, (void *)mediaSetFTP, 0, 0 },
{ "File System", "Install from a UFS or NFS mounted distribution",
DMENU_CALL, (void *)mediaSetFS, 0, 0 },
{ "Floppy", "Install from a floppy disk set",
DMENU_CALL, (void *)mediaSetFloppy, 0, 0 },
{ "FTP", "Install from an Internet FTP server",
DMENU_CALL, (void *)mediaSetFTP, 0, 0 },
{ "Tape", "Install from SCSI or QIC tape",
DMENU_CALL, (void *)mediaSetTape, 0, 0 },
{ NULL } },
};
@ -290,19 +292,19 @@ type of system in question. If you would prefer to pick and choose\n\
the list of distributions yourself, simply select \"custom\".",
"Press F1 for more information on the various distributions",
"dist_types.hlp",
{ { "Developer", "Includes full sources, binaries and doc but no games.",
{ { "Developer", "Full sources, binaries and doc but no games [48MB]",
DMENU_CALL, (void *)distSetDeveloper, 0, 0 },
{ "X-Developer", "Same as above, but includes XFree86.",
{ "X-Developer", "Same as above, but includes XFree86 [73MB]",
DMENU_CALL, (void *)distSetXDeveloper, 0, 0 },
{ "User", "General user. Binaries and doc but no sources.",
{ "User", "Average user - binaries and doc but no sources [19MB]",
DMENU_CALL, (void *)distSetUser, 0, 0 },
{ "X-User", "Same as above, but includes XFree86.",
{ "X-User", "Same as above, but includes XFree86 [45MB]",
DMENU_CALL, (void *)distSetXUser, 0, 0 },
{ "Minimal", "The smallest configuration possible.",
{ "Minimal", "The smallest configuration possible [15MB]",
DMENU_CALL, (void *)distSetMinimum, 0, 0 },
{ "Everything", "The entire source and binary distribution.",
{ "Everything", "All sources, binaries and XFree86 binaries [80MB]",
DMENU_CALL, (void *)distSetEverything, 0, 0 },
{ "Custom", "Specify your own distribution set",
{ "Custom", "Specify your own distribution set [?]",
DMENU_SUBMENU, (void *)&MenuDistributions, 0, 0 },
{ NULL } },
};
@ -315,27 +317,29 @@ of the most generally useful distributions are already checked, and\n\
selecting OK at this stage will chose them as defaults.",
"Press F1 for a more complete description of these distributions.",
"distribution_types.hlp",
{ { "*bin", "Binary base distribution (required)",
{ { "*bin", "Binary base distribution (required) [15MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_BIN, 0 },
{ "commercial", "Commercial demos and shareware",
{ "commercial", "Commercial demos and shareware [10MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMMERCIAL, 0 },
{ "compat1x", "FreeBSD 1.x binary compatability package",
{ "compat1x", "FreeBSD 1.x binary compatability package [2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMPAT1X, 0 },
{ "DES", "DES encryption code and sources",
{ "compat20", "FreeBSD 2.0 binary compatability package [2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMPAT20, 0 },
{ "DES", "DES encryption code and sources [.3MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_DES, 0 },
{ "dict", "Spelling checker disctionary files",
{ "dict", "Spelling checker disctionary files [1.3MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_DICT, 0 },
{ "games", "Games and other amusements (non-commercial)",
{ "games", "Games and other amusements (non-commercial) [2.8MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_GAMES, 0 },
{ "info", "GNU info files",
{ "info", "GNU info files [1.2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_INFO, 0 },
{ "*man", "System manual pages - strongly recommended",
{ "*man", "System manual pages - strongly recommended [2.8MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_MANPAGES, 0 },
{ "proflibs", "Profiled versions of the libraries",
{ "proflibs", "Profiled versions of the libraries [.9MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_PROFLIBS, 0 },
{ "src", "Sources for everything but DES",
{ "src", "Sources for everything but DES [25MB]",
DMENU_CALL, (void *)distSetSrc, 0 },
{ "XFree86", "The XFree86 3.1.1L distribution",
{ "XFree86", "The XFree86 3.1.1L distribution [?]",
DMENU_SUBMENU, (void *)&MenuXF86, 0 },
{ NULL } },
};
@ -344,39 +348,38 @@ DMenu MenuSrcDistributions = {
DMENU_MULTIPLE_TYPE | DMENU_SELECTION_RETURNS,
"Select the sub-components of src you wish to install.",
"Please check off those portions of the FreeBSD source tree\n\
you wish to install. A brief description of each source\n\
hierarchy is contained in parenthesis below.",
you wish to install.",
"Press F1 for a more complete description of distributions.",
"distribution_types.hlp",
{ { "base", "Base src directory (top-level files in /usr/src)",
{ { "base", "top-level files in /usr/src [300K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_BASE, 0 },
{ "gnu", "/usr/src/gnu (user software from the GNU Project)",
{ "gnu", "/usr/src/gnu (software from the GNU Project) [42MB]]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_GNU, 0 },
{ "etc", "/usr/src/etc (miscellaneous system files)",
{ "etc", "/usr/src/etc (miscellaneous system files) [460K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_ETC, 0 },
{ "games", "/usr/src/games (games)",
{ "games", "/usr/src/games (diversions) [7.8MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_GAMES, 0 },
{ "include", "/usr/src/include (header files)",
{ "include", "/usr/src/include (header files) [467K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_INCLUDE, 0 },
{ "lib", "/usr/src/lib (system libraries)",
{ "lib", "/usr/src/lib (system libraries) [9.2MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LIB, 0 },
{ "libexec", "/usr/src/libexec (various system programs)",
{ "libexec", "/usr/src/libexec (system programs) [1.2MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LIBEXEC, 0 },
{ "lkm", "/usr/src/lkm (Loadable Kernel Modules)",
{ "lkm", "/usr/src/lkm (Loadable Kernel Modules) [193K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LKM, 0 },
{ "release", "/usr/src/release (release-generation tools)",
{ "release", "/usr/src/release (release-generation tools) [533K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_RELEASE, 0 },
{ "sbin", "/usr/src/sbin (system binaries)",
{ "sbin", "/usr/src/sbin (system binaries) [1.3MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SBIN, 0 },
{ "share", "/usr/src/share (documents and shared files)",
{ "share", "/usr/src/share (documents and shared files) [10MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SHARE, 0 },
{ "sys", "/usr/src/sys (FreeBSD kernel)",
{ "sys", "/usr/src/sys (FreeBSD kernel) [13MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SYS, 0 },
{ "ubin", "/usr/src/usr.bin (user binaries)",
{ "ubin", "/usr/src/usr.bin (user binaries) [13MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_UBIN, 0 },
{ "usbin", "/usr/src/usr.sbin (aux system binaries)",
{ "usbin", "/usr/src/usr.sbin (aux system binaries) [14MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_USBIN, 0 },
{ "XFree86", "XFree86 3.1.1L source + contrib distribution",
{ "XFree86", "XFree86 3.1.1L source + contrib distribution [200MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_XF86, 0 },
{ NULL } },
};
@ -428,13 +431,13 @@ Those deemed most generally useful are already checked off for you.",
NULL,
{ { "*bin", "X client applications and shared libs [4MB].",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_BIN, 0 },
{ "*lib", "Data files needed at runtime [0.6MB]",
{ "*lib", "Data files needed at runtime [600K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_LIB, 0 },
{ "xicf", "Customizable xinit runtime configuration file [0.1MB]",
{ "xicf", "Customizable xinit runtime configuration file [100K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_XINIT, 0 },
{ "xdcf", "Customizable xdm runtime configuration file [0.1MB]",
{ "xdcf", "Customizable xdm runtime configuration file [100K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_XDMCF, 0 },
{ "doc", "READMEs and XFree86 specific man pages [0.5MB]",
{ "doc", "READMEs and XFree86 specific man pages [500K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_DOC, 0 },
{ "*man", "Man pages (except XFree86 specific ones) [1.2MB]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_MAN, 0 },
@ -442,7 +445,7 @@ Those deemed most generally useful are already checked off for you.",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_PROG, 0 },
{ "link", "X Server reconfiguration kit [7.8MB]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_LINK, 0 },
{ "pex", "PEX fonts and libs needed by PEX apps [0.5MB]",
{ "pex", "PEX fonts and libs needed by PEX apps [500K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_PEX, 0 },
{ NULL } },
};
@ -477,27 +480,27 @@ it is recommended that try the SVGA or VGA16 servers (the VGA16 and\n\
Mono servers are also particularly well-suited to most LCD displays).",
"xservers.hlp",
"Press F1 for more information on the various X server types",
{ { "*SVGA", "Standard VGA or Super VGA display",
{ { "*SVGA", "Standard VGA or Super VGA display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_SVGA, 0 },
{ "VGA16", "Standard 16 color VGA display",
{ "VGA16", "Standard 16 color VGA display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_VGA16, 0 },
{ "Mono", "Standard Monochrome display",
{ "Mono", "Standard Monochrome display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MONO, 0 },
{ "8514", "8-bit (256 color) IBM 8514 or compatible card.",
{ "8514", "8-bit (256 color) IBM 8514 or compatible card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_8514, 0 },
{ "AGX", "8-bit AGX card",
{ "AGX", "8-bit AGX card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_AGX, 0 },
{ "Mch3", "8 and 16-bit (65K color) for ATI Mach32 card.",
{ "Mch3", "8 and 16-bit (65K color) for ATI Mach32 card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MACH32, 0 },
{ "Mch8", "8-bit ATI Mach8 card.",
{ "Mch8", "8-bit ATI Mach8 card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MACH8, 0 },
{ "P9K", "8, 16, and 24-bit color for Weitek P9000 based boards",
{ "P9K", "8, 16, and 24-bit color for Weitek P9000 based boards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_P9000, 0 },
{ "S3", "8, 16 and 24-bit color for S3 based boards",
{ "S3", "8, 16 and 24-bit color for S3 based boards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_S3, 0 },
{ "W32", "8-bit Color for ET4000/W32, /W32i and /W32p cards.",
{ "W32", "8-bit Color for ET4000/W32, /W32i and /W32p cards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_W32, 0 },
{ "nest", "A nested server for testing purposes",
{ "nest", "A nested server for testing purposes [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_NEST, 0 },
{ NULL } },
};
@ -529,8 +532,6 @@ When you're done setting options, please select Cancel.",
NULL,
{ { "Ftp Options", "Ftp options menu",
DMENU_SUBMENU, (void *)&MenuOptionsFTP, 0, 0 },
{ "Language", "Select your preferred language",
DMENU_SUBMENU, (void *)&MenuOptionsLanguage, 0, 0 },
{ "NFS Secure", "NFS server talks only on a secure port",
DMENU_SET_VARIABLE, (void *)"nfsServerSecure=yes", 0, 0 },
{ "NFS Slow", "User is using a slow PC or ethernet card",
@ -549,13 +550,13 @@ DMenu MenuOptionsFTP = {
to deal with it? You have several choices:",
NULL,
NULL,
{ { "Ftp Retry", "On transfer failure, retry same host",
{ { "FTP Retry", "On transfer failure, retry same host",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=loop", 0, 0 },
{ "Ftp Reselect", "On transfer failure, ask for another host",
{ "FTP Reselect", "On transfer failure, ask for another host",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=reselect", 0, 0 },
{ "Ftp Abort", "On transfer failure, abort installation",
{ "FTP Abort", "On transfer failure, abort installation",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=abort", 0, 0 },
{ "Ftp passive", "Use \"passive mode\" for firewalled ftp",
{ "FTP passive", "Use \"passive mode\" for firewalled FTP",
DMENU_SET_VARIABLE, (void *)"ftpPassive=yes", 0, 0 },
{ NULL } },
};

View File

@ -4,7 +4,7 @@
* This is probably the last attempt in the `sysinstall' line, the next
* generation being slated to essentially a complete rewrite.
*
* $Id: sysinstall.h,v 1.18 1995/05/17 14:39:56 jkh Exp $
* $Id: sysinstall.h,v 1.19 1995/05/18 15:29:45 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -281,7 +281,9 @@ extern const char termcap_cons25l1[];
extern const char termcap_cons25l1_m[];
extern const u_char font_iso_8x16[];
extern const u_char font_cp850_8x16[];
extern const u_char font_koi8_r_8x16[];
extern const u_char font_cp866_8x16[];
extern const u_char koi8_r2cp866[];
extern u_char default_scrnmap[];
/* media.c */
extern int mediaSetCDROM(char *str);

View File

@ -4,15 +4,16 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: system.c,v 1.17 1995/05/18 17:49:09 jkh Exp $
* $Id: system.c,v 1.18 1995/05/19 04:17:38 jkh Exp $
*
* Jordan Hubbard
*
* My contributions are in the public domain.
*
* Parts of this file are also blatently stolen from Poul-Henning Kamp's
* previous version of sysinstall, and as such fall under his "BEERWARE"
* license, so buy him a beer if you like it! Buy him a beer for me, too!
* previous version of sysinstall, and as such fall under his "BEERWARE license"
* so buy him a beer if you like it! Buy him a beer for me, too!
* Heck, get him completely drunk and send me pictures! :-)
*/
#include "sysinstall.h"
@ -46,6 +47,8 @@ systemWelcome(void)
void
systemInitialize(int argc, char **argv)
{
int i;
signal(SIGINT, SIG_IGN);
globalsInit();
@ -75,6 +78,9 @@ systemInitialize(int argc, char **argv)
setbuf(stderr, 0);
}
for(i = 0; i < 256; i++)
default_scrnmap[i] = i;
if (set_termcap() == -1) {
printf("Can't find terminal entry\n");
exit(-1);
@ -236,6 +242,8 @@ void
systemChangeTerminal(char *color, const u_char c_term[],
char *mono, const u_char m_term[])
{
extern void init_acs(void);
if (OnVTY) {
if (ColorDisplay) {
setenv("TERM", color, 1);
@ -258,6 +266,16 @@ systemChangeTerminal(char *color, const u_char c_term[],
}
}
void
systemChangeScreenmap(const u_char newmap[])
{
if (OnVTY) {
if (ioctl(0, PIO_SCRNMAP, newmap) < 0)
msgConfirm("Sorry! Unable to load the screenmap for %s",
getenv("LANG"));
}
}
/* Execute a system command, with varargs */
int
vsystem(char *fmt, ...)

View File

@ -29,6 +29,12 @@ BOOTS=${.CURDIR}/../../sys/i386/boot/biosboot/obj
BOOTS=${.CURDIR}/../../sys/i386/boot/biosboot
.endif
.if exists(${.CURDIR}/../../share/syscons/scrnmaps/obj)
MKSCRNMAP=${.CURDIR}/../../share/syscons/scrnmaps/obj/koi8-r2cp866.mk
.else
MKSCRNMAP=${.CURDIR}/../../share/syscons/scrnmaps/koi8-r2cp866.mk
.endif
makedevs.c: dev2c.sh Makefile rtermcap
rm -f makedevs.tmp
mkdir -p dev
@ -70,10 +76,14 @@ makedevs.c: dev2c.sh Makefile rtermcap
&& file2c 'const u_char font_cp850_8x16[] = {' '};' \
< cp850-8x16 >> makedevs.tmp
rm cp850-8x16
uudecode < ${.CURDIR}/../../share/syscons/fonts/koi8-r-8x16.fnt \
&& file2c 'const u_char font_koi8_r_8x16[] = {' '};' \
< koi8-r-8x16 >> makedevs.tmp
rm koi8-r-8x16
uudecode < ${.CURDIR}/../../share/syscons/fonts/cp866-8x16.fnt \
&& file2c 'const u_char font_cp866_8x16[] = {' '};' \
< cp866-8x16 >> makedevs.tmp
rm cp866-8x16
${MKSCRNMAP} koi8-r2cp866 \
&& file2c 'const u_char koi8_r2cp866[] = {' '};' \
< koi8-r2cp866 >> makedevs.tmp
rm koi8-r2cp866
mv makedevs.tmp makedevs.c
rtermcap: ${.CURDIR}/rtermcap.c

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: dist.c,v 1.6 1995/05/17 14:39:40 jkh Exp $
* $Id: dist.c,v 1.7 1995/05/18 09:01:52 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -138,6 +138,7 @@ static Distribution DistTable[] = {
{ "src/", &Dists, DIST_SRC, SrcDistTable },
{ "des", &Dists, DIST_DES, NULL },
{ "compat1x", &Dists, DIST_COMPAT1X, NULL },
{ "compat20", &Dists, DIST_COMPAT20, NULL },
{ "xf86311/", &Dists, DIST_XF86, XF86DistTable },
{ NULL },
};

View File

@ -11,8 +11,9 @@
#define DIST_DES 0x0040
#define DIST_INFO 0x0080
#define DIST_COMPAT1X 0x0100
#define DIST_XF86 0x0200
#define DIST_COMMERCIAL 0x0400
#define DIST_COMPAT20 0x0200
#define DIST_XF86 0x0400
#define DIST_COMMERCIAL 0x0800
#define DIST_ALL 0x0FFF
/* Canned distribution sets */
@ -23,7 +24,7 @@
(_DIST_DEVELOPER | DIST_XF86)
#define _DIST_USER \
(DIST_BIN | DIST_MANPAGES | DIST_DICT | DIST_COMPAT1X)
(DIST_BIN | DIST_MANPAGES | DIST_DICT | DIST_COMPAT1X | DIST_COMPAT2X)
#define _DIST_XUSER \
(_DIST_USER | DIST_XF86)

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: menus.c,v 1.15 1995/05/17 14:39:54 jkh Exp $
* $Id: menus.c,v 1.16 1995/05/18 09:02:00 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -64,6 +64,8 @@ option by pressing enter. If you'd like a shell, press ESC", /* prompt */
DMENU_DISPLAY_FILE, (void *)"usage.hlp", 0, 0 },
{ "Doc", "More detailed documentation on FreeBSD.", /* D */
DMENU_SUBMENU, (void *)&MenuDocumentation, 0, 0 },
{ "Language", "Set your preferred language.", /* L */
DMENU_SUBMENU, (void *)&MenuOptionsLanguage, 0, 0 },
{ "Options", "Select various options for this utility.", /* O */
DMENU_SUBMENU, (void *)&MenuOptions, 0, 0 },
{ "Proceed", "Go to the installation menu", /* P */
@ -133,7 +135,7 @@ to be in experimental status at this time.", /* prompt */
DMENU_CALL, (void *)lang_set_Japanese, 0, 0 },
{ "Norwegian", "Norwegian language and character set (ISO-8859-1)", /* N */
DMENU_CALL, (void *)lang_set_Norwegian, 0, 0 },
{ "Russian", "Russian language and character set (cp866-8x14)", /* R */
{ "Russian", "Russian language and character set (CP866)", /* R */
DMENU_CALL, (void *)lang_set_Russian, 0, 0 },
{ "Spanish", "Spanish language and character set (ISO-8859-1)", /* S */
DMENU_CALL, (void *)lang_set_Spanish, 0, 0 },
@ -267,16 +269,16 @@ method.",
"media.hlp",
{ { "CDROM", "Install from a FreeBSD CDROM",
DMENU_CALL, (void *)mediaSetCDROM, 0, 0 },
{ "Floppy", "Install from a floppy disk set",
DMENU_CALL, (void *)mediaSetFloppy, 0, 0 },
{ "DOS", "Install from a DOS partition",
DMENU_CALL, (void *)mediaSetDOS, 0, 0 },
{ "Tape", "Install from SCSI or QIC tape",
DMENU_CALL, (void *)mediaSetTape, 0, 0 },
{ "FTP", "Install from an Internet FTP server",
DMENU_CALL, (void *)mediaSetFTP, 0, 0 },
{ "File System", "Install from a UFS or NFS mounted distribution",
DMENU_CALL, (void *)mediaSetFS, 0, 0 },
{ "Floppy", "Install from a floppy disk set",
DMENU_CALL, (void *)mediaSetFloppy, 0, 0 },
{ "FTP", "Install from an Internet FTP server",
DMENU_CALL, (void *)mediaSetFTP, 0, 0 },
{ "Tape", "Install from SCSI or QIC tape",
DMENU_CALL, (void *)mediaSetTape, 0, 0 },
{ NULL } },
};
@ -290,19 +292,19 @@ type of system in question. If you would prefer to pick and choose\n\
the list of distributions yourself, simply select \"custom\".",
"Press F1 for more information on the various distributions",
"dist_types.hlp",
{ { "Developer", "Includes full sources, binaries and doc but no games.",
{ { "Developer", "Full sources, binaries and doc but no games [48MB]",
DMENU_CALL, (void *)distSetDeveloper, 0, 0 },
{ "X-Developer", "Same as above, but includes XFree86.",
{ "X-Developer", "Same as above, but includes XFree86 [73MB]",
DMENU_CALL, (void *)distSetXDeveloper, 0, 0 },
{ "User", "General user. Binaries and doc but no sources.",
{ "User", "Average user - binaries and doc but no sources [19MB]",
DMENU_CALL, (void *)distSetUser, 0, 0 },
{ "X-User", "Same as above, but includes XFree86.",
{ "X-User", "Same as above, but includes XFree86 [45MB]",
DMENU_CALL, (void *)distSetXUser, 0, 0 },
{ "Minimal", "The smallest configuration possible.",
{ "Minimal", "The smallest configuration possible [15MB]",
DMENU_CALL, (void *)distSetMinimum, 0, 0 },
{ "Everything", "The entire source and binary distribution.",
{ "Everything", "All sources, binaries and XFree86 binaries [80MB]",
DMENU_CALL, (void *)distSetEverything, 0, 0 },
{ "Custom", "Specify your own distribution set",
{ "Custom", "Specify your own distribution set [?]",
DMENU_SUBMENU, (void *)&MenuDistributions, 0, 0 },
{ NULL } },
};
@ -315,27 +317,29 @@ of the most generally useful distributions are already checked, and\n\
selecting OK at this stage will chose them as defaults.",
"Press F1 for a more complete description of these distributions.",
"distribution_types.hlp",
{ { "*bin", "Binary base distribution (required)",
{ { "*bin", "Binary base distribution (required) [15MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_BIN, 0 },
{ "commercial", "Commercial demos and shareware",
{ "commercial", "Commercial demos and shareware [10MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMMERCIAL, 0 },
{ "compat1x", "FreeBSD 1.x binary compatability package",
{ "compat1x", "FreeBSD 1.x binary compatability package [2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMPAT1X, 0 },
{ "DES", "DES encryption code and sources",
{ "compat20", "FreeBSD 2.0 binary compatability package [2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_COMPAT20, 0 },
{ "DES", "DES encryption code and sources [.3MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_DES, 0 },
{ "dict", "Spelling checker disctionary files",
{ "dict", "Spelling checker disctionary files [1.3MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_DICT, 0 },
{ "games", "Games and other amusements (non-commercial)",
{ "games", "Games and other amusements (non-commercial) [2.8MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_GAMES, 0 },
{ "info", "GNU info files",
{ "info", "GNU info files [1.2MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_INFO, 0 },
{ "*man", "System manual pages - strongly recommended",
{ "*man", "System manual pages - strongly recommended [2.8MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_MANPAGES, 0 },
{ "proflibs", "Profiled versions of the libraries",
{ "proflibs", "Profiled versions of the libraries [.9MB]",
DMENU_SET_FLAG, (void *)&Dists, DIST_PROFLIBS, 0 },
{ "src", "Sources for everything but DES",
{ "src", "Sources for everything but DES [25MB]",
DMENU_CALL, (void *)distSetSrc, 0 },
{ "XFree86", "The XFree86 3.1.1L distribution",
{ "XFree86", "The XFree86 3.1.1L distribution [?]",
DMENU_SUBMENU, (void *)&MenuXF86, 0 },
{ NULL } },
};
@ -344,39 +348,38 @@ DMenu MenuSrcDistributions = {
DMENU_MULTIPLE_TYPE | DMENU_SELECTION_RETURNS,
"Select the sub-components of src you wish to install.",
"Please check off those portions of the FreeBSD source tree\n\
you wish to install. A brief description of each source\n\
hierarchy is contained in parenthesis below.",
you wish to install.",
"Press F1 for a more complete description of distributions.",
"distribution_types.hlp",
{ { "base", "Base src directory (top-level files in /usr/src)",
{ { "base", "top-level files in /usr/src [300K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_BASE, 0 },
{ "gnu", "/usr/src/gnu (user software from the GNU Project)",
{ "gnu", "/usr/src/gnu (software from the GNU Project) [42MB]]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_GNU, 0 },
{ "etc", "/usr/src/etc (miscellaneous system files)",
{ "etc", "/usr/src/etc (miscellaneous system files) [460K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_ETC, 0 },
{ "games", "/usr/src/games (games)",
{ "games", "/usr/src/games (diversions) [7.8MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_GAMES, 0 },
{ "include", "/usr/src/include (header files)",
{ "include", "/usr/src/include (header files) [467K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_INCLUDE, 0 },
{ "lib", "/usr/src/lib (system libraries)",
{ "lib", "/usr/src/lib (system libraries) [9.2MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LIB, 0 },
{ "libexec", "/usr/src/libexec (various system programs)",
{ "libexec", "/usr/src/libexec (system programs) [1.2MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LIBEXEC, 0 },
{ "lkm", "/usr/src/lkm (Loadable Kernel Modules)",
{ "lkm", "/usr/src/lkm (Loadable Kernel Modules) [193K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_LKM, 0 },
{ "release", "/usr/src/release (release-generation tools)",
{ "release", "/usr/src/release (release-generation tools) [533K]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_RELEASE, 0 },
{ "sbin", "/usr/src/sbin (system binaries)",
{ "sbin", "/usr/src/sbin (system binaries) [1.3MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SBIN, 0 },
{ "share", "/usr/src/share (documents and shared files)",
{ "share", "/usr/src/share (documents and shared files) [10MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SHARE, 0 },
{ "sys", "/usr/src/sys (FreeBSD kernel)",
{ "sys", "/usr/src/sys (FreeBSD kernel) [13MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_SYS, 0 },
{ "ubin", "/usr/src/usr.bin (user binaries)",
{ "ubin", "/usr/src/usr.bin (user binaries) [13MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_UBIN, 0 },
{ "usbin", "/usr/src/usr.sbin (aux system binaries)",
{ "usbin", "/usr/src/usr.sbin (aux system binaries) [14MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_USBIN, 0 },
{ "XFree86", "XFree86 3.1.1L source + contrib distribution",
{ "XFree86", "XFree86 3.1.1L source + contrib distribution [200MB]",
DMENU_SET_FLAG, (void *)&SrcDists, DIST_SRC_XF86, 0 },
{ NULL } },
};
@ -428,13 +431,13 @@ Those deemed most generally useful are already checked off for you.",
NULL,
{ { "*bin", "X client applications and shared libs [4MB].",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_BIN, 0 },
{ "*lib", "Data files needed at runtime [0.6MB]",
{ "*lib", "Data files needed at runtime [600K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_LIB, 0 },
{ "xicf", "Customizable xinit runtime configuration file [0.1MB]",
{ "xicf", "Customizable xinit runtime configuration file [100K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_XINIT, 0 },
{ "xdcf", "Customizable xdm runtime configuration file [0.1MB]",
{ "xdcf", "Customizable xdm runtime configuration file [100K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_XDMCF, 0 },
{ "doc", "READMEs and XFree86 specific man pages [0.5MB]",
{ "doc", "READMEs and XFree86 specific man pages [500K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_DOC, 0 },
{ "*man", "Man pages (except XFree86 specific ones) [1.2MB]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_MAN, 0 },
@ -442,7 +445,7 @@ Those deemed most generally useful are already checked off for you.",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_PROG, 0 },
{ "link", "X Server reconfiguration kit [7.8MB]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_LINK, 0 },
{ "pex", "PEX fonts and libs needed by PEX apps [0.5MB]",
{ "pex", "PEX fonts and libs needed by PEX apps [500K]",
DMENU_SET_FLAG, (void *)&XF86Dists, DIST_XF86_PEX, 0 },
{ NULL } },
};
@ -477,27 +480,27 @@ it is recommended that try the SVGA or VGA16 servers (the VGA16 and\n\
Mono servers are also particularly well-suited to most LCD displays).",
"xservers.hlp",
"Press F1 for more information on the various X server types",
{ { "*SVGA", "Standard VGA or Super VGA display",
{ { "*SVGA", "Standard VGA or Super VGA display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_SVGA, 0 },
{ "VGA16", "Standard 16 color VGA display",
{ "VGA16", "Standard 16 color VGA display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_VGA16, 0 },
{ "Mono", "Standard Monochrome display",
{ "Mono", "Standard Monochrome display [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MONO, 0 },
{ "8514", "8-bit (256 color) IBM 8514 or compatible card.",
{ "8514", "8-bit (256 color) IBM 8514 or compatible card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_8514, 0 },
{ "AGX", "8-bit AGX card",
{ "AGX", "8-bit AGX card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_AGX, 0 },
{ "Mch3", "8 and 16-bit (65K color) for ATI Mach32 card.",
{ "Mch3", "8 and 16-bit (65K color) for ATI Mach32 card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MACH32, 0 },
{ "Mch8", "8-bit ATI Mach8 card.",
{ "Mch8", "8-bit ATI Mach8 card [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_MACH8, 0 },
{ "P9K", "8, 16, and 24-bit color for Weitek P9000 based boards",
{ "P9K", "8, 16, and 24-bit color for Weitek P9000 based boards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_P9000, 0 },
{ "S3", "8, 16 and 24-bit color for S3 based boards",
{ "S3", "8, 16 and 24-bit color for S3 based boards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_S3, 0 },
{ "W32", "8-bit Color for ET4000/W32, /W32i and /W32p cards.",
{ "W32", "8-bit Color for ET4000/W32, /W32i and /W32p cards [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_W32, 0 },
{ "nest", "A nested server for testing purposes",
{ "nest", "A nested server for testing purposes [1MB]",
DMENU_SET_FLAG, (void *)&XF86ServerDists, DIST_XF86_SERVER_NEST, 0 },
{ NULL } },
};
@ -529,8 +532,6 @@ When you're done setting options, please select Cancel.",
NULL,
{ { "Ftp Options", "Ftp options menu",
DMENU_SUBMENU, (void *)&MenuOptionsFTP, 0, 0 },
{ "Language", "Select your preferred language",
DMENU_SUBMENU, (void *)&MenuOptionsLanguage, 0, 0 },
{ "NFS Secure", "NFS server talks only on a secure port",
DMENU_SET_VARIABLE, (void *)"nfsServerSecure=yes", 0, 0 },
{ "NFS Slow", "User is using a slow PC or ethernet card",
@ -549,13 +550,13 @@ DMenu MenuOptionsFTP = {
to deal with it? You have several choices:",
NULL,
NULL,
{ { "Ftp Retry", "On transfer failure, retry same host",
{ { "FTP Retry", "On transfer failure, retry same host",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=loop", 0, 0 },
{ "Ftp Reselect", "On transfer failure, ask for another host",
{ "FTP Reselect", "On transfer failure, ask for another host",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=reselect", 0, 0 },
{ "Ftp Abort", "On transfer failure, abort installation",
{ "FTP Abort", "On transfer failure, abort installation",
DMENU_SET_VARIABLE, (void *)"ftpRetryType=abort", 0, 0 },
{ "Ftp passive", "Use \"passive mode\" for firewalled ftp",
{ "FTP passive", "Use \"passive mode\" for firewalled FTP",
DMENU_SET_VARIABLE, (void *)"ftpPassive=yes", 0, 0 },
{ NULL } },
};

View File

@ -4,7 +4,7 @@
* This is probably the last attempt in the `sysinstall' line, the next
* generation being slated to essentially a complete rewrite.
*
* $Id: sysinstall.h,v 1.18 1995/05/17 14:39:56 jkh Exp $
* $Id: sysinstall.h,v 1.19 1995/05/18 15:29:45 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -281,7 +281,9 @@ extern const char termcap_cons25l1[];
extern const char termcap_cons25l1_m[];
extern const u_char font_iso_8x16[];
extern const u_char font_cp850_8x16[];
extern const u_char font_koi8_r_8x16[];
extern const u_char font_cp866_8x16[];
extern const u_char koi8_r2cp866[];
extern u_char default_scrnmap[];
/* media.c */
extern int mediaSetCDROM(char *str);

View File

@ -4,15 +4,16 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: system.c,v 1.17 1995/05/18 17:49:09 jkh Exp $
* $Id: system.c,v 1.18 1995/05/19 04:17:38 jkh Exp $
*
* Jordan Hubbard
*
* My contributions are in the public domain.
*
* Parts of this file are also blatently stolen from Poul-Henning Kamp's
* previous version of sysinstall, and as such fall under his "BEERWARE"
* license, so buy him a beer if you like it! Buy him a beer for me, too!
* previous version of sysinstall, and as such fall under his "BEERWARE license"
* so buy him a beer if you like it! Buy him a beer for me, too!
* Heck, get him completely drunk and send me pictures! :-)
*/
#include "sysinstall.h"
@ -46,6 +47,8 @@ systemWelcome(void)
void
systemInitialize(int argc, char **argv)
{
int i;
signal(SIGINT, SIG_IGN);
globalsInit();
@ -75,6 +78,9 @@ systemInitialize(int argc, char **argv)
setbuf(stderr, 0);
}
for(i = 0; i < 256; i++)
default_scrnmap[i] = i;
if (set_termcap() == -1) {
printf("Can't find terminal entry\n");
exit(-1);
@ -236,6 +242,8 @@ void
systemChangeTerminal(char *color, const u_char c_term[],
char *mono, const u_char m_term[])
{
extern void init_acs(void);
if (OnVTY) {
if (ColorDisplay) {
setenv("TERM", color, 1);
@ -258,6 +266,16 @@ systemChangeTerminal(char *color, const u_char c_term[],
}
}
void
systemChangeScreenmap(const u_char newmap[])
{
if (OnVTY) {
if (ioctl(0, PIO_SCRNMAP, newmap) < 0)
msgConfirm("Sorry! Unable to load the screenmap for %s",
getenv("LANG"));
}
}
/* Execute a system command, with varargs */
int
vsystem(char *fmt, ...)