summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
authorRichard Yao <ryao@gentoo.org>2015-10-01 00:12:11 -0400
committerRichard Yao <ryao@gentoo.org>2015-10-01 00:29:48 -0400
commit735cf46fa78ec87d35db9a6eb1256b3489d89d29 (patch)
tree8f9c04c54b8f934a80474234cf2868a0ca51de61 /sys-fs
parentsys-block/fio: delete wrong arch USE flag checking (diff)
downloadgentoo-735cf46fa78ec87d35db9a6eb1256b3489d89d29.tar.gz
gentoo-735cf46fa78ec87d35db9a6eb1256b3489d89d29.tar.bz2
gentoo-735cf46fa78ec87d35db9a6eb1256b3489d89d29.zip
sys-fs/zfs and friends: bump to 0.6.5.2
Upstream release notes: https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.2 Some additional improvements were made to the ebuilds in this bump. 1. The incorrect requirement on BLK_DEV_LOOP was removed from sys-fs/zfs-kmod in favor of a cups ebuild style warning in sys-fs/zfs when BLK_DEV_LOOP is not avaliable and the test suite has been installed. 2. The regression where we remove the dracut module has been fixed. 3. The failure to migrate users to the zfs-zed script from the zed script has been fixed. 4. The 9999 ebuilds have been synchronized with the 0.6.5.2 ebuilds. 5. The sys-fs/zfs-kmod-0.6.5 has been removed due to the regression that prompted sys-fs/zfs-kmod-0.6.5-r1. Package-Manager: portage-2.2.20.1 Signed-off-by: Richard Yao <ryao@gentoo.org>
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/zfs-kmod/Manifest1
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-0.6.5.2.ebuild (renamed from sys-fs/zfs-kmod/zfs-kmod-0.6.5.ebuild)3
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-9999.ebuild35
-rw-r--r--sys-fs/zfs/Manifest1
-rw-r--r--sys-fs/zfs/zfs-0.6.5.2.ebuild202
-rw-r--r--sys-fs/zfs/zfs-9999.ebuild85
6 files changed, 295 insertions, 32 deletions
diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest
index 6112879d8828..a3e609ff0934 100644
--- a/sys-fs/zfs-kmod/Manifest
+++ b/sys-fs/zfs-kmod/Manifest
@@ -6,6 +6,7 @@ DIST zfs-0.6.3-patches-r1.tar.xz 87852 SHA256 71b5286f77cb6a6c2b97cee406dfd4788f
DIST zfs-0.6.3.tar.gz 1665270 SHA256 00caeae63cc724d3dd741aeb36fd2dc03d2158794bd6a5e925cdc8d7e5d3da8c SHA512 8c7741f5f227eb031d79fe87bf7d60e790a098fa6caede462d556c97d798832f97f5a377cbb74fc99b8d198e5f3cc1a3491f69fcdaa0408933dbadd132013416 WHIRLPOOL db9791da12c441c89667b194154b209f5aa69ea46d5327cfcde0b3a910cf1f0e5ca448909824e45b31252a1907280b711fb6ba04eb313d09de0ffbf5e6e304fe
DIST zfs-0.6.4.2.tar.gz 1738601 SHA256 26af2924cbb891b79203a31827cba4cdc310162d5f7b9e2d643eb6576aa19015 SHA512 87a28997b8f9d36e189410171db583402418a55782b7b7f333993e98c5e17ccc4b6cd5825f38b904294c87e3dfdfb7748bd71cc371589c1358f16c942e0c18db WHIRLPOOL 1700de7da56311a7b608c99a821e2fa97a6145ccc88f3d8eff12f778421ba7b7b9cc5f5fbe5f1acd2ea2fd1db778c200a2ea961e3859a8fc89d80474894293f1
DIST zfs-0.6.4.tar.gz 1735736 SHA256 7f37aaaa1fc15201dde58bb84e0f191ccac462f19ffec0c889b6f6ed3f73a804 SHA512 cf47cbf5fa8dff75f5e9d81b323f5745d7b210266ba9e6ccab16bbf0e2b055aa1168bad94a77a4bc56c6fbe0391593f210bd4c74f7a8d0d99385ac4dd61e5622 WHIRLPOOL 1b0cc8a9727b57f2e63bd106cd94780002a068b31668b9dc103dbc0b48858a380d7c228f39f0526fc84b9d10aca1bd376ace0346a2ef4306a9d164c2d56606f1
+DIST zfs-0.6.5.2.tar.gz 1817267 SHA256 aecd2bc5189f2a71a45eb222230146bed231af4f35af5ec7af83a74987c3d595 SHA512 7f0b20feca91d5ab952c1d49ae94d241f8868825b163a3d5f2ad0fd7adcac3ab246a3e6a755019a833be553fbbfd6609828d8123f49a43b42bf76cfd64f234ec WHIRLPOOL 00fd628ef2267366b6f0705e6436ac55b260aabc3588c7f58a7042dfbfe95a0478740b4579326638d28f10ffc8f2d5b3ed21b9f8297e72344ec439fe30310634
DIST zfs-0.6.5.tar.gz 1816180 SHA256 542121940122c922c9d21a2bb39bca4e4a9db2f6bbfd2e576630840e256d4c82 SHA512 58480ee9b0780f1f21d12504abc226be3e6df1939214f6a8f245315d1fa0b9da56b3a744df26426ee78f13684a4ca288df6dddc50f8f91d9d0b4c542980a9c53 WHIRLPOOL fdb5580ec8d4abe57069ce453c1d91225019758ecf5d31856a7897ac7e4b51c6a8ae3258e822f684fbd70a0a7d7410c65c37a569f37d132767522118c587cc24
DIST zfs-kmod-0.6.2-p2.tar.xz 28636 SHA256 12882463a38a5a57cf2bb3c14c5783f9511f6dc7b163a47575f2f3dcc24f26f6 SHA512 5792660ae8f5013d12e70d608e9cffa92a8c4089a88a5e78728ee88204b3f970d452d5b0b3874e02be49ebbc139e07139be7b5a86ca40bc8b23cb11a7198a9a8 WHIRLPOOL 0e4c57b363cdd3d736efbd1355567b18e22439bd3b20ef40b27f6b97ad4570c7cc99a11b196ac25359d1966c1a70e178f4fd1687b60450f148ccda47b07282a9
DIST zfs-kmod-0.6.2-p3.tar.xz 45988 SHA256 4af06d1472f5d24e01d147b6fec5c78fbbd9739d1259bd3fbf57af66c99b9bcb SHA512 eddf67c0aa49d42f663f98dc721bac75e8d0521df5ae174cd6aeee0a935a71b49e06961404eb6c71a09cd239358868a2fe49de4f1d26776948f8fe7fc943165c WHIRLPOOL 5634a92f6f322f67edef95ad121b0b1699e520ca8beb05b3385dc7e20198dd45d337731bf7df69d1b1c552ed0b78d54b15bc9c9e76b694ae4c8d360892b9d764
diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.6.5.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.6.5.2.ebuild
index dd565a46464d..2876e3ba2a2c 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-0.6.5.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-0.6.5.2.ebuild
@@ -41,7 +41,6 @@ RDEPEND="${DEPEND}
pkg_setup() {
linux-info_pkg_setup
CONFIG_CHECK="!DEBUG_LOCK_ALLOC
- BLK_DEV_LOOP
EFI_PARTITION
IOSCHED_NOOP
MODULES
@@ -66,7 +65,7 @@ pkg_setup() {
kernel_is ge 2 6 32 || die "Linux 2.6.32 or newer required"
[ ${PV} != "9999" ] && \
- { kernel_is le 4 2 || die "Linux 4.2 is the latest supported version."; }
+ { kernel_is le 4 3 || die "Linux 4.3 is the latest supported version."; }
check_extra_config
}
diff --git a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
index 50318f9e3040..2876e3ba2a2c 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
@@ -12,13 +12,11 @@ inherit flag-o-matic linux-info linux-mod toolchain-funcs autotools-utils
if [ ${PV} == "9999" ] ; then
inherit git-2
- MY_PV=9999
EGIT_REPO_URI="https://github.com/zfsonlinux/zfs.git"
else
inherit eutils versionator
- MY_PV=$(replace_version_separator 3 '-')
- SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${MY_PV}.tar.gz"
- S="${WORKDIR}/zfs-zfs-${MY_PV}"
+ SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${PV}.tar.gz"
+ S="${WORKDIR}/zfs-zfs-${PV}"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64"
fi
@@ -43,7 +41,6 @@ RDEPEND="${DEPEND}
pkg_setup() {
linux-info_pkg_setup
CONFIG_CHECK="!DEBUG_LOCK_ALLOC
- BLK_DEV_LOOP
EFI_PARTITION
IOSCHED_NOOP
MODULES
@@ -65,10 +62,10 @@ pkg_setup() {
DEVTMPFS
"
- kernel_is ge 2 6 26 || die "Linux 2.6.26 or newer required"
+ kernel_is ge 2 6 32 || die "Linux 2.6.32 or newer required"
[ ${PV} != "9999" ] && \
- { kernel_is le 3 16 || die "Linux 3.16 is the latest supported version."; }
+ { kernel_is le 4 3 || die "Linux 4.3 is the latest supported version."; }
check_extra_config
}
@@ -128,10 +125,22 @@ pkg_postinst() {
ewarn "at least 256M and decreasing zfs_arc_max to some value less than that."
fi
- ewarn "This version of ZFSOnLinux includes support for features flags."
- ewarn "If you upgrade your pools to make use of feature flags, you will lose"
- ewarn "the ability to import them using older versions of ZFSOnLinux."
- ewarn "Any new pools will be created with feature flag support and will"
- ewarn "not be compatible with older versions of ZFSOnLinux. To create a new"
- ewarn "pool that is backward compatible, use zpool create -o version=28 ..."
+ ewarn "This version of ZFSOnLinux includes support for new feature flags"
+ ewarn "that are incompatible with previous versions. GRUB2 support for"
+ ewarn "/boot with the new feature flags is not yet available."
+ ewarn "Do *NOT* upgrade root pools to use the new feature flags."
+ ewarn "Any new pools will be created with the new feature flags by default"
+ ewarn "and will not be compatible with older versions of ZFSOnLinux. To"
+ ewarn "create a newpool that is backward compatible wih GRUB2, use "
+ ewarn
+ ewarn "zpool create -d -o feature@async_destroy=enabled "
+ ewarn " -o feature@empty_bpobj=enabled -o feature@lz4_compress=enabled"
+ ewarn " -o feature@spacemap_histogram=enabled"
+ ewarn " -o feature@enabled_txg=enabled "
+ ewarn " -o feature@extensible_dataset=enabled -o feature@bookmarks=enabled"
+ ewarn " ..."
+ ewarn
+ ewarn "GRUB2 support will be updated as soon as either the GRUB2"
+ ewarn "developers do a tag or the Gentoo developers find time to backport"
+ ewarn "support from GRUB2 HEAD."
}
diff --git a/sys-fs/zfs/Manifest b/sys-fs/zfs/Manifest
index fbe195ec7a51..929432045de2 100644
--- a/sys-fs/zfs/Manifest
+++ b/sys-fs/zfs/Manifest
@@ -6,6 +6,7 @@ DIST zfs-0.6.3-patches-r1.tar.xz 87852 SHA256 71b5286f77cb6a6c2b97cee406dfd4788f
DIST zfs-0.6.3.tar.gz 1665270 SHA256 00caeae63cc724d3dd741aeb36fd2dc03d2158794bd6a5e925cdc8d7e5d3da8c SHA512 8c7741f5f227eb031d79fe87bf7d60e790a098fa6caede462d556c97d798832f97f5a377cbb74fc99b8d198e5f3cc1a3491f69fcdaa0408933dbadd132013416 WHIRLPOOL db9791da12c441c89667b194154b209f5aa69ea46d5327cfcde0b3a910cf1f0e5ca448909824e45b31252a1907280b711fb6ba04eb313d09de0ffbf5e6e304fe
DIST zfs-0.6.4.2.tar.gz 1738601 SHA256 26af2924cbb891b79203a31827cba4cdc310162d5f7b9e2d643eb6576aa19015 SHA512 87a28997b8f9d36e189410171db583402418a55782b7b7f333993e98c5e17ccc4b6cd5825f38b904294c87e3dfdfb7748bd71cc371589c1358f16c942e0c18db WHIRLPOOL 1700de7da56311a7b608c99a821e2fa97a6145ccc88f3d8eff12f778421ba7b7b9cc5f5fbe5f1acd2ea2fd1db778c200a2ea961e3859a8fc89d80474894293f1
DIST zfs-0.6.4.tar.gz 1735736 SHA256 7f37aaaa1fc15201dde58bb84e0f191ccac462f19ffec0c889b6f6ed3f73a804 SHA512 cf47cbf5fa8dff75f5e9d81b323f5745d7b210266ba9e6ccab16bbf0e2b055aa1168bad94a77a4bc56c6fbe0391593f210bd4c74f7a8d0d99385ac4dd61e5622 WHIRLPOOL 1b0cc8a9727b57f2e63bd106cd94780002a068b31668b9dc103dbc0b48858a380d7c228f39f0526fc84b9d10aca1bd376ace0346a2ef4306a9d164c2d56606f1
+DIST zfs-0.6.5.2.tar.gz 1817267 SHA256 aecd2bc5189f2a71a45eb222230146bed231af4f35af5ec7af83a74987c3d595 SHA512 7f0b20feca91d5ab952c1d49ae94d241f8868825b163a3d5f2ad0fd7adcac3ab246a3e6a755019a833be553fbbfd6609828d8123f49a43b42bf76cfd64f234ec WHIRLPOOL 00fd628ef2267366b6f0705e6436ac55b260aabc3588c7f58a7042dfbfe95a0478740b4579326638d28f10ffc8f2d5b3ed21b9f8297e72344ec439fe30310634
DIST zfs-0.6.5.tar.gz 1816180 SHA256 542121940122c922c9d21a2bb39bca4e4a9db2f6bbfd2e576630840e256d4c82 SHA512 58480ee9b0780f1f21d12504abc226be3e6df1939214f6a8f245315d1fa0b9da56b3a744df26426ee78f13684a4ca288df6dddc50f8f91d9d0b4c542980a9c53 WHIRLPOOL fdb5580ec8d4abe57069ce453c1d91225019758ecf5d31856a7897ac7e4b51c6a8ae3258e822f684fbd70a0a7d7410c65c37a569f37d132767522118c587cc24
DIST zfs-kmod-0.6.2-p0.tar.xz 8244 SHA256 84456e1d52c6d44cc377d131ee34c042c289d00f74e7a9b521d8ef82bdfcf369 SHA512 ff29830e44aeb537d82d2c34070a245271b51013131f9191d03ab35eff2b86559c4bdadd3cf21f7aa7bec07c3556ef712db9cca2beedd1288036c29d750567e2 WHIRLPOOL 62b9a920a832f5715a24c2a0cdc914a5e77700b0e8723df868b1bf8b8a7ecec6f7df14cb294dfb4f4f219cc8253615c594b609a117b57b576e1796b8042bfdc5
DIST zfs-kmod-0.6.2-p1.tar.xz 15988 SHA256 0d5ee6d53f6ba694937a9c1f009a0c18519e56cfcd328e5a42a0486f967608e5 SHA512 77b4f167073fa1be2501889f6795972a370c90b58dca121c95c38d98b37fa092ad043e5ab447e677f2207da7119b9fd2c940990bec83118edf18daff2eccaa16 WHIRLPOOL 730347f5d6c7449f309f6b53cdbcbb77b94c35385cebdb5a953f851f01d26c87d615b8ef673a7346f8351e01237833e18ed2fc7cca78bb200e7537222b3e46e2
diff --git a/sys-fs/zfs/zfs-0.6.5.2.ebuild b/sys-fs/zfs/zfs-0.6.5.2.ebuild
new file mode 100644
index 000000000000..54dd3410ffc3
--- /dev/null
+++ b/sys-fs/zfs/zfs-0.6.5.2.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit python-r1 linux-info
+
+AT_M4DIR="config"
+AUTOTOOLS_AUTORECONF="1"
+AUTOTOOLS_IN_SOURCE_BUILD="1"
+
+if [ ${PV} == "9999" ] ; then
+ inherit git-2 linux-mod
+ EGIT_REPO_URI="git://github.com/zfsonlinux/${PN}.git"
+else
+ inherit eutils versionator
+ SRC_URI="https://github.com/zfsonlinux/${PN}/archive/${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${P}"
+ KEYWORDS="~amd64 ~arm ~ppc ~ppc64"
+fi
+
+inherit bash-completion-r1 flag-o-matic toolchain-funcs autotools-utils udev systemd
+
+DESCRIPTION="Userland utilities for ZFS Linux kernel module"
+HOMEPAGE="http://zfsonlinux.org/"
+
+LICENSE="BSD-2 CDDL bash-completion? ( MIT )"
+SLOT="0"
+IUSE="bash-completion custom-cflags debug kernel-builtin +rootfs test-suite static-libs"
+RESTRICT="test"
+
+COMMON_DEPEND="
+ sys-apps/util-linux[static-libs?]
+ sys-libs/zlib[static-libs(+)?]
+ virtual/awk
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+"
+
+RDEPEND="${COMMON_DEPEND}
+ !=sys-apps/grep-2.13*
+ !kernel-builtin? ( =sys-fs/zfs-kmod-${PV}* )
+ !sys-fs/zfs-fuse
+ !prefix? ( virtual/udev )
+ test-suite? (
+ sys-apps/util-linux
+ sys-devel/bc
+ sys-block/parted
+ sys-fs/lsscsi
+ sys-fs/mdadm
+ sys-process/procps
+ virtual/modutils
+ )
+ rootfs? (
+ app-arch/cpio
+ app-misc/pax-utils
+ !<sys-boot/grub-2.00-r2:2
+ )
+ !>=sys-fs/udev-init-scripts-28
+"
+
+pkg_setup() {
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Cannot check the linux kernel configuration."
+ else
+ # recheck that we don't have usblp to collide with libusb
+ if use test-suite; then
+ if linux_chkconfig_present BLK_DEV_LOOP; then
+ eerror "The ZFS test suite requires loop device support enabled."
+ eerror "Please enable it:"
+ eerror " CONFIG_BLK_DEV_LOOP=y"
+ eerror "in /usr/src/linux/.config or"
+ eerror " Device Drivers --->"
+ eerror " Block devices --->"
+ eerror " [ ] Loopback device support"
+ fi
+ fi
+ fi
+ fi
+
+}
+
+src_prepare() {
+ # Update paths
+ sed -e "s|/sbin/lsmod|/bin/lsmod|" \
+ -e "s|/usr/bin/scsi-rescan|/usr/sbin/rescan-scsi-bus|" \
+ -e "s|/sbin/parted|/usr/sbin/parted|" \
+ -i scripts/common.sh.in
+
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ use custom-cflags || strip-flags
+ local myeconfargs=(
+ --bindir="${EPREFIX}/bin"
+ --sbindir="${EPREFIX}/sbin"
+ --with-config=user
+ --with-dracutdir="/usr/$(get_libdir)/dracut"
+ --with-linux="${KV_DIR}"
+ --with-linux-obj="${KV_OUT_DIR}"
+ --with-udevdir="$(get_udevdir)"
+ --with-blkid
+ $(use_enable debug)
+ )
+ autotools-utils_src_configure
+
+ # prepare systemd unit and helper script
+ cat "${FILESDIR}/zfs.service.in" | \
+ sed -e "s:@sbindir@:${EPREFIX}/sbin:g" \
+ -e "s:@sysconfdir@:${EPREFIX}/etc:g" \
+ > "${T}/zfs.service" || die
+ cat "${FILESDIR}/zfs-init.sh.in" | \
+ sed -e "s:@sbindir@:${EPREFIX}/sbin:g" \
+ -e "s:@sysconfdir@:${EPREFIX}/etc:g" \
+ > "${T}/zfs-init.sh" || die
+}
+
+src_install() {
+ autotools-utils_src_install
+ gen_usr_ldscript -a uutil nvpair zpool zfs zfs_core
+ use test-suite || rm -rf "${ED}usr/share/zfs"
+
+ use bash-completion && newbashcomp "${FILESDIR}/bash-completion-r1" zfs
+
+ exeinto /usr/libexec
+ doexe "${T}/zfs-init.sh"
+ systemd_dounit "${T}/zfs.service"
+}
+
+pkg_postinst() {
+
+ if ! use kernel-builtin && [ ${PV} = "9999" ]
+ then
+ einfo "Adding ${P} to the module database to ensure that the"
+ einfo "kernel modules and userland utilities stay in sync."
+ update_moduledb
+ fi
+
+ if [ -e "${EROOT}etc/runlevels/boot/zfs" ]
+ then
+ einfo 'The zfs boot script has been split into the zfs-import,'
+ einfo 'zfs-mount and zfs-share scripts.'
+ einfo
+ einfo 'You had the zfs script in your boot runlevel. For your'
+ einfo 'convenience, it has been automatically removed and the three'
+ einfo 'scripts that replace it have been configured to start.'
+ einfo 'The zfs-import and zfs-mount scripts have been added to the boot'
+ einfo 'runlevel while the zfs-share script is in the default runlevel.'
+
+ rm "${EROOT}etc/runlevels/boot/zfs"
+ ln -snf "${EROOT}etc/init.d/zfs-import" \
+ "${EROOT}etc/runlevels/boot/zfs-import"
+ ln -snf "${EROOT}etc/init.d/zfs-mount" \
+ "${EROOT}etc/runlevels/boot/zfs-mount"
+ ln -snf "${EROOT}etc/init.d/zfs-share" \
+ "${EROOT}etc/runlevels/default/zfs-share"
+ else
+ [ -e "${EROOT}etc/runlevels/boot/zfs-import" ] || \
+ einfo "You should add zfs-import to the boot runlevel."
+ [ -e "${EROOT}etc/runlevels/boot/zfs-mount" ] || \
+ einfo "You should add zfs-mount to the boot runlevel."
+ [ -e "${EROOT}etc/runlevels/default/zfs-share" ] || \
+ einfo "You should add zfs-share to the default runlevel."
+ fi
+
+ if [ -e "${EROOT}etc/runlevels/default/zed" ]
+ then
+ einfo 'The downstream OpenRC zed script has replaced by the upstream'
+ einfo 'OpenRC zfs-zed script.'
+ einfo
+ einfo 'You had the zed script in your default runlevel. For your'
+ einfo 'convenience, it has been automatically removed and the zfs-zed'
+ einfo 'script that replaced it has been configured to start.'
+
+ rm "${EROOT}etc/runlevels/boot/zed"
+ ln -snf "${EROOT}etc/init.d/zfs-sed" \
+ "${EROOT}etc/runlevels/default/zfs-zed"
+ else
+ [ -e "${EROOT}etc/runlevels/default/zfs-zed" ] || \
+ einfo "You should add zfs-zed to the default runlevel."
+ fi
+
+ if [ -e "${EROOT}etc/runlevels/shutdown/zfs-shutdown" ]
+ then
+ einfo "The zfs-shutdown script is obsolete. Removing it from runlevel."
+ rm "${EROOT}etc/runlevels/shutdown/zfs-shutdown"
+ fi
+
+}
+
+pkg_postrm() {
+ if ! use kernel-builtin && [ ${PV} = "9999" ]
+ then
+ remove_moduledb
+ fi
+}
diff --git a/sys-fs/zfs/zfs-9999.ebuild b/sys-fs/zfs/zfs-9999.ebuild
index 0bb7b6718277..54dd3410ffc3 100644
--- a/sys-fs/zfs/zfs-9999.ebuild
+++ b/sys-fs/zfs/zfs-9999.ebuild
@@ -5,7 +5,7 @@
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3,3_4} )
-inherit python-r1
+inherit python-r1 linux-info
AT_M4DIR="config"
AUTOTOOLS_AUTORECONF="1"
@@ -13,13 +13,11 @@ AUTOTOOLS_IN_SOURCE_BUILD="1"
if [ ${PV} == "9999" ] ; then
inherit git-2 linux-mod
- EGIT_REPO_URI="https://github.com/zfsonlinux/${PN}.git"
+ EGIT_REPO_URI="git://github.com/zfsonlinux/${PN}.git"
else
inherit eutils versionator
- MY_PV=$(replace_version_separator 3 '-')
- SRC_URI="https://github.com/zfsonlinux/${PN}/archive/${PN}-${MY_PV}.tar.gz
- https://dev.gentoo.org/~ryao/dist/${PN}-kmod-${MY_PV}-p2.tar.xz"
- S="${WORKDIR}/${PN}-${PN}-${MY_PV}"
+ SRC_URI="https://github.com/zfsonlinux/${PN}/archive/${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${P}"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64"
fi
@@ -61,21 +59,33 @@ RDEPEND="${COMMON_DEPEND}
app-misc/pax-utils
!<sys-boot/grub-2.00-r2:2
)
+ !>=sys-fs/udev-init-scripts-28
"
pkg_setup() {
- :
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Cannot check the linux kernel configuration."
+ else
+ # recheck that we don't have usblp to collide with libusb
+ if use test-suite; then
+ if linux_chkconfig_present BLK_DEV_LOOP; then
+ eerror "The ZFS test suite requires loop device support enabled."
+ eerror "Please enable it:"
+ eerror " CONFIG_BLK_DEV_LOOP=y"
+ eerror "in /usr/src/linux/.config or"
+ eerror " Device Drivers --->"
+ eerror " Block devices --->"
+ eerror " [ ] Loopback device support"
+ fi
+ fi
+ fi
+ fi
+
}
src_prepare() {
- if [ ${PV} != "9999" ]
- then
- # Apply patch set
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}/${PN}-kmod-${MY_PV}-patches"
- fi
-
# Update paths
sed -e "s|/sbin/lsmod|/bin/lsmod|" \
-e "s|/usr/bin/scsi-rescan|/usr/sbin/rescan-scsi-bus|" \
@@ -132,8 +142,49 @@ pkg_postinst() {
update_moduledb
fi
- [ -e "${EROOT}etc/runlevels/boot/zfs" ] \
- || ewarn 'You should add zfs to the boot runlevel.'
+ if [ -e "${EROOT}etc/runlevels/boot/zfs" ]
+ then
+ einfo 'The zfs boot script has been split into the zfs-import,'
+ einfo 'zfs-mount and zfs-share scripts.'
+ einfo
+ einfo 'You had the zfs script in your boot runlevel. For your'
+ einfo 'convenience, it has been automatically removed and the three'
+ einfo 'scripts that replace it have been configured to start.'
+ einfo 'The zfs-import and zfs-mount scripts have been added to the boot'
+ einfo 'runlevel while the zfs-share script is in the default runlevel.'
+
+ rm "${EROOT}etc/runlevels/boot/zfs"
+ ln -snf "${EROOT}etc/init.d/zfs-import" \
+ "${EROOT}etc/runlevels/boot/zfs-import"
+ ln -snf "${EROOT}etc/init.d/zfs-mount" \
+ "${EROOT}etc/runlevels/boot/zfs-mount"
+ ln -snf "${EROOT}etc/init.d/zfs-share" \
+ "${EROOT}etc/runlevels/default/zfs-share"
+ else
+ [ -e "${EROOT}etc/runlevels/boot/zfs-import" ] || \
+ einfo "You should add zfs-import to the boot runlevel."
+ [ -e "${EROOT}etc/runlevels/boot/zfs-mount" ] || \
+ einfo "You should add zfs-mount to the boot runlevel."
+ [ -e "${EROOT}etc/runlevels/default/zfs-share" ] || \
+ einfo "You should add zfs-share to the default runlevel."
+ fi
+
+ if [ -e "${EROOT}etc/runlevels/default/zed" ]
+ then
+ einfo 'The downstream OpenRC zed script has replaced by the upstream'
+ einfo 'OpenRC zfs-zed script.'
+ einfo
+ einfo 'You had the zed script in your default runlevel. For your'
+ einfo 'convenience, it has been automatically removed and the zfs-zed'
+ einfo 'script that replaced it has been configured to start.'
+
+ rm "${EROOT}etc/runlevels/boot/zed"
+ ln -snf "${EROOT}etc/init.d/zfs-sed" \
+ "${EROOT}etc/runlevels/default/zfs-zed"
+ else
+ [ -e "${EROOT}etc/runlevels/default/zfs-zed" ] || \
+ einfo "You should add zfs-zed to the default runlevel."
+ fi
if [ -e "${EROOT}etc/runlevels/shutdown/zfs-shutdown" ]
then