diff -crBN /usr/portage/sys-fs/s3backer/Manifest s3backer/Manifest *** /usr/portage/sys-fs/s3backer/Manifest Wed Jun 24 11:10:05 2009 --- s3backer/Manifest Tue Feb 2 12:45:03 2010 *************** *** 1,6 **** --- 1,13 ---- AUX s3backer-qa.patch 1749 RMD160 a4e7c772d174794a8d0f5278b955a2979b6e06c8 SHA1 7b872b3d11dcf239d983e9641d6e920b2e5638bb SHA256 de17836aa493e89cbc711af06f4bd9f507595f77c1709a98d303b8eb3682cac6 + AUX s3backer.example 2945 RMD160 4188071c8da66e36bea2c1af80a497f08331e7ab SHA1 97c0820e7132aa915ecda683059decd3bd849686 SHA256 752ba5d9fd610518b619dc18d6fb29dfe155bb15e7aa7e2f4de91a2c81cacc03 + AUX s3backer.initd 3983 RMD160 5c5d4fd91bf66848203390d26b0a5461c572f11f SHA1 4b8954f20fcdd7204465c11d6515d3404f51e0aa SHA256 ff33e20655d8cc13352f4f6f7c595fbcb4108338226af0d77a2f89fbab68619e DIST s3backer-1.2.2.tar.gz 142054 RMD160 14c98c10b841015fc874147128fcb7b8d76e2abf SHA1 9a2b2e068ea0aff3b4cc16bc6b218a2938ea456f SHA256 8678c69458a09f5f091c8573f6940639f94b928fe30d2861c08768a48bbfec1c + DIST s3backer-1.3.0.tar.gz 161288 RMD160 e27a757e31e3b80d76c3f8535aa1139ffc3ff89c SHA1 a5cd9ee4df1293b925c03a265a53a5e4341e272a SHA256 c8509d02f292a8ece5a02dc7576a81865241db9340dbf72c60985f731cede981 + DIST s3backer-1.3.1.tar.gz 161899 RMD160 035ff47f088fe8813593bdb1b25f41a0558690f1 SHA1 32769291c336b220ced0dedf44e01ec9cf5954d4 SHA256 39cc47c340c1a168c009f435505eb63a6368bddbbe5d495973c0b27a16dcadb6 EBUILD s3backer-1.2.2-r1.ebuild 841 RMD160 0da307e392bd33e6a76998ba5ab763f724d32a49 SHA1 55c01adede2d7818a45c5eb1c38fd7a60a631016 SHA256 10036d572145baf54f34067fc39aaf1ada285d030f035fcf8dec0135874d0455 EBUILD s3backer-1.2.2.ebuild 761 RMD160 cb30b74e6a17b1dd0f1f8532614ea2d43f774725 SHA1 2672cd385f41a4442dc69d3e39241df3ccfe87e7 SHA256 ba1889ce92c049ce297fcc3c45e8d940e131c5904096298f90b4d8a590414d8a + EBUILD s3backer-1.3.0.ebuild 727 RMD160 020306b83a45efe8e3dee7659b319ab9395a34f5 SHA1 c7c6894da2c5aa067f7f1b9a79dea3d355d385ab SHA256 4347df92cae33db0f49c787f50396531488e108aa94db5d4e36472c42d3419cf + EBUILD s3backer-1.3.1-r1.ebuild 1144 RMD160 b6b7a951c7432377bd746c3f338ce25a3bd3575d SHA1 757eebd08394fa7c325bc772fecdfd7adf302357 SHA256 0ee3e5e75edfe7b04e20725da4bb24871e982c6313005c1974003e6ffb1f89ae + EBUILD s3backer-1.3.1.ebuild 727 RMD160 020306b83a45efe8e3dee7659b319ab9395a34f5 SHA1 c7c6894da2c5aa067f7f1b9a79dea3d355d385ab SHA256 4347df92cae33db0f49c787f50396531488e108aa94db5d4e36472c42d3419cf MISC ChangeLog 506 RMD160 df0b3e9fd4d089757a1469751be8d71deec353f9 SHA1 cb30d8dd9640ba26d04a04d78d77dcf5fcbb1e0a SHA256 457a84e370fbdf9c184d2cb9c0cbfdc2c297029cde112029cbfb385fe08ea587 MISC metadata.xml 224 RMD160 bb2009757c340fc870e2e7fe5eee501303c70a62 SHA1 e89e8d75b54d9f07a8e7efc9b468a9b74b2d5eec SHA256 79754f25228240ec611264268d0e8dd94cdd8f6cd0473c430343741a2d293824 diff -crBN /usr/portage/sys-fs/s3backer/files/s3backer.example s3backer/files/s3backer.example *** /usr/portage/sys-fs/s3backer/files/s3backer.example Wed Dec 31 18:00:00 1969 --- s3backer/files/s3backer.example Tue Feb 2 10:04:32 2010 *************** *** 0 **** --- 1,73 ---- + # Configuration file for s3backer init script + # Copyright 2010 Gentoo Foundation + # Distributed under the terms of the GNU General Public License v2 + + ############################################################################## + # SETUP + # + # The script and config file try to follow the conventions used in the net + # init script. The script handles initailizing new stores as well. For + # instance, to add a new store to an existing setup you could do the + # following: + # + # echo 's3backer_opts_mystore="--blockSize=128k --size=1T ${s3blocker_opts}"' >> /etc/conf.d/s3backer + # ln -s /etc/init.d/s3backer /etc/init.d/s3backer.mystore + # /etc/init.d/s3backer.mystore initstore + # mkreiserfs -f -q -b 4096 -s 513 -l newstore /mnt/s3b/mystore/file + # /etc/init.d/s3backer.mystore disconnectstore + # /etc/init.d/s3backer.mystore start + # rc-update add s3backer.mystore default + # + # For more information on setting up s3backer see: + # + # [s3backer Homepage] + # http://code.google.com/p/s3backer + # + # [s3backer Wiki] + # http://code.google.com/p/s3backer/w/list + + ############################################################################## + # GLOBAL SETTINGS + # + # These settings will be used unless overwritten by a backing store setting. + + # The Amazon S3 bucket where the backing store block files will live. You + # _must_ fill this in and uncomment. + #bucket="MYCOMPANY-s3backer" + + # The string to place before each backing store block file in the Amazon S3 + # bucket. If not set, the script will use "%hostname-%blocking_store-" as a + # default. If set at the global level "-%blocking_store-" will be added to + # the string you enter here. + #prefix="some_identifier" + + # Where to mount the FUSE file system containing the backing store. If + # used as global setting, each backing store will be placed in a subdirectory + # with the same name as the backing store (ie: /mnt/s3b/mystore). + #store_mount="/mnt/s3b" + + # Where to mount the final loop mounted file system. If used as global + # setting, each file system will be placed in a subdirectory with the same + # name as the backing store (ie: /mnt/s3/mystore). + #final_mount="/mnt/s3" + + # Options to pass to s3backer. For valid options see the s3backer(1) man + # page. + #s3backer_opts="--compress=9 --listBlocks" + + # Options to pass to mount when mounting the loop file system. For valid + # options see the mount(8) man page. + #mount_opts="" + + ############################################################################## + # SETTINGS FOR INDIVIDUAL BACKING STORES + # + # Use the same naming conventions as the conf.d/net file to override the + # global settings on a particular s3backer file system. For instance, a + # read-only file system containing a web home shared by several servers might + # be set up the following way: + # + #prefix_www="shared-www-" + #final_mount_www="/var/www" + #s3backer_opts_www="--blockSize=128k --size=1T --readOnly ${s3backer_opts}" + #mount_opts_www=("ro,uid=apache") diff -crBN /usr/portage/sys-fs/s3backer/files/s3backer.initd s3backer/files/s3backer.initd *** /usr/portage/sys-fs/s3backer/files/s3backer.initd Wed Dec 31 18:00:00 1969 --- s3backer/files/s3backer.initd Tue Feb 2 10:19:34 2010 *************** *** 0 **** --- 1,209 ---- + #!/sbin/runscript + # Copyright 2010 Gentoo Foundation + # Distributed under the terms of the GNU General Public License v2 + + _config_vars="bucket s3backer_opts mount_opts" + _prefix_vars="prefix" + _mount_vars="store_mount final_mount" + + description="Mounts a FUSE-based single file backing store via Amazon S3." + opts="connectstore disconnectstore initstore" + + depend() + { + need net + use dns fuse + after netmount + } + + _default_bucket="" + _default_prefix="$HOSTNAME" + _default_store_mount="/mnt/s3b" + _default_final_mount="/mnt/s3" + _default_s3backer_opts="" + _default_mount_opts="" + + _check_mount_points() + { + local var= + + eindent + + for var in ${_mount_vars}; do + local v= + eval v=\$our_${var} + + checkpath -d ${v} + if [[ $? -gt 0 ]]; then + ebegin "Auto-magically creating ${v} with parent directories" + + mkdir -p ${v} \ + && checkpath -d ${v} + + eend $? "Unable to auto-magically create ${v}. Please create manually." + if [[ $? -gt 0 ]]; then exit 1; fi + fi + done + + eoutdent + } + + _configure_variables() + { + FSNAME=${RC_SVCNAME#*.} + FSVAR=$(shell_var "${FSNAME}") + + if [ "${FSNAME}" == "${RC_SVCNAME}" ]; then + eerror "ERROR: The s3backer init script is not intended to be run directly." + eerror "Please create a link to this script with the name of the file system you want to mount." + einfo "" + eindent + einfo "EXAMPLE:" + einfo "" + eindent + einfo "ln -s s3backer s3backer.bkp" + eoutdent + eoutdent + einfo "" + + exit 1 + fi + + local var= + + for var in ${_config_vars}; do + local v= + eval v=\$${var} + if [ -n "${v}" ]; then + eval our_${var}=\$${var} + else + eval our_${var}=\$_default_${var} + fi + + eval v=\$${var}_${FSVAR} + if [ -n "${v}" ]; then + eval our_${var}=\$${var}_${FSVAR} + fi + done + + for var in ${_prefix_vars}; do + local v= + eval v=\$${var} + if [ -n "${v}" ]; then + eval our_${var}="\${${var}}-${FSNAME}-" + else + eval our_${var}="\${_default_${var}}-${FSNAME}-" + fi + + eval v=\$${var}_${FSVAR} + if [ -n "${v}" ]; then + eval our_${var}=\$${var}_${FSVAR} + fi + done + + for var in ${_mount_vars}; do + local v= + eval v=\$${var} + if [ -n "${v}" ]; then + eval our_${var}="\${${var}}/${FSNAME}" + else + eval our_${var}="\${_default_${var}}/${FSNAME}" + fi + + eval v=\$${var}_${FSVAR} + if [ -n "${v}" ]; then + eval our_${var}=\$${var}_${FSVAR} + fi + done + + if [ -n "${our_mount_opts}" ]; then + our_mount_opts="loop,${our_mount_opts}" + else + our_mount_opts="loop" + fi + + if [[ ${EINFO_VERBOSE} ]]; then + ebegin "Display s3backer settings" + eindent + einfo "bucket: ${our_bucket}" + einfo "prefix: ${our_prefix}" + einfo "store_mount: ${our_store_mount}" + einfo "final_mount: ${our_final_mount}" + einfo "s3backer_opts: ${our_s3backer_opts}" + einfo "mount_opts: ${our_mount_opts}" + eoutdent + eend 0 + fi + } + + connectstore() + { + _configure_variables + + ebegin "Connecting to Amazon S3 backed store s3://${our_bucket}/${our_prefix}*" + + _check_mount_points + + s3backer --prefix=${our_prefix} ${our_s3backer_opts} ${our_bucket} ${our_store_mount} + + eend $? "Could not connect to Amazon S3 backed store s3://${our_bucket}/${our_prefix}*" + return $? + } + + disconnectstore() + { + _configure_variables + + ebegin "Disconnecting from Amazon S3 backed store s3://${our_bucket}/${our_prefix}*" + + umount ${our_store_mount} + + eend $? "Could not disconnect from Amazon S3 backed store s3://${our_bucket}/${our_prefix}*" + return $? + } + + initstore() + { + connectstore + } + + _mountfs() + { + _configure_variables + + ebegin "Mounting ${our_store_mount}/file on ${our_final_mount}" + + _check_mount_points + + mount -o ${our_mount_opts} ${our_store_mount}/file ${our_final_mount} + + eend $? "Could not mount ${our_store_mount}/file on ${our_final_mount}" + return $? + } + + _unmountfs() + { + _configure_variables + + ebegin "Unmounting ${our_final_mount}" + + umount ${our_final_mount} + + eend $? "Could not unmount ${our_final_mount}" + return $? + } + start() + { + connectstore \ + && _mountfs + + return $? + } + + stop() + { + _unmountfs \ + && disconnectstore + + return $? + } diff -crBN /usr/portage/sys-fs/s3backer/s3backer-1.3.0.ebuild s3backer/s3backer-1.3.0.ebuild *** /usr/portage/sys-fs/s3backer/s3backer-1.3.0.ebuild Wed Dec 31 18:00:00 1969 --- s3backer/s3backer-1.3.0.ebuild Tue Feb 2 07:13:02 2010 *************** *** 0 **** --- 1,33 ---- + # Copyright 1999-2009 Gentoo Foundation + # Distributed under the terms of the GNU General Public License v2 + + EAPI="2" + + inherit autotools eutils + + DESCRIPTION="FUSE-based single file backing store via Amazon S3" + HOMEPAGE="http://code.google.com/p/s3backer" + SRC_URI="http://s3backer.googlecode.com/files/s3backer-${PV}.tar.gz" + LICENSE="GPL-2" + DEPEND="net-misc/curl + sys-fs/fuse + sys-libs/zlib + dev-libs/expat + dev-libs/openssl" + RDEPEND="${DEPEND}" + KEYWORDS="~x86 ~amd64" + SLOT="0" + IUSE="" + + src_prepare() { + epatch "${FILESDIR}"/${PN}-qa.patch + eautoreconf + } + + src_configure() { + econf --prefix=/ --exec-prefix=/usr --localstatedir=/var || die "econf failed" + } + + src_install() { + emake install DESTDIR="${D}" || die "Install failed" + } diff -crBN /usr/portage/sys-fs/s3backer/s3backer-1.3.1-r1.ebuild s3backer/s3backer-1.3.1-r1.ebuild *** /usr/portage/sys-fs/s3backer/s3backer-1.3.1-r1.ebuild Wed Dec 31 18:00:00 1969 --- s3backer/s3backer-1.3.1-r1.ebuild Tue Feb 2 12:45:03 2010 *************** *** 0 **** --- 1,48 ---- + # Copyright 1999-2009 Gentoo Foundation + # Distributed under the terms of the GNU General Public License v2 + + EAPI="2" + + inherit autotools eutils + + DESCRIPTION="FUSE-based single file backing store via Amazon S3" + HOMEPAGE="http://code.google.com/p/s3backer" + SRC_URI="http://s3backer.googlecode.com/files/s3backer-${PV}.tar.gz" + LICENSE="GPL-2" + DEPEND="net-misc/curl + >=sys-apps/baselayout-2 + sys-fs/fuse + sys-libs/zlib + dev-libs/expat + dev-libs/openssl" + RDEPEND="${DEPEND}" + KEYWORDS="~x86 ~amd64" + SLOT="0" + IUSE="" + + src_prepare() { + epatch "${FILESDIR}"/${PN}-qa.patch + eautoreconf + } + + src_configure() { + econf --prefix=/ --exec-prefix=/usr --localstatedir=/var || die "econf failed" + } + + src_install() { + emake install DESTDIR="${D}" || die "Install failed" + + newinitd "${FILESDIR}/s3backer.initd" s3backer + newconfd "${FILESDIR}/s3backer.example" s3backer.example + } + + pkg_postinst() { + einfo + einfo "For help configuring s3backer see the project wiki:" + einfo " http://code.google.com/p/s3backer/w/list" + einfo + einfo "This package now includes an init script." + einfo + einfo "See ${ROOT}/etc/conf.d/s3backer.example for more information." + einfo + } diff -crBN /usr/portage/sys-fs/s3backer/s3backer-1.3.1.ebuild s3backer/s3backer-1.3.1.ebuild *** /usr/portage/sys-fs/s3backer/s3backer-1.3.1.ebuild Wed Dec 31 18:00:00 1969 --- s3backer/s3backer-1.3.1.ebuild Tue Feb 2 07:13:02 2010 *************** *** 0 **** --- 1,33 ---- + # Copyright 1999-2009 Gentoo Foundation + # Distributed under the terms of the GNU General Public License v2 + + EAPI="2" + + inherit autotools eutils + + DESCRIPTION="FUSE-based single file backing store via Amazon S3" + HOMEPAGE="http://code.google.com/p/s3backer" + SRC_URI="http://s3backer.googlecode.com/files/s3backer-${PV}.tar.gz" + LICENSE="GPL-2" + DEPEND="net-misc/curl + sys-fs/fuse + sys-libs/zlib + dev-libs/expat + dev-libs/openssl" + RDEPEND="${DEPEND}" + KEYWORDS="~x86 ~amd64" + SLOT="0" + IUSE="" + + src_prepare() { + epatch "${FILESDIR}"/${PN}-qa.patch + eautoreconf + } + + src_configure() { + econf --prefix=/ --exec-prefix=/usr --localstatedir=/var || die "econf failed" + } + + src_install() { + emake install DESTDIR="${D}" || die "Install failed" + }