Files
@ 4847a0efa093
Branch filter:
Location: freifunk/Firmware-building/build_script/freifunk_root.sh - annotation
4847a0efa093
1.5 KiB
text/x-sh
fix: missing newline for log in _root.sh
cf4f965e2938 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 4847a0efa093 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 e608a9c725b4 | #!/usr/bin/env bash
set +xe
username=user
ssh_login_key="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOLFCOqpPOTZEQiWcY9TyVQnMoc5bCYlxLaRKhiB/uxo xbr 2024-06-16"
projects_c3l_pubkey="|1|X2M4bHKf8E+plhJ6KoDZzCfw5LI=|EpHLDWOmOq4SLelYTGd8SH+7hvU= ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIXfRmGmfbxPoErs5lpTnz+PZRQdh0QvPGTiswxFkXOx"
log() {
printf "[-] %s\n" "$@"
}
install_packages() {
log "Installing packages..."
apt update
# Installing QoL packages (1) then gluon deps (2)
# ! Debian 13-specific !
apt install -y htop tmux vim sudo mosh \
git python3 python-is-python3 python3-setuptools build-essential ecdsautils gawk unzip libncurses5-dev zlib1g-dev libssl-dev libelf-dev wget rsync time qemu-utils
}
create_user() {
log "Creating user..."
# user: forcing bash, and needs (passwordless) sudo
useradd -ms /bin/bash -G sudo $username
# enabling passwordless sudo
sed -i /etc/sudoers -re 's/^%sudo.*/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/g'
}
ssh_setup() {
log "Setting up SSH..."
sudo -u user ssh-keygen -t ed25519 -N '' -C 'freifunk-builder' <<<n
home_dir=""; eval home_dir=~$username
echo "$ssh_login_key" >> "$home_dir/.ssh/authorized_keys"
chmod -v 600 "$home_dir/.ssh/authorized_keys"
echo "$projects_c3l_pubkey" >> "$home_dir/.ssh/known_hosts"
chmod -v 644 "$home_dir/.ssh/known_hosts"
echo "The user's SSH pubkey is the following:"
cat "$home_dir/.ssh/id_ed25519.pub"
echo
echo "Do not forget to add it to projects.c3l.lu"
}
install_packages
create_user
ssh_setup
|