Code Monkey home page Code Monkey logo

install-theos's Introduction

bash script to install theos.

What does this do?

  • Installs theos, its dependencies and headers.
  • Downloads SDKs (iOS 9.2 only by default)
  • (Optional) Downloads fallback headers.
  • (Optional) Creates ~/.nicrc
  • (Optional) Delete existing installation and re-install

Download & Run

If you want to get to work quickly open your bash terminal and run:

curl -JOLks https://git.io/install-theos && bash install-theos

Or if you want to download it first:

git clone https://github.com/supermamon/install-theos
cd install-theos
chmod +x install
./install [args]

Arguments

Argument Description Examples
--installdir, -d Specify the directory where to install. Default is ~/ --installdir /opt/
--sdks, -s List of SDKS to download. Enclose in quotes if multiple. Default is 9.2. --sdks "8.1 9.2"
--createnic, -n Create ~/.nicrc file. Pass Y to create. Default is N. --createnic Y
--nicusername, -u Default username when creating a tweak. --nicusername tweakmaker
OR
--u "tweakmaker <[email protected]>"
--nicprefix, -p Default bundle id prefix. --nicprefix com.mycompany
--fallback, -f Include fallback headers. Default is N. --fallback Y
--reinstall, -r Delete and re-install theos. Default is N. --reinstall Y
--install-dependencies, -e Include dependencies when installing. Default is Y. --install-dependencies N
--no-platformcheck, -c Skip checking OS/platform when installing. Useful when trying to install on unsupported platforms. Default is N. --no-platformcheck Y

Examples

Default Installation

This will install theos and its dependencies on the home directory with iOS9.2 SDK

./install

Custom install directory

./install --installdir /var/  # don't forget the ending slash

Custom SDKS
Available SDKs can be found at https://sdks.website/.

./install --sdks "8.1 9.1"  # enclose in quotes if multiple

Delete and re-install theos with 9.3 SDK

./install --reinstall Y --sdks 9.3

Create a NIC profile

./install --createnic y --nicusername tweakmaker --nicprefix com.tweakmaker
# OR
./install --createnic y --nicusername "tweakmaker <[email protected]>" --nicprefix net.tweakmaker

Skip dependency download

If you think you already have all the dependcies or you already ran the install-deps script.

./install --install-dependencies N

All parameters

./install --installdir /var/ --sdks "8.1 9.3" --createnic y --nicusername "tweakmaker <[email protected]>" --nicprefix net.tweakmaker --fallback Y
--reinstall Y --install-dependencies Y --no-platformcheck N
#OR

./install -d /var/ -s "8.1 9.3" -n y -u "tweakmaker <[email protected]>" -p net.tweakmaker -f Y -r y -e Y -c N

Next Step

Add the following lines to your ~/.bash_profile or ~/.bashrc

export THEOS=~/theos

#Optional
export THEOS_DEVICE_IP=<ip of your device>
export THEOS_DEVICE_PORT=22

Tested Platforms

  • Windows 7 (Cygwin)
  • Windows 10 (Cygwin)
  • Linux Mint 17+
  • Ubuntu 14.04+

Additional Scripts

There are 2 more scripts on the repo

  • install-deps : Install theos dependencies before installing theos. This is already built-in on the main install script though.
  • get-sdk: Download additional sdks if you already have theos installed.

Todo

  • Test on Windows 10 Subsystem for Linux
  • iOS & macOS support
  • option to create $THEOS variable into ~/.bash_profile or ~/.bashrc

Changelog

  • v2.0.1 :
    • Added error handing on removing previous install
  • v2.0.0 :
    • Made curl a hard requirement for the script
    • Add --install-dependencies option. Default Y.
    • Add --no-platformcheck option. Default N.
  • v1.2.1 :
    • Updated iPhoneOS9.3 SDK source
  • v1.2.0 :
    • Custom iPhoneOS9.3 SDK source
    • More error handling
    • UI changes
  • v1.1.0
    • Added Reinstall parameter
    • Additional dependecy checks
    • Check if install folder is writeable.
    • Add ownership change
    • Add wget error handling
    • Progress message formatting
  • v1.0.1
    • Updated sdks website
  • v1.0.0
    • Merged indivual scripts
  • v0.2.0
    • Script for Linux
  • v0.1.0
    • Script for Cygwin

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.