diff --git a/metadata/md5-cache/sys-apps/sed-4.5 b/metadata/md5-cache/sys-apps/sed-4.5
deleted file mode 100644
index 56b5670..0000000
--- a/metadata/md5-cache/sys-apps/sed-4.5
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure prepare
-DEPEND=acl? ( virtual/acl ) nls? ( virtual/libintl ) selinux? ( sys-libs/libselinux ) nls? ( sys-devel/gettext )
-DESCRIPTION=Super-useful stream editor
-EAPI=6
-HOMEPAGE=http://sed.sourceforge.net/
-IUSE=acl forced-sandbox nls selinux static
-KEYWORDS=*
-LICENSE=GPL-3
-RDEPEND=acl? ( virtual/acl ) nls? ( virtual/libintl ) selinux? ( sys-libs/libselinux )
-SLOT=0
-SRC_URI=mirror://gnu/sed/sed-4.5.tar.xz
-_eclasses_=eutils	06133990e861be0fe60c2b428fd025d9	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	b2f01ad412baf81650c23fcf0975fa33	toolchain-funcs	209edad4a5c4812e7b2f8021650974f0
-_md5_=e633ac8ee239cdb6e0011c1153450f02
diff --git a/metadata/md5-cache/sys-apps/sed-4.7 b/metadata/md5-cache/sys-apps/sed-4.7
new file mode 100644
index 0000000..dd26bd8
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/sed-4.7
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure
+DEPEND=!static? ( acl? ( virtual/acl ) nls? ( virtual/libintl ) selinux? ( sys-libs/libselinux ) ) nls? ( sys-devel/gettext ) static? ( acl? ( virtual/acl[static-libs(+)] ) nls? ( virtual/libintl[static-libs(+)] ) selinux? ( sys-libs/libselinux[static-libs(+)] ) )
+DESCRIPTION=Super-useful stream editor
+EAPI=6
+HOMEPAGE=http://sed.sourceforge.net/
+IUSE=acl nls selinux static
+KEYWORDS=*
+LICENSE=GPL-3
+RDEPEND=!static? ( acl? ( virtual/acl ) nls? ( virtual/libintl ) selinux? ( sys-libs/libselinux ) )
+SLOT=0
+SRC_URI=mirror://gnu/sed/sed-4.7.tar.xz
+_eclasses_=eutils	06133990e861be0fe60c2b428fd025d9	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	b2f01ad412baf81650c23fcf0975fa33	toolchain-funcs	209edad4a5c4812e7b2f8021650974f0
+_md5_=2e2f0fb86ed18cb291bdaf2c51099825
diff --git a/sys-apps/sed/Manifest b/sys-apps/sed/Manifest
index a93fc1f..23b0ec9 100644
--- a/sys-apps/sed/Manifest
+++ b/sys-apps/sed/Manifest
@@ -1 +1 @@
-DIST sed-4.5.tar.xz 1274252 BLAKE2B 08525659e0e01ec50e736c1665634f3816f57c48aeefa7f6bc7a152cd6c171bb4e96e5c215429fc5edbe6e1de6cc3efe4f2f3bf6865933a30dd1700e921d5b3f SHA512 f95fb27e03b2301dae63878413b4c48e40341cc676945a612e1d0bd911da3192858ae142791292a99fbdaacbc7dab2d6fccb50787c06846f99b0b3740b40c196
+DIST sed-4.7.tar.xz 1298316 BLAKE2B 752bc2e942b6f041710c6811518147c5fa4b143b33ae842ec1f142ec914bfaf4d7e8a94a2b1a5b345789944e5426f7946997f2ccbc43ee5034351a95ce3a677e SHA512 e0be5db4cdf8226b34aaa9071bc5ae0eafde1c52227cee3512eea7fe2520d6c5cebf15266aa5c4adffbb51bf125c140a15644e28d57759893c12823ea9bbf4fb
diff --git a/sys-apps/sed/metadata.xml b/sys-apps/sed/metadata.xml
index e104c64..054748d 100644
--- a/sys-apps/sed/metadata.xml
+++ b/sys-apps/sed/metadata.xml
@@ -9,11 +9,4 @@
 	<remote-id type="sourceforge">sed</remote-id>
 	<remote-id type="cpe">cpe:/a:gnu:sed</remote-id>
 </upstream>
