1. 31 Jul, 2017 1 commit
    • Yann E. MORIN's avatar
      package/skeleton: drop dependency on host-mkpasswd · 7c1692df
      Yann E. MORIN authored
      
      
      Setting the root pasword is done in a target-finalize hook, so we do not
      need to enforce a dependency from the skeleton onto host-mkpasswd.
      
      Dropping that dependency will simplify making skeleton a virtual
      package (in up-coming changes).
      
      Instead, it is now selected as any other package. As such, it is
      guaranteed to be built before target-finalize.
      
      This however introduces a slight change in behaviour: previously,
      host-mkpasswd would only be built if we needed to hash the root password
      from its plain-text value. Now, host-mkpasswd is always built as soon as
      the root password is non-empty, even if already pre-hashed.
      
      Since host-mkpasswd is a really tiny weeny package bundled in Buildroot,
      with only two C files, built as a single unit with a single gcc call,
      the overhead is really minimal. Compared to the simplifications this
      will allow in the skeleton packages (plural: common, sysv, systemd,
      custom) to come, this overhead is acceptable.
      
      Yet another simplification, even if small, to ease providing multiple
      skeletons.
      
      Signed-off-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
      Reviewed-by: default avatarArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      7c1692df
  2. 04 Jul, 2017 2 commits
    • Thomas Petazzoni's avatar
      system: introduce BR2_SYSTEM_ENABLE_NLS · dc057d28
      Thomas Petazzoni authored
      
      
      Until now, the option BR2_ENABLE_LOCALE was more-or-less controlling
      whether NLS support was enabled in packages. More precisely, if
      BR2_ENABLE_LOCALE=y, we were not doing anything (so some packages
      could have NLS support enabled, some not). And only when
      BR2_ENABLE_LOCALE was disabled we were explicitly passing
      --disable-nls to packages.
      
      This doesn't make much sense, and there is no reason to tie NLS
      support to locale support. You may want locale support, but not
      necessarily NLS support. Therefore, this commit introduces
      BR2_SYSTEM_ENABLE_NLS, which allows to enable/disable NLS support
      globally. When this option is enabled, we pass --enable-nls to
      packages, otherwise we pass --disable-nls.
      
      In addition, when this option is enabled and the C library doesn't
      provide a full-blown implementation of gettext, we select the gettext
      package, which will provide the full blown implementation.
      
      It is worth mentioning that this commit has a visible impact for users:
      
       - Prior to this commit, as soon as BR2_ENABLE_LOCALE=y, packages
         *could* provide NLS support. It was up to each package to decide
         whether they wanted to provide NLS support or not (we were not
         passing --enable-nls nor --disable-nls).
      
       - After this commit, it's BR2_SYSTEM_ENABLE_NLS that controls whether
         NLS is enabled or disabled, and this option is disabled by default.
      
      Bottom line: with the default of BR2_SYSTEM_ENABLE_NLS disabled, some
      packages may lose NLS support that they used to provide. But we
      believe it's a reasonable default behavior for Buildroot, where
      generally NLS support is not necessary.
      
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Reviewed-by: default avatarArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      dc057d28
    • Yann E. MORIN's avatar
      system: require a timezone to be set · e7e526e9
      Yann E. MORIN authored
      
      
      Even though no timezone implicitly means UTC, systemd is not all that
      happy when it does not have a timezone set. This is all fine on a RW
      filesystem because systemd will create a symlink on its own (to
      Etc/UTC), but not so much on a RO filesystem, causing all kind of
      issues at boot time (up to the point that the system is unusable).
      
      We fix that by requiring that the timezone is actually set. The check is
      done by verifying that the timezone file is an actual file; if not set,
      the test would find a directory and would thus fail.
      
      Update the help entry accordingly.
      
      Also fix indentation in tzdata.
      
      Signed-off-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
      Cc: Richard Braun <rbraun@sceen.net>
      Cc: Alexandre Belloni <alexandre.belloni@free-electrons.com>
      Cc: Martin Bark <martin@barkynet.com>
      Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      e7e526e9
  3. 29 Mar, 2017 1 commit
  4. 06 Feb, 2017 1 commit
  5. 28 Jan, 2017 1 commit
  6. 13 Oct, 2016 1 commit
  7. 01 Oct, 2016 1 commit
  8. 11 Sep, 2016 1 commit
  9. 14 Aug, 2016 1 commit
  10. 09 Aug, 2016 1 commit
  11. 03 Aug, 2016 1 commit
  12. 18 Jul, 2016 4 commits
  13. 05 Jul, 2016 1 commit
  14. 03 Jul, 2016 1 commit
  15. 30 Jun, 2016 1 commit
  16. 28 Jun, 2016 1 commit
  17. 28 May, 2016 1 commit
    • Yann E. MORIN's avatar
      system: add help entry to "none" init system · 4d185e5e
      Yann E. MORIN authored
      
      
      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: default avatar"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: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      4d185e5e
  18. 09 Nov, 2015 2 commits
    • Peter Korsgaard's avatar
      system: Fix warning when selecting systemd and ensure merged /usr workarounds are enabled · 29206817
      Peter Korsgaard authored
      
      
      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: default avatarPeter Korsgaard <peter@korsgaard.com>
      29206817
    • Peter Korsgaard's avatar
      Revert "system: Fix warning when selecting systemd" · adcc48e0
      Peter Korsgaard authored
      This reverts commit b4718c3a
      
      .
      
      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: default avatarPeter Korsgaard <peter@korsgaard.com>
      adcc48e0
  19. 08 Nov, 2015 1 commit
  20. 14 Oct, 2015 1 commit
    • Yann E. MORIN's avatar
      system: add options for /bin /sbin and /lib to be symlinks into /usr · c5bd8af6
      Yann E. MORIN authored
      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: default avatar"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: default avatarMike Williams <mike@mikebwilliams.com>
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      c5bd8af6
  21. 04 Oct, 2015 1 commit
  22. 03 Oct, 2015 1 commit
  23. 10 Sep, 2015 1 commit
  24. 13 Jul, 2015 1 commit
  25. 04 Jul, 2015 1 commit
  26. 21 Jun, 2015 1 commit
  27. 22 Apr, 2015 1 commit
  28. 10 Apr, 2015 1 commit
    • Yann E. MORIN's avatar
      system: remove DES password encoding · 02917961
      Yann E. MORIN authored
      
      
      DES is long dead, it is insecure as hell, and virtually all known
      crypt(3) implementations now all support at least md5.
      
      Besides, the character-space of DES-encoded passwords are a sub-set
      of the character-space for a clear-text password, so we can't easily
      differentiate between the two. Since we're going to change the root
      password prompt to support setting encoded passwords (as well as
      clear-text passwords), we can't keep DES or we'd be unable to decide
      whether we'd need to encode the password or not.
      
      Remove DES encoding altogether (and add a legacy entry). The default is
      still md5, and thus there's no backward-compatibility 'select' to add.
      
      Signed-off-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
      Cc: Lorenzo Catucci <lorenzo@sancho.ccd.uniroma2.it>
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      02917961
  29. 05 Apr, 2015 1 commit
  30. 01 Apr, 2015 1 commit
  31. 09 Mar, 2015 1 commit
  32. 21 Feb, 2015 1 commit
  33. 14 Feb, 2015 1 commit
  34. 02 Feb, 2015 1 commit
  35. 23 Jan, 2015 1 commit
    • Peter Korsgaard's avatar
      eudev: really bump version · 14af550d
      Peter Korsgaard authored
      
      
      The configure script checks for linux/btrfs.h which is only available since
      3.9 (55e301fd57a6239ec: Btrfs: move fs/btrfs/ioctl.h to
      include/uapi/linux/btrfs.h).
      
      It now also uses static_assert which is only available since GCC 4.6, so
      handle it as well in the legacy patch.
      
      Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
      14af550d