The Vagrant documentation for option "group" in syncing folders states
(in https://www.vagrantup.com/docs/synced-folders/basic_usage.html#group):
"By default this will be the SSH user". Vagrant indeed tries to change
the owner and group of synchronized files to vagrant:vagrant (not
vagrant:users). It outputs:
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
find /vagrant '!' -type l -a '(' ! -user vagrant -or ! -group vagrant
')' -exec chown vagrant:vagrant '{}' +
Stdout from the command:
Stderr from the command:
find: 'vagrant' is not the name of an existing group
Fix this by using --user-group instead of --gid users in the useradd
command which creates user vagrant.
Previously, there was an issue with mkfs failing due to a missing
options flag; this error was difficult to catch, as it was only output
in the provisioned OS's virtual machine file.
This change moves the base installation steps to be more in line with
the other provisioning steps, and allows for any errors, issues, or
output to be cached in the logs of the interface running the Packer
build.
Version 1.43 of e2fsprogs changes mkfs to default 64bit.
This doesn't play nicely with Syslinux, so disable it.
We wouldn't need 64bit filesystems unless we're working with 16TiB
filesystems.
This reverts commit d93e04754a.
August 2016 ISO image could not boot with `Failed to load ldlinux.c32`
message.
We should revert this change.
Fixes#49.
Arch publishes the checksums of the ISO urls and Packer has an option to
read these files directly from the source.
This commit will automatically load the ISO checksums from the provided
URL, making it such that each month only 1 line must be changed.
Do a final clean of the pacman cache, then write zeros to disk and
unlink the file. Packer will compact the disk as part of the build,
resulting in a smaller final image.
This is just for clarity when reading, and it seems to be the style that
the upstream documentation has finally settled on. No functional changes
here.
Instead of having mostly duplicate scripts for the entire installation
process, we can split them up into the base installation steps and then
run shell provisioners for anything specific to each of the types after
the machine has rebooted.
This structure will mean less chance of error when making changes to
machines, and will also allow for expansion of the scripts to be run at
the end, such as adding a minimization script to remove history and
clear out space on the drive before compression.
Minor reorganization here so the --dry-run option is listed at the end,
and we document that the --timeout option takes an argument. I had also
missed showing the `[-d]` option on the usage message previously.
I also slightly re-organized how the default was set, so it will always
rely on the status of the $timeout variable and also the final variable
name matches the name of the Packer option.
pacman -Scc
Cache directory: /var/cache/pacman/pkg/
:: Do you want to remove ALL files from cache? [y/N]
Flag --nokonfirm sets the default value so the value will be given N