import { Base, BaseContext } from "../../../src/lib.ts"; export { build }; const build: Base = async (c) => { // installs base await c.sh(`pacstrap -K -c '${c.root_dir}' base`); await c.sh(`rm -fr '${c.root_dir}/etc/securetty' '${c.root_dir}/usr/share/factory/etc/securetty'`); await c.sh_in(`pacman -Syu`); await c.sh_in(`sed -i 's/^SigLevel = .*$/SigLevel = Never/g' /etc/pacman.conf`); await pacman(c, "nano", "git", "base-devel"); await c.sh_in(`systemctl enable systemd-networkd.service`); // ssh await c.sh_in(`printf 'root:jesuisunevoute' | chpasswd --crypt-method DES`); await pacman(c, "openssh"); await c.sh_in(` echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config systemctl enable sshd.service `); const port = c.available_port(2250); c.redirect(port, 22); }; async function pacman(c: BaseContext, ...packages: string[]) { await c.sh_in(`pacman -S --noconfirm '${packages.join("' '")}'`); }