#!/bin/bash
set -xe
#: ${repo:=https://download.opensuse.org/distribution/openSUSE-stable/repo/oss}
#: ${repo:=https://download.opensuse.org/distribution/leap/15.6/repo/oss}
: ${repo:=https://download.opensuse.org/tumbleweed/repo/oss}
: ${arch:=$(uname -m)}
[ $arch = i686 ] && arch=i386
[ $arch = i386 ] && repo=https://download.opensuse.org/tumbleweed/repo/oss
: ${vncpassword:=abcd1234}
#: ${append:=vnc=1 vncpassword=$vncpassword}
#: ${append:=ssh=1 sshpassword=$vncpassword}
#append+=" addon=https://download.opensuse.org/update/openSUSE-stable/"
#append+=" autoyast=https://www.zq1.de/~bernhard/linux/opensuse/autoyast.leap150.xml"
#append+=" upgrade=1"

pkgs="wget kexec-tools"
zypper -n install $pkgs ||
  DEBIAN_FRONTEND=noninteractive apt-get -y install $pkgs ||
  dnf install -y $pkgs ||
  pacman --noconfirm -S $pkgs ||
  emerge $pkgs ||
  true

which wget
which kexec
mkdir -p /dev/shm/
mount -t tmpfs tmpfs /dev/shm
cd /dev/shm/
wget $repo/boot/$arch/loader/{linux,initrd}
kexec -l linux --initrd=initrd --reset-vga --append="install=$repo $append"
sync ; echo u > /proc/sysrq-trigger ; sync
kexec -e