-<use>
-	<flag name="forced-sandbox">
-		Always enable --sandbox mode for simpler/secure runtime (disables e/r/w commands).
-		Note: This may break many configure scripts, so it should be avoided on dev systems
-		(and generally used on binpkg/final systems only).
-	</flag>
-</use>
 </pkgmetadata>
diff --git a/sys-apps/sed/sed-4.5.ebuild b/sys-apps/sed/sed-4.5.ebuild
deleted file mode 100644
index 855ab78..0000000
--- a/sys-apps/sed/sed-4.5.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Super-useful stream editor"
-HOMEPAGE="http://sed.sourceforge.net/"
-SRC_URI="mirror://gnu/sed/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="*"
-IUSE="acl forced-sandbox nls selinux static"
-
-RDEPEND="acl? ( virtual/acl )
-	nls? ( virtual/libintl )
-	selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
-	nls? ( sys-devel/gettext )"
-
-src_bootstrap_sed() {
-	# make sure system-sed works #40786 #650052
-	if ! type -p sed > /dev/null || has_version 'sys-apps/sed[forced-sandbox]' ; then
-		mkdir -p "${T}/bootstrap"
-		printf '#!/bin/sh\nexec /bin/sed "$@"\n' > "${T}/bootstrap/sed" || die
-		chmod a+rx "${T}/bootstrap/sed"
-		PATH="${T}/bootstrap:${PATH}"
-	fi
-}
-
-src_prepare() {
-	# Don't use sed before bootstrap if we have to recover a broken host sed.
-	src_bootstrap_sed
-
-	default
-
-	if use forced-sandbox ; then
-		# Upstream doesn't want to add a configure flag for this.
-		# https://lists.gnu.org/archive/html/bug-sed/2018-03/msg00001.html
-		sed -i \
-			-e '/^bool sandbox = false;/s:false:true:' \
-			sed/sed.c || die
-		# Make sure the sed took.
-		grep -q '^bool sandbox = true;' sed/sed.c || die "forcing sandbox failed"
-	fi
-}
-
-src_configure() {
-	local myconf=()
-	if use userland_GNU; then
-		myconf+=( --exec-prefix="${EPREFIX}" )
-	else
-		myconf+=( --program-prefix=g )
-	fi
-
-	export ac_cv_search_setfilecon=$(usex selinux -lselinux)
-	export ac_cv_header_selinux_{context,selinux}_h=$(usex selinux)
-	use static && append-ldflags -static
-	myconf+=(
-		$(use_enable acl)
-		$(use_enable nls)
-	)
-	econf "${myconf[@]}"
-}
diff --git a/sys-apps/sed/sed-4.7.ebuild b/sys-apps/sed/sed-4.7.ebuild
new file mode 100644
index 0000000..de6afce
--- /dev/null
+++ b/sys-apps/sed/sed-4.7.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Super-useful stream editor"
+HOMEPAGE="http://sed.sourceforge.net/"
+SRC_URI="mirror://gnu/sed/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="*"
+IUSE="acl nls selinux static"
+
+RDEPEND="
+	!static? (
+		acl? ( virtual/acl )
+		nls? ( virtual/libintl )
+		selinux? ( sys-libs/libselinux )
+	)
+"
+DEPEND="${RDEPEND}
+	nls? ( sys-devel/gettext )
+	static? (
+		acl? ( virtual/acl[static-libs(+)] )
+		nls? ( virtual/libintl[static-libs(+)] )
+		selinux? ( sys-libs/libselinux[static-libs(+)] )
+	)
+"
+
+src_configure() {
+	local myconf=()
+	if use userland_GNU; then
+		myconf+=( --exec-prefix="${EPREFIX}" )
+	else
+		myconf+=( --program-prefix=g )
+	fi
+
+	export ac_cv_search_setfilecon=$(usex selinux -lselinux)
+	export ac_cv_header_selinux_{context,selinux}_h=$(usex selinux)
+	use static && append-ldflags -static
+	myconf+=(
+		$(use_enable acl)
+		$(use_enable nls)
+	)
+	econf "${myconf[@]}"
+}
