| # Copyright (c) 2013 The Chromium OS Authors. All rights reserved. |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| EAPI="5" |
| |
| DESCRIPTION="Metapackage that provides the implicit system |
| dependencies of anything CrOS-ish. These are things like 'mv', 'ls', |
| 'mkfs', 'a shell', 'c libraries', users and groups, SSL certs, etc. If |
| every package had to specify them, it'd be onerous and also difficult |
| to replace them with other functional equivalents. |
| |
| Developers should assume that this metapackage supplies functionality |
| roughly equivalent to a POSIX-compliant system. Each package we include here |
| has justification provided inline. For further reference, see |
| POSIX (1003.1-2008): http://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html |
| FHS: http://www.pathname.com/fhs/pub/fhs-2.3.html |
| |
| Other than the standard C and C++ libraries (libc, libpthreads, libstdc++, etc), |
| if you're linking against a library that happens to be installed by a package |
| listed here, you MUST also depend on the appropriate package. |
| |
| |
| Exclusions: |
| compression utils, e.g. tar/bzip2/gzip: at this time, we don't store data |
| compressed on the rootfs, and don't expect users to be interacting on the |
| command line. If your daemon needs functionality like this, ideally you'd |
| use a library that implements this functionality and not command-line tools. |
| |
| iputils: ping et al are helpful diagnostic tools, but not required for normal |
| system function." |
| |
| HOMEPAGE="http://src.chromium.org" |
| |
| LICENSE="" |
| SLOT="0" |
| KEYWORDS="*" |
| IUSE="" |
| |
| RDEPEND="" |
| |
| # We need a /bin/sh shell. |
| RDEPEND+=" app-shells/dash" |
| |
| # We need our custom /etc/passwd and friends, as well as some symlinks: |
| # /bin/sh |
| # /usr/bin/awk |
| RDEPEND+=" chromeos-base/chromeos-base" |
| |
| # Many packages need a blessed list of SSL certificates. For non Google |
| # distributed Chromium OS systems, that's the Mozilla NSS set, which is |
| # installed by app-misc/ca-certificates from portable-stable. The old |
| # chromiumos-overlay for - chromeos-base/root-certificates has been deleted. See |
| # https://chromium.googlesource.com/chromiumos/docs/+/master/ca_certs.md for |
| # more details. |
| RDEPEND+=" |
| app-misc/ca-certificates |
| !chromeos-base/root-certificates |
| " |
| |
| # Basic FHS setup. |
| RDEPEND+=" sys-apps/baselayout" |
| |
| # We use a fair amount of shell script, and need common tools: |
| # general tools: echo, env, expr, false, printf, pwd, sleep, test, true |
| # stream tools: cat, head, sort, tail |
| # filesystem tools: cp, dd, ln, ls, mkdir, mkfifo, mknod, mv, readlink, rm, |
| # rmdir, sync, touch |
| # permission tools: chgrp, chmod, chown, id |
| # process tools: chroot, nice, nohup |
| RDEPEND+=" sys-apps/coreutils" |
| |
| # Those scripts also need some non-core utils: |
| # awk -- symlink to mawk is created in chromeos-base |
| # find |
| # grep |
| # sed |
| # which -- frequently used to check for installed software. |
| RDEPEND+=" |
| sys-apps/findutils |
| sys-apps/grep |
| sys-apps/mawk |
| sys-apps/sed |
| sys-apps/which |
| " |
| |
| # Scripts often manage process lifetime with tools like: |
| # kill |
| # ps |
| # sysctl |
| # Some user utils are installed here as well (top, free, uptime) but |
| # there's no guarantee that will always be so. |
| RDEPEND+=" sys-process/procps" |
| |
| # Required: |
| # hostname. |
| # ipconfig et al are useful, but should be provided by your build |
| # profile if you need them. |
| RDEPEND+=" sys-apps/net-tools" |
| |
| # Required: |
| # su |
| # NB: Password management tools ({group,user}{add,del,mod}) are part of the |
| # build system. |
| RDEPEND+=" sys-apps/shadow" |
| |
| # Required: |
| # dmesg, flock, ionice, logger, mount, umount. |
| # Provided currently, but not guaranteed: |
| # agetty, getopt, hexdump, fsck |
| RDEPEND+=" sys-apps/util-linux" |
| |
| # Provides gcc runtime libs. |
| RDEPEND+=" sys-libs/gcc-libs" |
| |
| # Provides libc++ libs. |
| RDEPEND+=" |
| sys-libs/libcxxabi |
| sys-libs/libcxx |
| " |
| |
| # This should be dropped once we have converted to 'virtual/libc'. |
| RDEPEND+=" sys-libs/timezone-data" |
| |
| DEPEND="${RDEPEND}" |