Announcement

Collapse
No announcement yet.

Dash As The Default Shell For Fedora?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #51
    Originally posted by Delgarde View Post
    Debian/Ubuntu mostly use it because it starts up quicker than bash, which makes a big difference to boot times when your init process consists of hundreds of little shell scripts constantly forking and exiting - but that's not very relevant to distros that use systemd (or upstart).
    idk how you got there, my computer is started by a few simple scripts
    more over a shell can plow through them faster that a mosquito on red bull can flap its wings

    funny you mention systemd as dbus does it's work by forking itself for every event processed (and for every device, at start)
    does not matter anyway since fork() is actually fairly light, thanks to linux being COW

    also a simpler shell does not mean it is faster
    i bet a speed comparison of all dem shells would give interesting and unexpected results (due to implementations; check out LALR for a start)

    Comment


    • #52
      Originally posted by Scimmia View Post
      You're counting Mageia as a major root distro now? Last I knew, it was a RH derivative. Whatever, never was a Mandrake fan.

      And a basic install of Slack does not have 5 shells installed. You can, of course, choose to install them, but you can on any of the other distros as well. There are only 2 shells in package group A: Bash and tcsh
      You do realize that a full install is the only supported Slackware configuration right? You can remove certain package groups yes, but don't expect any help if you do that, and all slackbuilds, slapt-get, etc assume you've got a full install to start with.

      Comment


      • #53
        Originally posted by Luke_Wolf View Post
        You do realize that a full install is the only supported Slackware configuration right? You can remove certain package groups yes, but don't expect any help if you do that, and all slackbuilds, slapt-get, etc assume you've got a full install to start with.
        Get real, no competent sysadmin runs that way.

        Comment


        • #54
          Originally posted by Scimmia View Post
          Get real, no competent sysadmin runs that way.
          Perhaps not but users aren't limited to just sysadmins.

          Comment


          • #55
            Originally posted by Scimmia View Post
            Get real, no competent sysadmin runs that way.
            No you get real, no one running slackware runs it how you're claiming, because it's not supported. Go to the slackware support channel and ask, guess what they'll tell you? You're on your own unless you decide to fix it and do a full install.

            Comment


            • #56
              Originally posted by gens View Post
              it is not an excuse... it is a reality check
              for you pidgin is not a security hole
              I never said that. You are attacking a strawman.

              Comment


              • #57
                Originally posted by wizard69 View Post
                Not exactly! There is no reason to believe a minimal shell is more secure if it hasn't been written to be secure and hasn't gone through extensive reviews for security issues.
                mksh which was part of the discussion has gone through a good security review by Google before inclusion in Android. So yes, that meets the criteria and if you read through the thread, you will find it has been acknowledged that security review will be part of the criteria for making any default changes.

                Comment


                • #58
                  Originally posted by RahulSundaram View Post
                  I never said that. You are attacking a strawman.
                  he started it !

                  Comment


                  • #59
                    Originally posted by Luke_Wolf View Post
                    a good half a dozen shells are installed by default on pretty much any Linux distro anyway including ksh, tcsh, zsh, and bash, in openSUSE's case sash is also included
                    Huh?
                    Since when have csh, zsh, or any ksh variant been installed by default on Ubuntu or Debian?
                    http://releases.ubuntu.com/trusty/ub...-i386.manifest lists only dash and bash.
                    A minimal install of Debian has only dash and bash; both ksh variants are optional. tcsh has been optional since 2010, and zsh is optional.

                    I say "ksh variants" because there's AT&T ksh93, pdksh, openbsd-ksh (which is a patched and cleaned up version of pdksh) and its numerous ports, mksh (started as a fork of openbsd-ksh) in all its variants, and some systems have dtksh.

                    Comment


                    • #60
                      I read the thread and it looks like it's mainly Rahul Sundaram pushing for it to be considered, a couple people agreeing, and several very vocal opponents. And it would seem to me that the discussion is going against it.

                      That's a pity, because it means that the rest of the world can expect to see more broken shell scripts from RH/Fedora users.

                      I also see that /usr/bin/bash is being mentioned.
                      This only exists on systems with the /usr merge and possibly some of the BSDs.
                      /bin/bash is the canonical path on most Linux systems.

                      Anyhow, regarding compatability:
                      dash is an old port/fork of the BSD Almquist shell, which is given to unusual behavior; many of its decisions go contrary to most other shells.
                      It frequently does not have readily useable line editing, what it has is sometimes broken, and it hasn't even kept up with ash.

                      I would not recommend using a shell where you cannot reliably get line editing, since it's very useful to test shell code while you're writing a script.

                      Busybox ash is more compatible, has working line editing, may be more POSIX conformant, and will run scripts faster (if you can use Busybox applets).
                      The ksh variants are much closer to bash; for example, {} expansion works there, and the newer variants support shell arrays.

                      (Side note: ksh93 got a number of little details right that everyone else got wrong; for an example, take
                      Code:
                      echo blah |read VAR; echo $VAR
                      Unfortunately, ksh clones like mksh also got this wrong.)

                      Locally, checkbashisms is commonly misleading, out of date, or flat-out wrong. For example,
                      kill -[number] and kill -[SIGNAME] is specifically required in POSIX 2004 (what LSB is based off of); [[ for test is allowed in POSIX and works in any non-ancient shell (newer than Solaris /bin/sh); echo -n works in dash and everywhere else, despite POSIX; support for export VAR=blah is encouraged in POSIX, though not yet mandatory, and it works on all Linux shells.
                      echo -e, let, and shell arrays are the main ones to notice.

                      Comment

                      Working...
                      X