This repository has been archived on 2022-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
modern-linbo-gui/fakeroot/fake_cmd_functions.sh

253 lines
5.6 KiB
Bash

#!/usr/bin/env bash
# linbo_cmd ip
ip()
{
if [[ -n "${OFFLINE}" ]]; then
echo "OFFLINE"
else
echo "10.16.3.68"
fi
}
# linbo_cmd hostname
hostname()
{
echo "cpqmathe045"
}
# linbo_cmd cpu
cpu()
{
for i in $(seq 1 2); do
echo "Intel(R) Celeron(R) CPU N2830 @ 2.16GHz"
done
}
# linbo_cmd memory
memory()
{
echo "1895 MB"
}
# linbo_cmd mac
mac()
{
if [[ -n "${OFFLINE}" ]]; then
echo "OFFLINE"
else
echo "54:A0:50:4C:3F:46"
fi
}
# linbo_cmd size /dev/sda?
size()
{
local disk="${1}"
case "${disk}" in
"/dev/sda")
echo "465.8GB"
;;
"/dev/sda1")
echo "2.7/14.6GB"
;;
"/dev/sda2")
echo "2.0GB"
;;
"/dev/sda3")
echo "0.2/0.2GB"
;;
"/dev/sda4")
echo "408.2/441.4GB"
;;
*)
echo "Error: Could not stat device ${disk} - No such file or directory."
exit 0
;;
esac
}
# linbo_cmd battery
battery()
{
echo "$((RANDOM%100))"
}
# linbo_cmd authenticate 10.16.1.1 linbo pw123
authenticate()
{
local server="$1"
local user="$2"
local password="$3"
if [[ "${server}" != "10.16.1.1" ]] \
|| [[ "${user}" != "linbo" ]] \
|| [[ "${password}" != "pw123" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
return 0
fi
}
# linbo_cmd start /dev/sda1 /dev/sda1 /boot/vmlinuz /boot/initrd "resume=/dev/sda2 splash=silent quiet showopts" /dev/sda4
# linbo_cmd start /dev/sda1 /dev/sda1 /boot/vmlinuz /boot/initrd "noresume splash=silent quiet showopts klassenarbeit=1" /dev/sda4
start()
{
local boot="$1"
local root="$2"
local kernel="$3"
local initrd="$4"
local append="$5"
local cache="$6"
if [[ "${boot}" != "/dev/sda1" ]] \
|| [[ "${root}" != "/dev/sda1" ]] \
|| [[ "${kernel}" != "/boot/vmlinuz" ]] \
|| [[ "${initrd}" != "/boot/initrd" ]] \
|| [[ "${cache}" != "/dev/sda4" ]]; then
echo "Wrong parameters: «$*»"
return 1
elif [[ "${append}" == "resume=/dev/sda2 splash=silent quiet showopts" ]] \
|| [[ "${append}" == "noresume splash=silent quiet showopts klassenarbeit=1" ]]; then
return 0
else
echo "Wrong parameters: «$*»"
return 1
fi
}
# linbo_cmd preregister 10.16.1.1
# writes to /tmp/newregister
preregister()
{
if [[ "${1}" != "10.16.1.1" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
echo "mobil,x200ma,cpqmathe045,10.16.1.2"
return 0
fi
}
# linbo_cmd mountcache /dev/sda4 [options]
mountcache()
{
local partition="$1"
if [[ "${partition}" != "/dev/sda4" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
shift
echo "Mountcache options: «$*»"
return 0
fi
}
# linbo_cmd readfile /dev/sda4 filename [destinationfile]
readfile()
{
local cachepartition="$1"
local filename="$2"
if [[ "${cachepartition}" != "/dev/sda4" ]] \
|| [[ -z "${filename}" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
return 0
fi
}
# linbo_cmd register 10.16.1.1 linbo pw123 room client ip group
register()
{
local server="$1"
local user="$2"
local password="$3"
local room="$4"
local client="$5"
local ip="$6"
local group="$7"
if [[ "${server}" != "10.16.1.1" ]] \
|| [[ "${user}" != "linbo" ]] \
|| [[ "${password}" != "pw123" ]] \
|| [[ -n "$8" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
return 0
fi
}
# linbo_cmd synconly 10.16.1.1 /dev/sda4 opensuse-cpqmini.cloop "" /dev/sda1 /dev/sda1 /boot/vmlinuz /boot/initrd "resume=/dev/sda2 splash=silent quiet showopts"
# linbo_cmd synconly 10.16.1.1 /dev/sda4 opensuse-cpqmini.cloop "" /dev/sda1 /dev/sda1 /boot/vmlinuz /boot/initrd "noresume splash=silent quiet showopts klassenarbeit=1"
synconly()
{
# TODO: check $baseimage $image
local server="$1"
local cachedev="$2"
local baseimage="$3"
local image="$4"
local bootdev="$5"
local rootdev="$6"
local kernel="$7"
local initrd="$8"
local append="$9"
if [[ "${server}" != "10.16.1.1" ]] \
|| [[ "${cachedev}" != "/dev/sda4" ]] \
|| [[ "${baseimage}" != "opensuse-cpqmini.cloop" ]] \
|| [[ "${image}" != "" ]] \
|| [[ "${bootdev}" != "/dev/sda1" ]] \
|| [[ "${rootdev}" != "/dev/sda1" ]] \
|| [[ "${kernel}" != "/boot/vmlinuz" ]] \
|| [[ "${initrd}" != "/boot/initrd" ]]; then
echo "Wrong parameters: «$*»"
return 1
elif [[ "${append}" == "resume=/dev/sda2 splash=silent quiet showopts" ]] \
|| [[ "${append}" == "noresume splash=silent quiet showopts klassenarbeit=1" ]]; then
return 0
else
echo "Wrong append parameters: «$*»"
return 1
fi
}
# linbo_cmd update 10.16.1.1 /dev/sda4 [force]
update()
{
local server="$1"
local cachedev="$2"
local force="$3"
if [[ "${server}" != "10.16.1.1" ]] \
|| [[ "${cachedev}" != "/dev/sda4" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
return 0
fi
}
# linbo_cmd version
version()
{
echo "LINBO 3.0.0-1"
}
# linbo_cmd writefile /dev/sda4 filename
writefile()
{
local cachepartition="$1"
local filename="$2"
if [[ "${cachepartition}" != "/dev/sda4" ]] \
|| [[ -z "${filename}" ]]; then
echo "Wrong parameters: «$*»"
return 1
else
return 0
fi
}
# linbo_cmd *
help()
{
echo "You didn't really expect you would get any help from this script, did you?" 1>&2
}