diff options
-rw-r--r-- | loader2/Makefile | 15 | ||||
-rw-r--r-- | loader2/cdinstall.c | 13 | ||||
-rw-r--r-- | loader2/dietstubs.c | 3 | ||||
-rw-r--r-- | loader2/lang.c | 40 | ||||
-rw-r--r-- | loader2/loader.c | 12 | ||||
-rwxr-xr-x | scripts/mk-images | 10 | ||||
-rwxr-xr-x | scripts/upd-instroot | 13 |
7 files changed, 58 insertions, 48 deletions
diff --git a/loader2/Makefile b/loader2/Makefile index 3559e2559..bfdf17e50 100644 --- a/loader2/Makefile +++ b/loader2/Makefile @@ -40,11 +40,10 @@ SOURCES = $(subst .o,.c,$(OBJS)) loader.c HWLIBS = -lkudzu_loader -lpci DEBUG = -ggdb -COPTS = $(DEBUG) -Wall -DVERSION='"$(VERSION)"' +COPTS = $(DEBUG) -Os -Wall -DVERSION='"$(VERSION)"' CFLAGS = $(COPTS) -ffunction-sections -D_GNU_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DHAVE_LIBIO_H -DPRODUCTNAME='$(PRODUCTNAME)' STATIC = -static - ifeq (1, $(USEDIET)) CFLAGS += -DGZLIB=1 DIET=diet @@ -69,7 +68,14 @@ LANGS = $(shell awk '{ print $$2 }' ../lang-table | egrep -v '(^en$$)') TR = $(patsubst %,tr/%.tr,$(LANGS)) TRFILES = $(patsubst %,%.tr,$(LANGS)) -all: $(BINS) loader.tr +all: $(BINS) loader.tr font.bgf.gz + +font.bgf.gz: /usr/lib/bogl/font.bdf.gz /usr/bin/reduce-font + zcat /usr/lib/bogl/font.bdf.gz > font.bdf + (for I in ../po/*.po; do msgconv -t utf-8 $$I; done) | reduce-font > font-reduced.bdf + bdftobogl -b font.bdf > font.bgf + rm -f font.bdf font-reduced.bdf + gzip -9 -f font.bgf loader.tr: $(TR) ../lang-table (cd tr; ls $(TRFILES) | cpio --quiet -Hcrc -o |gzip -9) > $@ @@ -110,7 +116,7 @@ loader: loader.o $(OBJS) $(NETOBJS) clean: rm -f *.o *~ .depend init ctype.c mkctype \ - loader loader-pcmcia loader-local loader-network + loader depend: ctype.c $(CPP) $(CFLAGS) -DHAVE_CONFIG_H -M $(SOURCES) > .depend @@ -123,6 +129,7 @@ install: all done install -m 644 loader.tr $(DESTDIR)/$(RUNTIMEDIR)/loader install -m 644 module-info $(DESTDIR)/$(RUNTIMEDIR)/loader + install -m 644 font.bgf.gz $(DESTDIR)/$(RUNTIMEDIR)/loader ifeq (.depend,$(wildcard .depend)) include .depend diff --git a/loader2/cdinstall.c b/loader2/cdinstall.c index d46cde15c..297d7e437 100644 --- a/loader2/cdinstall.c +++ b/loader2/cdinstall.c @@ -292,6 +292,17 @@ char * setupCdrom(char * location, int foundinvalid = 0; char * buf; +#if 0 + if (FL_TESTING(flags) && interactive) { + for (i = 0; i < kd->numKnown; i++) { + if (kd->known[i].class != CLASS_CDROM) continue; + buf = malloc(200); + sprintf(buf, "cdrom://%s/mnt/source", kd->known[i].name); + return buf; + } + } +#endif + /* JKFIXME: ASSERT -- we have a cdrom device when we get here */ do { for (i = 0; i < kd->numKnown; i++) { @@ -369,7 +380,7 @@ char * mountCdromImage(struct installMethod * method, moduleInfoSet modInfo, moduleList modLoaded, moduleDeps * modDepsPtr, int flags) { - setupCdrom(location, kd, loaderData, modInfo, modLoaded, *modDepsPtr, flags, 1); + return setupCdrom(location, kd, loaderData, modInfo, modLoaded, *modDepsPtr, flags, 1); } void setKickstartCD(struct loaderData_s * loaderData, int argc, diff --git a/loader2/dietstubs.c b/loader2/dietstubs.c index 755ad3ed1..ae0a3bf73 100644 --- a/loader2/dietstubs.c +++ b/loader2/dietstubs.c @@ -5,6 +5,9 @@ #include <setjmp.h> #include <ctype.h> #include <stdarg.h> +#ifdef GZLIB +#include "../isys/gzlib/gzlib.h" +#endif #define WLITE_REDEF_STDC 0 #include <wlite_wchar.h> diff --git a/loader2/lang.c b/loader2/lang.c index 44b7df48c..4b5d9879e 100644 --- a/loader2/lang.c +++ b/loader2/lang.c @@ -133,7 +133,7 @@ void loadLanguage (char * file, int flags) { int fd, hash, rc; char * key = getenv("LANGKEY"); - if (!key || !strcmp(key, "en_US.UTF-8")) { + if (!key || !strcmp(key, "en")) { if (strings) { free(strings), strings = NULL; numStrings = allocedStrings = 0; @@ -218,13 +218,18 @@ void setLanguage (char * key, int flags) { /* returns 0 on success, 1 on failure */ extern int bterm_main(int argc, char **argv); + int startBterm(int flags) { - char *args[4] = { "bterm", "-s", "-f", "/usr/lib/bogl/font.bgf.gz" }; + char *args[4] = { "bterm", "-s", "-f", NULL }; int rc; + + if (FL_TESTING(flags)) + args[3] = "font.bgf.gz"; + else + args[3] = "/etc/font.bgf.gz"; stopNewt(); rc = bterm_main(4, args); - logMessage("returning, rc is %d", rc); startNewt(flags); return rc; } @@ -278,27 +283,7 @@ int chooseLanguage(char ** lang, int flags) { /* this can't happen */ if (i == numLanguages) abort(); - if (!strncmp(languages[choice].key, "en", 2)) { - char *buf; - /* stick with the default (English) */ - unsetenv("LANG"); - unsetenv("LANGKEY"); - unsetenv("LC_ALL"); - unsetenv("LINGUAS"); - if (strings) { - free(strings), strings = NULL; - numStrings = allocedStrings = 0; - } - buf = sdupprintf(_(topLineWelcome), PRODUCTNAME); - newtDrawRootText(0, 0, buf); - free(buf); - newtPushHelpLine(_(bottomHelpLine)); - - return 0; - } - /* load the language only if it is displayable */ - /* disable until working */ if (!strcmp(languages[choice].font, "bterm") && startBterm(flags)) { newtWinMessage("Language Unavailable", "OK", "%s display is unavailable in text mode. The " @@ -308,9 +293,14 @@ int chooseLanguage(char ** lang, int flags) { return 0; } else { setLanguage (languages[choice].key, flags); - loadLanguage (NULL, flags); } - + + /* clear out top line */ + buf = alloca(80); + for (i=0; i < 80; i++) + buf[i] = ' '; + newtDrawRootText(0, 0, buf); + buf = sdupprintf(_(topLineWelcome), PRODUCTNAME); newtDrawRootText(0, 0, buf); free(buf); diff --git a/loader2/loader.c b/loader2/loader.c index 68b4c52b6..724e6913a 100644 --- a/loader2/loader.c +++ b/loader2/loader.c @@ -1130,6 +1130,16 @@ int main(int argc, char ** argv) { execv(anacondaArgs[0], anacondaArgs); perror("exec"); } - +#if 0 + else { + char **args = anacondaArgs; + printf("would have run "); + while (*args) + printf("%s ", *args++); + printf("\n"); + printf("LANGKEY=%s\n", getenv("LANGKEY")); + printf("LANG=%s\n", getenv("LANG")); + } +#endif return 1; } diff --git a/scripts/mk-images b/scripts/mk-images index 53c83976e..8166fbf84 100755 --- a/scripts/mk-images +++ b/scripts/mk-images @@ -427,13 +427,9 @@ EOF rm -f $MBD_DIR/.buildstamp echo $IMAGEUUID > $MBD_DIR/.buildstamp - if [ -f $LOADERBINDIR/kon.cfg ]; then - mkdir -p $MBD_DIR/etc/terminfo/k - install -m 644 $IMGPATH/usr/share/terminfo/k/kon $MBD_DIR/etc/terminfo/k/kon - install -m 644 $LOADERBINDIR/kon.cfg $MBD_DIR/etc - install -m 644 $LOADERBINDIR/minikon.fnt $MBD_DIR/etc - ln -s loader $MBD_DIR/sbin/continue - fi + mkdir -p $MBD_DIR/etc/terminfo/b + install -m 644 $IMGPATH/usr/share/terminfo/b/bterm $MBD_DIR/etc/terminfo/b/bterm + install -m 644 $LOADERBINDIR/font.bgf.gz $MBD_DIR/etc if [ -n "$PCMCIA" ]; then mkdir -p $MBD_BOOTTREE/etc diff --git a/scripts/upd-instroot b/scripts/upd-instroot index 46f12d87c..4e97a5cef 100755 --- a/scripts/upd-instroot +++ b/scripts/upd-instroot @@ -98,13 +98,13 @@ mkdir -p $DEST mkdir -p $DESTGR PACKAGES="glibc glibc-common setup openssl python python2 newt slang - libtermcap zlib ash kon2 e2fsprogs util-linux raidtools popt + libtermcap zlib ash e2fsprogs util-linux raidtools popt mount procps rpm XFree86 Xconfigurator anaconda anaconda-runtime kudzu-devel kudzu hwdata db3 bzip2 bzip2-libs dosfstools pciutils reiserfs-utils parted busybox-anaconda rpm-python anaconda-help booty hdparm lvm rhpl pyxf86config libxml2 libxml2-python rdate glib2 - elfutils-libelf" + elfutils-libelf bogl-bterm" if [ $ARCH = i386 -o $ARCH = x86_64 ]; then PACKAGES="$PACKAGES kernel-pcmcia-cs kernel-utils" @@ -329,7 +329,6 @@ usr/share/anaconda/locale-list usr/share/anaconda/anaconda.conf usr/share/terminfo/l/linux usr/share/terminfo/v/vt100 -usr/share/doc/kon2*/terminfo.kon usr/share/hwdata/pcitable usr/share/hwdata/pci.ids usr/share/hwdata/Cards @@ -633,7 +632,7 @@ usr/share/pixmaps/yes.xpm usr/share/redhat-config-keyboard/* usr/share/terminfo/l/linux usr/share/terminfo/x/xterm -usr/share/terminfo/k/kon +usr/share/terminfo/b/bterm usr/share/terminfo/v/vt100 usr/share/themes/Bluecurve/gtk-2.0/* usr/share/vte/termcap/xterm @@ -684,12 +683,6 @@ expandPackageSet "$RPMS" $DEST $KEEPFILE expandPackageSet "$RPMSGR" $DESTGR $KEEPFILEGR echo -e "\rExpanding packages..." -if [ -f $DEST/usr/share/doc/kon2*/terminfo.kon ]; then - tic $DEST/usr/share/doc/kon2*/terminfo.kon -o $DEST/usr/share/terminfo - tic $DEST/usr/share/doc/kon2*/terminfo.kon -o $DESTGR/usr/share/terminfo - rm $DEST/usr/share/doc/kon2*/terminfo.kon -fi - echo "retrieving timezones" TZDIR=/tmp/glibc-timezone-$$ mkdir -p $TZDIR/usr/share/zoneinfo |