Skip to content

Add support for Terminal-based deployment #42

@sysrich

Description

@sysrich

tik currently assumes execution in a graphical environment, hence the liberal use of zenity for dialog boxes, lists, progressbars, and password entry

Most of these are called by the 'd' function (and all should be called by 'd' and/or it's equivalents once #41 is implemented)

Original tik design assumed zenity would be used interchangably with dialog for terminal use, however dialog doesn't support all target architectures we wish to work on.

Therefore I propose expanding the 'd' function to instead use nice simple plain text outputs that will work on any terminal on any architecture.

There will obviously need to be some magic for more complex differences such as references to "Press [a GUI button] to continue" vs "Press any key to continue"

Some below mockups for example
Screenshot from 2024-08-01 10-43-40
Screenshot from 2024-08-01 10-43-45

zenity --info --ok-label="Install Now" --no-wrap --width=300 --height=300 --icon=distributor-logo-Aeon-symbolic --title="" --text="<big>Welcome to Aeon</big>\n\nPlease press <b>Install Now</b> to continue"

clear
echo "Welcome to Aeon"
read -n 1 -s -r -p "Press any key to continue"

Screenshot from 2024-08-01 10-43-49
Screenshot from 2024-08-01 10-43-53

zenity --question --no-wrap --title="Begin Installation?" --text="Once the installation begins the changes to the selected disk are irreversible.\n\n<b>Proceeding will fully erase the disk.</b>\n\nContinue with installation?"

clear
tput bold
echo "Begin Installation?"
tput sgr0
echo -e "Once the installation begins the changes to the selected disk are irreversible.\n\n$(tput bold)Proceeding will fully erase the disk.$(tput sgr0)\n\nContinue with installation?"
read -p "(y/n)?" choice
case "$choice" in 
  y|Y ) echo "yes";;
  n|N ) echo "no";;
  * ) echo "invalid";;
esac

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions