summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorobache <obache@pkgsrc.org>2012-03-21 13:35:50 +0000
committerobache <obache@pkgsrc.org>2012-03-21 13:35:50 +0000
commit6b8aa03875c461efe4b908df432e35e54a1437a0 (patch)
tree0a0518d542d6712c93863ea6476d73d2cafe5093 /emulators
parentfea0170b87bac69005bfd83a13559e2b9430d2fc (diff)
downloadpkgsrc-6b8aa03875c461efe4b908df432e35e54a1437a0.tar.gz
Import suse_base-12.1 as emulators/suse121_base.
Linux compatibility package based on the openSUSE Linux distribution. Please visit http://www.opensuse.org/ for more information about openSUSE Linux. This package supports running ELF binaries linked with glibc2 that don't require X11 shared libraries.
Diffstat (limited to 'emulators')
-rw-r--r--emulators/suse121_base/DEINSTALL24
-rw-r--r--emulators/suse121_base/DESCR6
-rw-r--r--emulators/suse121_base/INSTALL151
-rw-r--r--emulators/suse121_base/MESSAGE.DragonFly8
-rw-r--r--emulators/suse121_base/MESSAGE.FreeBSD8
-rw-r--r--emulators/suse121_base/MESSAGE.NetBSD17
-rw-r--r--emulators/suse121_base/Makefile86
-rw-r--r--emulators/suse121_base/PLIST4
-rw-r--r--emulators/suse121_base/distinfo188
-rw-r--r--emulators/suse121_base/files/SuSE-release2
-rw-r--r--emulators/suse121_base/files/linux-mkpwd.sh36
11 files changed, 530 insertions, 0 deletions
diff --git a/emulators/suse121_base/DEINSTALL b/emulators/suse121_base/DEINSTALL
new file mode 100644
index 00000000000..4c76e0dda5d
--- /dev/null
+++ b/emulators/suse121_base/DEINSTALL
@@ -0,0 +1,24 @@
+# $NetBSD: DEINSTALL,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+EMULDIR="${PKG_PREFIX}/@EMULSUBDIR@"
+
+case "${STAGE}" in
+DEINSTALL)
+ # Run any actions that require root privileges.
+ ${TEST} ! -x ./+ROOT_ACTIONS ||
+ ./+ROOT_ACTIONS REMOVE ${PKG_METADATA_DIR} || exit 1
+
+ # Blow away the /proc directory
+ ${RMDIR} -p ${EMULDIR}/proc
+
+ # Remove some files created by pkgsrc.
+ ${RM} -f ${EMULDIR}/etc/ld.so.cache
+ ${RM} -f ${EMULDIR}/etc/mtab
+ ${RM} -f ${EMULDIR}/etc/group
+ ${RM} -f ${EMULDIR}/etc/gshadow
+ ${RM} -f ${EMULDIR}/etc/passwd
+ ${RM} -f ${EMULDIR}/etc/shadow
+ ${RM} -f ${EMULDIR}/var/cache/ldconfig/aux-cache
+ ${RM} -rf ${EMULDIR}/var/lock
+ ;;
+esac
diff --git a/emulators/suse121_base/DESCR b/emulators/suse121_base/DESCR
new file mode 100644
index 00000000000..ada11fa06ab
--- /dev/null
+++ b/emulators/suse121_base/DESCR
@@ -0,0 +1,6 @@
+Linux compatibility package based on the openSUSE Linux distribution.
+Please visit http://www.opensuse.org/ for more information about openSUSE
+Linux.
+
+This package supports running ELF binaries linked with glibc2 that
+don't require X11 shared libraries.
diff --git a/emulators/suse121_base/INSTALL b/emulators/suse121_base/INSTALL
new file mode 100644
index 00000000000..0f3d4670b93
--- /dev/null
+++ b/emulators/suse121_base/INSTALL
@@ -0,0 +1,151 @@
+# $NetBSD: INSTALL,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+# Generate a +ROOT_ACTIONS script that runs certain actions that require
+# superuser privileges.
+#
+case "${STAGE},$1" in
+UNPACK,|UNPACK,+ROOT_ACTIONS)
+ ${CAT} > ./+ROOT_ACTIONS << 'EOF'
+#!@SH@
+#
+# +ROOT_ACTIONS - run actions requiring superuser privileges
+#
+# Usage: ./+ROOT_ACTIONS ADD|REMOVE [metadatadir]
+#
+# This script runs certain actions that require superuser privileges.
+# If such privileges are not available, then simply output a message
+# asking the user to run this script with the appropriate elevated
+# privileges.
+#
+
+CAT="@CAT@"
+CHMOD="@CHMOD@"
+CP="@CP@"
+DIRNAME="@DIRNAME@"
+ECHO="@ECHO@"
+ID="@ID@"
+LN="@LN@"
+MKDIR="@MKDIR@"
+PWD_CMD="@PWD_CMD@"
+RM="@RM@"
+SH="@SH@"
+TEST="@TEST@"
+
+SELF=$0
+ACTION=$1
+
+CURDIR=`${PWD_CMD}`
+PKG_METADATA_DIR="${2-${CURDIR}}"
+: ${PKGNAME=${PKG_METADATA_DIR##*/}}
+: ${PKG_PREFIX=@PREFIX@}
+
+EMULDIR="${PKG_PREFIX}/@EMULSUBDIR@"
+OPSYS_EMULDIR="@OPSYS_EMULDIR@"
+
+ROOT_ACTIONS_COOKIE="./+ROOT_ACTIONS_done"
+EUID=`${ID} -u`
+
+exitcode=0
+case $ACTION,$EUID in
+ADD,0)
+ ${ECHO} "" > ${ROOT_ACTIONS_COOKIE}
+ ${CHMOD} g+w ${ROOT_ACTIONS_COOKIE}
+ # Create an appropriate Linux-like /dev directory.
+ ${ECHO} "${PKGNAME}: populating ${EMULDIR}/dev"
+ ${MKDIR} ${EMULDIR}/dev
+ ${TEST} ! -f /dev/MAKEDEV ||
+ ${CP} /dev/MAKEDEV ${EMULDIR}/dev
+ ${TEST} ! -f /dev/MAKEDEV.subr ||
+ ${CP} /dev/MAKEDEV.subr ${EMULDIR}/dev
+ ${TEST} ! -f ${EMULDIR}/dev/MAKEDEV ||
+ ( cd ${EMULDIR}/dev &&
+ ${SH} ./MAKEDEV std audio &&
+ ${LN} -fs sound dsp )
+
+ # Create the appropriate symlink so that the kernel will
+ # find the installed files.
+ #
+ OPSYS_EMULDIR_PWD=`cd ${OPSYS_EMULDIR} 2>/dev/null && ${PWD_CMD}`
+ EMULDIR_PWD=`cd ${EMULDIR} 2>/dev/null && ${PWD_CMD}`
+
+ if ${TEST} "${OPSYS_EMULDIR_PWD}" != "${EMULDIR_PWD}"; then
+ if ${TEST} -e ${OPSYS_EMULDIR} -o -L ${OPSYS_EMULDIR}; then
+ ${CAT} << EOM
+==============================================================================
+The following symbolic link must be created for ${PKGNAME}
+to work properly:
+
+ ${EMULDIR} -> ${OPSYS_EMULDIR}
+
+==============================================================================
+EOM
+ else
+ ${ECHO} "${PKGNAME}: creating symlink ${EMULDIR} -> ${OPSYS_EMULDIR}"
+ ( ${MKDIR} -p `${DIRNAME} ${OPSYS_EMULDIR}` &&
+ ${LN} -fs ${EMULDIR} ${OPSYS_EMULDIR} ) || ${TRUE}
+ fi
+ fi
+ ;;
+
+REMOVE,0)
+ ${ECHO} "${PKGNAME}: removing ${EMULDIR}/dev"
+ ${RM} -fr ${EMULDIR}/dev
+ ${RM} -f ${ROOT_ACTIONS_COOKIE}
+ ;;
+
+ADD,*)
+ if ${TEST} ! -f ${ROOT_ACTIONS_COOKIE}; then
+ ${CAT} << EOM
+==============================================================================
+Please run the following command with superuser privileges to complete
+the installation of ${PKGNAME}:
+
+ cd ${PKG_METADATA_DIR} && ${SELF} ADD
+
+==============================================================================
+EOM
+ fi
+ ;;
+
+REMOVE,*)
+ if ${TEST} -f ${ROOT_ACTIONS_COOKIE}; then
+ ${CAT} << EOM
+==============================================================================
+Please run the following command with superuser privileges to begin the
+removal of ${PKGNAME}:
+
+ cd ${PKG_METADATA_DIR} && ${SELF} REMOVE
+
+Then, please run pkg_delete(1) again to complete the removal of this
+package.
+
+==============================================================================
+EOM
+ exitcode=1
+ fi
+ ;;
+esac
+exit $exitcode
+
+EOF
+ ${CHMOD} +x ./+ROOT_ACTIONS
+ ;;
+esac
+
+EMULDIR="${PKG_PREFIX}/@EMULSUBDIR@"
+OPSYS_EMULDIR="@OPSYS_EMULDIR@"
+
+case "${STAGE}" in
+POST-INSTALL)
+ # Create a /proc mount point.
+ ${MKDIR} -p ${EMULDIR}/proc
+
+ # Make /etc/mtab usable for Linux programs.
+ ${RM} -f ${EMULDIR}/etc/mtab
+ ${LN} -fs ${EMULDIR}/proc/mounts ${EMULDIR}/etc/mtab
+
+ # Run any actions that require root privileges.
+ ${TEST} ! -x ./+ROOT_ACTIONS ||
+ ./+ROOT_ACTIONS ADD ${PKG_METADATA_DIR}
+ ;;
+esac
diff --git a/emulators/suse121_base/MESSAGE.DragonFly b/emulators/suse121_base/MESSAGE.DragonFly
new file mode 100644
index 00000000000..d2b2c14450b
--- /dev/null
+++ b/emulators/suse121_base/MESSAGE.DragonFly
@@ -0,0 +1,8 @@
+===========================================================================
+$NetBSD: MESSAGE.DragonFly,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+Do not forget to include COMPAT_LINUX in your kernel configuration file.
+You will also need to load the "linux.ko" kernel module (using kldload(8)
+or by setting linux_enable=yes in /etc/rc.conf.
+Most Linux binaries also require linprocfs to be mounted.
+===========================================================================
diff --git a/emulators/suse121_base/MESSAGE.FreeBSD b/emulators/suse121_base/MESSAGE.FreeBSD
new file mode 100644
index 00000000000..a26802badf4
--- /dev/null
+++ b/emulators/suse121_base/MESSAGE.FreeBSD
@@ -0,0 +1,8 @@
+===========================================================================
+$NetBSD: MESSAGE.FreeBSD,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+Do not forget to include COMPAT_LINUX in your kernel configuration file.
+You will also need to load the "linux.ko" kernel module (using kldload(8)
+or by setting linux_enable=yes in /etc/rc.conf.
+Most Linux binaries also require linprocfs to be mounted.
+===========================================================================
diff --git a/emulators/suse121_base/MESSAGE.NetBSD b/emulators/suse121_base/MESSAGE.NetBSD
new file mode 100644
index 00000000000..7174765af43
--- /dev/null
+++ b/emulators/suse121_base/MESSAGE.NetBSD
@@ -0,0 +1,17 @@
+===========================================================================
+$NetBSD: MESSAGE.NetBSD,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+Do not forget to include COMPAT_LINUX in your kernel configuration file.
+Linux binaries require this option in order to work.
+
+Most Linux binaries also require procfs to be mounted with -o linux.
+This can be automated by adding the following to your /etc/fstab:
+
+procfs /${EMULSUBDIR}/proc procfs ro,linux
+
+Some Linux binaries also require tmpfs to be mounted on /dev/shm.
+This can be automated by adding the following to your /etc/fstab:
+
+tmpfs /${EMULSUBDIR}/dev/shm tmpfs rw,-m1777
+
+===========================================================================
diff --git a/emulators/suse121_base/Makefile b/emulators/suse121_base/Makefile
new file mode 100644
index 00000000000..805e1215908
--- /dev/null
+++ b/emulators/suse121_base/Makefile
@@ -0,0 +1,86 @@
+# $NetBSD: Makefile,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+DISTNAME= suse_base-${SUSE_VERSION}
+CATEGORIES= emulators
+RPMUPDPKGS+= aaa_base-${SUSE_VERSION}-534.107.1.${SUSE_ARCH}
+RPMPKGS+= bash-4.2-1.8.1.${SUSE_ARCH}
+RPMPKGS+= coreutils-8.14-3.1.2.${SUSE_ARCH}
+RPMPKGS+= cyrus-sasl-2.1.23-20.1.2.${SUSE_ARCH}
+RPMPKGS+= findutils-4.4.2-17.1.2.${SUSE_ARCH}
+RPMPKGS+= gdbm-1.8.3-388.1.3.${SUSE_ARCH}
+RPMUPDPKGS+= glibc-2.14.1-14.25.1.${SUSE_ARCH}
+RPMPKGS+= keyutils-1.5.3-2.1.2.${SUSE_ARCH}
+RPMPKGS+= libFLAC8-1.2.1-88.1.2.${SUSE_ARCH}
+RPMPKGS+= libacl1-2.2.51-4.1.4.${SUSE_ARCH}
+RPMPKGS+= libattr1-2.4.46-5.1.5.${SUSE_ARCH}
+RPMPKGS+= libcap2-2.22-2.1.4.${SUSE_ARCH}
+RPMPKGS+= libgcc46-4.6.2_20111026-1.1.4.${SUSE_ARCH}
+RPMPKGS+= libidn-1.22-7.1.2.${SUSE_ARCH}
+RPMPKGS+= libldap-2_4-2-2.4.26-3.1.2.${SUSE_ARCH}
+RPMPKGS+= libncurses5-5.8-5.1.4.${SUSE_ARCH}
+RPMPKGS+= libncurses6-5.8-5.1.4.${SUSE_ARCH}
+RPMPKGS+= libogg0-1.2.2-8.1.2.${SUSE_ARCH}
+RPMPKGS+= libpcre0-8.13-2.1.2.${SUSE_ARCH}
+RPMPKGS+= libreadline6-6.2-1.8.1.${SUSE_ARCH}
+RPMPKGS+= libselinux1-2.0.91-14.1.12.${SUSE_ARCH}
+RPMPKGS+= libsndfile-1.0.25-6.1.2.${SUSE_ARCH}
+RPMPKGS+= libssh2-1-1.2.9-7.1.3.${SUSE_ARCH}
+RPMPKGS+= libstdc++46-4.6.2_20111026-1.1.4.${SUSE_ARCH}
+RPMUPDPKGS+= libuuid1-2.20.1-1.8.1.${SUSE_ARCH}
+RPMUPDPKGS+= libvorbis0-1.3.2-12.3.1.${SUSE_ARCH}
+RPMPKGS+= mozilla-nspr-4.8.9-3.1.2.${SUSE_ARCH}
+RPMUPDPKGS+= mozilla-nss-3.13.1-9.11.1.${SUSE_ARCH}
+RPMPKGS+= net-tools-1.60-751.1.2.${SUSE_ARCH}
+RPMPKGS+= tcpd-7.6-870.1.2.${SUSE_ARCH}
+RPMUPDPKGS+= zlib-1.2.5_git201105272030-20.3.1.${SUSE_ARCH}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+COMMENT= Linux compatibility package
+
+CONFLICTS= linux_SuSE-5.3 linux_lib-2.4 linuxppc_lib-[0-9]*
+
+# These files are managed by the +INSTALL/+DEINSTALL scripts.
+CHECK_FILES_SKIP+= ${EMULDIR}/dev/.*
+CHECK_FILES_SKIP+= ${EMULDIR}/etc/ld.so.cache
+
+RPMIGNOREPATH= ./etc/bash.bashrc ./etc/bash_completion.d \
+ ./etc/cron.daily ./etc/csh.cshrc ./etc/csh.login \
+ ./etc/inittab ./etc/hushlogins ./etc/java \
+ ./etc/mailcap ./etc/mime.types ./etc/nsswitch.conf \
+ ./etc/pam.d ./etc/profile ./etc/profile.dos \
+ ./etc/rc.d.README ./etc/rpc ./etc/shells ./etc/ttytype
+
+LINUX_LDD= ${EMULDIR}/usr/bin/ldd
+LINUX_LDCONFIG= ${EMULDIR}/usr/sbin/ldconfig
+
+INSTALLATION_DIRS+= ${EMULDIR}/etc ${EMULDIR}/dev/shm ${EMULDIR}/var/lock
+INSTALLATION_DIRS+= sbin
+OWN_DIRS+= ${EMULSUBDIR}
+
+SUBST_CLASSES+= suse
+SUBST_STAGE.suse= do-build
+SUBST_FILES.suse= SuSE-release linux-mkpwd.sh
+SUBST_VARS.suse= EMULDIR LINUX_BASE SUSE_ARCH SUSE_VERSION
+
+# Some platforms, e.g. FreeBSD, need to "brand" the ELF binaries to
+# the correct type.
+#
+BRANDELF_CMD= ${BRANDELF:D${BRANDELF} -t Linux ${DESTDIR}${LINUX_LDCONFIG}:U${TRUE}}
+
+post-extract:
+ ${CP} ${FILESDIR}/SuSE-release ${WRKSRC}
+ ${CP} ${FILESDIR}/*.sh ${WRKSRC}
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/linux-mkpwd.sh \
+ ${DESTDIR}${PREFIX}/sbin/${LINUX_BASE}-mkpwd
+ ${INSTALL_DATA} ${WRKSRC}/SuSE-release ${DESTDIR}${EMULDIR}/etc
+ ${BRANDELF_CMD}
+ ${SED} -e 's:#! :#! ${EMULDIR}:' \
+ -e 's:^RTLD=:RTLD=/${EMULSUBDIR}:' \
+ ${DESTDIR}${LINUX_LDD} > ${DESTDIR}${LINUX_LDD}.new
+ ${MV} ${DESTDIR}${LINUX_LDD}.new ${DESTDIR}${LINUX_LDD}
+ ${CHMOD} +x ${DESTDIR}${LINUX_LDD}
+
+.include "../../emulators/suse121_linux/Makefile.common"
+.include "../../mk/bsd.pkg.mk"
diff --git a/emulators/suse121_base/PLIST b/emulators/suse121_base/PLIST
new file mode 100644
index 00000000000..c5627e72412
--- /dev/null
+++ b/emulators/suse121_base/PLIST
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+sbin/${LINUX_BASE}-mkpwd
+${EMULSUBDIRSLASH}etc/SuSE-release
+@pkgdir emul/${LINUX_BASE}/dev/shm
diff --git a/emulators/suse121_base/distinfo b/emulators/suse121_base/distinfo
new file mode 100644
index 00000000000..157a544bcf7
--- /dev/null
+++ b/emulators/suse121_base/distinfo
@@ -0,0 +1,188 @@
+$NetBSD: distinfo,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+
+SHA1 (suse121/aaa_base-12.1-534.107.1.i586.rpm) = 20a43c2c588cc88df835ca49ec844cb31ea08004
+RMD160 (suse121/aaa_base-12.1-534.107.1.i586.rpm) = e4e0cb09c7b64a5b3e47dfe2df4e874dd48253ce
+Size (suse121/aaa_base-12.1-534.107.1.i586.rpm) = 126912 bytes
+SHA1 (suse121/aaa_base-12.1-534.107.1.x86_64.rpm) = ec51c56bc0bb09c5d605df5eac397626b838c092
+RMD160 (suse121/aaa_base-12.1-534.107.1.x86_64.rpm) = 56c290560fb8cb1d58b705030de4a52cfe4a84e3
+Size (suse121/aaa_base-12.1-534.107.1.x86_64.rpm) = 126909 bytes
+SHA1 (suse121/bash-4.2-1.8.1.i586.rpm) = 38e7eba166e5b68d9d3ca8d7bab951aca6825acf
+RMD160 (suse121/bash-4.2-1.8.1.i586.rpm) = 37c97e46df6e9d67daa3cad1c17dcedaf61c2f0f
+Size (suse121/bash-4.2-1.8.1.i586.rpm) = 314852 bytes
+SHA1 (suse121/bash-4.2-1.8.1.x86_64.rpm) = dfdfbc07b6f5bd31215a3be67f16cf5700b2b304
+RMD160 (suse121/bash-4.2-1.8.1.x86_64.rpm) = 968ea1615be64d9a21bc6c2d8dacecb70724e140
+Size (suse121/bash-4.2-1.8.1.x86_64.rpm) = 330879 bytes
+SHA1 (suse121/coreutils-8.14-3.1.2.i586.rpm) = 4d29f02e812b4e4ebc0125a58c0a5360465011cd
+RMD160 (suse121/coreutils-8.14-3.1.2.i586.rpm) = 95f3aa49f1cb7c956c683d71933e05d394f0079a
+Size (suse121/coreutils-8.14-3.1.2.i586.rpm) = 1098850 bytes
+SHA1 (suse121/coreutils-8.14-3.1.2.x86_64.rpm) = 6f8a3803d3ce9a0ceeb517ac527ede1b237746aa
+RMD160 (suse121/coreutils-8.14-3.1.2.x86_64.rpm) = f286a983a58dea9b2468d7880d25dec43ae7e618
+Size (suse121/coreutils-8.14-3.1.2.x86_64.rpm) = 1084596 bytes
+SHA1 (suse121/cyrus-sasl-2.1.23-20.1.2.i586.rpm) = 1c831cf75c3fbf7d7f6386c27b2a84ed57704537
+RMD160 (suse121/cyrus-sasl-2.1.23-20.1.2.i586.rpm) = f493ee3aae4016b6e33da56bdc932ec2b85462e3
+Size (suse121/cyrus-sasl-2.1.23-20.1.2.i586.rpm) = 293069 bytes
+SHA1 (suse121/cyrus-sasl-2.1.23-20.1.2.x86_64.rpm) = 2eb004c6fadd3995bd680832da68d4d9a7c01879
+RMD160 (suse121/cyrus-sasl-2.1.23-20.1.2.x86_64.rpm) = d551826a35282d14575ce0f583391a1df2ba054d
+Size (suse121/cyrus-sasl-2.1.23-20.1.2.x86_64.rpm) = 293734 bytes
+SHA1 (suse121/findutils-4.4.2-17.1.2.i586.rpm) = 387e04750eb58f5ae58f61588d9a3c7473cfeb30
+RMD160 (suse121/findutils-4.4.2-17.1.2.i586.rpm) = 160452be474e3b8018f5ef16389f6e19a70e9f3a
+Size (suse121/findutils-4.4.2-17.1.2.i586.rpm) = 229572 bytes
+SHA1 (suse121/findutils-4.4.2-17.1.2.x86_64.rpm) = 828da97f0a89c0c939173d842b2d0e5a09158820
+RMD160 (suse121/findutils-4.4.2-17.1.2.x86_64.rpm) = a914b4c94730067850c05daf350a409d6a149662
+Size (suse121/findutils-4.4.2-17.1.2.x86_64.rpm) = 229685 bytes
+SHA1 (suse121/gdbm-1.8.3-388.1.3.i586.rpm) = e533df6f9c2cba9945e15853d502bd40d6dfe8c9
+RMD160 (suse121/gdbm-1.8.3-388.1.3.i586.rpm) = e7bf71611940f78d57bf747251da06f2462c4ee9
+Size (suse121/gdbm-1.8.3-388.1.3.i586.rpm) = 25375 bytes
+SHA1 (suse121/gdbm-1.8.3-388.1.3.x86_64.rpm) = 1aab75ee3cd29715d57d5c7e52738edc7faaaf1d
+RMD160 (suse121/gdbm-1.8.3-388.1.3.x86_64.rpm) = 1fb8df60f3cf9cb954c825689836d58d18c97db7
+Size (suse121/gdbm-1.8.3-388.1.3.x86_64.rpm) = 25502 bytes
+SHA1 (suse121/glibc-2.14.1-14.25.1.i586.rpm) = b563c206a4f743691447430426c1b25447dd15d7
+RMD160 (suse121/glibc-2.14.1-14.25.1.i586.rpm) = 90924227d08c039ae13eb1fd15af1b5368b98d09
+Size (suse121/glibc-2.14.1-14.25.1.i586.rpm) = 1454141 bytes
+SHA1 (suse121/glibc-2.14.1-14.25.1.x86_64.rpm) = 9f0d59182947e4c12a5c9b1f644aac19d413de71
+RMD160 (suse121/glibc-2.14.1-14.25.1.x86_64.rpm) = bc6c4f638334667f74f2e6bbe16ba46ffc96361e
+Size (suse121/glibc-2.14.1-14.25.1.x86_64.rpm) = 1465942 bytes
+SHA1 (suse121/keyutils-1.5.3-2.1.2.i586.rpm) = c839eb9b28d96add46c5de8539890a944f4939d2
+RMD160 (suse121/keyutils-1.5.3-2.1.2.i586.rpm) = 9f71732a0c6060e4b5a61ad42960c848b1252a62
+Size (suse121/keyutils-1.5.3-2.1.2.i586.rpm) = 65801 bytes
+SHA1 (suse121/keyutils-1.5.3-2.1.2.x86_64.rpm) = 7f96442d6f6aa3d07b13fdfc32aabaa8f3f2add0
+RMD160 (suse121/keyutils-1.5.3-2.1.2.x86_64.rpm) = 1f393a6ecda33ea88aed15e2be85ea7c2321c27d
+Size (suse121/keyutils-1.5.3-2.1.2.x86_64.rpm) = 66852 bytes
+SHA1 (suse121/libFLAC8-1.2.1-88.1.2.i586.rpm) = 9813be854f8f50dadec7018be3a435b9c0fe2ce7
+RMD160 (suse121/libFLAC8-1.2.1-88.1.2.i586.rpm) = 850fd54acec83747d5fed523cafb4f6696c6ec99
+Size (suse121/libFLAC8-1.2.1-88.1.2.i586.rpm) = 123790 bytes
+SHA1 (suse121/libFLAC8-1.2.1-88.1.2.x86_64.rpm) = 6bd6730bd1f5b54b00773ca8edd557ccd3341c8b
+RMD160 (suse121/libFLAC8-1.2.1-88.1.2.x86_64.rpm) = 3f5cee0788e2a619647b7494fc384accd1f74d71
+Size (suse121/libFLAC8-1.2.1-88.1.2.x86_64.rpm) = 122971 bytes
+SHA1 (suse121/libacl1-2.2.51-4.1.4.i586.rpm) = a9ab110429289a79726912359b7e991c7c45f669
+RMD160 (suse121/libacl1-2.2.51-4.1.4.i586.rpm) = f8ba4b41e4cb6e504f50a80fe5a3874d48546e96
+Size (suse121/libacl1-2.2.51-4.1.4.i586.rpm) = 18987 bytes
+SHA1 (suse121/libacl1-2.2.51-4.1.4.x86_64.rpm) = a8ee89140c2cde3cbd68eda988f6c45f63e059ce
+RMD160 (suse121/libacl1-2.2.51-4.1.4.x86_64.rpm) = 0b91a655b621517972971fb4bb73b311ef309501
+Size (suse121/libacl1-2.2.51-4.1.4.x86_64.rpm) = 18583 bytes
+SHA1 (suse121/libattr1-2.4.46-5.1.5.i586.rpm) = 671fd82da189dfd8cd979aa3660e0f83ada913cc
+RMD160 (suse121/libattr1-2.4.46-5.1.5.i586.rpm) = d74f5ff35233901c68a183d3665dce087b7403a5
+Size (suse121/libattr1-2.4.46-5.1.5.i586.rpm) = 11817 bytes
+SHA1 (suse121/libattr1-2.4.46-5.1.5.x86_64.rpm) = f21c72e1f71d5ac10d83f484a45503a4c2d73c73
+RMD160 (suse121/libattr1-2.4.46-5.1.5.x86_64.rpm) = 239a84660f3de186d1d4fab87ba958082a64bc49
+Size (suse121/libattr1-2.4.46-5.1.5.x86_64.rpm) = 11862 bytes
+SHA1 (suse121/libcap2-2.22-2.1.4.i586.rpm) = e6df5f160005b6e43568ea91b159f3e277fd91cd
+RMD160 (suse121/libcap2-2.22-2.1.4.i586.rpm) = a220c1b0b1fb13a36bf25267f7eead9385d6f929
+Size (suse121/libcap2-2.22-2.1.4.i586.rpm) = 12346 bytes
+SHA1 (suse121/libcap2-2.22-2.1.4.x86_64.rpm) = cec399d62548eaf6bfe0d913775f8e780f646bd6
+RMD160 (suse121/libcap2-2.22-2.1.4.x86_64.rpm) = f034d83a9a773e321b44384b991988b729afdee9
+Size (suse121/libcap2-2.22-2.1.4.x86_64.rpm) = 11850 bytes
+SHA1 (suse121/libgcc46-4.6.2_20111026-1.1.4.i586.rpm) = 5366c2f63747834d72b968b57f5f21be4b7da706
+RMD160 (suse121/libgcc46-4.6.2_20111026-1.1.4.i586.rpm) = 637ef48dcac563fdf05c74d4560b46e6d114eacd
+Size (suse121/libgcc46-4.6.2_20111026-1.1.4.i586.rpm) = 52532 bytes
+SHA1 (suse121/libgcc46-4.6.2_20111026-1.1.4.x86_64.rpm) = e066fde062060c00c40e9bb5090fb8ecd9a58ff2
+RMD160 (suse121/libgcc46-4.6.2_20111026-1.1.4.x86_64.rpm) = 8da07bfe227d600732b526043bfc5d55550e51b4
+Size (suse121/libgcc46-4.6.2_20111026-1.1.4.x86_64.rpm) = 42361 bytes
+SHA1 (suse121/libidn-1.22-7.1.2.i586.rpm) = 0c00e5f0a1752ff60dd69427e5ccf502356176f5
+RMD160 (suse121/libidn-1.22-7.1.2.i586.rpm) = a625534c7bec2c144cc6a84664c2302022f7c6c2
+Size (suse121/libidn-1.22-7.1.2.i586.rpm) = 233227 bytes
+SHA1 (suse121/libidn-1.22-7.1.2.x86_64.rpm) = 9b7c08db3d73f6fb1eefb37b07320d0aa6581963
+RMD160 (suse121/libidn-1.22-7.1.2.x86_64.rpm) = 1a42ea34fa4634eb3dae523547d293b99391cf32
+Size (suse121/libidn-1.22-7.1.2.x86_64.rpm) = 233962 bytes
+SHA1 (suse121/libldap-2_4-2-2.4.26-3.1.2.i586.rpm) = a22edcdff645a76d055e69d2b17304c8303c0856
+RMD160 (suse121/libldap-2_4-2-2.4.26-3.1.2.i586.rpm) = 5416795c746367e807d3a3b88947338519403536
+Size (suse121/libldap-2_4-2-2.4.26-3.1.2.i586.rpm) = 196927 bytes
+SHA1 (suse121/libldap-2_4-2-2.4.26-3.1.2.x86_64.rpm) = d53c604bac0a34959686b03b40f6cdab826b22bd
+RMD160 (suse121/libldap-2_4-2-2.4.26-3.1.2.x86_64.rpm) = 0b3bb55fcc7d93ba3c4647293ae251ae2c4eee57
+Size (suse121/libldap-2_4-2-2.4.26-3.1.2.x86_64.rpm) = 195593 bytes
+SHA1 (suse121/libncurses5-5.8-5.1.4.i586.rpm) = 05177d0d9207b9116bc4673e9e7d1470e7370d37
+RMD160 (suse121/libncurses5-5.8-5.1.4.i586.rpm) = 461d8b3b1d3b8380ff41928e082728340978edd1
+Size (suse121/libncurses5-5.8-5.1.4.i586.rpm) = 263044 bytes
+SHA1 (suse121/libncurses5-5.8-5.1.4.x86_64.rpm) = abce3de8ff7f5528b8c54a5c11e04f6b5f1eaa44
+RMD160 (suse121/libncurses5-5.8-5.1.4.x86_64.rpm) = 5ccc2a8b0e85e75728dc45876ea6d86a235d8fd7
+Size (suse121/libncurses5-5.8-5.1.4.x86_64.rpm) = 258636 bytes
+SHA1 (suse121/libncurses6-5.8-5.1.4.i586.rpm) = e2fde66e49c5d65c1c93066cdf76688946cb4a58
+RMD160 (suse121/libncurses6-5.8-5.1.4.i586.rpm) = 8f0b976c0f0e04d16b187c0274491c3657da56f8
+Size (suse121/libncurses6-5.8-5.1.4.i586.rpm) = 270077 bytes
+SHA1 (suse121/libncurses6-5.8-5.1.4.x86_64.rpm) = e0fa8466db4668150ec7378cb0972e48c1359d6d
+RMD160 (suse121/libncurses6-5.8-5.1.4.x86_64.rpm) = 674674e3826b0b5aaaa9ff1564c01290c5d325f1
+Size (suse121/libncurses6-5.8-5.1.4.x86_64.rpm) = 261878 bytes
+SHA1 (suse121/libogg0-1.2.2-8.1.2.i586.rpm) = 9d9743eb10966ebfe3d530ce82e725c361aea506
+RMD160 (suse121/libogg0-1.2.2-8.1.2.i586.rpm) = e5a09b70ce732229b85c38cf8549dbe243959421
+Size (suse121/libogg0-1.2.2-8.1.2.i586.rpm) = 20521 bytes
+SHA1 (suse121/libogg0-1.2.2-8.1.2.x86_64.rpm) = 645bcf949bdced34668accaead1a921ba5e8029d
+RMD160 (suse121/libogg0-1.2.2-8.1.2.x86_64.rpm) = 277b52710dc322677fc4d67f6806a06dddc53fdb
+Size (suse121/libogg0-1.2.2-8.1.2.x86_64.rpm) = 19780 bytes
+SHA1 (suse121/libpcre0-8.13-2.1.2.i586.rpm) = 6e75652834f7eee221161a25a01b322ded256388
+RMD160 (suse121/libpcre0-8.13-2.1.2.i586.rpm) = 2d621a777865e0f312f4acc7736ff32e9f312d79
+Size (suse121/libpcre0-8.13-2.1.2.i586.rpm) = 160053 bytes
+SHA1 (suse121/libpcre0-8.13-2.1.2.x86_64.rpm) = 29093f99bdab7b93e537ab958ad18fb4a345ad1f
+RMD160 (suse121/libpcre0-8.13-2.1.2.x86_64.rpm) = 2f3efa7a68583cf3fa5f2fbb67be3156a7691de9
+Size (suse121/libpcre0-8.13-2.1.2.x86_64.rpm) = 161999 bytes
+SHA1 (suse121/libreadline6-6.2-1.8.1.i586.rpm) = a5080095a765f459552fffed3795bd0d64fcbe4f
+RMD160 (suse121/libreadline6-6.2-1.8.1.i586.rpm) = 0f5f25074a148b110951047ddd0e62943c9036e9
+Size (suse121/libreadline6-6.2-1.8.1.i586.rpm) = 118861 bytes
+SHA1 (suse121/libreadline6-6.2-1.8.1.x86_64.rpm) = 673f664f7634ef8f6e6b4d554a50622cc969838b
+RMD160 (suse121/libreadline6-6.2-1.8.1.x86_64.rpm) = 83631e18c472587efc07d4dda57583f3fe141dc2
+Size (suse121/libreadline6-6.2-1.8.1.x86_64.rpm) = 122062 bytes
+SHA1 (suse121/libselinux1-2.0.91-14.1.12.i586.rpm) = 514a6843a858316ed0cb6e1b1182b856a4911b8e
+RMD160 (suse121/libselinux1-2.0.91-14.1.12.i586.rpm) = 6c0dd6d73d006238bcbaee83003ee8eccf17ed61
+Size (suse121/libselinux1-2.0.91-14.1.12.i586.rpm) = 50641 bytes
+SHA1 (suse121/libselinux1-2.0.91-14.1.12.x86_64.rpm) = fd39b0da7cc4cbd140d3001c4dd07fc825f639c9
+RMD160 (suse121/libselinux1-2.0.91-14.1.12.x86_64.rpm) = 0a6d7639c8b459b9c533ad08f39794a0d315e622
+Size (suse121/libselinux1-2.0.91-14.1.12.x86_64.rpm) = 50529 bytes
+SHA1 (suse121/libsndfile-1.0.25-6.1.2.i586.rpm) = 306fbe7821dffd21fbac1166caac47b9b7c0540b
+RMD160 (suse121/libsndfile-1.0.25-6.1.2.i586.rpm) = 35400d26fd4325767e776aebf99c1faf07f88460
+Size (suse121/libsndfile-1.0.25-6.1.2.i586.rpm) = 151858 bytes
+SHA1 (suse121/libsndfile-1.0.25-6.1.2.x86_64.rpm) = 19dde664e1680f2155e2c1f1542d1120b7f84ada
+RMD160 (suse121/libsndfile-1.0.25-6.1.2.x86_64.rpm) = 688437ed8ce18a536654f938e24dc0312b22f6c7
+Size (suse121/libsndfile-1.0.25-6.1.2.x86_64.rpm) = 140496 bytes
+SHA1 (suse121/libssh2-1-1.2.9-7.1.3.i586.rpm) = b991862e1b5063ae14093a6343c9ac7d486b0ee4
+RMD160 (suse121/libssh2-1-1.2.9-7.1.3.i586.rpm) = b72270dffa3baee0ef3217b194b87be09f14efcb
+Size (suse121/libssh2-1-1.2.9-7.1.3.i586.rpm) = 66651 bytes
+SHA1 (suse121/libssh2-1-1.2.9-7.1.3.x86_64.rpm) = 94a5afec8081dcf9f0aa72d89c999d342aca33f1
+RMD160 (suse121/libssh2-1-1.2.9-7.1.3.x86_64.rpm) = 317d1c6635afc43268d27ccfc7d76a1163220aaa
+Size (suse121/libssh2-1-1.2.9-7.1.3.x86_64.rpm) = 65809 bytes
+SHA1 (suse121/libstdc++46-4.6.2_20111026-1.1.4.i586.rpm) = 6f3087f2e1e47bdb2c532a4cd239be223df64470
+RMD160 (suse121/libstdc++46-4.6.2_20111026-1.1.4.i586.rpm) = 4418630c958b1ab286648b13506ff5d0d9e7fe32
+Size (suse121/libstdc++46-4.6.2_20111026-1.1.4.i586.rpm) = 258038 bytes
+SHA1 (suse121/libstdc++46-4.6.2_20111026-1.1.4.x86_64.rpm) = eb5b9dcbafa4bdbab80f37d2b27d588f0939c8f5
+RMD160 (suse121/libstdc++46-4.6.2_20111026-1.1.4.x86_64.rpm) = f31384715d1fe91add1dfad509e55694a2292cdb
+Size (suse121/libstdc++46-4.6.2_20111026-1.1.4.x86_64.rpm) = 247814 bytes
+SHA1 (suse121/libuuid1-2.20.1-1.8.1.i586.rpm) = 1e3a1a2a491c512696ea60acc9a8d0311c3c186c
+RMD160 (suse121/libuuid1-2.20.1-1.8.1.i586.rpm) = 5f5eddc4096059ac0cf979d3a091916f4da7ec32
+Size (suse121/libuuid1-2.20.1-1.8.1.i586.rpm) = 21901 bytes
+SHA1 (suse121/libuuid1-2.20.1-1.8.1.x86_64.rpm) = 7e96bf6b27e8ca62c6f0972e1a08108fa735f10b
+RMD160 (suse121/libuuid1-2.20.1-1.8.1.x86_64.rpm) = 0100f9895dbdab2fd42b9469286f1b8e93c73d51
+Size (suse121/libuuid1-2.20.1-1.8.1.x86_64.rpm) = 21214 bytes
+SHA1 (suse121/libvorbis0-1.3.2-12.3.1.i586.rpm) = b0fcb913929706e41f7785b2f67bd2edcdcb9694
+RMD160 (suse121/libvorbis0-1.3.2-12.3.1.i586.rpm) = f190e2116a20acd485898e4d68d81678488106c1
+Size (suse121/libvorbis0-1.3.2-12.3.1.i586.rpm) = 85248 bytes
+SHA1 (suse121/libvorbis0-1.3.2-12.3.1.x86_64.rpm) = 658f252ad077acd6dd92666557390051d346bc3e
+RMD160 (suse121/libvorbis0-1.3.2-12.3.1.x86_64.rpm) = 85f2c3a834ede53e3df3d27aed9bd77f1cfded48
+Size (suse121/libvorbis0-1.3.2-12.3.1.x86_64.rpm) = 88635 bytes
+SHA1 (suse121/mozilla-nspr-4.8.9-3.1.2.i586.rpm) = efb769d764b56a6283721e92c0c47ff87e0ff267
+RMD160 (suse121/mozilla-nspr-4.8.9-3.1.2.i586.rpm) = dc98d7b5ba6410b38e289616f986ea6c5ff626f4
+Size (suse121/mozilla-nspr-4.8.9-3.1.2.i586.rpm) = 108036 bytes
+SHA1 (suse121/mozilla-nspr-4.8.9-3.1.2.x86_64.rpm) = d0a7311d90f9c952ae4f0a3fbb1b86210497ee6b
+RMD160 (suse121/mozilla-nspr-4.8.9-3.1.2.x86_64.rpm) = 5d11ccfb2d39818ac1e6fb376b2487b06a95e3c7
+Size (suse121/mozilla-nspr-4.8.9-3.1.2.x86_64.rpm) = 106487 bytes
+SHA1 (suse121/mozilla-nss-3.13.1-9.11.1.i586.rpm) = 8e462ad823587b863622bf13cf07db311850e4a1
+RMD160 (suse121/mozilla-nss-3.13.1-9.11.1.i586.rpm) = b03b2ef72939ac9783a3d77387d7b2547fe35f60
+Size (suse121/mozilla-nss-3.13.1-9.11.1.i586.rpm) = 575570 bytes
+SHA1 (suse121/mozilla-nss-3.13.1-9.11.1.x86_64.rpm) = 44dc5cda8b62029ab54c2b0800a9df64652b9cef
+RMD160 (suse121/mozilla-nss-3.13.1-9.11.1.x86_64.rpm) = e216a35da85e39b02847f65e8c912f98fda43b9a
+Size (suse121/mozilla-nss-3.13.1-9.11.1.x86_64.rpm) = 567373 bytes
+SHA1 (suse121/net-tools-1.60-751.1.2.i586.rpm) = 56ef74991f44d1cd5360afab8462f262c390bdbb
+RMD160 (suse121/net-tools-1.60-751.1.2.i586.rpm) = 3c9827f40c52b29259638d93fd204a41a5a9b944
+Size (suse121/net-tools-1.60-751.1.2.i586.rpm) = 233944 bytes
+SHA1 (suse121/net-tools-1.60-751.1.2.x86_64.rpm) = fc137793db291714700ccc3a713f23e7403657b7
+RMD160 (suse121/net-tools-1.60-751.1.2.x86_64.rpm) = 43237922d316069a0d15e42802209f8842df59da
+Size (suse121/net-tools-1.60-751.1.2.x86_64.rpm) = 237401 bytes
+SHA1 (suse121/tcpd-7.6-870.1.2.i586.rpm) = f14c60d632d5efa4f6713b1e7230e768dcb6ca8a
+RMD160 (suse121/tcpd-7.6-870.1.2.i586.rpm) = 69ded8b580705451e3ca3f90ce3bd5f448c2b478
+Size (suse121/tcpd-7.6-870.1.2.i586.rpm) = 78352 bytes
+SHA1 (suse121/tcpd-7.6-870.1.2.x86_64.rpm) = d20194a5d4782284329578b7126f97944f68cfaa
+RMD160 (suse121/tcpd-7.6-870.1.2.x86_64.rpm) = 3e2a0532506839c826b44e2083752b0aef17afdc
+Size (suse121/tcpd-7.6-870.1.2.x86_64.rpm) = 78451 bytes
+SHA1 (suse121/zlib-1.2.5_git201105272030-20.3.1.i586.rpm) = 0a0a8e3228c2498c82c67a09b8c021237fb8af81
+RMD160 (suse121/zlib-1.2.5_git201105272030-20.3.1.i586.rpm) = 4c43db242cc3d09c4bbf8ada56f558f8ba5d64ab
+Size (suse121/zlib-1.2.5_git201105272030-20.3.1.i586.rpm) = 51174 bytes
+SHA1 (suse121/zlib-1.2.5_git201105272030-20.3.1.x86_64.rpm) = c4f97e9b8e0b359b0063a600b822c14db2403a50
+RMD160 (suse121/zlib-1.2.5_git201105272030-20.3.1.x86_64.rpm) = 39f8c1c212e746af89e9fc8873e11b311fbec477
+Size (suse121/zlib-1.2.5_git201105272030-20.3.1.x86_64.rpm) = 49923 bytes
diff --git a/emulators/suse121_base/files/SuSE-release b/emulators/suse121_base/files/SuSE-release
new file mode 100644
index 00000000000..728e5a77870
--- /dev/null
+++ b/emulators/suse121_base/files/SuSE-release
@@ -0,0 +1,2 @@
+SuSE Linux @SUSE_VERSION@ (@SUSE_ARCH@)
+VERSION = @SUSE_VERSION@
diff --git a/emulators/suse121_base/files/linux-mkpwd.sh b/emulators/suse121_base/files/linux-mkpwd.sh
new file mode 100644
index 00000000000..e24ea039115
--- /dev/null
+++ b/emulators/suse121_base/files/linux-mkpwd.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# $NetBSD: linux-mkpwd.sh,v 1.1.1.1 2012/03/21 13:35:50 obache Exp $
+#
+
+######################################################################
+#
+# NAME
+# @LINUX_BASE@-mkpwd -- create passwd/group files for COMPAT_LINUX
+#
+# SYNOPSYS
+# @LINUX_BASE@-mkpwd
+#
+# DESCRIPTION
+# @LINUX_BASE@-mkpwd creates passwd and group files and databases
+# for a COMPAT_LINUX installation based on the files found in
+# /etc, e.g. /etc/passwd, /etc/master.passwd, /etc/group, etc.
+#
+######################################################################
+
+SRCDIR=/etc
+DESTDIR=@EMULDIR@/etc
+
+[ -d $DESTDIR ] || exit 1
+
+umask 22
+cd $DESTDIR
+cp -f $SRCDIR/passwd .
+sed s/^wheel:/root:/ <$SRCDIR/group >group
+
+umask 77
+awk -F: '{print($1":"$2":0:0:10000::::")}' <$SRCDIR/master.passwd >shadow
+sed s/^wheel:/root:/ <$SRCDIR/group |
+awk -F: '{print($1":*:root:root")}' >gshadow
+
+exit 0