Removed customize_airootfs.sh and new SSH code
* Code has been merged into Build Linux * (releng copy is updated in place) * SSH key for wktech now generated at build time * Hostname is now set using main.py * Passwords are now set using main.py * Timezone is now set using main.py
This commit is contained in:
parent
f97028bbdd
commit
e37b1529b0
4 changed files with 50 additions and 76 deletions
|
|
@ -8,6 +8,9 @@ ENABLED_UPLOAD_DATA = False
|
|||
ARCHIVE_PASSWORD='Abracadabra'
|
||||
KIT_NAME_FULL='Wizard Kit'
|
||||
KIT_NAME_SHORT='WK'
|
||||
LINUX_TECH_PASSWORD='Abracadabra'
|
||||
LINUX_TIME_ZONE='America/Los_Angeles'
|
||||
LINUX_ROOT_PASSWORD='Abracadabra'
|
||||
OFFICE_SERVER_IP='10.0.0.10'
|
||||
QUICKBOOKS_SERVER_IP='10.0.0.10'
|
||||
SUPPORT_MESSAGE='Please let 2Shirt know by opening an issue on GitHub'
|
||||
|
|
|
|||
|
|
@ -1,72 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e -u
|
||||
|
||||
# Set hostname
|
||||
echo "[customize_airootfs] INFO: Set hostname"
|
||||
echo "wk-arch" > /etc/hostname
|
||||
echo "127.0.1.1 wk-arch.localdomain wk-arch" >> /etc/hosts
|
||||
|
||||
# Set locale
|
||||
echo "[customize_airootfs] INFO: Set locale"
|
||||
sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen
|
||||
locale-gen
|
||||
|
||||
# Time Settings
|
||||
echo "[customize_airootfs] INFO: Set time"
|
||||
ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
|
||||
sed -i 's/#FallbackNTP/NTP/' /etc/systemd/timesyncd.conf
|
||||
#timedatectl set-ntp true
|
||||
|
||||
# root user settings
|
||||
echo "[customize_airootfs] INFO: Setup root user"
|
||||
usermod -s /usr/bin/zsh root
|
||||
cp -aT /etc/skel/ /root/
|
||||
rm /root/.ssh/id*
|
||||
rm /root/.zlogin
|
||||
chmod 700 /root
|
||||
echo "root:Abracadabra" | chpasswd
|
||||
|
||||
# wktech user settings
|
||||
echo "[customize_airootfs] INFO: Setup wktech user"
|
||||
groupadd -r autologin
|
||||
useradd -m -s /bin/zsh -G autologin,power,storage,wheel -U wktech
|
||||
echo "wktech:Abracadabra" | chpasswd
|
||||
|
||||
# Enable sudo for %wheel
|
||||
echo "[customize_airootfs] INFO: Enable sudo"
|
||||
echo '%wheel ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
|
||||
|
||||
# Misc
|
||||
echo "[customize_airootfs] INFO: Misc Settings"
|
||||
#sed -i -r 's/extensions.autoDisableScopes", [0-9]+/extensions.autoDisableScopes", 0/' /usr/lib/firefox/browser/defaults/preferences/vendor.js
|
||||
mkdir /media
|
||||
|
||||
# Set mirrorlist
|
||||
echo "[customize_airootfs] INFO: Setup pacman mirrorlist"
|
||||
# Ranked on 2017-10-19
|
||||
echo 'Server = http://mirrors.cat.pdx.edu/archlinux/$repo/os/$arch' > /etc/pacman.d/mirrorlist
|
||||
echo 'Server = http://mirrors.advancedhosters.com/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = http://archlinux.surlyjake.com/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = http://mirrors.acm.wpi.edu/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = https://archlinux.surlyjake.com/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = http://ca.us.mirror.archlinux-br.org/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = https://arlm.tyzoid.com/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = http://mirror.rackspace.com/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
echo 'Server = http://il.us.mirror.archlinux-br.org/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
|
||||
|
||||
# journald settings (from archiso)
|
||||
echo "[customize_airootfs] INFO: Setup journald"
|
||||
sed -i 's/#\(Storage=\)auto/\1volatile/' /etc/systemd/journald.conf
|
||||
|
||||
# logind settings (from archiso)
|
||||
echo "[customize_airootfs] INFO: Setup logind"
|
||||
sed -i 's/#\(HandleSuspendKey=\)suspend/\1ignore/' /etc/systemd/logind.conf
|
||||
sed -i 's/#\(HandleHibernateKey=\)hibernate/\1ignore/' /etc/systemd/logind.conf
|
||||
sed -i 's/#\(HandleLidSwitch=\)suspend/\1ignore/' /etc/systemd/logind.conf
|
||||
|
||||
echo "[customize_airootfs] INFO: Setup systemd"
|
||||
#systemctl enable pacman-init.service choose-mirror.service
|
||||
#systemctl set-default graphical.target
|
||||
|
||||
echo "[customize_airootfs] INFO: Completed."
|
||||
|
|
@ -4,5 +4,6 @@ base-devel
|
|||
curl
|
||||
git
|
||||
libewf
|
||||
openssh
|
||||
progsreiserfs
|
||||
rsync
|
||||
|
|
|
|||
50
Build Linux
50
Build Linux
|
|
@ -97,14 +97,18 @@ function run_elevated() {
|
|||
}
|
||||
|
||||
function update_archlive() {
|
||||
hostname="$(echo "${KIT_NAME_SHORT}-linux" | tr "[:upper:]" "[:lower:]")"
|
||||
username="$(echo "${KIT_NAME_SHORT}tech" | tr "[:upper:]" "[:lower:]")"
|
||||
|
||||
# build.sh
|
||||
if ! grep -iq 'customize_iso' "$LIVE_DIR/build.sh"; then
|
||||
sed -ir "s!run_once make_iso\$!# customize_iso\ncp -a \"$ROOT_DIR/.linux_items/include/iso\"/* \"\${work_dir}/iso\"/\n\nrun_once make_iso!" "$LIVE_DIR/build.sh"
|
||||
fi
|
||||
|
||||
# MOTD
|
||||
sed -i "s/WK/$KIT_NAME_SHORT/" "$LIVE_DIR/airootfs/etc/motd"
|
||||
|
||||
# Hostname
|
||||
echo "$hostname" > "$LIVE_DIR/airootfs/etc/hostname"
|
||||
echo "127.0.1.1 $hostname.localdomain $hostname" >> "$LIVE_DIR/airootfs/etc/hosts"
|
||||
|
||||
# Live packages
|
||||
sed -i -r 's/^(b43|clonezilla|gpm|grml|refind|testdisk|vim)/#\1/' "$LIVE_DIR/packages.both"
|
||||
cat "$ROOT_DIR/.linux_items/packages/live" >> "$LIVE_DIR/packages.both"
|
||||
|
|
@ -112,10 +116,48 @@ function update_archlive() {
|
|||
echo "SigLevel = Optional TrustAll" >> "$LIVE_DIR/pacman.conf"
|
||||
echo "Server = file://$REPO_DIR" >> "$LIVE_DIR/pacman.conf"
|
||||
|
||||
# Locale
|
||||
echo 'sed -i "s/#FallbackNTP/NTP/" /etc/systemd/timesyncd.conf' >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# Mirrors
|
||||
sed -i -r 's/^(.*mirrorlist.*)$/#NOPE#\1/' "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
#TODO Add mirrors / rankmirrors?
|
||||
|
||||
# MOTD
|
||||
sed -i "s/WK/$KIT_NAME_SHORT/" "$LIVE_DIR/airootfs/etc/motd"
|
||||
|
||||
# Oh My ZSH
|
||||
git clone --depth=1 git://github.com/robbyrussell/oh-my-zsh.git "$SKEL_DIR/.oh-my-zsh"
|
||||
rm -Rf "$SKEL_DIR/.oh-my-zsh/.git"
|
||||
curl -o "$SKEL_DIR/.oh-my-zsh/themes/lean.zsh-theme" https://raw.githubusercontent.com/miekg/lean/master/prompt_lean_test.zsh
|
||||
|
||||
# Services
|
||||
sed -i -r 's/^(.*pacman-init.*)$/#NOPE#\1/' "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
sed -i -r 's/^(.*choose-mirror.*)$/#NOPE#\1/' "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# SSH
|
||||
mkdir -p "$SKEL_DIR/.ssh"
|
||||
ssh-keygen -b 4096 -C "$username@$hostname" -N "" -f "$SKEL_DIR/.ssh/id_rsa"
|
||||
echo 'rm /root/.ssh/id*' >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
echo 'rm /root/.zlogin' >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
sed -i -r 's/^(.*PermitRootLogin.*)$/#NOPE#\1/' "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# Root user
|
||||
echo "echo 'root:$LINUX_ROOT_PASSWORD' | chpasswd" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# Sudo
|
||||
echo "echo '%wheel ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# Tech user
|
||||
echo "groupadd -r autologin" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
echo "useradd -m -s /bin/zsh -G autologin,power,storage,wheel -U $username" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
echo "echo '$username:$LINUX_TECH_PASSWORD' | chpasswd" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# Timezone
|
||||
sed -i -r "s#zoneinfo/UTC#$LINUX_TIME_ZONE#g" "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# udevil fix
|
||||
echo "mkdir /media" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
|
||||
|
||||
# Wallpaper
|
||||
mkdir -p "$LIVE_DIR/airootfs/usr/share/wallpaper"
|
||||
|
|
@ -182,7 +224,7 @@ function build_arch() {
|
|||
chmod 600 "$LIVE_DIR/airootfs/etc/skel/.ssh/id_rsa"
|
||||
|
||||
# Build ISO
|
||||
prefix="$(echo "${KIT_NAME_SHORT}-linux" | tr "[:upper:]" "[:lower:]")"
|
||||
prefix="$(< "$LIVE_DIR/airootfs/etc/hostname")"
|
||||
label="${KIT_NAME_SHORT}_LINUX"
|
||||
"$LIVE_DIR/build.sh" -N "$prefix" -V "$DATE" -L "$label" -w "$TEMP_DIR/Arch" -o "$OUT_DIR" -v | tee -a "$LOG_DIR/$DATETIME.log"
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue