summaryrefslogtreecommitdiffstats
path: root/system
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'next'Peter Korsgaard2016-09-022-2/+2
|\ | | | | | | | | | | Quite some conflicts, so here goes .. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * system/skeleton: use uid/gid 65534 for nobody/nogroupPeter Korsgaard2016-08-262-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As recently discussed on lwn.net: https://lwn.net/Articles/695478/ The kernel has special behaviour for uid/gid 65534: 1. The kernel maps UIDs > 65535 to it when some subsystem/API/fs only supports 16bit UIDs, but a 32bit UID is passed to it. 2. it's used by the kernel's user namespacing as the internal UID that external UIDs are mapped to that don't have any local mapping. 3. It's used by NFS for all user IDs that cannot be mapped locally if UID mapping is enabled. Most distributions already map (or are in the progress of changing) nobody/nogroup to the 65534 uid/gid, so lets do so as well. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | system: sysvinit needs MMUYann E. MORIN2016-08-141-0/+1
| | | | | | | | | | | | | | | | | | | | It uses spawn() and thus fork(), so it needs an MMU. Fixes a build issue reported on IRC for a cortex-m4 build: http://pastebin.com/dGCsy0sr Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | system: zoneinfo usable by musl, tooYann E. MORIN2016-08-091-2/+1
|/ | | | | | | | | | | | | | | | | Currently, we limit installing zoneinfo to non-musl toolchain, by lack of knowledge on how it would work on musl. Turns out that musl uses the same zoneinfo format as glibc does. Make it possible to install the TZ info whatever the C library; for musl, use tzdata as for glibc. Thanks Rich! ;-) Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Rich Felker <dalias@aerifal.cx> Cc: Marc Khouri <marc@khouri.ca> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: move locale purging options to the "System configuration" menuThomas Petazzoni2016-08-031-0/+34
| | | | | | | | | | | | | | The options to purge locales and to generate locale data are currently located in the toolchain menu. However, these options are not really related to the toolchain per-se, they are more system-level configuration options, much like the timezone selection option we already have in the "System configuration" menu. Therefore, it makes more sense to have the locale-related options in the "System configuration" menu as well. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* board: add blackfin gdb simulator supportWaldemar Brodkorb2016-07-241-0/+1
| | | | | | | | | With this config you can bootup a Linux kernel in GDB simulator and test Blackfin kernel and userland. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: do not set hostname and issue for custom skeletonYann E. MORIN2016-07-181-0/+4
| | | | | | | | | | | We expect the custom skeleton to be fully filled with the necessary files, now. There is definitely no reason we should handle setting the hostname and the issue file in there. A user using a custom skeleton should be fully responsible for providing a functional skeleton. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: do not handle network settings for custom skeletonYann E. MORIN2016-07-181-3/+2
| | | | | | | | | | | We expect the custom skeleton to be fully filled with the necessary files, now. There is definitely no reason we should handle network settings in there. A user using a custom skeleton should be fully responsible for providing a functional skeleton. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: move the rootfs skeleton choiceYann E. MORIN2016-07-181-28/+28
| | | | | | | | | | | | In the following commits, we'll be switching more options to be conditional on the default or custom skeleton. So, it makes sense that those options come after the choice of a skeleton. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: provide no default for custom skeleton pathYann E. MORIN2016-07-181-1/+1
| | | | | | | | | | | | | | | Being custom means that our default one is not suitable to start with. So there is no reason to offer it as the default path. Add a check that it is not empty. Add a separating empty line, for good measure, too. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Romain Naour <romain.naour@openwide.fr> Cc: Arnout Vandecappelle <arnout@mind.be> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/skeleton: remove useless .empty fileYann E. MORIN2016-07-051-0/+0
| | | | | | | | We now have a real file in that directory, so we do not need a .empty placeholder. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: systemd only really supports a R/W rootfsYann E. MORIN2016-07-051-0/+1
| | | | | | | | | Supporting a R/O rootfs needs a bit more love to be fully operational. This will come in later patches... Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system/skeleton: update etc/mtab with a more sensible linkYann E. MORIN2016-07-051-1/+1
| | | | | | | | | | | | | | | | | | | Currently, our /etc/mtab points to /proc/mounts. This was all neat so far, and was good for a sysv-like init system. However, the way today is to point it at /proc/self/mounts, the per-process mount tab. Additionnally, that's what systemd expects. If /etc/mtab is not a symlink to ../proc/self/mounts and the rootfs is readonly, systemd would whine loudly (and a service unit would be marked failed). Since it works well for sysv-like init systems too, just use that. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Reviewed-by: Romain Naour <romain.naour@gmail.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* fs/common: add option to execute custom scripts under fakerootYann E. MORIN2016-07-031-2/+36
| | | | | | | | | | | | | | | | Some users have the need to be able to tweak the content of the target rootfs with root-like rights, that is, from inside the fakeroot script. Add a new system option to allow those users to provide a list of scripts, like the post-build and post-image scripts, that will be run from our fakeroot script. [Peter: pass TARGET_DIR to scripts, tweak help text] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Cam Hutchison <camh@xdna.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* makedevs: add capability supportPhilippe Reynes2016-06-301-0/+5
| | | | | | | | | | | | Add the support of capability to makedevs as extended attribute. Now, it's possible to add a line "|xattr <capability>" after a file description to also add a capability to this file. It's possible to add severals capabilities with severals lines. [Peter: extend doc, reword Config.in, extend error message, use HOST_MAKEDEVS_CFLAGS/LDFLAGS for all flags] Signed-off-by: Philippe Reynes <philippe.reynes@sagemcom.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* Replace (e)glibc by glibcThomas Petazzoni2016-06-281-3/+3
| | | | | | | | | | | | | | | | Following the removal of eglibc support, this commit replaces all occurences of "(e)glibc" by just "glibc". Most of the occurences are in package Config.in comments. In addition, when the form "an (e)glibc ..." was used, it is replaced by "a glibc ...". [Peter: add new efi* packages, s/uclibc/uClibc as suggested by Romain, systemd / liquid-dsp tweaks as suggested by Yann] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: Romain Naour <romain.naour@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system: add help entry to "none" init systemYann E. MORIN2016-05-281-0/+4
| | | | | | | | | | | | | | | | | It can be a little bit misleading to have no init system... Add a comment that states the user has to provide his own init system, either via a package or a rootfs overlay. It is expected that such a user will know what to provide, so we don't really need to specify that it should be /init or /sbin/init or any arbitrary executable pointed to by the kernel command line "init=..." or anything else... Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: Recreate /var/run symlinkMaxime Hadjinlian2016-02-111-1/+1
| | | | | | | | | It was the only one with a trailing slash, it's only for coherence's sake. Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* skeleton: Rename /etc/profile.d/umask to umask.shNicolas Cavallari2016-02-101-0/+0
| | | | | | | | | /etc/profile only sources files that matches the /etc/profile.d/*.sh pattern, so /etc/profile.d/umask was never sourced. Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* Makefile: drop ldconfig handlingThomas Petazzoni2016-01-031-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | The ldconfig handling in the main Makefile is utterly broken, as it calls the build machine ldconfig to generate the ld.so.cache of the target. Unfortunately, the format of the ld.so.cache is architecture specific, and therefore the build machine ldconfig cannot be used as-is. This patch therefore simply drops using ldconfig entirely, and removes /etc/ld.so.conf.d/ from the target skeleton. The idea is that all libraries that should be loaded by the dynamic linker must be installed in paths where the dynamic linker searches them by default (typically /lib or /usr/lib). This might potentially break a few packages, but the only way to know is to actually stop handling ldconfig. In order to be notified of such cases, we add a check in target-finalize to verify that there is no /etc/ld.so.conf file as well as no /etc/ld.so.conf.d directory. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* Merge branch 'next'Peter Korsgaard2015-12-012-47/+0
|\ | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * readline: install configuration file from package recipeJérôme Pouiller2015-11-171-44/+0
| | | | | | | | | | | | | | | | | | | | /etc/inputrc is configuration file for readline. However, until now, it was provided by skeleton. This patch install /etc/inputrc from readline recipe. Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
| * skeleton: remove unused /etc/issueJérôme Pouiller2015-11-171-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | /etc/issue is managed with BR2_TARGET_GENERIC_ISSUE. In case BR2_TARGET_GENERIC_ISSUE is set (which is default), /etc/issue is overwritten. In case BR2_TARGET_GENERIC_ISSUE is not set, we don't want /etc/issue exist. Finaly, remove /etc/issue from skeleton. Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> Reviewed-by: "Maxime Hadjinlian" <maxime.hadjinlian@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* | system: Fix warning when selecting systemd and ensure merged /usr ↵Peter Korsgaard2015-11-091-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | workarounds are enabled With systemd and a custom skeleton, we end up with the following warning: warning: (BR2_INIT_SYSTEMD) selects BR2_ROOTFS_MERGED_USR which has unmet direct dependencies (BR2_ROOTFS_SKELETON_DEFAULT) Which makes sense as the logic to install the symlinks to /usr is part of the default skeleton handling, but the BR2_ROOTFS_MERGED_USR symbol is ALSO used by packages to activate various workarounds for a merged /usr, so it should be always active when using systemd even with a custom rootfs skeleton (that by definition must use a merged /usr as required by systemd). So introduce a dummy symbol with the same name for the custom skeleton case, similar to how we handle the BR2_PACKAGE_BUSYBOX_SHOW_OTHERS option. This is a hidden option so it can only be activated by enabling systemd (and not if people just want to use a merged /usr with a custom skeleton but not systemd), but as this is really a legacy option that is probably good enough (if not, patches are welcome!). Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* | Revert "system: Fix warning when selecting systemd"Peter Korsgaard2015-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | This reverts commit b4718c3a28fc3b178253b24bd6fbb8540a724c7e. The BR2_ROOTFS_MERGED_USR symbol is used to activate various workarounds for a merged /usr by packages, so it should be active even with a custom rootfs skeleton. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* | system: Fix warning when selecting systemdMaxime Hadjinlian2015-11-081-1/+1
|/ | | | | | | | | | | With systemd and a custom skeleton, you end up with the following warning: warning: (BR2_INIT_SYSTEMD) selects BR2_ROOTFS_MERGED_USR which has unmet direct dependencies (BR2_ROOTFS_SKELETON_DEFAULT) Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: optionally wait for network interfaces to appearJérôme Pouiller2015-11-021-0/+21
| | | | | | | | | | | | | | | | | | | | | | This patch has same purpose than 49964858f45d2243c513e6d362e992ad89ec7a45: On some machines, the network interface is slow to appear. For example, on the Raspberry Pi, the network interface eth0 is an ethernet-over-USB, and our standard boot process is too fast, so our network startup script is called before the USB bus is compeltely enumerated, thus it can't configure eth0. Closes #8116. However, wait-delay hook is enabled only if wait-delay property appears in /etc/network/interfaces. This patch enable it automaticaly when interface is configured through DHCP at bootup. But, if user choose to write /etc/network/interface himself, he have to explicitly set wait-delay. Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: add "operator" groupJérôme Pouiller2015-10-281-0/+1
| | | | | | | gid 37 was referenced in /etc/passwd but not in /etc/group Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* skeleton: sync /etc/shadow with /etc/passwdJérôme Pouiller2015-10-281-3/+4
| | | | | | | | | Synchronize /etc/shadow with /etc/passwd: - remove "halt" and "uucp" - add "sys", "mail" and "www-data" Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system/skeleton: finalize removal of ftp userThomas Petazzoni2015-10-181-1/+0
| | | | | | | | | | | | | | In commit 3dde19e5f32c58ffbf7e190257b073e91e0a7e8d, the ftp user was removed from /etc/passwd, /etc/group and /home in the skeleton, but the corresponding entry was not removed from /etc/shadow. This commit fixes that. Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: add options for /bin /sbin and /lib to be symlinks into /usrYann E. MORIN2015-10-144-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | systemd is increasingly expecting things to live in /usr/bin, /usr/sbin or /usr/lib nad not in /bin, /sbin or /lib. It has inherited those expectations from a Fedora change: https://fedoraproject.org/wiki/Features/UsrMove Note however, that systemd does support /usr being on a separate filesystem; it just expects an initramfs to mount it before the final switchroot over to the actual rootfs. But the traditional use-case for Buildroot is not to boot with an initramfs; although that is totally feasible, that's probably not what is commonly done in the vast majority of cases. However, a lot of packages still install stuff directly into /bin, /sbin or /lib, which systemd may need early-on in the boot process, even before it may have a chance to mount /usr. Even though we can tell systemd, at configure-time, where it should expect programs to be at runtime, it does not make sense to go head-first against an upstream wa^Hill. Add an option so that /bin, /sbin and /lib be symlinks to /usr/bin and /usr/sbin. That option is forcibly enabled when the init system is systemd. Note: we need not handle /lib32 or /lib64, as they already are symlinks to /lib, which means they will automatically be redirected to /usr/lib, as /usr/lib32 and /usr/lib64 already are. Furthermore, this means we're no longer supporting a split-usr setup, so the corresponding configure options have been removed as well for systemd and, when using a merged /usr, for eudev as well. In Buildroot, we decided (with this patch) not to support a split-usr when systemd is used as an init system. This is a design decision, not a systemd issue. Thus the select is with BR2_INIT_SYSTEMD rather than with BR2_PACKAGE_SYSTEMD. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Mike Williams <mike@mikebwilliams.com> Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Cc: Baruch Siach <baruch@tkos.co.il> Tested-by: Mike Williams <mike@mikebwilliams.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: Remove ftp user and /home/ftpMaxime Hadjinlian2015-10-103-2/+0
| | | | | | Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: Pretty fixes for /etc/profileMaxime Hadjinlian2015-10-041-14/+10
| | | | | | | | | | Fix indent and put PATH on a single line. Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net> Tested-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: Remove bash specific filesMaxime Hadjinlian2015-10-043-14/+0
| | | | | | | | | Signed-off-by Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net> Tested-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: Clean up profile fileMaxime Hadjinlian2015-10-042-49/+8
| | | | | | | | | | | | | | | | | There's a lot of code in /etc/profile, which doesn't really belong in a minimal default skeleton. Also, add an 'unset i' to avoid clutter. If the user has a specific needs, it needs to be added in /etc/profile.d/ by a post-build script. Signed-off-by Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net> Tested-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: clarify /dev management using devtmpfs + {mdev, eudev}Luca Ceresoli2015-10-041-2/+2
| | | | | | | | | | | | | | | | | The "Dynamic using mdev" and "Dynamic using eudev" /dev management methods are using devtmpfs, just like "Dynamic using devtmpfs only", on top of which they add either mdev or eudev. But their names might suggest they use mdev only or eudev only. Clarify their descriptions by adding "devtmpfs +" to make it unambiguous. [Thomas: rewrap the paragraphs in the manual. It makes the diff a lot less readable, but we actually want the result to be wrapped.] Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: fix absence of /dev/shm on static, read-only systemsLuca Ceresoli2015-10-031-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | /dev/shm is needed for systems using shared memory. On init-based systems this directory is usually created in the inittab along with /dev/pts, by the lines: package/busybox/inittab: ::sysinit:/bin/mkdir -p /dev/pts ::sysinit:/bin/mkdir -p /dev/shm package/sysvinit/inittab: si2::sysinit:/bin/mkdir -p /dev/pts si3::sysinit:/bin/mkdir -p /dev/shm However this is broken when static /dev management is selected and the root filesystem is read-only, showing during boot the error: mkdir: can't create directory '/dev/shm': Read-only file system Fix it by creating the empty /dev/shm directory, just like /dev/pts. Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system: use a menuconfig for the getty optionsYann E. MORIN2015-10-031-3/+1
| | | | | | | | | | | | Making the getty option a menuconfig instead of a simple config automatically moves its dependees into a menu without the need to manually declare such a menu. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system: make systemd's kernel headers comment fitArnout Vandecappelle2015-09-101-1/+1
| | | | | | | | | | | | | | | | | The comment line that explains that systemd needs a glibc toolchain and kernel headers >= 3.10 doesn't fit in the dialog box, which makes it look as if headers >= 3.1 are needed. Abbreviate the comment a little by removing an 'an'. It still doesn't fit completely (only one trailing * is shown), but at least it's readable. While we're at it, change the quoting style to " like we always use. Reported-by: eschu on IRC Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* skeleton: New packageMaxime Hadjinlian2015-07-141-124/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a proper package for the skeleton. The main Makefile is modified to remove the skeleton support. The 'dirs' target, will create the $(TARGET_DIR). The file 'output/target/.root' doesn't exists anymore, as there's no Make rule to statisfy. The infrastructure are modified to filter host-skeleton. It's needed becauses the host-dependencies are derived from the dependencies of the target package where 'host-' is preprended to the depedency name. In the pkg-generic we add skeleton as a dependency to every package. The whole system/system.mk is now removed at the profit of package/skeleton/skeleton.mk [Thomas: - rebase on top of master and fix some minor conflicts - remove the 'select BR2_PACKAGE_SKELETON' in BR2_ROOTFS_SKELETON_DEFAULT and BR2_ROOTFS_SKELETON_CUSTOM, since anyway the skeleton package is always enabled. - fixup a few mistakes in the getty handling due to misnamed variables.] Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system: fix BR2_INIT_NONE / BR2_INIT_SYSTEMD buildThomas Petazzoni2015-07-141-2/+4
| | | | | | | | | | | | | | Following the introduction of the initscripts package in commit 89d39fc7a392530be043bac541ade0bef746edb6 ("initscripts: new package"), the /etc/inittab file is no longer part of the skeleton, and therefore is not always installed. However, system/system.mk tweaks the inittab for getty and filesystem remount as rw, without taking the precautions of whether the init system is Busybox or SysV. This commit fixes that by adding the necessary conditions around the code adjusting the inittab file. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* initscripts: new packageMaxime Hadjinlian2015-07-146-168/+2
| | | | | | | | | | | | | | | | | The folder init.d is currently installed by default since it's part of our skeleton. This patch creates a package out of it and make busybox/sysvinit depends on it. This way, if you chose another init, you don't end up with a useless init.d folder. [Thomas: - make the initscripts package selectable via a hidden bool - remove some unneeded changes in sysvinit.mk.] Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* skeleton: apply locale settings in user shellsMaxim Mikityanskiy2015-07-131-0/+23
| | | | | | | | | | | | | Add /etc/profile.d/locale.sh script from Arch Linux to /etc/profile. This script looks for locale.conf, sources it, and exports the LANG and LC_* variables. [Arnout: put in /etc/profile in the skeleton rather than making it systemd specific.] Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* core/skeleton: drop /etc/securettyYann E. MORIN2015-07-132-65/+0
| | | | | | | | | | | | | | | | securetty is supposed to restrict the terminals root is allowed to login from. As it happens, login from busybox (w/ securetty support) is actually enforcing use of securetty, while login from util-linux is completely ignoring securetty altogether. Remove securetty from our skeleton altogether and stop worrying about it. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system/device_table.txt: /etc/random-seed is no morePeter Korsgaard2015-07-091-1/+0
| | | | | | So don't try to set the permissions of it. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system/skeleton: don't use random-seed from a read-only fsBaruch Siach2015-07-081-10/+7
| | | | | | | | | | A random-seed from a read-only filesystem is useless. Also, drop the check for /etc/random-seed existence; it must exist after a touch. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system/skeleton: remove random-seedBaruch Siach2015-07-081-0/+0
| | | | | | | | | Seeding the entropy pool with a known seed makes more harm than good. This is especially bad for when /etc is not on a persistent writable storage, so the entropy pool is seeded with the same value on every boot. Just drop it. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system: allow/disallow root login, accept encoded passwordsLorenzo Catucci2015-07-042-18/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, there are only two possibilities regarding the root account: - it is enabled with no password (the default) - it is enabled, using a clear-text, user-provided password This is deemed insufficient in many cases, especially when the .config file has to be published (e.g. for the GPL compliance, or any other reason.). Fix that in two ways: - add a boolean option that allows/disallows root login altogether, which defaults to 'y' to keep backward compatibility; - accept already-encoded passwords, which we recognise as starting with either of $1$, $5$ or $6$ (resp. for md5, sha256 or sha512). Signed-off-by: Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it> [yann.morin.1998@free.fr: - don't add a choice to select between clear-text/encoded password, use a single prompt; - differentiate in the password hook itself; - rewrite parts of the help entry; - rewrite and expand the commit log ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: "Lorenzo M. Catucci" <lorenzo@sancho.ccd.uniroma2.it> Acked-by: "Lorenzo M. Catucci" <lorenzo@sancho.ccd.uniroma2.it> Tested-by: Gergely Imreh <imrehg@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* system/device_table.txt: drop unused ifupdown post-up.d / pre-down.d directoriesPeter Korsgaard2015-06-251-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | These are not used by the busybox or Debian ifupdown implementation. Instead if-up.d is run after the per-interface up tasks (E.G. post-up) and if-down.d is run before the per-interface down tasks (E.G. pre-down). So drop them as they only cause confusion. grep execute_all output/build/busybox-1.23.2/networking/ifupdown.c static int execute_all(struct interface_defn_t *ifd, const char *opt) if (!execute_all(iface, "pre-up")) return 0; if (!execute_all(iface, "up")) return 0; if (!execute_all(iface, "down")) return 0; if (!execute_all(iface, "post-down")) return 0; grep execute_script output/build/ifupdown-0.7.49/execute.c int execute_scripts(interface_defn * ifd, execfn * exec, char *opt) if (!execute_scripts(iface, doit, "pre-up")) if (!execute_scripts(iface, doit, "up")) if (!execute_scripts(iface, doit, "down")) if (!execute_scripts(iface, doit, "post-down")) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* system: make /bin/sh symlink use relative pathMatthew Starr2015-06-211-4/+4
| | | | | | | | | | | | | | | | | | The symlink created by buildroot for /bin/sh is the full path to a shell. This does not match what busybox and other Linux distributions do with using relative path symlinks. When handling files on the host system this will point to the host system's shell if present and not the target shell. This is fixed by changing the /bin/sh symlink to use a relative path. Fixes #8161. [Thomas: minor fixups to the commit log suggested by Yann E. Morin.] Signed-off-by: Matthew Starr <mstarr@hedonline.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
OpenPOWER on IntegriCloud