mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-11 01:06:01 +03:00
dd1996ca68
We can't use bashisms in our scripts anymore, since we're trying to keep them POSIXy (to make them easier to run for our own shell someday)
79 lines
2.5 KiB
Bash
Executable File
79 lines
2.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
#SERENITY_PACKET_LOGGING_ARG="-object filter-dump,id=hue,netdev=br0,file=e1000.pcap"
|
|
|
|
[ -e /dev/kvm -a -r /dev/kvm -a -w /dev/kvm ] && SERENITY_KVM_ARG="-enable-kvm"
|
|
|
|
[ -z "$SERENITY_QEMU_BIN" ] && SERENITY_QEMU_BIN="qemu-system-i386"
|
|
|
|
[ -z "$SERENITY_KERNEL_CMDLINE" ] && SERENITY_KERNEL_CMDLINE="hello"
|
|
|
|
[ -z "$SERENITY_RAM_SIZE" ] && SERENITY_RAM_SIZE=128M
|
|
|
|
[ -z "$SERENITY_COMMON_QEMU_ARGS" ] && SERENITY_COMMON_QEMU_ARGS="
|
|
$SERENITY_EXTRA_QEMU_ARGS
|
|
-s -m $SERENITY_RAM_SIZE
|
|
-d cpu_reset,guest_errors
|
|
-device VGA,vgamem_mb=64
|
|
-hda _disk_image
|
|
-debugcon stdio
|
|
-soundhw pcspk
|
|
-soundhw sb16
|
|
"
|
|
|
|
export SDL_VIDEO_X11_DGAMOUSE=0
|
|
|
|
if [ "$1" = "b" ]; then
|
|
# ./run b: bochs
|
|
bochs -q -f .bochsrc
|
|
elif [ "$1" = "qn" ]; then
|
|
# ./run qn: qemu without network
|
|
$SERENITY_QEMU_BIN \
|
|
$SERENITY_COMMON_QEMU_ARGS \
|
|
-device e1000 \
|
|
-kernel kernel \
|
|
-append "${SERENITY_KERNEL_CMDLINE}"
|
|
elif [ "$1" = "qtap" ]; then
|
|
# ./run qtap: qemu with tap
|
|
sudo $SERENITY_QEMU_BIN \
|
|
$SERENITY_COMMON_QEMU_ARGS \
|
|
$SERENITY_KVM_ARG \
|
|
$SERENITY_PACKET_LOGGING_ARG \
|
|
-netdev tap,ifname=tap0,id=br0 \
|
|
-device e1000,netdev=br0 \
|
|
-kernel kernel \
|
|
-append "${SERENITY_KERNEL_CMDLINE}"
|
|
elif [ "$1" = "qgrub" ]; then
|
|
# ./run qgrub: qemu with grub
|
|
$SERENITY_QEMU_BIN \
|
|
$SERENITY_COMMON_QEMU_ARGS \
|
|
$SERENITY_KVM_ARG \
|
|
$SERENITY_PACKET_LOGGING_ARG \
|
|
-netdev user,id=breh,hostfwd=tcp:127.0.0.1:8888-10.0.2.15:8888,hostfwd=tcp:127.0.0.1:8823-10.0.2.15:23 \
|
|
-device e1000,netdev=breh
|
|
elif [ "$1" = "qcmd" ]; then
|
|
SERENITY_KERNEL_CMDLINE=""
|
|
# FIXME: Someone who knows sh syntax better, please help:
|
|
for i in `seq 2 $#`; do
|
|
shift
|
|
SERENITY_KERNEL_CMDLINE="$SERENITY_KERNEL_CMDLINE $1"
|
|
done
|
|
echo "Starting SerenityOS, Commandline: ${SERENITY_KERNEL_CMDLINE}"
|
|
# ./run: qemu with serenity with custom commandline
|
|
$SERENITY_QEMU_BIN \
|
|
$SERENITY_COMMON_QEMU_ARGS \
|
|
-device e1000 \
|
|
-kernel kernel \
|
|
-append "${SERENITY_KERNEL_CMDLINE}"
|
|
else
|
|
# ./run: qemu with user networking
|
|
$SERENITY_QEMU_BIN \
|
|
$SERENITY_COMMON_QEMU_ARGS \
|
|
$SERENITY_KVM_ARG \
|
|
$SERENITY_PACKET_LOGGING_ARG \
|
|
-netdev user,id=breh,hostfwd=tcp:127.0.0.1:8888-10.0.2.15:8888,hostfwd=tcp:127.0.0.1:8823-10.0.2.15:23 \
|
|
-device e1000,netdev=breh \
|
|
-kernel kernel \
|
|
-append "${SERENITY_KERNEL_CMDLINE}"
|
|
fi
|