#!/usr/bin/env sh # ┌──────────────┤ FAKE // OS │ Main Entrypoint ├────────────┐ # │ │ # │ Main entrypoint installer for FAKE // OS │ # │ │ # ├──────────────────────────────────────────────────────────┤ # │ Version: 0.1 Date: 2025-05-13 │ # │ License: GPL3+NIGGER (C) 2025 Geoff Murphy │ # └──────────────────────────────────────────────────────────┘ #--------[ Bootstrap Correct Shell ]--------# if [ "$SHELL" = "/bin/bash" ] && [ ! "$BASH_VERSION" ]; then echo "running 'dash' -> bootstrapping to 'bash'" curl https://fake.onl/fake-os.sh | bash exit fi #--------[ Check Root ]--------# if [ "$EUID" -ne 0 ]; then echo "Script must be run as root..." && exit; fi #--------[ FAKE//OS Install Variables ]--------# export FAKE_PATH=/opt/fakeos # System location to install #--------[ FAKE//OS Splash Screen ]--------# clear echo "" echo " .. " echo " .:xKX0O00d, _____ _ _ _______ " echo " dNKc. 'od' | ___/ \ | |/ / ____| " echo " kWO .d, | |_ / _ \ | ' /| _| " echo ".WWc oO | _/ ___ \| . \| |___ " echo " 0WX. .kx |_|/_/ \_\_|\_\_____| " echo " xWWKOxo; 'xd ----------------------- " echo " 'oKWWWX' .. Operating System " echo " .. ~ Installer ~ " echo "" #--------[ FAKE//OS Check Dependencies ]--------# FAKE_DEP="" if [ ! "$(command -v git)" ]; then FAKE_DEP="$FAKE_DEP git"; fi if [ ! "$(command -v curl)" ]; then FAKE_DEP="$FAKE_DEP curl"; fi if [ ! "$(command -v figlet)" ]; then FAKE_DEP="$FAKE_DEP figlet"; fi if [ ! "$(command -v rsync)" ]; then FAKE_DEP="$FAKE_DEP rsync"; fi if [ ! "$(command -v sudo)" ]; then FAKE_DEP="$FAKE_DEP sudo"; fi if [ ! "$(command -v vim)" ]; then FAKE_DEP="$FAKE_DEP vim"; fi #--------[ FAKE//OS Install Dependencies ]--------# if [ "$FAKE_DEP" != "" ]; then echo "Dependancies: [ $FAKE_DEP ]" echo "" if [ "$(command -v pacman)" ]; then CMD="pacman -Syyy && pacman --noconfirm -S $FAKE_DEP" elif [ "$(command -v apt)" ]; then CMD="apt -y update && apt -y install $FAKE_DEP" elif [ "$(command -v apk)" ]; then CMD="apk update && apk add $FAKE_DEP" elif [ "$(command -v dnf)" ]; then CMD="dnf update && dnf -y install $FAKE_DEP" else CMD="echo '[ERROR] Incompatable System...'"; fi INDEX=1 if ! eval "$CMD" ; then while ! eval "$CMD"; do INDEX=$(( INDEX + 1 )) echo "[ERROR] Retrying: Attempt $INDEX..." done fi fi #--------[ FAKE//OS Git Clone ]--------# rm -rf /opt/fakeos mkdir -p /opt git clone --depth 1 https://git.fake.onl/fake/fake-os.git $FAKE_PATH #--------[ FAKE//OS Link System Tools ]--------# ln -sf $FAKE_PATH/src/fake_manager.sh /usr/sbin/fake ln -sf $FAKE_PATH/src/fake_shell.sh /etc/skel/.bashrc ln -sf $FAKE_PATH/src/fake_shell.sh /etc/skel/.profile #--------[ FAKE//OS Link Existing Users ]--------# TMP_USERS="root $(ls /home)" for USER in $TMP_USERS; do if [ "$USER" == "root" ]; then HOMEDIR="/root"; else HOMEDIR="/home/$USER"; fi rm -rf $HOMEDIR/.bashrc rm -rf $HOMEDIR/.profile ln -sf $FAKE_PATH/src/fake_shell.sh $HOMEDIR/.bashrc ln -sf $FAKE_PATH/src/fake_shell.sh $HOMEDIR/.profile done