I'm in the process of building out my first Vagrant box using Veewee (ubuntu 12.04) and, about 95% of the way there, I'm stuck on something. I have a custom post-install script, called right after postinstall.sh
, that builds out my preferred user environment. It...
- Installs curl, zsh & git
- Installs oh-my-zsh
- Writes a custom theme file
- Writes a custom .zshrc file
All of that seems to be fine, but the next logical step is to change my shell so that it's all ready to go when I vagrant ssh
for the first time, but I'm stuck. The last line of this script is chsh -s /usr/bin/zsh
, but it doesn't take. Am I doing something wrong? Is there another way of changing the shell from the script? I suppose I could update /etc/passwd
with sed, but...ugh. Be nice if it could be done in a cleaner way than that.
Also, while trying to run down this issue, I discovered another possible issue. I don't have passwordless sudo access. In the packaged postinstall.sh
script, I see that it's running set to make that happen, but in 12.04, at least, /etc/sudoers
is read-only which probably prevents the change from getting made.
Anyone else noticed these things? Any hints on how to work around them? My searches have turned up nothing.
Thanks.