diff options
Diffstat (limited to 'sys-fs/static-dev/static-dev-0.1-r2.ebuild')
-rw-r--r-- | sys-fs/static-dev/static-dev-0.1-r2.ebuild | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/sys-fs/static-dev/static-dev-0.1-r2.ebuild b/sys-fs/static-dev/static-dev-0.1-r2.ebuild new file mode 100644 index 000000000000..ca46b76ab1e5 --- /dev/null +++ b/sys-fs/static-dev/static-dev-0.1-r2.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="A skeleton, statically managed /dev" +HOMEPAGE="https://bugs.gentoo.org/107875" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" + +RDEPEND="sys-apps/makedev" + +pkg_pretend() { + abort() { + eerror "We have detected that you currently use udev or devfs or devtmpfs" + eerror "and this ebuild cannot install to the same mount-point." + die "Cannot install on udev/devfs tmpfs." + } + + if [[ ${MERGE_TYPE} == "buildonly" ]] ; then + # User is just compiling which is fine -- all our checks are merge-time. + return + fi + + # We want to not clobber udev (tmpfs) or older devfs setups. + if [[ -d ${ROOT}/dev/.udev || -c ${ROOT}/dev/.devfs ]] ; then + abort + fi + + # We also want to not clobber newer devtmpfs setups. + if [[ -z ${ROOT} ]] && \ + ! awk '$2 == "/dev" && $3 == "devtmpfs" { exit 1 }' /proc/mounts ; then + abort + fi +} + +pkg_postinst() { + MAKEDEV -d "${ROOT}"/dev generic sg scd rtc hde hdf hdg hdh input audio video +} |