I set up a new machine with Void, and it took an embarrassing amount of time. I wanted a script to install Void with 1 line of bash from a live iso, so I could look cool next time. Here it is:

xbps-install -S curl

curl https://malinfreeborn.com/autovoid.sh | sh

The idea is to place the script on a public site, execute it, then get the following:

  • a full WM
  • all dotfiles set up
  • all home files

…basically, a full setup.

Results

It’s 2 lines of bash, rather than 1, which is less cool.

I remove the need for a password by making the system auto-login to a user in the wheel group. I’ve tried adding the option to set a variable, password="mypassword123, which would then automatically add that variable as the main user’s password, but something’s gone wrong there.

The user gets ssh keys pulled from gitlab as a kind of backup.

To Do

  • Atm I can use unison to pull in ~ files from my server, but it’d be nicer to have this done automatically, before the reboot. I guess that’d require another line for authentication.
  • See if something can pull the script without curl, so the script can be a single line of bash
  • I might see about puting in arbitrary usernames/ hostnames later.
  • Any other suggestions?
    • @garret
      link
      12 years ago

      Or use ansible or distro like nixos.

    • @GhastOP
      link
      12 years ago

      Friends don’t let friends pipe curl to shell.

      I think I’m good there. The servers are all self-hosted at my local haklab. It’s just me and 3 other admins, and the access is locked down. A haklab with some old computers and a paranoid admin is the least enticing target.