You are not logged in.
I was just wondering why we have different default shells for each of the situations of the title. Is this documented anywhere? This is just a personal curiosity.
Last edited by thiagowfx (2014-09-12 12:26:02)
Offline
I can't say why the devs chose to use Zsh on the LiveCD, but Bash is the de facto Linux shell, so it makes sense to include that in the base install. I don't think any major Linux or BSD distribution uses Zsh as the default shell.
Offline
Simply, bash is mandatory, zsh isn't. Just like everything else in Arch, after instaation you get only a mandatory minimum on top of which you buid a system you like, the way you like it. Zsh is a user preference.
Offline
I recall somebody asked about this recently, but I can't find it atm.
You can ask on the arch-releng mailing list.
Offline
The first hit is always free...
Offline
Just like everything else in Arch, after instaation you get only a mandatory minimum
That's not true
My: [ GitHub | AUR Packages ]
Offline
That's not true
How so? You can omit stuff in the base group, but the intent is to bundle a minimal set of utils for the vast majority of users. For example, I exclude fjsutils lvm2 mdadm nano reiserfsprogs vi xfsprogs but again, the 50 members of the base group are considered a minimum.
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
stevenhoneyman wrote:That's not true
How so? You can omit stuff in the base group, but the intent is to bundle a minimal set of utils for the vast majority of users. For example, I exclude fjsutils lvm2 mdadm nano reiserfsprogs vi xfsprogs but again, the 50 members of the base group are considered a minimum.
That's sort of what I meant - "mandatory" means compulsary, or required by law... to the linux packaging world, that means you absolutely MUST have those 50 packages installed; which as you quite rightly said, isn't the case.
glibc is mandatory (in Arch linux)
reiserfsprogs... not so much
bash isn't mandatory; there are many drop-in replacements that will do just fine
My: [ GitHub | AUR Packages ]
Offline
Yeah, we're splitting hairs here but you are technically correct. Functionally, they could break out the packages into a 'base' group and a 'base-extras' group. Open a feature request on flyspray if you want. See what the devs think about it.
Last edited by graysky (2014-09-13 14:11:35)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
I'm not sure. (the following is just my opinion)
I'd say "base" should be all that you require to boot Arch linux, log in, with a configurable+functional pacman - and nothing more.
The way it is now, it means if you want to pacstrap something, you either have to make a list of each package that is actually required, or download/install base, and clear up the mess afterwards. If your target lives on something with limited space/write cycles/expanding container/etc then it could be trouble
Open a feature request on flyspray if you want. See what the devs think about it.
haha yeah I'm sure it'd go down really well...
Last edited by stevenhoneyman (2014-09-13 14:25:46)
My: [ GitHub | AUR Packages ]
Offline
I'd say "base" should be all that you require to boot Arch linux, log in, with a configurable+functional pacman - and nothing more.
But how do you define "Arch Linux". All that is required to boot linux is a bootloader and the kernel.
But this is getting quite off topic...
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
stevenhoneyman wrote:I'd say "base" should be all that you require to boot Arch linux, log in, with a configurable+functional pacman - and nothing more.
But how do you define "Arch Linux". All that is required to boot linux is a bootloader and the kernel.
But this is getting quite off topic...
Arch Linux = linux kernel + glibc + pacman
I've just noticed no bootloader in base
My: [ GitHub | AUR Packages ]
Offline
Open a feature request on flyspray if you want. See what the devs think about it.
haha yeah I'm sure it'd go down really well...
Why? Seems reasonable to me.
I've just noticed no bootloader in base
You don't need one. Consider a system with another distro present. You would configure that bootloader to hit the Arch initramfs images. I do this all the time, that is, have a 2nd Arch install as a recovery OS on it's own small partition.
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
I can't say why the devs chose to use Zsh on the LiveCD, but Bash is the de facto Linux shell, so it makes sense to include that in the base install.
Sounds like the most appropriate response here. I also like the fact that the livecd comes with grml-zsh-config, it eases some aspects of the installation for newcomers, such as auto-completion. But this design decision is probably documented somewhere, I should probably try to find the topic karol was referring to.
The first hit is always free...
I really haven't understand your statement/implication....
--
Then, about the unexpected discussion of what is really base and what is not, we actually have several possibilities here.
- There is the *BSD world, where base/core is really mandatory and you cannot (actually, should not) uninstall anything from there, at the risk of breaking the system;
- There is base as synonym with "mandatory" (glibc is mandatory, grub/syslinux is not, vi is not...). This would be the most strictly definition, I believe. Few things are really mandatory.
- There is the current base convention, where it looks like a balance/compromise between mandatory and what some users consider essential for the system.
- ...and more and more.
PS.: No base-extra, please...
Arch Linux = linux kernel + glibc + pacman
Arch Linux += systemd + wiki + community + devs + AUR + [...]
--
Thanks for all the responses.
Offline
jasonwryan wrote:The first hit is always free...
I really haven't understand your statement/implication....
He's implying zsh can be likened to street drugs
stevenhoneyman wrote:Arch Linux = linux kernel + glibc + pacman
Arch Linux += systemd + wiki + community + devs + AUR + [...]
Shame about the whole systemd thing really
My: [ GitHub | AUR Packages ]
Offline
You can use e.g. openrc if you want.
I wonder how effective was putting zsh on the iso, how many people got hooked up on zsh :-)
Offline
I wonder how effective was putting zsh on the iso, how many people got hooked up on zsh :-)
True story...I'm included in this case as well.
Offline
bash isn't mandatory; there are many drop-in replacements that will do just fine
Bash is a mandatory part of an archlinux installation. makepkg and pacman installscripts document the scripting language as bash shellscript, not POSIX. That means that you will run into problems with at least some packages.
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
I wonder how effective was putting zsh on the iso, how many people got hooked up on zsh :-)
Me too
zsh ftw!
godisnowhere
Offline
The Beginner's Guide make a mention about zsh and grml-zsh-config as being part of the Archiso shell, but when it comes the time to do Change Root, there is no mention about it:
https://wiki.archlinux.org/index.php/Be … stallation
https://wiki.archlinux.org/index.php/Be … ase_system
The very first time you arch-chroot into your new install either with default sh or by specifying /bin/bash, you feel like going back to the 90's (Or the 80's in the case of sh). If I were to tell someone how to install Arch Linux, I would say him to include zsh and grml-zsh-config with pacstrap then doing arch-chroot with /usr/bin/zsh, and finally using chsh -s /usr/bin/zsh to make it permanent. This way, a new install will still look and feel exactly like Archiso, instead of the abrupt switch from the modern and practical console to a dull, unconfigured bash. Besides the Tab autocomplete, possiibily the second other thing that you miss on a brand new install with bash, are the default alias of dir and ls.
Last edited by zir_blazer (2014-10-25 00:28:27)
Offline
Arch is what you make of it. Feel free to pick the shell you want.
Offline
Besides the Tab autocomplete
pacman -S bash-completion solves that for a big part
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline