You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ben 69b9d9cd34 Update 'README.md' 1 year ago
README.md Update 'README.md' 1 year ago
compile.sh Add 'compile.sh' 1 year ago
lxc-compile.sh Update 'lxc-compile.sh' 1 year ago

README.md

lxc-setup.sh

This script provides an automated setup for building and compiling OpenWrt applications inside LXC (Linux Container) environments hosted on OpenWrt. It prepares the LXC environment, installs required tools, sets up SSH and SFTP configurations, and downloads the appropriate OpenWrt SDK based on user input. Post SDK download, it sets up language support and provides a mechanism for cloning and building a list of OpenWrt applications from a Git repository.

Features

  • Automated LXC environment setup and verification.
  • SSH & SFTP setup for secure data transfers.
  • Selection interface to choose target routers.
  • Automated OpenWrt SDK download and extraction.
  • Language support addition for OpenWrt applications.
  • Git cloning and building of numerous OpenWrt apps from the specified repository.

Requirements

  1. The script should be run as root, forge, homestead, or vagrant user.
  2. Ensure you have internet connectivity for apt updates and SDK downloads.
  3. Hosted on OpenWrt.

Usage

  1. Clone the repository or download the lxc-setup.sh script.

  2. Provide execute permissions:

    chmod +x lxc-setup.sh
    
    

compile.sh

Run this script after running lxc-setup.sh

This Bash script aids in the compilation of specific OpenWRT luci-app packages.

🚀 Features

  1. Permission Verification: Checks if the user running the script has the required permissions.
  2. Router Selection: Prompts the user to select the router for which they want to build a package.
  3. SDK Validation: Checks if the chosen SDK folder exists based on the router selection.
  4. Package List: Displays available luci-app packages for the user to select for compilation.
  5. Permission Grant: Grants execution permissions to any discovered 'libexec' directories and their contents.
  6. Package Compilation: Clones the package from the specified git repository and guides the user through the compilation process.

🔧 Usage

Execute the script from the command line. You'll be prompted to select your router model and then choose the specific luci-app package you want to compile.

$ ./script_name.sh