jsivak / arch-ansible

An Ansible playbook to install Arch Linux

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Arch-Ansible: an Ansible playbook to install Arch Linux

Stars License Link to the docs Changelog CI status

Arch-Ansible is a playbook designed to install Arch Linux on a target machine. It was conceived to ease the preparation of virtual machines, but it can also be used to install on bare metal.

If you are a new user, please keep reading, otherwise have a look at the changelog for the latest changes.

The simplest way to get started is to provision a VM with Arch Linux to try the playbook out. Both VirtualBox and QEMU (possibly via libvirt) are supported, but the examples below use VirtualBox because it has been supported since the start, so the playbook is well-tested against it.

First, change some default settings by writing the following YAML snippet to ansible/group_vars/all/50-user-settings.yaml and customize it to suit your regional settings:

# Set your timezone, locale and keymap
locale_timezone: Europe/Rome
locale_locale: it_IT.UTF-8
locale_keymap: it
users_root_info:
    # Choose a root password
    password: "abcd$1234_root"
users_info:
  # Change "manu" to your username
  manu:
    # Choose a password for your user.
    # You'll be able to use sudo.
    password: "abcd$1234_manu"
    is_admin: true

Now, if you want Packer to build a brand new VM image, if under Linux type:

cd packer
./packer-wrapper.sh build -only=virtualbox-iso packer-template.json

or, under Windows:

cd packer
.\packer-wrapper.ps1 build -only=virtualbox-iso packer-template.json

or, if you prefer to spin up a turn-key Vagrant machine, go with:

cd vagrant
# A reload is required after provisioning
vagrant up --provider=virtualbox && vagrant reload

After login, type startx to run the GUI.

There's a good deal of things that can be customized: DE themes, preinstalled utilities, screensaver behaviour and more. Have a look at the documentation for more information. The side projects section links to specific documentation about integration with Vagrant and Packer.

Since Arch is a rolling release distro, it may happen that upstream changes break the playbook. If such issues happen to you, please open an issue.

If you find this project helpful, why not showing some ♥ by giving it a star on GitHub?

About

An Ansible playbook to install Arch Linux

License:MIT License


Languages

Language:Shell 48.7%Language:Dockerfile 21.7%Language:Jinja 11.0%Language:PowerShell 10.1%Language:Python 8.5%