diff options
author | Joseph Jezak <josejx@gentoo.org> | 2005-07-31 23:32:44 +0000 |
---|---|---|
committer | Joseph Jezak <josejx@gentoo.org> | 2005-07-31 23:32:44 +0000 |
commit | ba1abec78a8958efc2f16bc6adb08f585e67a43e (patch) | |
tree | 4bfa1cbc32a1edc6b58a75fafe70844993654375 /app-emulation/mol | |
parent | eat whitespace (diff) | |
download | historical-ba1abec78a8958efc2f16bc6adb08f585e67a43e.tar.gz historical-ba1abec78a8958efc2f16bc6adb08f585e67a43e.tar.bz2 historical-ba1abec78a8958efc2f16bc6adb08f585e67a43e.zip |
Added PCI proxy support.
Package-Manager: portage-2.0.51.22-r2
Diffstat (limited to 'app-emulation/mol')
-rw-r--r-- | app-emulation/mol/ChangeLog | 8 | ||||
-rw-r--r-- | app-emulation/mol/Manifest | 11 | ||||
-rw-r--r-- | app-emulation/mol/files/digest-mol-0.9.71_pre1-r2 | 3 | ||||
-rw-r--r-- | app-emulation/mol/files/mol-pciproxy-dump.patch | 324 | ||||
-rw-r--r-- | app-emulation/mol/mol-0.9.71_pre1-r2.ebuild | 151 |
5 files changed, 492 insertions, 5 deletions
diff --git a/app-emulation/mol/ChangeLog b/app-emulation/mol/ChangeLog index 556abc1d5d78..b2357128b686 100644 --- a/app-emulation/mol/ChangeLog +++ b/app-emulation/mol/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/mol # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/mol/ChangeLog,v 1.48 2005/07/21 17:20:32 josejx Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/mol/ChangeLog,v 1.49 2005/07/31 23:32:44 josejx Exp $ + +*mol-0.9.71_pre1-r2 (31 Jul 2005) + + 31 Jul 2005; Joseph Jezak <josejx@gentoo.org> + +files/mol-pciproxy-dump.patch, +mol-0.9.71_pre1-r2.ebuild: + Added PCI proxy support with the pci useflag. *mol-0.9.71_pre1-r1 (21 Jul 2005) diff --git a/app-emulation/mol/Manifest b/app-emulation/mol/Manifest index 63471f5fd0ca..a3671af41e1c 100644 --- a/app-emulation/mol/Manifest +++ b/app-emulation/mol/Manifest @@ -1,19 +1,22 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -MD5 6ada1174e28eea70f0f17c810c34628a ChangeLog 9484 +MD5 9d34e34898609a5d82d4ba5a0fe8fc67 ChangeLog 9678 MD5 37e2c58edef99f3f2be0803169d89bcd mol-0.9.70.ebuild 4048 MD5 2eff369831b47a032f31277640c57b8b mol-0.9.71_pre1-r1.ebuild 4820 MD5 3263d375abba2d098c636efc2b135ea5 metadata.xml 333 +MD5 e3076c40b7fe6d154ee8128ce4df5f3f mol-0.9.71_pre1-r2.ebuild 5091 MD5 7b1c05be512e22dbfb69b67e87d6d2f7 mol-0.9.70-r1.ebuild 3940 MD5 5674dc422930ad165912ce5d91cafff8 mol-0.9.71_pre1.ebuild 4518 MD5 f0299c003ac50a8f73bd8264889116d7 files/mol-0.9.71_pre1-linux-2.6.9.patch 2571 MD5 934e9ecf483ff3c4e34bb6307212d776 files/mol-0.9.70-nopriority.patch 1853 +MD5 659812abffbd24cf3a951dc3ea433827 files/mol-pciproxy-dump.patch 8955 MD5 3944510308e77b92ac85c07708947ad0 files/digest-mol-0.9.70-r1 64 MD5 37a24cbf6bb78c4d9bd4c79b18aab9d6 files/mol-0.9.71_pre1-big-filesystem.patch 6554 MD5 2f8f758938db9b3cb5a13c0b33d989e3 files/mol-module-fix.patch 327 MD5 453e05b555f037270dd6da665e100aa8 files/digest-mol-0.9.71_pre1 69 MD5 0ea7bd65a5ff4666665a71fb9652aae8 files/mol-0.9.70-makefile-fix.patch 924 +MD5 8d619246101648133ade3b39a2269e47 files/digest-mol-0.9.71_pre1-r2 187 MD5 3944510308e77b92ac85c07708947ad0 files/digest-mol-0.9.70 64 MD5 de4dd986b6c963eae483aebbab3d7a0d files/digest-mol-0.9.71_pre1-r1 121 MD5 1b1d52b69bcae00d0339c0f3f4ae9a6d files/mol-tiger.patch 3681 @@ -22,7 +25,7 @@ MD5 3bf68312e4299f777065f55eea5297fa files/mol-0.9.71_pre1-nopriority.patch 1861 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) -iD8DBQFC39l9csIHjyDViGQRAniSAKDapfe7V9pAu6g9QQGrwRpx1+0EjQCaAgBA -s7I4BDz0ba8tQBiP3sXx5hk= -=ey5u +iD8DBQFC7V+ZcsIHjyDViGQRAvHCAKDLxQJ9x6ksbDfFJt+dUrBDZ12xdQCfStaq +p8mItAx8Q54RMT9iDHZHjqM= +=e2pR -----END PGP SIGNATURE----- diff --git a/app-emulation/mol/files/digest-mol-0.9.71_pre1-r2 b/app-emulation/mol/files/digest-mol-0.9.71_pre1-r2 new file mode 100644 index 000000000000..9b3d5b0e849d --- /dev/null +++ b/app-emulation/mol/files/digest-mol-0.9.71_pre1-r2 @@ -0,0 +1,3 @@ +MD5 b12e3beca8c90b56af09cb41f66920b0 mol-0.9.71_pre1.tar.bz2 1768219 +MD5 e4f4fb6e63380997c1ab6d554ca93c00 bootx.gz 33043 +MD5 b2f4c10dcadfa689cc54834f3d154884 mol-pciproxy.patch.bz2 16226 diff --git a/app-emulation/mol/files/mol-pciproxy-dump.patch b/app-emulation/mol/files/mol-pciproxy-dump.patch new file mode 100644 index 000000000000..ab96dc13cdc4 --- /dev/null +++ b/app-emulation/mol/files/mol-pciproxy-dump.patch @@ -0,0 +1,324 @@ +--- src/drivers/hostirq.c 2005-07-21 14:26:58.035942148 +0200 ++++ src/drivers/hostirq.c 2005-07-21 01:26:22.964756669 +0200 +@@ -26,6 +26,7 @@ + #include "thread.h" + #include "molcpu.h" + #include "driver_mgr.h" ++#include "plain-dump.h" + + #include <signal.h> + #include <string.h> +@@ -151,6 +152,7 @@ + for (i = first_mapping; i != -1; i = hostirq_mapping[i].next) { + if (hostirq_check_bit(i, irq_state->irqs)) { + // printm("update: raising %d\n", i); ++ pdump_write_pkt(0, 0, 1, hostirq_mapping[i].vmirq, "int"); + irq_line_hi(hostirq_mapping[i].vmirq); + } else { + // printm("update: lowering %d\n", i); +--- src/drivers/include/pci.h 2005-07-21 14:26:58.063944350 +0200 ++++ src/drivers/include/pci.h 2005-07-21 14:20:43.312479454 +0200 +@@ -35,8 +35,8 @@ + /* config space read/write hooks. the char * argument points to data to be read/written + * and may be overwritten by the hook. + */ +- void (*read_config)(void *, int, char *); +- void (*write_config)(void *, int, char *); ++ void (*read_config)(void *, int, int, char *); ++ void (*write_config)(void *, int, int, char *); + } pci_dev_hooks_t; + + typedef int pci_addr_t; /* 00 domain bus devfn */ +--- src/drivers/Makefile 2005-07-21 14:26:58.005939789 +0200 ++++ src/drivers/Makefile 2005-07-20 18:39:54.523735183 +0200 +@@ -8,7 +8,7 @@ + drivers-OBJS = $(obj-y) + obj-y += driver_mgr.o ioports.o keycodes.o kbd.o via-cuda.o \ + adb.o gc.o pic.o osi_pic.o nvram.o escc.o dbdma.o pci.o \ +- pci-bridges.o osi_mouse.o osi_driver.o usb.o rtas.o hostirq.o ++ pci-bridges.o osi_mouse.o osi_driver.o usb.o rtas.o hostirq.o plain-dump.o + + obj-$(LINUX) += console.o + +--- src/drivers/pci.c 2005-07-21 14:26:58.093946709 +0200 ++++ src/drivers/pci.c 2005-07-21 14:37:21.326948507 +0200 +@@ -470,7 +470,7 @@ + + + static void +-do_write_config( pci_device_t *dev, int offs, unsigned char val ) ++do_write_config( pci_device_t *dev, int offs, int last, unsigned char val ) + { + + int rr = offs >>2; +@@ -478,7 +478,7 @@ + + /* indeed we now call a hook here ;-) */ + if (dev->hooks.write_config != NULL) +- (*(dev->hooks.write_config))(dev->usr, offs, &val); ++ (*(dev->hooks.write_config))(dev->usr, offs, last, &val); + + /* Base registers & rom */ + if( rr >= (PCI_BASE_ADDRESS_0 >> 2) && rr <= (PCI_BASE_ADDRESS_5 >> 2) ) { +@@ -501,7 +501,7 @@ + } + + static unsigned char +-do_read_config( pci_device_t *dev, int offs ) ++do_read_config( pci_device_t *dev, int offs, int last ) + { + int rr = offs >>2; + basereg_t *bp = NULL; +@@ -528,7 +528,7 @@ + + /* call hook */ + if (dev->hooks.read_config != NULL) +- (*(dev->hooks.read_config))(dev->usr, offs, &val); ++ (*(dev->hooks.read_config))(dev->usr, offs, last, &val); + + #if 0 + if( offs == PCI_INTERRUPT_LINE ) { +@@ -558,7 +558,7 @@ + * alignment problems. + */ + for( i=len-1; i>=0; i--, val=val>>8 ) +- do_write_config( dev, offs+i, val & 0xff ); ++ do_write_config( dev, offs+i, i==0, val & 0xff ); + + /* Handle value written */ + if( (offs & ~3) != ((offs+len-1)&~3 )) +@@ -583,7 +583,7 @@ + + for( val=0, i=0; i<len; i++ ) { + val=val<<8; +- val |= do_read_config( dev, offs+i ) & 0xff; ++ val |= do_read_config( dev, offs+i, i==(len-1) ) & 0xff; + } + + VPRINT("config-read [%d] %04x+%02x: %08lx\n", len, addr, offs, val ); +--- src/drivers/pciproxy.c 2005-07-21 14:26:58.125949225 +0200 ++++ src/drivers/pciproxy.c 2005-07-21 14:34:32.137645970 +0200 +@@ -42,6 +42,8 @@ + #include <sys/mman.h> + #include <sys/poll.h> + ++#include "plain-dump.h" ++ + SET_VERBOSE_NAME("PCIPROXY"); + + #define PPLOG(format, args...) LOG(format "\n", ##args) +@@ -164,8 +166,11 @@ + + /* config space read/write hooks */ + static void +-pciproxy_config_read(void *usr, int offset, char *val) ++pciproxy_config_read(void *usr, int offset, int last, char *val) + { ++ static int saved_value = 0; ++ static int saved_len = 0; ++ + pciproxy_device_t *pdev = (pciproxy_device_t *) usr; + + DPRINT("config_read: off %d val %d", offset, *val); +@@ -188,13 +193,24 @@ + } else { + /* default: pass it through to the physical device */ + pciproxy_do_read_config(pdev->fd_config, offset, val, 1); ++ ++ saved_value = saved_value | (*val << 8*saved_len); ++ saved_len++; ++ if (last) { ++ pdump_write_pkt(offset-saved_len+1, 1, saved_len, saved_value, "pci"); ++ saved_len = 0; ++ saved_value = 0; ++ } + return; + } + } + + static void +-pciproxy_config_write(void *usr, int offset, char *val) ++pciproxy_config_write(void *usr, int offset, int last, char *val) + { ++ static int saved_value = 0; ++ static int saved_len = 0; ++ + pciproxy_device_t *pdev = (pciproxy_device_t *) usr; + + DPRINT("config_write: off %d val %d", offset, *val); +@@ -231,6 +247,14 @@ + /* if we are still there, pass the value to our device */ + pciproxy_do_write_config(pdev->fd_config, offset, val, 1); + ++ saved_len++; ++ saved_value = (saved_value << 8) | *val; ++ if (last) { ++ pdump_write_pkt(offset, 0, saved_len, saved_value, "pci"); ++ saved_len = 0; ++ saved_value = 0; ++ } ++ + } + + /* hook table */ +@@ -240,7 +264,7 @@ + pciproxy_config_write, + }; + +-#undef BAR_ACCESS_USERSPACE ++#define BAR_ACCESS_USERSPACE 1 + + #ifdef BAR_ACCESS_USERSPACE + static inline int +@@ -263,6 +287,8 @@ + { + pciproxy_device_t *pdev = (pciproxy_device_t *) usr; + ulong res = 0; ++ ulong r_int, r_pass; ++ ushort r_short; + char *lvaddr; + int ind; + +@@ -278,6 +304,12 @@ + res = read_mem(lvaddr, len); + + DPRINT("read mem @ 0x%lx: 0x%lx", addr, res); ++ r_int = res; ++ r_short = res; ++ r_pass = res; ++ if (len == 2) r_pass = le16_to_cpu(r_short); ++ else if (len == 4) r_pass = le32_to_cpu(r_int); ++ pdump_write_pkt(addr - pdev->bars[ind].mmum.mbase, 1, len, r_pass, "mem"); + + return res; + } +@@ -288,6 +320,8 @@ + pciproxy_device_t *pdev = (pciproxy_device_t *) usr; + char *lvaddr; + int ind; ++ ulong r_int, r_pass; ++ ushort r_short; + + DPRINT("write mem @ 0x%lx: 0x%lx", addr, data); + +@@ -300,6 +334,12 @@ + } + + lvaddr = pdev->bars[ind].lvbase + (addr - pdev->bars[ind].mmum.mbase); ++ r_int = data; ++ r_short = data; ++ r_pass = data; ++ if (len == 2) r_pass = le16_to_cpu(r_short); ++ else if (len == 4) r_pass = le32_to_cpu(r_int); ++ pdump_write_pkt(addr - pdev->bars[ind].mmum.mbase, 0, len, r_pass, "mem"); + write_mem(lvaddr, data, len); + } + +@@ -961,6 +1001,8 @@ + pciproxy_check_device(devspec, node_file, pci_node); + } + ++ pdump_initialise(); ++ + return 1; + } + +@@ -1012,6 +1054,7 @@ + free(temp); + } + ++ pdump_deinit(); + } + + driver_interface_t pciproxy_driver = +--- src/drivers/plain-dump.c 1970-01-01 01:00:00.000000000 +0100 ++++ src/drivers/plain-dump.c 2005-07-20 21:58:39.656827024 +0200 +@@ -0,0 +1,42 @@ ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <fcntl.h> ++#include <unistd.h> ++#include <ctype.h> ++#include <stdlib.h> ++#include <stdio.h> ++#include <sys/time.h> ++#include <time.h> ++#include <string.h> ++#include "plain-dump.h" ++ ++static int pdump_fd = -1; ++ ++void ++pdump_write_pkt(short offset, int in, int datalen, int data, const char * type) { ++ if (pdump_fd == -1) return; ++ ++ struct timeval t; ++ u_char buf[256]; ++ int len = 0; ++ ++ if (gettimeofday(&t, NULL)) ++ fprintf(stderr, "gettimeofday error\n"); ++ ++ len = snprintf(buf, sizeof(buf), "%.8ld.%.6ld %s %s 0x%.4x %d %*dx%.*x\n", ++ t.tv_sec, t.tv_usec, type, (in?"r":"w"), offset, datalen, 9-2*datalen, 0, 2*datalen, data); ++ ++ if (len > 0) ++ write(pdump_fd, buf, len); ++} ++ ++void ++pdump_initialise() { ++ if (pdump_fd != -1) return; ++ pdump_fd = open("/tmp/test.dump", O_CREAT | O_WRONLY | O_TRUNC, 0644); ++} ++ ++void ++pdump_deinit() { ++ close(pdump_fd); ++} +--- src/drivers/plain-dump.h 1970-01-01 01:00:00.000000000 +0100 ++++ src/drivers/plain-dump.h 2005-07-20 18:41:35.651686385 +0200 +@@ -0,0 +1,8 @@ ++#ifndef __plain_dump_h ++#define __plain_dump_h ++ ++void pdump_write_pkt(short offset, int in, int datalen, int data, const char * type); ++void pdump_initialise(); ++void pdump_deinit(); ++ ++#endif +--- src/kmod/Linux/alloc.h 2005-07-21 14:26:24.979343068 +0200 ++++ src/kmod/Linux/alloc.h 2005-07-21 14:39:34.721436670 +0200 +@@ -21,6 +21,7 @@ + #include <linux/vmalloc.h> + #include <linux/mm.h> + #include <asm/uaccess.h> ++#include <asm/io.h> + + #ifdef LINUX_26 + #include <asm/cacheflush.h> +--- src/netdriver/Makefile.26 2005-07-21 14:26:25.014345820 +0200 ++++ src/netdriver/Makefile.26 2005-07-20 11:20:48.898880688 +0200 +@@ -6,7 +6,7 @@ + obj-m += kuname.o + + +-$(obj)/sheep.o $(obj)/ethertap.o $(obj)tun.o: $(src)/.kuname ++$(obj)/sheep.o $(obj)/ethertap.o $(obj)/tun.o: $(src)/.kuname + + $(src)/.kuname: $(obj)/kuname.o + strings $< | grep -- '-MAGIC-' | sed -e s/-MAGIC-// > $@ +--- util/ofdump/Makefile 2005-07-21 14:26:25.188359502 +0200 ++++ util/ofdump/Makefile 2005-07-20 11:20:48.921882497 +0200 +@@ -12,9 +12,9 @@ + # it under the terms of the GNU General Public License version 2 + # + +-include ../../Makefile.top ++include ../../config/Makefile.top + + PROGRAMS = ofdump + ofdump-OBJS = main.o + +-include $(top_srcdir)/Rules.make ++include $(top_srcdir)/config/Rules.make diff --git a/app-emulation/mol/mol-0.9.71_pre1-r2.ebuild b/app-emulation/mol/mol-0.9.71_pre1-r2.ebuild new file mode 100644 index 000000000000..c98caef4d530 --- /dev/null +++ b/app-emulation/mol/mol-0.9.71_pre1-r2.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/mol/mol-0.9.71_pre1-r2.ebuild,v 1.1 2005/07/31 23:32:44 josejx Exp $ + +inherit flag-o-matic eutils linux-mod + +DESCRIPTION="MOL (Mac-on-Linux) lets PPC users run MacOS (X) under Linux (rsync snapshot)" +HOMEPAGE="http://www.maconlinux.net/" +SRC_URI="mirror://gentoo/${P}.tar.bz2 + mirror://gentoo/bootx.gz + mirror://gentoo/mol-pciproxy.patch.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="-* ~ppc" +IUSE="vnc alsa oss fbcon X oldworld sheep debug dga usb pci" + +MAKEOPTS="${MAKEOPTS} -j1" + +DEPEND="" +RDEPEND="net-misc/dhcp + net-firewall/iptables + alsa? ( virtual/alsa ) + vnc? ( net-misc/vnc ) + X? ( virtual/x11 )" + + +MODULE_NAMES="mol(mol:${S}/src/kmod/Linux) + sheep(net:${S}/src/netdriver) + tun(net:${S}/src/netdriver)" + +pkg_setup() { + echo + einfo "If you want to use MOL fullscreen on a virtual console" + einfo "be sure to have the USE-flag \"fbcon\" set!" + echo + + linux-mod_pkg_setup +} + +src_unpack() { + unpack ${A} + + cd ${S} + epatch ${FILESDIR}/${PN}-module-fix.patch + epatch ${FILESDIR}/${P}-nopriority.patch + + # Fixes bug 79428 + epatch ${FILESDIR}/${P}-linux-2.6.9.patch + + # Adds big filesystem (>2Gb) image support, bug #80098 + epatch ${FILESDIR}/${P}-big-filesystem.patch + + # Fixes bug tmp-offset access violation + epatch ${FILESDIR}/${P}-tmp-offset.patch + + # dhcp config fix and show dchpd messages on starting mol + sed -i "s:#ddns-update-style:ddns-update-style:g" Doc/config/dhcpd-mol.conf || die + sed -i "s:DHCPD\ -q\ -cf:DHCPD\ -cf:g" Doc/config/tunconfig || die + + # Add tiger support to MOL + epatch ${FILESDIR}/${PN}-tiger.patch + + # Add new bootloader + # Boot loader courtesy of http://www-user.rkrk.uni-kl.de/~nissler/mol/ + cp ${WORKDIR}/bootx ${S}/libimport/drivers/bootx + cp ${WORKDIR}/bootx ${S}/mollib/drivers/bootx + + # PCI Proxy Patch + epatch ${WORKDIR}/${PN}-pciproxy.patch + # PCI Debugging Patch + if use debug; then + epatch ${FILESDIR}/${PN}-pciproxy-dump.patch + fi +} + +src_compile() { + filter-flags -fsigned-char + + export KERNEL_SOURCE="/usr/src/${FK}" + export LDFLAGS="" + + # initialize all needed build-files + ./autogen.sh + ./configure --prefix="/usr" || die "Configure failed." + + # workaround for proper module-building + emake defconfig || die "Make failed." + + sed -i "s:CONFIG_XDGA=y:# CONFIG_XDGA is not set:" .config-ppc + sed -i "s:CONFIG_TAP=y:# CONFIG_TAP is not set:" .config-ppc + use alsa || sed -i "s:CONFIG_ALSA=y:# CONFIG_ALSA is not set:" .config-ppc + use debug && sed -i "s:# CONFIG_DEBUGGER is not set:CONFIG_DEBUGGER=y:" .config-ppc + use oss || sed -i "s:CONFIG_OSS=y:# CONFIG_OSS is not set:" .config-ppc + use oldworld || sed -i "s:CONFIG_OLDWORLD=y:# CONFIG_OLDWORLD is not set:" .config-ppc + use sheep || sed -i "s:CONFIG_SHEEP=y:# CONFIG_SHEEP is not set:" .config-ppc + use X || sed -i "s:CONFIG_X11=y:# CONFIG_X11 is not set:" .config-ppc + use fbcon || sed -i "s:CONFIG_FBDEV=y:# CONFIG_FBDEV is not set:" .config-ppc + use vnc || sed -i "s:CONFIG_VNC=y:# CONFIG_VNC is not set:" .config-ppc + use dga || sed -i "s:CONFIG_XDGA=y:# CONFIG_XDGA is not set:" .config-ppc + use usb || sed -i "s:CONFIG_USBDEV=y:# CONFIG_USBDEV is not set:" .config-ppc + use pci && sed -i "s:# CONFIG_PCIPROXY is not set:CONFIG_PCIPROXY=y:" .config-ppc + + einfo "The configuration has been altered according to your USE-flags." + # reinitialize our changed configuration + emake oldconfig + + cd ${S} + emake BUILD_MODS=n || die "Build failed." + + # Build the modules too! + BUILD_PARAMS="KERNEL_SOURCE=${KV_DIR} LV=${KV_MAJOR}${KV_MINOR} MP=${KV_OBJ} + KUNAME=${KV}" + BUILD_TARGETS=all + linux-mod_src_compile +} + +src_install() { + #linux-mod_src_install + cd ${S} + emake DESTDIR=${D} install || die "Failed to install" + dodoc CREDITS Doc/Boot-ROM Doc/NewWorld-ROM Doc/Sound Doc/Video + dodoc Doc/Networking Doc/Dev/Debugger Doc/Dev/Addresses + dodoc Doc/man/molvconfig.1 Doc/man/startmol.1 Doc/man/molrc.5 +} + +pkg_postinst() { + echo + einfo "Mac-on-Linux is now installed. To run, use the command startmol." + einfo "You might want to configure video modes first with molvconfig." + einfo "Other configuration is in /etc/molrc. For more info see:" + einfo " http://www.maconlinux.net" + einfo "Also try man molrc, man molvconfig, man startmol" + echo + ewarn "For networking and sound you might install the drivers in the" + ewarn "folder \"MOL-Install\" on your Mac OS X-Desktop." + echo + ewarn "If errors with networking occur, make sure you have the following" + ewarn "kernel functions enabled:" + einfo "For the dhcp server:" + einfo " Socket Filtering (CONFIG_FILTER)" + einfo " Packet Socket (CONFIG_PACKET)" + einfo "For NAT:" + einfo " Network packet filtering (CONFIG_NETFILTER)" + einfo " Connection tracking (CONFIG_IP_NF_CONNTRACK)" + einfo " IP tables support (CONFIG_IP_NF_IPTABLES)" + einfo " Packet filtering (CONFIG_IP_NF_FILTER)" + einfo " Full NAT (CONFIG_IP_NF_NAT)" + einfo " MASQUERADE target support (CONFIG_IP_NF_TARGET_MASQUERADE)" + echo +} |