Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bmiddha/archlinux-install-script-acm-uic

Installl and Configure Archlinux ACM@UIC Style
https://github.com/bmiddha/archlinux-install-script-acm-uic

archlinux archlinux-automatic archlinux-installer archlinux-server archlinuxinstall archlinuxinstallation bash bash-script shell shell-script ssh

Last synced: 12 days ago
JSON representation

Installl and Configure Archlinux ACM@UIC Style

Awesome Lists containing this project

README

        

# archlinux-install-script-acm-uic

## Configure

Configure the `.env` files as needed. Configs are located in the `configs/` directory.

Copy/rename `secrets.env.example` to `secrets.env` and modify as needed. Modify `global.env` as needed.

This script comes with a few profiles:
- workstation
- hypervisor
- virtual-mahine

Boot into archiso, enable ssh server, and set the root password
```bash
systemctl start sshd
echo "root:superPASSWORRD" | chpasswd
```
Then run `driver.sh` from a computer on the network.

## Usage

```
Usage: driver.sh --profile --host
-p, --profile specify profile file
-h, --host specify host
-k, --key ssh key file
--help Displays Help Information
Example: driver.sh --config config/virtual-machine.env --host computer.example.com
```

## What does it do?

Here is an outline of the workings of the script

- Inject SSH key
- Login into remote host
- Partition, format, and mount
- Install archlinux
- Inject mirrors
- Update repository lists
- Run pacstrap
- Generate fstab
- Generate and configure swapfile
- `chroot` into the new archlinux intsall
- Configure system basics
- Timezone
- Locale and Language
- Hostname and hosts
- `pacman` config
- Configure ACM pacman repository
- Configure ssh server
- Add users, inject keys, and lock root
- Configure network
- Setup bonding
- Get hostname from DHCP
- Configure sudoers
- Configure ACM active directory
- Install and configure hypervisor
- Install qemu, libvirt
- Configure virtual network
- Configure iptables forwarding for virtual network
- Configure DHCP server
- Configure UEFI for qemu
- Install virtio drivers for Windows guests
- Install apps
- Install and configure yay
- Optimize makepkg
- Install extra apps from config files
- Install Bootloader
- Set bootloader timeout to 0
- Install and configure GRUB
## archiso customizations
Using the `releng` profile from `/usr/share/archiso/configs/releng`

`airootfs/root/customize_airootfs.sh`
```bash
systemctl enable sshd
echo "root:superPASSWORD" | chpasswd
```
`efiboot/loader/loader.conf`
```
timeout 0
default archiso-x86_64
```