You are not logged in.

#1 2014-09-12 12:24:23

thiagowfx
Member
Registered: 2013-07-09
Posts: 586

zsh on livecd but bash on system installation

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

#2 2014-09-12 12:30:38

ANOKNUSA
Member
Registered: 2010-10-22
Posts: 2,141

Re: zsh on livecd but bash on system installation

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

#3 2014-09-12 15:47:50

Xabre
Member
From: Serbia
Registered: 2009-03-19
Posts: 753

Re: zsh on livecd but bash on system installation

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

#4 2014-09-12 20:15:28

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: zsh on livecd but bash on system installation

I recall somebody asked about this recently, but I can't find it atm.
You can ask on the arch-releng mailing list.

Offline

#5 2014-09-12 20:42:26

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: zsh on livecd but bash on system installation

The first hit is always free...


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#6 2014-09-13 11:10:03

stevenhoneyman
Member
From: England
Registered: 2014-05-25
Posts: 241

Re: zsh on livecd but bash on system installation

Xabre wrote:

Just like everything else in Arch, after instaation you get only a mandatory minimum

That's not true

Offline

#7 2014-09-13 13:55:57

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,612
Website

Re: zsh on livecd but bash on system installation

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.


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#8 2014-09-13 14:08:53

stevenhoneyman
Member
From: England
Registered: 2014-05-25
Posts: 241

Re: zsh on livecd but bash on system installation

graysky wrote:
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

Offline

#9 2014-09-13 14:10:38

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,612
Website

Re: zsh on livecd but bash on system installation

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 packagesZsh and other configs

Offline

#10 2014-09-13 14:24:57

stevenhoneyman
Member
From: England
Registered: 2014-05-25
Posts: 241

Re: zsh on livecd but bash on system installation

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)

Offline

#11 2014-09-13 14:28:37

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,721
Website

Re: zsh on livecd but bash on system installation

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...


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Online

#12 2014-09-13 14:31:59

stevenhoneyman
Member
From: England
Registered: 2014-05-25
Posts: 241

Re: zsh on livecd but bash on system installation

Trilby wrote:
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 big_smile

Offline

#13 2014-09-13 14:40:34

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,612
Website

Re: zsh on livecd but bash on system installation

stevenhoneyman wrote:

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.

stevenhoneyman wrote:

I've just noticed no bootloader in base big_smile

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 packagesZsh and other configs

Offline

#14 2014-09-13 20:45:48

thiagowfx
Member
Registered: 2013-07-09
Posts: 586

Re: zsh on livecd but bash on system installation

ANOKNUSA wrote:

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.

jasonwryan wrote:

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...

stevenhoneyman wrote:

Arch Linux = linux kernel + glibc + pacman

Arch Linux += systemd + wiki + community + devs + AUR + [...]

--

Thanks for all the responses.

Offline

#15 2014-09-13 21:04:06

stevenhoneyman
Member
From: England
Registered: 2014-05-25
Posts: 241

Re: zsh on livecd but bash on system installation

thiagowfx wrote:
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

thiagowfx wrote:
stevenhoneyman wrote:

Arch Linux = linux kernel + glibc + pacman

Arch Linux += systemd + wiki + community + devs + AUR + [...]

Shame about the whole systemd thing really sad

Offline

#16 2014-09-13 21:18:03

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: zsh on livecd but bash on system installation

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

#17 2014-09-13 21:25:33

thiagowfx
Member
Registered: 2013-07-09
Posts: 586

Re: zsh on livecd but bash on system installation

karol wrote:

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

#18 2014-09-13 21:50:58

progandy
Member
Registered: 2012-05-17
Posts: 5,212

Re: zsh on livecd but bash on system installation

stevenhoneyman wrote:

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

#19 2014-09-13 22:09:41

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,771
Website

Re: zsh on livecd but bash on system installation

karol wrote:

I wonder how effective was putting zsh on the iso, how many people got hooked up on zsh :-)

Me too smile
zsh ftw!

Offline

#20 2014-10-25 00:26:51

zir_blazer
Member
Registered: 2013-12-12
Posts: 35

Re: zsh on livecd but bash on system installation

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

#21 2014-10-25 00:48:25

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: zsh on livecd but bash on system installation

Arch is what you make of it. Feel free to pick the shell you want.

Offline

#22 2014-10-25 21:36:59

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,162

Re: zsh on livecd but bash on system installation

zir_blazer wrote:

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.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

Board footer

Powered by FluxBB