Here we build pyLoad by ourself. And while we have our hands on it, we
will update pyLoad to its latest stable version which is currently
version 0.4.9.
Here are the steps to build a working pyLoad version using the
OpenWrt build-system.
NOTE #1: For most routers you will need extroot for installing pyLoad.
pyLoad and it depedencies require lot of space and most routers have
very little internal space for storage. I will not cover howto
configure extroot on your router here. You can look up extroot by
yourself in the OpenWrt Wiki.
NOTE #2: You will need a FTP or web server which can host your OpenWrt package repository (bin/<arch>/packages/, e. g. bin/ar71xx/packages/).
If you own a Android Smartphone simply install the FTP server app from
Google Play and you have a FTP server with anonymous login within your network to host the package repository. On Linux install curlftpfs and mount your Smartphones FTP folder for simply copying the repository on your Phone.
Have fun :-)
cd $HOME
export owrt_dir="$HOME/owrt"
export owrt_defcfg="$HOME/.openwrt/defconfig"
export owrt_defcfg_dir="$(dirname $owrt_defcfg)"
export owrt_cfg="$owrt_dir/.config"
export owrt_dl_dir="$HOME/owrt_dl"
export owrt_target="ar71xx/generic"
[ -d "$owrt_dir" ] && rm -rf $owrt_dir
[ -d "$HOME/.openwrt" ] && { rm -rf $owrt_defcfg_dir; mkdir -p $owrt_defcfg_dir; } || mkdir -p $owrt_defcfg_dir
git clone git://git.openwrt.org/openwrt.git $owrt_dir
cd $owrt_dir
sed /^#/d $owrt_dir/feeds.conf.default > $owrt_dir/feeds.conf
echo "#src-link custom /usr/src/openwrt/custom-feed" >> $owrt_dir/feeds.conf
( cd "$owrt_dir";
./scripts/feeds update &&
./scripts/feeds install -a -p packages &&
./scripts/feeds install -a -p luci
)
# This patch updates pyLoad to version 0.4.9
( cd "$owrt_dir/feeds/packages";
wget -O - http://patchwork.openwrt.org/patch/4805/raw/ | patch -p1
)
target=$owrt_target; subtarget="${target#*/}"; targetname="${target%%/*}"; [ "$targetname" = "$subtarget" ] && subtarget=
cat > "$owrt_cfg" << EOF
CONFIG_TARGET_${targetname}=y
CONFIG_TARGET_${targetname}_${subtarget}=y
CONFIG_TARGET_BOARD="$targetname"
CONFIG_TARGET_ROOTFS_TARGZ=y
CONFIG_DEVEL=y
CONFIG_DOWNLOAD_FOLDER="${owrt_dl_dir}"
CONFIG_CCACHE=y
CONFIG_PACKAGE_block-mount=y
CONFIG_PACKAGE_kmod-fs-ext4=y
CONFIG_PACKAGE_kmod-fs-msdos=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_pyload=m
CONFIG_IB=n
CONFIG_SDK=n
CONFIG_MAKE_TOOLCHAIN=n
CONFIG_IMAGEOPT=y
CONFIG_VERSIONOPT=y
CONFIG_VERSION_REPO="ftp://192.168.178.27:2221/trunk/%T/packages"
EOF
make defconfig
make package/base-files/clean
rm -rf $owrt_dir/bin/* 2>/dev/null >/dev/null
make