/* $NetBSD: menus.mi.en,v 1.62 2002/10/16 08:04:26 itojun Exp $ */ /* * Copyright 1997 Piermont Information Systems Inc. * All rights reserved. * * Written by Philip A. Nelson for Piermont Information Systems Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed for the NetBSD Project by * Piermont Information Systems Inc. * 4. The name of Piermont Information Systems Inc. may not be used to endorse * or promote products derived from this software without specific prior * written permission. * * THIS SOFTWARE IS PROVIDED BY PIERMONT INFORMATION SYSTEMS INC. ``AS IS'' * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL PIERMONT INFORMATION SYSTEMS INC. BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * */ /* * Menu system definitions -- machine independent * * Some menus may be called directly in the code rather than via the * menu system. * * This file must be first in the sed command line. * */ { #include #include #include #include "defs.h" #include "md.h" #include "msg_defs.h" #include "menu_defs.h" } default y=12, no exit, scrollable; allow dynamic menus; menu netbsd, title "NetBSD-@@VERSION@@ Install System", exit, exitstring "Exit Install System"; display action { toplevel(); }; option "Install NetBSD to hard disk", action { do_install(); }; option "Upgrade NetBSD on a hard disk", action { do_upgrade(); }; option "Re-install sets or install additional sets", action { do_reinstall_sets(); }; option "Reboot the computer", exit, action (endwin) { system("/sbin/reboot -q"); }; option "Utility menu", sub menu utility; menu utility, title "NetBSD-@@VERSION@@ Utilities", exit; option "Run /bin/sh", action (endwin) { system("/bin/sh"); }; /* option "test", action { run_prog(RUN_DISPLAY, NULL, "/bin/pwd"); }; */ option "Set timezone", action { set_timezone(); }; option "Configure network", action { extern int network_up; network_up = 0; config_network(); }; /* option "Partition a disk"; XXX add later. */ option "Logging functions", action { do_logging(); }; option "Halt the system", exit, action (endwin) { system("/sbin/halt -q"); }; menu yesno, title "yes or no?"; option "Yes", exit, action {yesno = 1;}; option "No", exit, action {yesno = 0;}; menu noyes, title "yes or no?"; option "No", exit, action {yesno = 0;}; option "Yes", exit, action {yesno = 1;}; menu ok, title "Hit enter to continue"; option "ok", exit; menu layout, title "Choose your installation"; option "Standard", exit, action { layoutkind = 1; md_set_no_x(); }; option "Standard with X", exit, action { layoutkind = 2; }; option "Custom", exit, action { layoutkind = 3; }; option "Use Existing", exit, action { layoutkind = 4; }; menu layoutparts, exit, title "Choose file systems"; display action { show_cur_filesystems (); }; option "swap", action { layout_swap = (layout_swap & 1) - 1; }; option "/usr", action { layout_usr = (layout_usr & 1) - 1; }; option "/var", action { layout_var = (layout_var & 1) - 1; }; option "/home", action { layout_home = (layout_home & 1) - 1; }; option "/tmp (mfs)", action { layout_tmp = (layout_tmp & 1) - 1; }; menu sizechoice, title "Choose your size specifier"; option "Megabytes", exit, action { sizemult = MEG / sectorsize; multname = msg_string(MSG_megname); }; option "Cylinders", exit, action { sizemult = current_cylsize; multname = msg_string(MSG_cylname); }; option "Sectors", exit, action { sizemult = 1; multname = msg_string(MSG_secname); }; menu fspartok, title "Partitions ok?", y=15; display action { msg_display(MSG_fspart, multname); disp_cur_fspart(-1, 0); }; option "Change partitions", sub menu editfsparts; option "Partitions are ok", exit; menu edfspart, title "Change what?", exit, y=14; display action { msg_display (MSG_edfspart, 'a'+editpart); disp_cur_fspart(editpart, 1); }; option "FS kind", action { if (check_lfs_progs()) process_menu (MENU_selfskindlfs); else process_menu (MENU_selfskind); }; option "Start/size", action { int start, size; msg_display_add(MSG_defaultunit, multname); start = getpartoff(MSG_start, bsdlabel[editpart].pi_offset); size = getpartsize(MSG_size, start, bsdlabel[editpart].pi_size); if (size == -1) size = dlsize - start; bsdlabel[editpart].pi_offset = start; bsdlabel[editpart].pi_size = size; }; option "Bsize/Fsize", action { char buf[40]; int i; if (!PI_ISBSDFS(&bsdlabel[editpart])) { msg_display (MSG_not42bsd, 'a'+editpart); process_menu (MENU_ok); return FALSE; } snprintf(buf, sizeof(buf), "%d", bsdlabel[editpart].pi_bsize); msg_prompt_add (MSG_bsize, buf, buf, 40); i = atoi(buf); bsdlabel[editpart].pi_bsize = i; snprintf(buf, sizeof(buf), "%d", bsdlabel[editpart].pi_fsize); msg_prompt_add (MSG_fsize, buf, buf, 40); i = atoi(buf); bsdlabel[editpart].pi_fsize = i; }; option "Mount point", action { if (PI_ISBSDFS(&bsdlabel[editpart]) || bsdlabel[editpart].pi_fstype == FS_MSDOS) { msg_prompt_add (MSG_mountpoint, fsmount[editpart], fsmount[editpart], 20); if (strcmp(fsmount[editpart], "none") == 0) fsmount[editpart][0] = '\0'; } else { msg_display (MSG_nomount, 'a'+editpart); process_menu (MENU_ok); } }; option "Preserve", action { preservemount[editpart] = 1 - preservemount[editpart]; }; menu selfskind, title "Select the type", y=15; option "4.2BSD", exit, action { bsdlabel[editpart].pi_fstype = FS_BSDFFS; bsdlabel[editpart].pi_bsize = 8192; bsdlabel[editpart].pi_fsize = 1024; }; option "unused", exit, action { bsdlabel[editpart].pi_fstype = FS_UNUSED; bsdlabel[editpart].pi_bsize = 0; bsdlabel[editpart].pi_fsize = 0; }; option "swap", exit, action { bsdlabel[editpart].pi_fstype = FS_SWAP; bsdlabel[editpart].pi_bsize = 0; bsdlabel[editpart].pi_fsize = 0; }; option "msdos", exit, action { bsdlabel[editpart].pi_fstype = FS_MSDOS; bsdlabel[editpart].pi_bsize = 0; bsdlabel[editpart].pi_fsize = 0; }; menu selfskindlfs, title "Select the type", y=15; option "4.2BSD", exit, action { bsdlabel[editpart].pi_fstype = FS_BSDFFS; bsdlabel[editpart].pi_bsize = 8192; bsdlabel[editpart].pi_fsize = 1024; }; option "unused", exit, action { bsdlabel[editpart].pi_fstype = FS_UNUSED; bsdlabel[editpart].pi_bsize = 0; bsdlabel[editpart].pi_fsize = 0; }; option "swap", exit, action { bsdlabel[editpart].pi_fstype = FS_SWAP; bsdlabel[editpart].pi_bsize = 0; bsdlabel[editpart].pi_fsize = 0; }; option "msdos", exit, action { bsdlabel[editpart].pi_fstype = FS_MSDOS; bsdlabel[editpart].pi_bsize = 0; bsdlabel[editpart].pi_fsize = 0; }; option "4.4LFS", exit, action { bsdlabel[editpart].pi_fstype = FS_BSDLFS; bsdlabel[editpart].pi_bsize = 8192; bsdlabel[editpart].pi_fsize = 1024; }; menu distmedium, title "Select medium"; display action { msg_display (MSG_distmedium); nodist = 0; }; option "ftp", action { got_dist = get_via_ftp(); }, exit; option "nfs", action { got_dist = get_via_nfs(); }, exit; option "cdrom", action { got_dist = get_via_cdrom(); }, exit; option "floppy", action { got_dist = get_via_floppy(); }, exit; option "unmounted fs", action { got_dist = get_via_localfs(); }, exit; option "local dir", action { got_dist = get_via_localdir(); }, exit; option "none", action { nodist = 1; }, exit; menu distset, title "Select your distribution"; display action { msg_display (MSG_distset); }; option "Full installation", exit; option "Custom installation", next menu md_distcustom; menu ftpsource, title "Change"; display action { msg_clear(); msg_table_add (MSG_ftpsource, ftp_host, ftp_dir, ftp_user, strcmp(ftp_user, "ftp") == 0 ? ftp_pass : strlen(ftp_pass) != 0 ? "** hidden **" : "", ftp_proxy); }; option "Host", action { msg_prompt (MSG_host, ftp_host, ftp_host, 255); }; option "Directory", action { msg_prompt (MSG_dir, ftp_dir, ftp_dir, 255); }; option "User", action { msg_prompt (MSG_user, ftp_user, ftp_user, 255); ftp_pass[0] = '\0'; }; option "Password", action { if (strcmp(ftp_user, "ftp") == 0) msg_prompt (MSG_email, ftp_pass, ftp_pass, 255); else { msg_prompt_noecho (MSG_passwd, "", ftp_pass, 255); } }; option "Proxy", action { msg_prompt (MSG_proxy, ftp_proxy, ftp_proxy, 255); if (strcmp(ftp_proxy, "") == 0) unsetenv("ftp_proxy"); else setenv("ftp_proxy", ftp_proxy, 1); }; option "Get Distribution", exit; menu nfssource, title "Change"; display action { msg_display (MSG_nfssource, nfs_host, nfs_dir); }; option "Host", action { msg_prompt (MSG_host, NULL, nfs_host, 255); }; option "Directory", action { msg_prompt (MSG_dir, NULL, nfs_dir, 255); }; option "Continue", exit; menu nfsbadmount, title "What do you want to do?"; option "Try again", exit, sub menu nfssource, action { yesno = 1; ignorerror = 0; }; option "Give up", exit, action { yesno = 0; ignorerror = 0; }; option "Ignore, continue anyway", exit, action { yesno = 1; ignorerror = 1; }; menu fdremount, title "What do you want to do?"; option "Try again", exit, action { yesno = 1; }; option "Abort install", exit, action { yesno = 0; }; menu fdok, title "Hit enter to continue"; option "OK", exit, action { yesno = 1; }; option "Abort install", exit, action { yesno = 0; }; menu crypttype, title "Password cipher", y=16; option "DES", exit, action { yesno = 1; }; option "MD5", exit, action { yesno = 2; }; option "Blowfish 2^7 round", exit, action { yesno = 3; }; option "do not change", exit, action { yesno = 0; }; menu cdromsource, title "Change"; display action { msg_display (MSG_cdromsource, cdrom_dev, cdrom_dir); }; option "Device", action { msg_prompt (MSG_dev, cdrom_dev, cdrom_dev, SSTRSIZE); }; option "Directory", action { msg_prompt (MSG_dir, cdrom_dir, cdrom_dir, STRSIZE); }; option "Continue", exit; menu cdrombadmount, title "What do you want to do?"; option "Try again", exit, sub menu cdromsource, action { yesno = 1; ignorerror = 0; }; option "Give up", exit, action { yesno = 0; ignorerror = 0; }; option "Ignore, continue anyway", exit, action { yesno = 1; ignorerror = 1; }; menu localfssource, title "Change"; display action { msg_display (MSG_localfssource, localfs_dev, localfs_fs, localfs_dir); }; option "Device", action { msg_prompt (MSG_dev, localfs_dev, localfs_dev, SSTRSIZE); }; option "File system", action { msg_prompt (MSG_filesys, localfs_fs, localfs_fs, STRSIZE); }; option "Directory", action { msg_prompt (MSG_dir, localfs_dir, localfs_dir, STRSIZE); }; option "Continue", exit; menu localfsbadmount, title "What do you want to do?"; option "Try again", exit, sub menu localfssource, action { yesno = 1; ignorerror = 0; }; option "Give up", exit, action { yesno = 0; ignorerror = 0; }; option "Ignore, continue anyway", exit, action { yesno = 1; ignorerror = 1; }; menu localdirsource, title "Change"; display action { msg_display(MSG_localdir, localfs_dir); }; option "Directory", action { msg_prompt (MSG_dir, localfs_dir, localfs_dir, STRSIZE); }, exit; option "Continue", exit; menu localdirbad, title "What do you want to do?"; option "Change directory path", action { yesno = 1; msg_prompt(MSG_localdir, localfs_dir, localfs_dir, STRSIZE); }, exit; option "Give up", exit, action { yesno = 0; ignorerror = 0; }; option "Ignore, continue anyway", exit, action { yesno = 1; ignorerror = 1; }; menu namesrv6, title " Select IPv6 DNS server"; option "paradise.v6.kame.net", exit, action { #ifdef INET6 strncpy(net_namesvr6, "3ffe:501:4819::42", sizeof(net_namesvr6)); yesno = 1; #else yesno = 0; #endif }; option "kiwi.itojun.org", exit, action { #ifdef INET6 strncpy(net_namesvr6, "3ffe:501:410:100:5254:ff:feda:48bf", sizeof(net_namesvr6)); yesno = 1; #else yesno = 0; #endif }; option "ns1.v6.intec.co.jp", exit, action { #ifdef INET6 strncpy(net_namesvr6, "3ffe:508:0:1::53", sizeof(net_namesvr6)); yesno = 1; #else yesno = 0; #endif }; option "nttv6.net", exit, action { #ifdef INET6 strncpy(net_namesvr6, "3ffe:1800:1000::1", sizeof(net_namesvr6)); yesno = 1; #else yesno = 0; #endif }; option "light.imasy.or.jp", exit, action { #ifdef INET6 strncpy(net_namesvr6, "3ffe:505:0:1:2a0:c9ff:fe61:6521", sizeof(net_namesvr6)); yesno = 1; #else yesno = 0; #endif }; option "other ", exit, action { yesno = 0; }; menu ip6autoconf, title "Perform IPv6 autoconfiguration?"; option "Yes", exit, action {yesno = 1;}; option "No", exit, action {yesno = 0;}; menu dhcpautoconf, title "Perform DHCP autoconfiguration?"; option "Yes", exit, action {yesno = 1;}; option "No", exit, action {yesno = 0;}; menu rootsh, title "Root shell"; option "/bin/csh", exit, action {shellpath = "/bin/csh";}; option "/bin/ksh", exit, action {shellpath = "/bin/ksh";}; option "/bin/sh", exit, action {shellpath = "/bin/sh";};