It turns out that using a literal dot instead of the word dotfiles has a
negative impact on the discoverability of the repository. Since the
directory name can be changed to .files when running `git clone`, this
gives us the freedom to name the repository however we please.
This makes it easier to immediately start using dotfiles and other
config settings on first boot. It may even be useful to add an option
to run the entire bootstrap script in the installation media. Note that
if this route is taken, some assumptions regarding installation will
have to be changed to adjust for the chroot environment.
This commit makes it so that downloading the entire repository to run
the install scripts is no longer necessary.
It assumes that you have an active internet connection, which should be
a given since you need an internet connection to run pacstrap anyway.
The polkit package is used to let unprivileged users run certain
commands. With it, it is possible to run system commands such as
`poweroff` and `reboot` with an unprivileged user.
Traditionally, only privileged users have access to power management,
but for many desktop setups, you may want to let unprivileged users
perform operations such as shutdown the machine if no other users
are logged in.
It turns out that replacing the contents of locale.gen with the locales
you want is not a good idea, since then it is impossible to reference
the file at a later date to make changes as needed.
It turns out the font that I was setting before didn't actually do
anything. This is the real way to double the font size in your virtual
console, particularly useful for HiDPI displays, since your tty does not
know about your X DPI.
Since the username appears before the hostname (user@host), and since
anyone using these install scripts will probably want to log in with the
local user account and not the root account, this change makes sense.
Since mkinitcpio is already ran on the installation of the linux
package with pacstrap, and since we don't change any config settings,
recreating the initramfs is not necessary.
This should work, although I haven't tested it yet.
In the future it may be easier to simply download the other install
scripts from this install script. That way we solve the problem of
having to unzip this entire repository in the installation image.
This should ensure that a user knows what they're doing before running
the install scripts. Note that parted will also ask for a confirmation
before overwriting existing data.
This not only fixes the issue where set -x would cause the read
line to be altered, but also separates user input from what the
install scripts actually do.
I added shortened systemd timeouts when I didn't know how to use
journalctl. But now that I know enough to fix things that might
stall these commands, this is no longer necessary.
Here I commit the addition of VerbosePkgLists for reference. It turns
out that yay's package upgrade list looks significantly better than
pacman's VerbosePkgLists (and is a lot more legible).
Since pacman will not use VerbosePkgLists when the number of terminal
columns is low enough, it makes sense to simply use the default setting
instead.
Instead of running two systemctl commands (start and enable),
one can simply use `systemctl enable --now` instead.
The grub command was removed since I never used it and haven't
found a need to do so.